Skip to main content
Log in

Application of design reuse to artificial neural networks: case study of the back propagation algorithm

  • Original Article
  • Published:
Neural Computing and Applications Aims and scope Submit manuscript

Abstract

The aim of this paper is to propose a new high-level hardware design reuse methodology for automatic generation of artificial neural networks (ANNs) descriptions. A case study of the back propagation (BP) algorithm is proposed. To achieve our goal, the proposed design methodology is based on a modular design of the ANN. The originality of the work is the application of design for reuse (DFR) and the design with reuse (DWR) concepts to ANNs. The DFR is used for the generation of the general ANN architecture, while the DWR is applied for the exploration and exploitation of predefined ANN submodules components that are stocked in a library. The result is a synthesis and parameterisable soft IP-ANN VHDL code ready for placement and routing. With this approach, the user/designer can fix the ANN parameters and choose between different architectural possibilities and performances. The approach has been applied to the three case figures of the BP algorithm. These are the “off-chip implementation,” the “on-chip static implementation” and the “on-chip-based run time reconfiguration (RTR).” To validate our approach, performance evaluation of the three case architectures of the BP algorithm, using the Virtex-II and Virtex-4 FPGA is done through three examples: the XOR problem, a cardiac arrhythmia classifier and a high-dimension ANN circuit. To evaluate the design reuse concept, two tests are done: the first one concerns estimation of the cost of the design. Results show that the application of the DFR is time consuming compared to the design from scratch: 168% for the “off-chip implementation,” 256% for the “on-chip static implementation” and 260% for the “on-chip RTR.” However, after reuse, the design time is reduced to 0.5% for “off-chip implementation,” 2.08% for “on-chip static implementation” and 2.5% for “on-chip RTR implementation.” The second test concerns evaluation of the generated IP-ANN code, using the OpenMore tool. Results show a mean score of 62% which lead us to conclude that the IP-ANN code is good to be reused.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

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

Similar content being viewed by others

References

  1. Loiseau L (2001) Methodology design reuse. Miranda Technologies Inc., Canada

    Google Scholar 

  2. International Technology Roadmap for Semiconductors (2001). http://www.itrs.net/Links/2001ITRS/Home.htm

  3. Merchant SG, Peterson GD (2010) Evolvable block-based neural network design for applications in dynamic environments. J VLSI Des. doi:10.1155/2010/251210

  4. Wolf DF et al (2001) Using embedded processors in hardware models of artificial neural networks. In: Proceeding of the Brazilian symposium of intelligent automation, Canela, Brazil

  5. Uker A, Alkar AZ (2006) HW/SW codesign of FPGA-based neural networks. In: Fifteenth Turkish symposium on artificial intelligence and neural networks. TAINN

  6. Menendez A, Paillet G (2008) Fish inspection system using a parallel neural network chip and the image knowledge builder application. Artif Intell Mag 29(1):21–28

    Google Scholar 

  7. Harkin J, Morgan F, McDaid L, Hall S, McGinley B, Cawley S (2009) A reconfigurable and biologically inspired paradigm for computation using network-on-chip and spiking neural networks. Int J Reconfig Comput, Hindawi Publishing Corporation; Article ID 908740, 13. doi:10.1155/2009/908740

  8. Soares AB, Susin AA, Guimaraes LV (2006) Automatic generation of neural networks for image processing. ISCAS 3201–3204

  9. Rezzoug N, Gorce P (2006) Robotic grasping: a generic neural network architecture, mobile robots towards new applications. In: Aleksandar Lazinica (ed) ISBN 3-86611-314-5

  10. Ortigosa EM, Caas A, Ros E, Ortigosa PM, Daz J (2006) Hardware description of multi-layer perceptrons with different abstraction levels. Micrprocess Microsyst 30(7):435–444

    Article  Google Scholar 

  11. Benromdhane MS, Madisetti VK, Hines JW (1996) Quick turnaround ASIC design, core behavioural synthesis in VHDL. Kluwer, Norwell

    Book  Google Scholar 

  12. Jain R, Yang P, Yoshino T (1991) FIRGEN: a computer aided design system for high performance FIR filter integrated circuits. IEEE Trans Signal Process 39:1655–1668

    Article  Google Scholar 

  13. Benromdhane MS, Madesetti VK (1994) LMSGEN: a prototyping environment for programmable and adaptive digital filters in VLS, Chapter in VLSI Signal Processing-VII, pp 33–42

  14. IP LogiCORE FIR Compiler v5.0. DS534 March 1, 2011. Available in the internet at: http://www.xilinx.com

  15. Milder PA, Ahmmad M, Hoe JC, Puschel M (2006) Fast and accurate resource estimation of automatically generated custom DFT IP cores, FPGA’06,. Copyright 2006 ACM 1595932925/06/0002

  16. Demuth H, Beale M, Hagan M (2009) Neural network toolbox™ user’s guide. The Math Works Inc., Natick

    Google Scholar 

  17. NC3003 Digital processor for neural networks, Data sheet, Rel. 12/99. http://www.neuricam.com

  18. Diepenhorst M et al (1999) Automatic generation of VHDL code for neural applications. Int Joint Conf Neural Netw 4:2302–2305

    Google Scholar 

  19. Braga ALS, Llanos CH, Rincon MA, Jacobi RP VAANGen: a flexible CAD tool for hardware implementation of artificial neural networks. In: Proceedings of the 2005 international conference on reconfigurable computing and FPGAs, IEEE Computer Society

  20. Torres-Huitzil C, Girau B, Gauffriau A (2007) Hardware/software codesign for embedded implementation of neural networks, reconfigurable computing: architectures, tools and applications. Lect Notes Comput Sci 4479:167–178

    Google Scholar 

  21. McBader S, Lee P, Sartori A (2004) The impact of modern FPGA architectures on neural hardware: a case study of the TOTEM neural processor. IEEE International Joint Conference on Neural Networks, pp 3149–3154

  22. Keating M, Bricaud P (2002) Reuse Methodology Manual for System-On-A-Chip Designs. Kluwer, USA

    Google Scholar 

  23. Gajski DD, Wu AC-H et al (2000) Essential issues for IP reuse, design automation conference. In: Proceedings of the ASP-DAC 2000. Asia and South Pacific, pp 37–42

  24. Freeman JA, Skapura DM (1991) Neural networks Algorithms, applications and programming techniques. Addison Wesley publisher, Reading

    MATH  Google Scholar 

  25. Kohonen T (1989) Self-organization and associative memory, 3rd edn. Springer, Berlin

    Book  Google Scholar 

  26. Hopfield JJ (1982) Neural networks and physical systems with emergent collective computational abilities. Proc Natl Acad Sci USA 79(8):2554–2558

    Article  MathSciNet  Google Scholar 

  27. Wirthlin MJ, Hutchings BL (1998) Improving functional density using run-time circuit reconfiguration. IEEE Trans Very Large Scale Integr Syst 6(2):247–256

    Article  Google Scholar 

  28. Airiau R, Berge JM, Olive V (1994) Circuit Synthesis with VHDL. Kluwer Academic Publishers, USA

    Book  MATH  Google Scholar 

  29. Sagdeo V (1998) The complete Verilog book, edition Lavoisier, 2000–2009

  30. Thorston G et al (2002) System design with systemC, ©Lavoisier

  31. ISE foundation user Guide

  32. Leonardo Spectrum user Guide, http://www.mentorgraphics.com

  33. ModelSIM user Guide

  34. Hutchings BL, Wirthlin MJ (1995) Implementation approaches for reconfigurable logic applications. In: 5th international workshop on field programmable logic and applications 419–428

  35. Izeboudjen N, Farah A, Bessalah H, Bouridene A, Chikhi N (2007) Towards a platform for FPGA implementation of the MLP based back propagation algorithm, IWANN’97. Lect Notes Comput Sci 497–505

  36. Izeboudjen N, Farah A, Bessalah H, Bouridene A, Chikhi N (2008) High level design approach for FPGA implementation of ANNs, encyclopaedia of artificial intelligence, ISBN 978-1-59904-849-9, Information Science reference in USA and UK, pp 831–839

  37. ISE Core generator, http://www.xilinx.com

  38. http://www.opencores.org

  39. Patterson DW (1996) Artificial neural networks, theory and applications. Prentice Hall, New Delhi

    MATH  Google Scholar 

  40. Izeboudjen N, Farah A, Titri S, Boumeridja H (1999) Digital implementation of artificial neural networks: from VHDL description to FPGA implementation, 5th international work-conference on artificial and natural neural networks (IWANN 99). Lect Notes Comput Sci, Springer Verlag Editor, vol 1607, pp 139–148

  41. http://www.openMore.com

  42. Nichols KR (2004) A reconfigurable computing architecture for implementing artificial neural networks on FPGA. Master thesis, University of Guelf, UK, p 124. http://citeseerx.ist.psu.edu

Download references

Acknowledgments

This work was done in part in the Queens University of Belfast. Department of Computer Science, ECIT, UK, as part of a scholarship for the completion of the doctoral thesis “Programme National Exceptionnel”, offered by the Ministry of Higher Education and Research (MESRS) in Algeria.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to N. Izeboudjen.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Izeboudjen, N., Bouridane, A., Farah, A. et al. Application of design reuse to artificial neural networks: case study of the back propagation algorithm. Neural Comput & Applic 21, 1531–1544 (2012). https://doi.org/10.1007/s00521-011-0764-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-011-0764-6

Keywords

Navigation