买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
摘要:一种基于FPGA平台的按通道进行预读取数据的分块卷积方法属于基于硬件的神经网络的定制化优化加速领域。本发明利用FPGA的高灵活性,对整个计算过程进行定制化设计,以提高整个推断过程的计算速度。在数据预读取方面,将特征图进行分块,从而消除传统卷积过程中的各层之间的依赖性,并且以按通道读取的方式进行数据读取,减少缓存的占用;在卷积过程中,利用循环流水和循环展开来充分利用FPGA的大量计算资源,增加计算的并行力度。同时为了使得流水线的流水间隔为1,本发明把并行循环展开层调整到最内层循环中。此种方法充分利用了数据局部性,并降低了硬件所需数据带宽,提高了计算吞吐率。
主权项:1.一种基于FPGA平台的按通道进行预读取数据的分块卷积方法,其特征在于:通过块卷积和按通道进行数据预读取的方法;同时在卷积过程中利用并行流水的方法优化卷积过程;步骤1.对数据进行分块处理;将输入特征图分割成4个大小相同的小块,为了保证每个小块进行卷积重新排列后的输出特征图与输入特征图经过卷积操作后得到的输出特征图大小相同,需要对每个小块四边进行0值填充操作;步骤2.按通道进行数据读取;输入特征图的维度按照batchsize,inputchannels,height,weight的顺序排列,卷积核的维度按照outputchannels,inputchannels,height,weight的顺序排列;改变数据的读取方向即通过转置这些维度使inputchannel成为最后一个维度;数据将按通道进行读取,所占用的缓存大小最多为K*W*C,其中K为卷积核大小,W为输入特征图宽度,C为输入特征图通道数;步骤3.卷积操作优化;卷积输入特征图与权重的矩阵乘法操作,公式如下: 其中,g表示激活函数,表示输入特征图,WT表示卷积核的转置,y表示卷积核W在输入特征图上学习到的特征,即输出特征图;在卷积优化过程中,利用了并行计算和流水线的方法对矩阵运算进行加速;在FPGA中,输入特征图和卷积核都被存储在内存单元中,以便能够并行获取数据;在计算过程中,由许多寄存器阶段组成,并非等待当前的计算完成,而是在下一个时钟周期继续获取内存,从而创建一个数据处理的流水线;步骤4.根据步骤3,预测运算的关键代码,生成IP核;在卷积IP核中,包括如下结构:a.InputBuffer:输入数据缓冲区;b.WeightBuffer:权值数据缓冲区;c.OutputBuffer:输出数据缓冲区;d.AXI-Stream:允许无限制的数据突发传输,为高性能数据传输协议;e.AXI-Lite:一种轻量级的地址映射单次传输协议,适用于硬件运算单元的控制信号传输;f.MemoryInterconnect:数据通路互联;g.DMA:直接内存存取,负责加速器和内存间的数据传输;h.ControlInterconnect:控制信号线路互联;i.PE:乘法计算单元;每个PE负责输入特征图的像素和相应权值的乘法计算,后面跟着一个加法树结构来累加卷积的中间结果;步骤5.在操作系统下,将硬件比特流式的文件烧写到开发版中,并编写IP核和硬件设备的驱动;在驱动的编写中,采用访问Linux字符设备的方式访问各个硬件设备;在DMA的驱动编写中采用映射机制进行数据填充;所述映射机制为在内存中预留出一段连续的物理内存,将其映射到内核空间中的一段地址中,然后将该段内核空间地址映射到用户空间。
全文数据:
权利要求:
百度查询: 北京工业大学 一种基于FPGA平台的按通道进行预读取数据的分块卷积方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。