FPGA Implementation of Artificial Neurons: Comparison study

This paper proposes three different architectures for implementing an artificial neuron model, with three types of processing techniques: serial, partial parallel, and full parallel. The sigmoid function is implemented using three approximation approaches. These architectures are implemented on Xilinx Spartan-IIIE FPGA chip using a 16 bit fixed-point arithmetic representation. A comparison is then made between the three alternative architectures with different neuron computation methods for performance and area. Results obtained show an improvement when a pure hardware implementation is used over a pure software implementation (MicroBlaze soft core processor). However, using a hardware implementation results in a much higher performance with somewhat lower flexibility, while the hardware/software co-design implementation shows a moderate performance, flexibility, and usage area.

[1]  M. A. Bañuelos-Saucedo,et al.  Implementation of a neuron model using FPGAs , 2003 .

[2]  Hua Hu,et al.  Key Issues of FPGA Implementation of Neural Networks , 2008, 2008 Second International Symposium on Intelligent Information Technology Application.

[3]  S. Hyakin,et al.  Neural Networks: A Comprehensive Foundation , 1994 .

[4]  Shawki Areibi,et al.  A Handel-C implementation of the back-propagation algorithm on field programmable gate arrays , 2005, 2005 International Conference on Reconfigurable Computing and FPGAs (ReConFig'05).

[5]  Xiaoguang Li,et al.  A hardware/software co-design approach for face recognition , 2004, Proceedings. The 16th International Conference on Microelectronics, 2004. ICM 2004..

[6]  Shawki Areibi,et al.  An FPGA Implementation of the LMS Adaptive Filter for Audio Processing , 2006, 2006 IEEE International Conference on Reconfigurable Computing and FPGA's (ReConFig 2006).

[7]  Hon Keung Kwan Simple sigmoid-like activation function suitable for digital hardware implementation , 1992 .

[8]  Shawki Areibi,et al.  Arithmetic formats for implementing artificial neural networks on FPGAs , 2006, Canadian Journal of Electrical and Computer Engineering.

[9]  Steve Kilts Control System Components , 2008 .

[10]  Shawki Areibi,et al.  The Impact of Arithmetic Representation on Implementing MLP-BP on FPGAs: A Study , 2007, IEEE Transactions on Neural Networks.

[11]  Keechul Jung,et al.  GPU implementation of neural networks , 2004, Pattern Recognit..