An algorithm for compact neural network hardware implementation is presented, which exploits the special properties of the Boolean functions describing the operation of perceptrones (artificial neurones with step activation function). The algorithm contains three main steps: the digitisation of the ANN mathematical model, the conversion of the digitised model into a logic gate structure, and finally the hardware optimisation by elimination of redundant logic gates. A set of C++ programs has been developed to implement the algorithm. The programs generate an optimised VHDL model of the ANN implementation. This strategy bridges the gap between the ANN design and simulation software and software packages used in hardware design (Viewlogic, Xilinx). Although the method is directly applicable only to neural networks composed of neurones with step activation functions, it can also be extended to sigmoidal functions.
[1]
G. G. Stokes.
"J."
,
1890,
The New Yale Book of Quotations.
[2]
J. G. Khor,et al.
Neural and Fuzzy Logic Control of Drives and Power Systems
,
2002
.
[3]
Helge Ritter,et al.
Neural Networks for Robotics
,
1992
.
[4]
Andrei Dinu.
FPGA neural controller for three-phase sensorless induction motor drive systems.
,
2000
.
[5]
Nirmal K. Bose,et al.
Neural network design using Voronoi diagrams
,
1993,
IEEE Trans. Neural Networks.
[6]
Okyay Kaynak,et al.
Neuro-fuzzy architecture for CMOS implementation
,
1999,
IEEE Trans. Ind. Electron..
[7]
L. C. Jain.
Guest editorial special section on fusion of neural nets, fuzzy systems, and genetic algorithms in industrial applications
,
1999
.