论文部分内容阅读
目前卷积神经网络应用已经在CPU或GPU的机器上实现,是以牺牲性能和能耗为代价。因此,研究热点转向如何高性能低功耗地来实现深度学习相关算法。近年来越来越多嵌入式机器视觉相关应用(实时图像和视频处理)层出不穷,但传统的嵌入式处理器计算能力十分有限,很多场景应用已经不能满足实时处理的要求。在分析当前嵌入式的处理器来实现基于深度学习相关算法的图像处理的基础上,最终采用一种ARM+FPAG的设计方法进行基于深度学习相关算法的图像处理,可以充分发挥卷积神经网络中的并行特性,并且具有实时性强、低功耗的优点。具体在Xilinx Zynq-7000架构基础上,通过进行合理的软硬件设计,最终搭建一个图像分类系统平台。论文中主要的工作有:深度学习对于抽象问题的认知具有显著成效,分析得出深度学习网络中的卷积神经网络的基本算法能够很好地运用在图像处理上,并在此基础上分析了当前卷积神经网络算法中计算部分进行软硬件设计的方法和技术手段。在了解基于Zynq So C硬件架构的图像分类系统框架及Zynq-7000开发平台的ARM部分的开发特性基础上,进行了图像分类系统的运行环境设计,根据系统的启动方式对Linux嵌入式操作系统进行了移植,从中涉及了U-boot、设备树文件和文件系统的设计。提出了一种同步数据流IO模型实现卷积神经网络在FPGA上部署的设计方案,优点是用最小的内存占用实现最佳的性能。借助Vivado HLS开发工具对Zynq的FPGA部分进行IP设计。同时根据数据流传输体系结构,将32位浮点和定点算法进行比较,分别设计卷积神经网络中各层IP。基于Zynq-7000平台对图像分类识别系统进行软硬协同设计,给出了软硬件开发流程。对软件部分Linux系统下硬件驱动程序进行了编写,同时提供编程接口以服务于上层用户。加速器验证了CIFAR-10原型显示出高达43倍的加速度,同时保持73.7%的分类精度和2.063W的低功耗,证实了Zynq-7000平台能较好地实现图像分类识别,在嵌入式图像应用上具有很高的实时性。