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.
Similar content being viewed by others
References
Loiseau L (2001) Methodology design reuse. Miranda Technologies Inc., Canada
International Technology Roadmap for Semiconductors (2001). http://www.itrs.net/Links/2001ITRS/Home.htm
Merchant SG, Peterson GD (2010) Evolvable block-based neural network design for applications in dynamic environments. J VLSI Des. doi:10.1155/2010/251210
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
Uker A, Alkar AZ (2006) HW/SW codesign of FPGA-based neural networks. In: Fifteenth Turkish symposium on artificial intelligence and neural networks. TAINN
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
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
Soares AB, Susin AA, Guimaraes LV (2006) Automatic generation of neural networks for image processing. ISCAS 3201–3204
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
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
Benromdhane MS, Madisetti VK, Hines JW (1996) Quick turnaround ASIC design, core behavioural synthesis in VHDL. Kluwer, Norwell
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
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
IP LogiCORE FIR Compiler v5.0. DS534 March 1, 2011. Available in the internet at: http://www.xilinx.com
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
Demuth H, Beale M, Hagan M (2009) Neural network toolbox™ user’s guide. The Math Works Inc., Natick
NC3003 Digital processor for neural networks, Data sheet, Rel. 12/99. http://www.neuricam.com
Diepenhorst M et al (1999) Automatic generation of VHDL code for neural applications. Int Joint Conf Neural Netw 4:2302–2305
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
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
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
Keating M, Bricaud P (2002) Reuse Methodology Manual for System-On-A-Chip Designs. Kluwer, USA
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
Freeman JA, Skapura DM (1991) Neural networks Algorithms, applications and programming techniques. Addison Wesley publisher, Reading
Kohonen T (1989) Self-organization and associative memory, 3rd edn. Springer, Berlin
Hopfield JJ (1982) Neural networks and physical systems with emergent collective computational abilities. Proc Natl Acad Sci USA 79(8):2554–2558
Wirthlin MJ, Hutchings BL (1998) Improving functional density using run-time circuit reconfiguration. IEEE Trans Very Large Scale Integr Syst 6(2):247–256
Airiau R, Berge JM, Olive V (1994) Circuit Synthesis with VHDL. Kluwer Academic Publishers, USA
Sagdeo V (1998) The complete Verilog book, edition Lavoisier, 2000–2009
Thorston G et al (2002) System design with systemC, ©Lavoisier
ISE foundation user Guide
Leonardo Spectrum user Guide, http://www.mentorgraphics.com
ModelSIM user Guide
Hutchings BL, Wirthlin MJ (1995) Implementation approaches for reconfigurable logic applications. In: 5th international workshop on field programmable logic and applications 419–428
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
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
ISE Core generator, http://www.xilinx.com
Patterson DW (1996) Artificial neural networks, theory and applications. Prentice Hall, New Delhi
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
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
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
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00521-011-0764-6