Skip to main content

Automatic general-purpose neural hardware generator

Abstract

Artificial neural networks have a wide range of applications. In some applications, specific hardware is necessary when a PC cannot be connected or due to other factors such as speed, price and fault tolerance. The difficulty in producing hardware for neural networks is associated with price, accuracy and development time. Most users also prefer the network trained with a high-level tool without reducing resolution and simplifying the activation function for hardware implementation. This paper proposes an automatic general-purpose neural hardware generator, simple to use, with adjustable accuracy that provides direct hardware implementation for neural networks with FPGAs without further development.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

References

  1. 1.

    Abreu S, Freitas F, Baptista FD, Vasconcelos R, Morgado-Dias F (2013) A survey of software and hardware use in artificial neural networks. Neural Comput Appl 23(3–4):591–599

    Google Scholar 

  2. 2.

    Lippmann RP (1987) An introduction to computing with neural nets. IEEE ASSP Mag 4–22

  3. 3.

    Morgado Dias F, Antunes A, Mota A (2004) Artificial neural networks: a review of commercial hardware. Eng Appl Artifi Intell 17:945–952

    Article  Google Scholar 

  4. 4.

    Stieglitz T, Meyer J (2006) Biomedical microdevices for neural implants. Biomems Microsyst 16:71–137

    Article  Google Scholar 

  5. 5.

    Ferreira P, Ribeiro P, Antunes A, Morgado F (2007) A high bit resolution FPGA implementation of a FNN with a new algorithm for the activation function. Neurocomputing 71(1–3):71–77

    Article  Google Scholar 

  6. 6.

    Leon M, Castro A, Ascenccio R (1999) An artificial neural network on a field programmable gate array as a virtual sensor. In Proceedings of the third international workshop on design of mixed-mode integrated circuits and applications, Puerto Vallarta, Mexico, pp. 114–117

  7. 7.

    Ayala JL, Lomena AG, López-Vallejo M, Fernández A (2002) Design of a pipelined hardware architecture for real-time neural network computations. IEEE Midwest Symposium on Circuits and Systems, USA

    Book  Google Scholar 

  8. 8.

    Soares AM, Pinto JOP, Bose BK, Leite LC, da Silva LEB, Romero ME (2006) Field programmable gate array (FPGA) Based neural network implementation of stator flux oriented vector control of induction motor drive. In: IEEE international conference on industrial technology

  9. 9.

    Chen X, Wang G, Zhou W, Chang S, Sun S (2006) Efficient sigmoid function for neural networks based FPGA design, ICIC 2006, LNCS 4113, Springer, Berlin p 672–677

  10. 10.

    Baptista D, Morgado-Dias F (2012) A hyperbolic tangent replacement by third order polynomial approximation. In: CONTROLO’12–10th Portuguese conference on automatic control

  11. 11.

    Ghariani M, Kharrat MW, Masmoudin N, Kamoun L (2004) Electronic implementation of a neural observer in FPGA technology: application to the control of electric vehicle. In: 16th international conference on microelectronics

  12. 12.

    Qian M (2006) Application of CORDIC algorithm to neural networks VLSI Design. In: IMACS multiconference on computational engineering in systems applications

  13. 13.

    Pérez-Suárez ST, Travieso-González CM, Alonso-Hernández JB (2013) Design methodology of an equalizer for unipolar non return to zero binary signals in the presence of additive white gaussian noise using a time delay neural network on a field programmable gate array. Sensors 13(12):16829–16850

    Article  Google Scholar 

  14. 14.

    Baptista FD, Morgado-Dias F (2013) Low-resource hardware implementation of the hyperbolic tangent for artificial neural networks. Neural Comput Appl 23(3–4):601–607

    Article  Google Scholar 

  15. 15.

    Nascimento I, Jardim R, Morgado-Dias F (2013) Hyperbolic tangent implementation in hardware: a new solution using polynomial modeling of the fractional exponential part. Neural Comput Appl 23(2):363–369

    Article  Google Scholar 

  16. 16.

    Le Ly D, Chow P (2010) High-performance reconfigurable hardware architecture for restricted boltzmann machines. IEEE Trans Neural Netw 21(11):1780–1792

    Article  Google Scholar 

  17. 17.

    Ormondi AR, Rajapakse J (2006) FPGA implementations of neural networks. Springer, New York

    Book  Google Scholar 

  18. 18.

    Gomperts A, Ukil A, Zurfluh F (2011) Development and implementation of parameterized FPGA based general purpose neural networks for online applications. IEEE Trans Industr Inf 7(1):78–89

    Article  Google Scholar 

  19. 19.

    Orlowska-Kowalska T, Kaminski M (2011) FPGA implementation of the multilayer neural network for the speed estimation of the two-mass drive system. IEEE Trans Industr Inf 7(3):436–445

    Article  Google Scholar 

  20. 20.

    Dinu A, Cirstea MN, Cirstea SE (2010) Direct neural-network hardware-implementation algorithm. IEEE Trans Industr Electron 57(5):1845–1848

    Article  Google Scholar 

  21. 21.

    Oniga S (2005) A new method for FPGA implementation of artificial neural network used in smart devices. In: international computer science conference microCAD, p 31–36

  22. 22.

    Tisan A, Cirstea M (2013) SOM neural network design: a new simulink library based approach targeting FPGA implementation. Math Comput Simul 91:134–149

    MathSciNet  Article  Google Scholar 

  23. 23.

    Morgado Dias F, Mota A (2009) Direct inverse control of a Kiln. In 4th Portuguese conference on automatic control

  24. 24.

    Maxfield C (2004) The design warrior’s guide to FPGAs. Elsevier, ISBN 0750676043, New York, USA

  25. 25.

    MathWorks. URL: http://www.mathworks.com/products/hdl-verifier/description3.html, August 2012

  26. 26.

    Reis L, Aguiar L, Baptista D, Morgado-Dias F (2011) ANGE-automatic neural generator. International conference on artificial neural network—ICANN’11, Espoo, Finland

  27. 27.

    Reis L, Aguiar L, Baptista FD, Morgado-Dias F (2013) A software tool for automatic generation of neural hardware. Int Arab J Inf Technol, 11(3)

  28. 28.

    Wright S, Marwala T (2007) Artificial intelligence techniques for steam generator modelling. School of Electrical and Information Engineering, P/Bag x3, Wits, South Africa

  29. 29.

    Baptista D, Morgado-Dias F (2012) On the implementation of different hyperbolic tangent solutions in FPGA. In 10th Portuguese conference on automatic control—CONTROLO’12, Funchal, Portugal

Download references

Acknowledgments

The authors would like to acknowledge the Portuguese Foundation for Science and Technology for their support for this work through project PEst-OE/EEI/LA0009/2011.

Author information

Affiliations

Authors

Corresponding author

Correspondence to Fábio D. Baptista.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Baptista, F.D., Morgado-Dias, F. Automatic general-purpose neural hardware generator. Neural Comput & Applic 28, 25–36 (2017). https://doi.org/10.1007/s00521-015-2034-5

Download citation

Keywords

  • Artificial neural networks
  • Hardware implementation
  • System Generator
  • Integrated software environment
  • Automatic implementation
  • Fixed-point notation