【CN109934339A】一种基于一维脉动阵列的通用卷积神经网络加速器【专利】
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201910168042.9
(22)申请日 2019.03.06
(71)申请人 东南大学
地址 214135 江苏省无锡市新吴区菱湖大
道99号
申请人 东南大学—无锡集成电路技术研究
所
(72)发明人 陆生礼 庞伟 罗几何 李宇峰
(74)专利代理机构 南京经纬专利商标代理有限
公司 32200
代理人 葛潇敏
(51)Int.Cl.
G06N 3/063(2006.01)
G06N 3/04(2006.01)
(54)发明名称一种基于一维脉动阵列的通用卷积神经网络加速器(57)摘要本发明公开一种基于一维脉动阵列的通用卷积神经网络加速器,AXI4总线接口用于实现模式配置指令的载入以及待计算数据的读取与结果数据的批量发送;模式配置器通过模式配置指令配置各个功能模块为对应工作类型;数据调度模块可并发进行待计算数据缓存、计算数据读取、卷积结果缓存以及卷积结果处理与输出任务;卷积计算模块采用一维脉动阵列的模式进行卷积计算;待计算数据缓存区、卷积结果缓存区、输出结果缓冲FIFO,用于缓存对应数据;结果处理模块进行卷积神经网络中常见的结果处理操作。此种加速器能够兼容卷积神经网络中的不同计算类型并进行高并行度计算来有效加速,同时只需要较低的片外访存带宽需求以及少量的片
上存储资源。权利要求书1页 说明书6页 附图2页CN 109934339 A 2019.06.25
C N 109934339
A
1.一种基于一维脉动阵列的通用卷积神经网络加速器,其特征在于包括:
AXI4总线接口,用于连接片外处理器和片外存储器,实现模式配置指令的载入、待计算数据的读取及结果数据的发送;
模式配置器,用于根据模式配置指令将各个功能模块设置为对应工作类型,从而适配不同类型的卷积神经网络计算模式;
数据调度模块,用于并发进行待计算数据缓存、计算数据读取、卷积结果缓存及卷积结果处理与输出任务;
卷积计算模块,包含N个卷积计算单元和一个J级加法树,J等于log2N,N个卷积计算单元的输出端均连接加法树,每个卷积计算单元内部包含L×M个乘累加单元;
结果处理模块,用于完成与卷积层相关联的计算,并将计算结果送入输出结果缓冲FIFO;以及,
待计算数据缓存区、卷积结果缓存区、输出结果缓冲FIFO,用于缓存对应数据;待计算数据缓存区包括N个特征图缓存单元和权重缓存单元,特征图缓存单元采用乒乓操作,保存当前计算需要的特征图行像素值及下一次计算需要的特征图行像素值;卷积结果缓存区及输出结果缓冲FIFO并行度均为M,卷积计算完成后数据由卷积结果缓存区取出,经由结果处理模块处理后通过输出结果缓冲FIFO传出。
2.如权利要求1所述的加速器,其特征在于:所述卷积计算模块中的每个卷积计算单元对应一个特征图缓存单元和一个权重缓存单元,根据卷积核的行数KH,将卷积计算单元分
成G组,
G等于每批计算时特征图缓存单元分别缓存有G个特征图输入通道的KH行数据
中的一行,而同一组权重缓存单元均缓存M个卷积核的该组对应通道的权重,对应输入通道不改变时下一批计算时只需更新每组特征图缓存单元中的S个缓存单元即可,S为卷积步长。
3.如权利要求2所述的加速器,其特征在于:所述卷积计算单元执行计算时,通过L级移位寄存器提供特征图行数据给计算单元阵列,同时权重缓存单元直接提供M个卷积核的相应位置权重值,即一个卷积计算单元L×M阵列每次计算会完成L个特征图数据与M个权重数据两两之间的定点数乘法并能够累加同位置上次计算的结果。
4.如权利要求2所述的加速器,其特征在于:所述卷积计算模块在卷积计算单元输出结果时,通过J级加法树对N个卷积计算单元对应位置结果进行累加,包括同一卷积核同一通道KH行结果累加×同一卷积核G通道累加,将累加结果行L个结果拼接后存入M个卷积结果缓存区。
5.如权利要求1所述的加速器,其特征在于:所述结果处理模块包括标准化、池化、激活函数、量化处理四个子模块,对应四种卷积神经网络中的结果处理操作,并行度为M,卷积结果以流水线的方式依次经过这四个模块的处理,其中标准化模块简化成标准化系数乘加操作,激活模块采取Relu激活函数,池化模块与量化模块设计了可配置分支以对应不同的池化类型与量化精度。
6.如权利要求1所述的加速器,其特征在于:所述AXI4总线接口与待计算数据缓存区、卷积结果缓存区、输出结果缓冲FIFO将多组数据合并后进行收发。
权 利 要 求 书1/1页
2
CN 109934339 A