World Scientific
  • Search
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×
Our website is made possible by displaying certain online content using javascript.
In order to view the full content, please disable your ad blocker or whitelist our website www.worldscientific.com.

System Upgrade on Tue, Oct 25th, 2022 at 2am (EDT)

Existing users will be able to log into the site and access content. However, E-commerce and registration of new users may not be available for up to 12 hours.
For online purchase, please visit us again. Contact us at [email protected] for any enquiries.

LSTM Cell Implementation on FPGAs

    This paper presents and discusses the implementation of an LSTM cell on an FPGA with an activation function inspired by the CORDIC algorithm. The realization is performed using both IEEE754 standard and 32-bit integer numbers. The case with floating-point arithmetic is analyzed with and without DSP blocks provided by the Xilinx design suite. The alternative implementation including the integer arithmetic was optimized for a minimal number of clock cycles. Presented implementation uses xc6slx150t-2fgg900 and achieves high calculations accuracy for both cases.

    Communicated by Andrew Adamatzky

    References

    • 1. Z. Hajduk, Reconfigurable FPGA implementation of neural networks, Neurocomputing 308 (2018) 227–234. Crossref, ISIGoogle Scholar
    • 2. F. Chollet, Deep Learning with Python (Manning, November 2017). Google Scholar
    • 3. Huan Minh Vo, Implementing the on-chip backpropagation learning algorithm on FPGA architecture, in 2017 International Conference on System Science and Engineering (ICSSE), 2017, pp. 538–541. Google Scholar
    • 4. S. Baraha and P. K. Biswal, Implementation of activation functions for ELM based classifiers, in 2017 International Conference on Wireless Communications, Signal Processing and Networking (WiSPNET), 2017, pp. 1038–1042. Google Scholar
    • 5. S. Pan, Z. Li, Y. Huang and W. Lin, FPGA realization of activation function for neural network, in 2018 7th International Symposium on Next Generation Electronics (ISNE), 2018, pp. 1–2. Google Scholar
    • 6. S. Huang, L. Yu, F. Han and Y. Luo, A pipelined architecture for user-defined floating-point complex division on FPGA, in 2017 IEEE 30th Canadian Conference on Electrical and Computer Engineering (CCECE), 2017, pp. 1–4. Google Scholar
    • 7. S. Hochreiter and J. Schmidhuber, Long short-term memory, Neural Comput. 9 (November 1997) 1735–1780. Crossref, ISIGoogle Scholar
    • 8. J. C. Ferreira and J. Fonseca, An FPGA implementation of a long short-term memory neural network, in 2016 International Conference on ReConFigurable Computing and FPGAs (ReConFig), 2016, pp. 1–8. Google Scholar
    • 9. B. Pasca and M. Langhammer, Activation function architectures for FPGAs, in 2018 28th International Conference on Field Programmable Logic and Applications (FPL), 2018, pp. 43–437. Google Scholar
    • 10. I. Tsmots, O. Skorokhoda and V. Rabyk, Hardware implementation of sigmoid activation functions using FPGA, in 2019 IEEE 15th International Conference on the Experience of Designing and Application of CAD Systems (CADSM), 2019, pp. 34–38. Google Scholar
    • 11. J. Sujitha and V. R. Reddy, Implementation of log and exponential function in FPGA, International Journal of Engineering Research & Technology 3(11) (2014). Google Scholar
    • 12. P. Malík, High throughput floating point exponential function implemented in FPGA, in 2015 IEEE Computer Society Annual Symposium on VLSI, 2015, pp. 97–100. Google Scholar
    • 13. M. Wang, Z. Wang, J. Lu, J. Lin and Z. Wang, E-LSTM: An efficient hardware architecture for long short-term memory, IEEE Journal on Emerging and Selected Topics in Circuits and Systems 9(2) (2019) 280–291. Crossref, ISIGoogle Scholar
    • 14. M. Garrido, P. Källström, M. Kumm and O. Gustafsson, CORDIC II: A new improved CORDIC algorithm, IEEE Transactions on Circuits and Systems II: Express Briefs 63(2) (2016) 186–190. Crossref, ISIGoogle Scholar