说明:收录全网最新的团体标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210937743.6 (22)申请日 2022.08.05 (71)申请人 广东工业大 学 地址 510062 广东省广州市越秀区东 风东 路729号 (72)发明人 秦亚东 黄宏敏 熊晓明 刘远  (74)专利代理 机构 广东广信君达律师事务所 44329 专利代理师 江金城 (51)Int.Cl. G06N 3/04(2006.01) G06N 3/08(2006.01) G06N 3/063(2006.01) G06F 15/78(2006.01) G06F 9/445(2018.01)G06F 12/0871(2016.01) (54)发明名称 一种卷积神经网络的快速卷积及缓存模式 的设计方法 (57)摘要 本发明公开了一种卷积神经网络的快速卷 积及缓存模式的设计方法, 充分利用FPGA完成 Winograd算 法的设计, 在3*3的卷积 核尺寸下, 乘 法操作从36次减少到16次, 可以充分利用DSP资 源对卷积操作进行加速。 通过特征图缓存以及流 水线传输的方式, 优化卷积滑窗操作时需要对重 复行和列数据的缓存, 提高缓存以及转化模块工 作效率。 通过配置参数实现矩阵转化模块的可重 构设计。 充分利用所节省的DSP资源, 复用 Winograd卷积计算阵列, 充分利用FPGA的硬件资 源, 进一步提升卷积加速模块的计算能力, 对点 积步骤进行低功耗设计 。 权利要求书2页 说明书5页 附图2页 CN 115204373 A 2022.10.18 CN 115204373 A 1.一种卷积神经网络的快速卷积及缓存模式的设计方法, 其特征在于, 包括利用FPGA 完成Winograd算法的设计、 通过特征图缓存以及流水线传输的方式, 优化卷积滑窗操作时 需要对重复行和列数据的缓存以及通过配置参数实现矩阵转 化的可重构设计。 2.根据权利要求1所述的一种卷积神经网络的快速卷积及缓存模式的设计方法, 其特 征在于, W inograd算法包括: Winograd算法加速一维卷积计算: 对于输入为i=[i0 i1 i2 i3}T, 卷积核为 w=[w0 w1 w2]T, 卷积的表达式为: 其中, m0=(i0‑i2)·w0 m2=(i1‑i3)·w2 将一维卷积的变换扩展到二维卷积, 用矩阵形式表示 为: Y=AT[(GWGT)⊙(BTIB)]A 其中, Y、 W、 I分别表示输出特征图、 权重、 输入特征图, G、 B、 A分别表示权重转化矩阵、 输 入特征图转化矩阵、 输出 特征图转化矩阵。 3.根据权利要求2所述的一种卷积神经网络的快速卷积及缓存模式的设计方法, 其特 征在于, 利用FPGA完成Winograd算法的设计中, 包括顶层控制模块、 Winograd卷积模块以及 缓存模块; 其中, 所述顶层控制模块包括流水线调度单元、 控制指令解析单元、 矩阵转换控制单 元; 所述流水线调度单元, 分为三级流水: 第一级输入端口, 包括输入缓存和权重缓存; 第 二级包括输入激活和 权重的矩阵转换, 以及winograd卷积; 第三级输出端包括中间值缓存 和输出缓存; 所述控制指令解析单元, 将写入的控制指令进行解析, 解析的控制指令包括缓存的数 据结构参数、 卷积尺寸、 步长, 根据需求发送到不同的模块或单 元; 所述矩阵转换控制单元, 接收控制指令解析单元的指令, 控制输入激活、 权重和PE阵列 计算结果进行矩阵转换; Winograd卷积模块包括寄存器阵列单元、 MUX单元、 卷积控制单元、 PE阵列单元、 加法树 单元、 ReLU及PO OL单元; 所述寄存器阵列单 元, 缓存矩阵转换的结果; 所述MUX单元, 通过选择对应的行, 列到PE阵列实现数据复用; 所述卷积控制单 元, 用于卷积控制; 所述PE阵列单 元, 由DSP实现的乘法器阵列, 完成w inograd域的点乘计算; 所述加法树单 元, 计算结果的累加, 以及实现加偏置功能; 所述ReLU及PO OL单元, 实现激活函数和池化功能;权 利 要 求 书 1/2 页 2 CN 115204373 A 2所述缓存 模块包括输入缓存单 元、 权重缓存单 元、 中间值缓存单 元、 输出缓存单 元; 所述输入缓存单元, 缓存片外读入的输入激活, 根据顶层控制的参数缓存分块后的输 入激活, 并且完成补零以及重复行缓存; 所述权重缓存单 元, 缓存权 重参数; 所述中间值缓存单 元, 缓存分块的计算结果, 供加法树单 元读取完成累加; 所述输出缓存单 元, 缓存最终计算结果, 通过DMA存 储到片外 。 4.根据权利要求1所述的一种卷积神经网络的快速卷积及缓存模式的设计方法, 其特 征在于, 通过特征图缓存以及流水线传输的方式, 优化卷积滑 窗操作时需要对重复行和列 数据的缓存, 包括: 将H*L*N的输入特征图, 在 行的方向上展开进行分块操作, 按通道顺序存储到16条Bram 中进行缓存; 输入缓存到转换模块的中间模块, 对3*3尺寸的卷积核完成4*4大小的分块滑 窗操作, 由四级流水线组成, 流水线0每个时钟周期读入16条Bram中同一地址的数据, 并且 输入向后面的流水线传递, 行方向上, 每两个周期向矩阵转化模块传递一次滑窗数据块, 从 而优化行方向上 的重复数据读取; 列方向上, 重复列的数据会读入相应的两个矩阵转化模 块, 即16条Bram存储的16行输入 特征图传递到7个输入 特征图矩阵转化模块, 优化列方向上 的重复数据读取。 5.根据权利要求2所述的一种卷积神经网络的快速卷积及缓存模式的设计方法, 其特 征在于, 通过配置参数实现矩阵转 化的可重构设计包括: 二维Winograd算法的转化矩阵包括A、 G、 B, 而转化矩阵的构成只与Winograd算法的卷 积尺寸和输入 特征图大小有关, 且转换矩阵之间存在重复参数, 通过配置参数s以及s0s1s2, 占用少量寄存及资源, 实现转化模块的可重构设计; 其中对于输入特征图转化矩阵B 进行推 导, 输入激活尺寸 为4*4的推导如下: 其他尺寸下的矩阵变化 通过增加几位寄存器实现矩阵转换。 6.根据权利要求1所述的一种卷积神经网络的快速卷积及缓存模式的设计方法, 其特 征在于, 还包括: 在点积过程中, 对于权重参数为零的位置, 将关闭该参数的乘法计算, 权重 参数不为零的位置, 跳过 特征图数据为 零的乘法计算, 实现卷积计算的低功耗设计。权 利 要 求 书 2/2 页 3 CN 115204373 A 3

.PDF文档 专利 一种卷积神经网络的快速卷积及缓存模式的设计方法

文档预览
中文文档 10 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共10页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种卷积神经网络的快速卷积及缓存模式的设计方法 第 1 页 专利 一种卷积神经网络的快速卷积及缓存模式的设计方法 第 2 页 专利 一种卷积神经网络的快速卷积及缓存模式的设计方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 16:31:54上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。