基于FPGA的多路CNN并行计算体系结构研究

来源 :北京工业大学 | 被引量 : 0次 | 上传用户:happyhubby
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
卷积神经网络(Convolutional Neural Network,CNN)是人工神经网络的一个重要分支,是近几年随着深度学习概念的提出,才开始广受关注的一种机器学习方法,是一种以卷积运算为核心的神经网络。不同于传统的基于预定义规则的特征提取方法,CNN可以直接从大规模输入图像中“学习”不同特定目标的特征,而不需人工干预,现已广泛应用于目标检测、模式识别、机器视觉、以及大数据视频处理等领域。随着物联网和嵌入式技术的日渐成熟,让终端具有智能的数据判断能力,和智能化的数据采集和实时决策能力,已成为一种趋势,即,智能边缘计算。智能边缘计算中的核心问题就是将智能处理功能迁移到终端。而基于神经网络的机器学习技术,正是使嵌入式设备具有数据识别和智能处理能力的方法。然而,神经网络更高的计算复杂度和计算参数规模将给嵌入式设备带来新的挑战。而现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA),具有高密度并行计算能力和低功耗的特点,正好适合于嵌入式设备对于新型智能化的应用需求,以及在功耗、体积和成本方面的需求,也正是当下深度神经网络计算和优化的主要实验平台。然而,现有的优化研究主要是针对单路CNN模型的优化。而未来,在FPGA集成度不断增大,CNN网络模型不断优化的前提下,在一个FPGA系统中实现多路CNN模型的并行运算,可能会是一种趋势。面向未来嵌入式领域多路CNN模型的并行计算需求,本文深入研究FPGA内部资源的并行计算能力,从最基础的二进制乘法理论为研究的着手点,以多项式代数乘法为分析方法,对FPGA最低层的DSP(Digital Signal Processor)乘法器资源、逻辑资源和存储资源进行并行优化研究。然后结合CNN的计算和数据存储特征展开基于FPGA的多路CNN的并行计算方法研究。最终提出一种高性能、低功耗的多路CNN并行系统设计和实现方法。具体内容如下:(1)针对单个DSP乘法器在低精度乘法计算中的低吞吐量问题,提出了一种基于单个DSP的多路乘法并行计算方法,有效的提高了单DSP乘法器整数或半精度浮点数的乘法计算的吞吐量。该方法以二进制乘法、多项式代数乘法理论为依据,主要是利用DSP乘法器的输入位宽不均匀特性,采用在高位输入中预留空精度位的方法,实现单时钟周期多路乘法的并行计算,包括低精度整数和半精度浮点数的并行计算。针对并行乘法计算过程中部分积求和产生的溢出位问题,提出了一种基于集合理论的求解方法。而后,基于此求解方法,提出了一种面向单个DSP乘法器的多路乘法并行参数搜索算法和并行参数优化模型,实现了对不同乘法有效位的最优并行参数搜索,并验证了该算法和优化模型的有效性。(2)针对现有CNN模型参数量化方法计算误差高,识别精度明显降低的问题,提出了一种双路CNN网络并行计算结构,该结构通过设计一种高效的浮点参数量化方法,支持在单个算法IP中的双路CNN模型的并行计算,通过双路模型的对比识别,可以明显提高FPGA中CNN模型的识别准确率。该量化方法还能够提高系统的计算性能,同时降低系统的资源使用。不同于其它优化方法,本文针对多路CNN的并行计算,以16位半精度浮点数为原型,采用8位精度量化的尾数有效位,支持在单个DSP乘法器上的双路CNN网络参数的并行计算。此外,又提出了一种基于指数分段的半精度浮点数规格化方法,实现同定点数之间的快速格式转换,使模型支持以标准半精度浮点数进行参数训练和输入,不需要额外的数据格式转换操作。采用以上量化方法的CNN模型几乎具有同原浮点模型相同的识别准确度。再有,因为在一个算法IP中同时支持双路不同CNN模型的对比识别,该方法还能够实现比单路原浮点CNN模型更高的识别准确度。(3)针对多路CNN系统DDR参数访问带宽的限制问题,提出了一种多路CNN算法IP的数据共享策略,该策略通过设计一种基于通道广播的参数共享方法,有效的提高了多路CNN算法IP的数据传输效率。该数据共享策略面向DDR存储系统和多路相同CNN算法IP之间的数据搬运,其中,CNN算法IP的网络参数一样。在这种情况下,本文创新性的提出一种基于通道广播的数据共享策略,通过设计并实现一种可配置多路复用DMA IP,利用FPGA中的逻辑资源,将单路DMA数据广播到多路CNN算法IP中,缓解DDR数据访问带宽的瓶颈问题,有效的提高了多路CNN并行系统的数据传输效率。(4)基于以上三个研究内容,提出了一种多路CNN算法IP的并行系统设计框架。主要解决了双并行CNN模型的训练,参数精度量化和并行计算,IP封装和系统集成,以及软件驱动和应用接口等,FPGA软硬系统设计和集成方法的问题。实验表明,本文提出的多路CNN算法IP的并行计算方法,比传统的独享DMA方式,具有更低的系统资源使用率和功耗,同时基于通道广播的参数共享方法可以明显提高多路CNN系统的数据传输效率和系统识别性能。以上研究工作包括多路CNN的并行计算,参数量化和数据共享策略,涵盖了FPGA底层计算资源到多路CNN算法IP整个系统的优化设计和集成方法,希望能够为未来基于FPGA的多路CNN并行优化方法的研究提供支撑和参考。
其他文献
近年来,随着全球电子商务产业迅猛发展,产业规模不断扩大,电子商务在国民经济中占据着越来越重要的地位。然而,许多不良商家受商业利益的驱使,利用电子商务平台信息不对称和
随着航空航天、高速列车以及潜艇舰船等结构物的设计趋向于大型化、高速化,其动力装置越来越向轻型、强载方向发展,由发动机激励和高速气流冲击造成的结构振动和噪声问题亟待
随着煤矿开采深度逐渐增加,地质构造条件也日趋复杂,冲击地压和煤与瓦斯突出等动力灾害频繁发生且日趋严重。地质构造对动力灾害的发生有着明显的促进作用,甚至起主要作用。
目的:心房颤动是临床上最常见的心律失常之一,其发病机制复杂,具有高患病率和复发率,严重威胁人类健康。近年来,随着生物测序技术及生物信息学的发展,非编码RNA在心血管疾病
目的:1.采用牺牲模板的微通道致孔方法制备具有定向交叉微通道纤维环及多孔髓核结构的丝素蛋白一体化支架;2.体外检测该仿生微通道丝素蛋白一体化椎间盘支架的生物相容性并观
智能交通系统(Intelligent Transportation System,ITS),是将先进的信息技术、传感器技术、电子控制技术、系统工程及人工智能技术等有效地综合运用、集成到交通管理中,从而
全程自养脱氮(CANON)系统以其高效、经济、节能等特点在废水处理领域展现出广阔的应用前景。制药废水作为一类高氨氮工业废水,氮素的污染治理刻不容缓。然而,这类废水中残留的
高校思想政治理论课是我国高校统一开设的一套用以进行主流意识形态思想与理论教育的课程体系,由专科生、本科生、硕士研究生和博士研究生的思想政治理论课的必修课和选修课
集成激光雷达、组合导航、相机等多种传感器的移动测量系统广泛应用于测绘、智能驾驶等多种行业当中。传感器的多元化很大程度上推动了移动测量技术的快速发展,但也为移动测
再生混凝土可实现废弃混凝土的循环利用,减少砂、石等自然资源开采与建筑垃圾填埋,解决了部分环保问题,对实现建筑资源的可持续发展具有重要意义。再生混凝土具有较广阔的工