Abstract
An efficient FPGA or ASIC based hardware implementation of deep neural networks face the challenge of limited chip area, and therefore an area efficient architecture is required to fully harness the capacity of parallel processing of FPGA and ASIC in contrast to general purpose processors. In literature, the challenges are to investigate a generalized mathematical model and architecture for neuron block in an ANN implementation. We have proposed a generalized architecture for neuron implementation based on the shift-and-add algorithm, collectively known as Coordinate Rotation Digital Computer (CORDIC) algorithm, having a wide range of application. The look-up-table (LUT) based approach with a shift-and-add algorithm is an alternative technique for polynomial approximation and implementation. Paper explains how the CORDIC algorithm works and investigates the power and area efficient versatile computational unit for ANN application. The derived model proves that for the hyperbolic tangent function required a double pseudo-rotation and additional subtraction compares to the sigmoid function. In this reference versatile approach based optimized sigmoid activation function is implemented. The function is synthesized and validate on Xilinx zynq XC7Z010clg400 SoC and result reveals the minimum resources utilization.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Mukta, P., Kumar, U.A.: Neural networks and statistical techniques: a review of applications. Expert Syst. Appl. 36(1), 2–17 (2009)
Herbordt, M.C., et al.: Achieving high performance with FPGA-based computing. Computer 40(3), 50–57 (2007)
Wong, H., Betz, V., Rose, J.: Comparing FPGA vs. custom CMOS and the impact on processor microarchitecture. In: Proceedings of the 19th ACM/SIGDA International Symposium on Field Programmable Gate Arrays. ACM (2011)
Nurvitadhi, E., et al.: Accelerating binarized neural networks: comparison of FPGA, CPU, GPU, and ASIC. In: 2016 International Conference on Field-Programmable Technology (FPT). IEEE (2016)
Liu, J., Liang, D.: A survey of FPGA-based hardware implementation of ANNs. In: International Conference on Neural Networks and Brain, ICNN&B 2005, vol. 2. IEEE (2005)
Sadeghian, M., Stine, J., Walters, E.: Optimized linear, quadratic and cubic interpolators for elementary function hardware implementations. Electronics 5(2), 17 (2016)
Cockrum, C.K.: Implementation of the CORDIC algorithm in a digital down-converter (2008)
Andraka, R.: A survey of CORDIC algorithms for FPGA based computers. In: Proceedings of the 1998 ACM/SIGDA Sixth International Symposium on Field Programmable Gate Arrays, pp. 191–200. ACM (1998)
Despain, A.M.: Fourier transform computers using CORDIC iterations. IEEE Trans. Comput. 100(10), 993–1001 (1974)
Duh, W.-J., Wu, J.-L.: Implementing the discrete cosine transform by using CORDIC techniques. In: International Symposium on VLSI Technology, Systems and Applications, pp. 281–285. IEEE (1989)
Hu, Y.H., Naganathan, S.: A novel implementation of a chirp Z-transform using a CORDIC processor. IEEE Trans. Acoust. Speech Sig. Process. 38(2), 352–354 (1990)
Walther, J.S.: A unified algorithm for elementary functions. In: Proceedings of the Spring Joint Computer Conference, 18–20 May 1971, pp. 379–385. ACM (1971)
Zhang, M., Vassiliadis, S., Delgado-Frias, J.G.: Sigmoid generators for neural computing using piecewise approximations. IEEE Trans. Comput. 45(9), 1045–1049 (1996)
Gomar, S., Mirhassani, M., Ahmadi, M.: Precise digital implementations of hyperbolic tanh and sigmoid function. In: 2016 50th Asilomar Conference on Signals, Systems and Computers, pp. 1586–1589. IEEE (2016)
Basterretxea, K.: Recursive sigmoidal neurons for adaptive accuracy neural network implementations. In: NASA/ESA Conference on Adaptive Hardware and Systems (AHS). IEEE (2012)
Basterretxea, K., et al.: An experimental study on nonlinear function computation for neural/fuzzy hardware design. IEEE Trans. Neural Netw. 18(1), 266–283 (2007)
Yang, T., Wei, Y., Tu, Z., et al.: Design space exploration of neural network activation function circuits. IEEE Trans. Comput.-Aided Des. Integr. Circ. Syst., 1 (2018). https://doi.org/10.1109/TCAD.2018.2871198
LeCun, Y.A., Bottou, L., Orr, G.B., Müller, K.-R.: Efficient backprop. In: Montavon, G., Orr, G.B., Müller, K.-R. (eds.) Neural Networks: Tricks of the Trade. LNCS, vol. 7700, pp. 9–48. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-35289-8_3
Ferreira, P., et al.: A high bit resolution FPGA implementation of a FNN with a new algorithm for the activation function. Neurocomputing 71(1–3), 71–77 (2007)
Acknowledgment
The authors would like to thank the University Grant Commission (UGC) New Delhi, Government of India under JRF scheme with award no. 22745/(NET-DEC. 2015) for providing financial support and Special Manpower Development Program Chip to System Design, Department of Electronics and Information Technology (DeitY) under the Ministry of Electronics and Information Technology, Government of India for providing necessary Research Facilities.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Raut, G., Bhartiy, V., Rajput, G., Khan, S., Beohar, A., Vishvakarma, S.K. (2019). Efficient Low-Precision CORDIC Algorithm for Hardware Implementation of Artificial Neural Network. In: Sengupta, A., Dasgupta, S., Singh, V., Sharma, R., Kumar Vishvakarma, S. (eds) VLSI Design and Test. VDAT 2019. Communications in Computer and Information Science, vol 1066. Springer, Singapore. https://doi.org/10.1007/978-981-32-9767-8_28
Download citation
DOI: https://doi.org/10.1007/978-981-32-9767-8_28
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-32-9766-1
Online ISBN: 978-981-32-9767-8
eBook Packages: Computer ScienceComputer Science (R0)