一种基于ZYNQ的通用卷积神经网络加速结构及设计方法技术

技术编号:22330852 阅读:40 留言:0更新日期:2019-10-19 12:24
本发明专利技术提供了一种可以用来加速卷积神经网络中多通道卷积运算的方法,其特点是该加速器可以加速任何结构的神经网络,可编程、可在线配置,支持的特征图大小、特征图通道数、卷积核大小、卷积核通道数、卷积步幅灵活可变,控制逻辑简单,卷积运算并行度高,该加速器可以应用到任何ZYNQ架构的平台上,用户可以根据自己芯片中dsp的资源对加速电路裁剪;最小可以支持128个dsp(Digital Signal Processing)资源。本发明专利技术所述一种基于ZYNQ的通用卷积神经网络加速结构,包括:ARM处理器、总线互联、DDR4控制器、内存条、寄存器、卷积运算通路、辅助运算通路、池化运算通路、访存模块。

【技术实现步骤摘要】
一种基于ZYNQ的通用卷积神经网络加速结构及设计方法
本专利技术涉及卷积神经网络硬件加速
,特别涉及一种基于ZYNQ的通用卷积神经网络加速结构及设计方法。
技术介绍
卷积神经网络(ConvolutionNeuralNetwork,CNN)在计算机视觉领域应用广泛,尤其是在目标检测和图像识别等方面体现出了良好的应用前景。边缘计算是一种全新的计算模式,其概念是在靠近数据中心的边缘地带直接对数据进行处理,而不用传回服务器处理。在目标检测中使用边缘计算能够带来一系列好处:直接在采集端的硬件设备上处理图像,不需要传回上位机,节省数据传输的时间、减少数据传输的开销。通过优化加速卷积神经网络,实现在硬件设备上的高效处理具有重要的实际意义。目前,GPU是加速模型训练或应用的主流选择,而GPU由于其很大的功耗,而这对于像无人机,嵌入式设备这些对功耗效率实时性要求高的终端应用场景来说不适合移动应用。相比之下,FPGA效率高、适应性强,更适合于移动加速。目前提出的FPGA设计方法主要集中在特定的神经网络加速方法上,仅对特定的算法实现了电路结构的加速,通用性差,无法实现其他算法的复用。随着深度卷积神经网络层数的增加,参数量的爆炸性增长,其计算复杂度和计算力需求也水涨船高。人工智能芯片主要用于训练和推理两个环节,其中在线推理环节是指利用训练出来的模型在线响应用户需求,如无人驾驶,智能家居等领域,基于实时性和隐私安全的考虑,需要在嵌入式智能终端部署计算平台,并且要尽可能地减少时延,这就对计算速度提出了要求。另外,对于可穿戴设备等嵌入式设备对功耗和效率的要求也非常高。
技术实现思路
本专利技术提供了一种可以用来加速卷积神经网络中多通道卷积运算的方法,其特点是该加速器可以加速任何结构的神经网络,可编程、可在线配置,支持的特征图大小、特征图通道数、卷积核大小、卷积核通道数、卷积步幅灵活可变,控制逻辑简单,卷积运算并行度高,该加速器可以应用到任何ZYNQ架构的平台上,用户可以根据自己芯片中dsp的资源对加速电路裁剪,最小可以支持128个dsp(DigitalSignalProcessing)资源。本专利技术的技术方案具体实现方案如下:本专利技术所述一种基于ZYNQ的通用卷积神经网络加速结构,包括:ZYNQ芯片、内存条;所述内存条,用于存储卷积网络计算的中间特征数据、每层网络的权重数据、偏置数据,以完成整个网络的运算;所述ZYNQ芯片,用于完成整个加速器电路的部署及实现,包括:ARM处理器、总线互联、DDR4控制器、FPGA;所述ARM处理器,用于配置和调度所述FPGA中设计的硬件电路;所述总线互联模块,用于将所述FPGA与所述DDR4控制器中的数据接口转换成统一的接口以供所述ARM处理器访问;所述DDR4控制器,用于访问所述内存条中的数据以及控制从所述总线互联写入数据到所述内存条;所述FPGA,包括:寄存器、卷积运算通路、辅助运算通路、池化运算通路、访存模块;所述寄存器,用于存储电路的配置信息,以完成不同规模的卷积网络计算,同时,可以通过每次配置不同的数据,以完成不同结构的卷积网络的计算;所述卷积运算通路,用于从所述访存模块中传输来的权重数据与特征数据完成卷积网络中的卷积计算,所述卷积运算通路的dsp;所述辅助运算通路,用于从所述访存模块中传输来的权重数据与特征数据用于完成所述卷积运算通路数据的加载与重构,保证计算资源充分利用,可通过所述辅助运算通路对特征子块提前分割与加载;所述池化运算通路,用于从所述访存模块中传输来的特征数据完成卷积网络中的池化运算;所述访存模块,用于完成将所述总线互联模块中传输的权重数据、特征数据加载到所述卷积运算通路、所述辅助运算通路、所述池化运算通路来完成卷积网络的计算,同理,所述卷积运算通路、所述辅助运算通路、所述池化运算通路计算完成的结果会通过所述访存模块传输到所述总线互联模块中。本专利技术的有益效果为:本专利技术实施例提出的基于FPGA的通用定点数神经网络卷积加速器硬件结构,在通用FPGA平台上实现了高速、通用的卷积神经网络卷积运算,理论上可实现无限大复杂度的卷积运算,适用于任何使用卷积运算的神经网络加速,具有高度的通用性,此外具有比以往单FPGA实现计算有更低的设计复杂度和更高的通用性,比单CPU、GPU实现计算有更高的计算速度和便携性。本专利技术在基于VGG16网络算法验证,在180Hz的工作频率下,每秒可以完成920亿次乘累加计算,加速器整体功耗为3.459W,适合运行在嵌入式设备中,能效比为106.5GOPS/W,大约是1080Ti显卡的4倍左右,有效解决了卷积神经网络加速计算中存在的结构适应性和海量数据交换问题。附图说明图1为本加速器的整体架构图;图2为特征数据在内存中的排布示意图;图3为权重数据在内存中的排布示意图;图4为是浮点卷积运算模块结构示意图;图5为横向池化电路原理的结构图;图6为纵向池化电路原理的结构图;图7为数据处理方法的总设计结构图;图8为本加速器通过VGG16网络实测的峰值算力。具体实施方式下面结合附图和具体实现案例对本专利技术进行详细说明。如图1,一种基于ZYNQ的通用卷积神经网络加速结构主要由ARM处理器、总线互联模块、寄存器、卷积运算通路、辅助运算通路、池化运算通路、访存模块、DDR4控制器与内存条组成。ARM处理器,用于配置和调度所述FPGA中设计的硬件电路,包括特征图大小、特征图通道数、卷积核大小、卷积核通道数、输出结果大小、输出结果通道数、卷积步幅和卷积模式,寄存器接收启动信号来启动各个子模块,根据配置信息在内部计算出每次卷积运算循环的索引值,根据索引值与卷积模式的寄存器值会作用给卷积运算通路、辅助运算通路与池化运算通路,卷积运算通路、辅助运算通路与池化运算通路会跟寄存器中的配置信息作用给访存模块,访存模块会通过总线互联来控制DDR4控制器读取排列在内存中权重数据与特征数据。本实例中特征数据在内存中排布参见图2,由于一般卷积网络中特征数据的数据量比较大,无法一次性加载到卷积运算通路上,因此需要对三维的特征数据分块,当分割成较小的数据块之后就可以加载到卷积运算通路上,首先对一个三维特征进行分块,在输入通道方向需要每K个通道切块一次,最后不足K个通道的为一组,其中K的值为16*n,n=1,2,3…;K的具体值根据用户板卡中dsp资源而定,K代表着卷积电路和池化电路的并行度,并行度越大,表示在一个时钟周期内有更多的数据同时计算;对特征分块切割之后,输入特征的每行数据一次按顺序存入地址当中,行与行之间可以不紧密连接,存放一行数据的区域被称为行跨步,依次类推,当01到15的子块全部存入到内存中后,接着按照同样的方法会存入16到31的子块信息。在本实例中权重数据在内存中排布的方式参见图3,一次完整的卷积运算不仅需要特征数据,而且还需要网络训练后的权重数据,同样,为了高效的计算,权重数据在内存中的排布方式也至关重要,因为在计算过程中取数据的速度影响这个卷积计算的速度;权重数据是一个四维数据,首先将一个权重数据展开为三维数据,每个三维数据被称为1个Kernel,依次为Kernel0、Kernel1、Kernel2K-1,从Kernel0到KernelK-1一组数据,首先将每组Kernel的第一个数本文档来自技高网...

【技术保护点】
1.一种基于ZYNQ的通用卷积神经网络加速结构及设计方法,包括:ZYNQ芯片、内存条;所述内存条,用于存储卷积网络计算的中间特征数据、每层网络的权重数据、偏置数据,以完成整个网络的运算;所述ZYNQ芯片,用于完成整个加速器电路的部署及实现。

【技术特征摘要】
1.一种基于ZYNQ的通用卷积神经网络加速结构及设计方法,包括:ZYNQ芯片、内存条;所述内存条,用于存储卷积网络计算的中间特征数据、每层网络的权重数据、偏置数据,以完成整个网络的运算;所述ZYNQ芯片,用于完成整个加速器电路的部署及实现。2.根据权利要求1所述一种基于ZYNQ的通用卷积神经网络加速结构及设计方法,其特征在于,所述ZYNQ芯片包括:ARM处理器、总线互联、DDR4控制器、FPGA;所述ARM处理器,用于配置和调度所述FPGA中设计的硬件电路;所述总线互联模块,用于将所述FPGA与所述DDR4控制器中的数据接口转换成统一的接口以供所述ARM处理器访问;所述DDR4控制器,用于访问所述内存条中的数据以及控制从所述总线互联写入数据到所述内存条;所述FPGA,用于卷积加速电路和池化加速电路的部署。3.根据权利要求2所述一种基于ZYNQ的通用卷积神经网络加速结构及设计方法,其特征在于,所述FPGA包括:寄存器、卷积运算通路、辅助运算通路、池化运算通路、访存模块;所述寄存器,用于存储电路的配置信息,以完成不同规模的卷积网络计算,同时,可以通过每次配置不同的数据,以完成不同结构的卷积网络的计算;所述卷积运算通路,用于...

【专利技术属性】
技术研发人员:刘杰马力强
申请(专利权)人:哈尔滨理工大学
类型:发明
国别省市:黑龙江,23

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1