[发明专利]一种卷积运算电路及其运算方法在审
申请号: | 202111193721.5 | 申请日: | 2021-10-13 |
公开(公告)号: | CN113869498A | 公开(公告)日: | 2021-12-31 |
发明(设计)人: | 林广栋;陆俊峰;黄光红;顾大晔 | 申请(专利权)人: | 安徽芯纪元科技有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06F17/15 |
代理公司: | 合肥律众知识产权代理有限公司 34147 | 代理人: | 赵娟 |
地址: | 230000 安徽省合肥市高新*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 卷积 运算 电路 及其 方法 | ||
1.一种卷积运算电路,其特征在于,由m行n列运算单元PE组成,同时支持矩阵乘法运算和二维卷积运算;
当执行矩阵乘法运算时,所述运算单元分别接收来自行方向上的左矩阵行输入和来自列方向上的右矩阵列输入,将两者相乘后累加到本地累加寄存器;
当执行二维卷积运算时,所述运算单元接收来自行方向上的输入特征图输入,将其与内部存储的卷积核权重相乘后与上一行运算单元输出的部分和进行累加,再向下一行输出累加后的部分和。
2.根据权利要求1所述的卷积运算电路,其特征在于,所述运算单元主要由乘法器、累加器和权重寄存器构成;
所述乘法器的行方向输入侧输入行方向上的输入;
所述乘法器的列方向输入侧设置择一选择的两路输入,分别为列方向上的输入和来自所述权重寄存器的卷积核权重输入;
所述累加器的部分和输入侧设置择一选择的两路输入,分别为来自本地累加寄存器和上一行运算单元输出的部分和。
3.根据权利要求2所述的卷积运算电路,其特征在于,每个运算单元内部设置有多个权重寄存器,权重以滑动窗口大小为单位折叠排列在运算单元上,所述权重寄存器设有地址选择控制器,所述地址选择控制器根据地址选择寄存器的值对多个权重寄存器中存储的卷积核权重进行选择,参与卷积运算。
4.根据权利要求1-3任意一项所述的卷积运算电路,其特征在于,每列运算单元的最后一行运算单元连接有FIFO存储器,FIFO存储器输出连接至第一行运算单元。
5.一种权利要求3所述的卷积运算电路的运算方法,其特征在于,
当执行矩阵乘法运算时,向运算单元乘法器的行方向输入侧广播输入左矩阵的对应行数据,向运算单元乘法器的列方向输入侧广播输入右矩阵的对应列数据,每个运算单元在每个周期内将行方向和列方向接收到的数据相乘后累加到本地累加寄存器;
当执行二维卷积运算时,每个卷积核的权重依序存储在运算电路对应列的运算单元权重寄存器中;若卷积核滑动窗口宽为C,高为R,则计算该卷积核在输入特征图矩阵对应行滑动的卷积运算结果时,将卷积核当下执行卷积操作的1-R行输入特征图行数据,依次广播输入运算电路的第1到C行、第C+1到C行、...、第R*C-C到R*C行;第i+1行的输入特征图行数据比第i行的输入特征图行数据推迟C个周期输入PE阵列,每行输入特征图行数据依序输入PE单元,每个周期输入一个数据;每个运算单元在每个周期内将行方向接收到的数据与经过地址选择控制器选择后的卷积核权重相乘后与上一行运算单元输出的部分和进行累加,并向下一行输出累加后的部分和,直至最后一行输出该列的卷积核计算结果。
6.根据权利要求5所述的卷积运算电路的运算方法,其特征在于,当卷积核滑动窗口过大,PE阵列的一列PE无法一次放下1个卷积核的全部权重数据时,按照如下方案进行权重分布:
针对单通道输入的卷积核,将剩余的权重数据重新从PE阵列的第1行依次向下折叠摆放,一次在PE阵列的一列上依次摆放行卷积核的权重,共摆放次,第i次折叠将权重摆放在运算单元内部的第i个权重寄存器中,其中
针对多通道输入的卷积核,记输入通道数为I,按照单通道输入的卷积核的权重分布方案折叠摆放每一输入通道的卷积核权重;首先摆放第1输入通道的权重,每列仍然摆放行卷积核的权重,摆放次之后,依次向下折叠摆放第2个通道的权重,直至第I个通道的权重,共折叠摆放次;第i次折叠把权重摆放在PE内部第i个权重寄存器中,其中
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽芯纪元科技有限公司,未经安徽芯纪元科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111193721.5/1.html,转载请声明来源钻瓜专利网。