基于FPGA的卷积神经网络加速系统

  • 李小燕 ,
  • 张欣 ,
  • 闫小兵 ,
  • 任德亮 ,
  • 李彦青 ,
  • 傅长娟
展开
李小燕(1994—),女,湖北十堰人,河北大学在读硕士研究生,主要从事忆阻器等新型电子器件集成和用于集成的逻辑控制嵌入式电路设计研究. E-mail:18612969742@163.com

收稿日期: 2018-09-02

  网络出版日期: 2019-01-25

基金资助

国家自然科学基金资助项目(61674050)

Convolutional neural network acceleration system based on FPGA

  • LI Xiaoyan ,
  • ZHANG Xin ,
  • YAN Xiaobing ,
  • REN Deliang ,
  • LI Yanqing ,
  • FU Changjuan
Expand
  • 1. College of Telecommunications and Information Engineering, Hebei University, Baoding 071002, China; 2. Baoding Yonghong Foundry Machinery Factory, Baoding 072150, China

Received date: 2018-09-02

  Online published: 2019-01-25

摘要

以在现场可编程门阵列(FPGA)上部署卷积神经网络为背景,提出了卷积神经网络在硬件上进行并行加速的方案.主要是通过分析卷积神经网络的结构特点,对数据的存储、读取、搬移以流水式的方式进行,对卷积神经网络中的每一层内的卷积运算单元进行展开,加速乘加操作. 基于FPGA特有的并行化结构和流水线的处理方式可以很好地提升运算效率,从对ciafr-10数据集的物体分类结果看,在不损失正确率的前提下,当时钟工作在800 MHz时,相较于中端的Intel处理器,可实现4倍左右的加速.卷积神经网络通过循环展开并行处理以及多级流水线的处理方式,可以加速卷积神经网络的前向传播,适合于实际工程任务中的需要.

本文引用格式

李小燕 , 张欣 , 闫小兵 , 任德亮 , 李彦青 , 傅长娟 . 基于FPGA的卷积神经网络加速系统[J]. 河北大学学报(自然科学版), 2019 , 39(1) : 99 -105 . DOI: 10.3969/j.issn.1000-1565.2019.01.017

Abstract

In this paper, the convolutional neural network is deployed on the Field Programmable Gate Array(FPGA). As a background, a convolutional neural network is proposed to accelerate hardware. The paper analyzes the structural characteristics of convolutional neural networks, stores, reads, and moves data in a stream-style manner. Next, the convolution unit in each layer of the convolutional neural network is expanded to speed up the multiplication and addition operations. Based on the(FPGA)unique parallel structure, pipeline processing method can effectively improve the efficiency of the operation. From object classification results for the ciafr-10 dataset, at 800MHz operating frequency and without loss of accuracy, FPGA compared to General purpose processor can achieve 4 times speed up, Convolutional neural network through parallel process and multi-stage pipeline process can accelerate forward propagation of convolutional neural networks, being suitable for the demand of practical engineering tasks.

参考文献

[1] LI H, FAN X, JIAO L, et al. A high performance FPGA-based accelerator for large-scale convolutional neural networks[C] //IEEE, 26th International Conference on Field Programmable Logic and Applications, 2016:1-9. DOI: 10.1109/FPL. 2016. 7577308.
[2] ZHANG C, LI P, SUN G, et al. Optimizing FPGA-based accelerator design for deep convolutional neural networks[C] //ACM, Proceedings of the 2015 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, 2015:161-170. DOI: 10.1145/2684746. 2689060.
[3] FARABET C, POULET C, HAN J Y, et al. CNP: An FPGA-based processor for convolutional networks[C] // IEEE, International Conference on Field Programmable Logic and Applications, 2009:32-37. DOI: 10.1109/FPL. 2009. 5272559.
[4] PERKO M, FAJFAR I, TUMA T, et al. Low-cost, high-performance CNN simulator implemented in FPGA[C] //IEEE, Proceedings of the 2000 6th IEEE International Workshop on Cellular Neural Networks and Their Applications, 2000:277-282. DOI: 10. 1109/CNNA. 2000. 876858.
[5] FARABET C, POULET C, LECUN Y. An FPGA-based stream processor for embedded real-time vision with Convolutional Networks[C] // IEEE, 12th International Conference on Computer Vision Workshops, 2009:878-885. DOI: 10. 1109/ICCVW. 2009. 5457611.
[6] SANKARADAS M, JAKKULA V, CADAMBI S, et al. A massively parallel coprocessor for convolutional neural networks[C] //IEEE, 20th IEEE International Conference on Application-Specific Systems, Architectures and Processors, 2009:53-60. DOI: 10.1109/ASAP.2009.25.
[7] MA Y, CAO Y, VRUDHULA S, et al. Optimizing loop operation and dataflow in FPGA acceleration of deep convolutional neural networks[C] //ACM, Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, 2017:45-54. DOI:10.1145/3020078.3021736.
[8] CHANG J W, KANG S J. Optimizing FPGA-based convolutional neural networks accelerator for image super-resolution[C] //IEEE Press, Proceedings of the 23rd Asia and South Pacific Design Automation Conference, 2018: 343-348. DOI: 10.1109/ASPDAC.2018.8297347.
[9] GARCIA C, DELAKIS M. A neural architecture for fast and robust face detection [C] //IEEE, 16th International Conference on Pattern Recognition. 2002, 2(11):44-47. DOI: 10.1109/ICPR.2002.1048232.
[10] DELAKIS M, GARCIA C. Text detection with convolutional neural networks[C] // Proceedings of the Third International Conference on Computer Vision Theory and Applications, 2008:290-294.
[11] ZHANG C, LI P, SUN G, et al. Optimizing FPGA-based accelerator design for deep convolutional neural networks[C] //ACM, Proceedings of the 2015 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, 2015:161-170. DIO: 10.1145/2684746.2689060.
[12] PEEMEN M, SETIO A A A, MESMAN B, et al. Memory-centric accelerator design for convolutional neural networks[C] //Proceedings of the 2013 IEEE 31th International Conference on Computer Design, 2013:13-19. DOI: 10.1109/ICCD.2013.6657019.
[13] LI N, TAKAKI S, TOMIOKAY Y, et al. A multistage dataflow implementation of a deep convolutional neural network based on FPGA for high-speed object recognition[C] //IEEE, 2016 IEEE Southwest Symposium on Image Analysis and Interpretation, 2016:165-168. DOI: 10.1109/SSIAI.2016.7459201.
[14] BACIS M, NATALE G, SOZZO E D, et al. A pipelined and scalable dataflow implementation of convolutional neural networks on FPGA[C] //IEEE, Parallel and Distributed Processing Symposium Workshops, 2017:90-97. DOI:10.1109/IPDPSW.2017.44.
[15] NATALE G, BACIS M, SANTAMBROGIO M D. On how to design dataflow FPGA-based accelerators for convolutional neural networks[C] //IEEE, 2017 IEEE Computer Society Annual Symposium on VLSI, 2017:639-644. DOI: 10.1109/ISVLSI.2017.126.
文章导航

/

〈 〉