Font Size: a A A

Design Of Software And Hardware Integrate Platform For Convolutional Neural Network

Posted on:2020-02-29Degree:MasterType:Thesis
Country:ChinaCandidate:G J WeiFull Text:PDF
GTID:2428330575456310Subject:Electronic and communication engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of artificial intelligence,deep learning is gradually applied to various fields.Convolutional Neural Network(CNN),as a typical multi-layer neural network,is always at the core of deep learning research.With the development of CNNs,it becomes a great challenge to implement larger CNNs on mobile platforms,since spatial complexity and time complexity of networks are gradually increasing.It has been difficult to meet the speed requirement of such a large amount of computation for ordinary embedded equipment.The Field Programmable Gate Array(FPGA),integrates a large number of programmable logic units,digital processing units and internal storage units.It has the advantages of high performance,low power consumption and reconfigurability.However,it still faces many challenges to implement the CNN based on FPGA.Firstly,the Hardware Description Language(HDL)used to program in FPGA is poorly flexible and has a long development cycle.Secondly,due to limited computing and storage resources,Effective resource allocation is the key to the FPGA development.Development language and resource allocation increase the difficulty of algorithm researchers.The thesis designs the software and hardware integrated platform of CNNs based on FPGA.The main work of this thesis is as follows:1.Aiming at the main algorithm design requirements of CNN based on FPGA,a framework of CNN modular development platform based on FPGA is designed.The hardware platform is mainly responsible for module algorithm optimization,while the software platform is responsible for module interface design.Through the scheme of modular design,the platform encapsulates three algorithms of convolution,pooling and activation function into independent computing modules.The simulation results verify the feasibility of each module.2.To accelerate the YOLO(You Only Look Once)algorithm based on FPGA,which is applied to video detection,an architecture of CNN real-time detection system based on FPGA is designed.The network model of FPGA-YOLO is formed by optimizing the network algorithm and resource storage with the characteristics of the hardware of the FPGA,while the software platform is responsible for image processing and network interface design.The average video processing rate of this architecture is 0.0515s per frame,which is 46.9 times that of the experimental PC platform.And real-time detection of pedestrians and vehicles in video stream is realized.At the same time,by reducing flip-flop rate,the overall power consumption of the platform is reduced by 3.3%.3.Aiming at the problem of CNN resource sharing inside FPGA,a cloud-based CNN platform architecture based on FPGA is designed.Through the design based on the traditional socket communication mechanism,the communication software development is carried out according to the client/server(C/S)model,and the function of the client sharing the internal CNN resources of the cloud FPGA through the network is realized.At the same time,through the development based on serial communication,the function of FPGA reconfiguration for different needs is realized.
Keywords/Search Tags:FPGA, CNN, YOLO, Deep Learning
PDF Full Text Request
Related items