申请/专利权人:电子科技大学
申请日:2022-01-12
公开(公告)日:2023-08-22
公开(公告)号:CN114399036B
主分类号:G06N3/063
分类号:G06N3/063;G06N3/0464
优先权:
专利状态码:有效-授权
法律状态:2023.08.22#授权;2022.05.13#实质审查的生效;2022.04.26#公开
摘要:本发明公开了一种基于一维Winograd算法的卷积计算单元,目的是提供一种针对多维度卷积的高效卷积计算方式。本发明由输入变换模块、点乘模块、输出变换模块以及计算模式控制模块组成。计算模式控制模块和点乘模块,通过对一维卷积的中间结果进行累加和清零操作得到二维卷积和三维卷积的中间结果,从而实现了对多个维度的卷积计算的支持。输入变换模块和输出变换模块利用了变换矩阵全为整数的特点,使用加法和移位操作实现了矩阵乘法,减少了乘法器的使用。在输入数据位宽不小于12bit时,本发明比常规的一维卷积计算单元具有更高的计算效率;相较于常规的二维卷积计算单元,当输入数据位宽分别为16bit、24bit和32bit时,本发明的LUT使用量仅为其84%、75%和70%。
主权项:1.一种基于一维Winograd算法的高效卷积计算单元,由输入变换模块、点乘模块、输出变换模块以及计算模式控制模块组成,支持卷积尺寸分别为3*1、3*3以及3*3*C的一维、二维和三维卷积计算,其中C为输入特征图的通道数;所述输入变换模块,通过加法和移位电路实现矩阵乘法,从而完成对输入特征图数据d的变换V=BTd,权值转换U=Gg为离线转换,以查找表的方式进行存储;其中,BT为输入变换矩阵,G为卷积核变换矩阵,g为一维卷积核;所述点乘模块,由乘法计算单元、二维卷积计算累加器和三维卷积计算累加器组成;乘法计算单元由5个乘法器组成,用于完成一维Winograd算法中的点乘运算W=U*V;二维卷积计算累加器和三维卷积计算累加器均由5个累加器组成,二维卷积计算累加器对一维卷积的中间结果进行累加,每3次累加得到一个二维卷积的中间结果;三维卷积计算累加器对二维卷积的中间结果进行累加,每C次累加得到一个三维卷积的中间结果;所述计算模式控制模块,根据卷积计算的维度,设置输出选择信号SEL,用来控制多路复用器MUX输出相应维度卷积的点乘运算中间结果W送入所述输出变换模块;该模块还控制所述点乘模块中的累加器的清零,确保整个卷积计算单元正确工作;所述输出变换模块,实现Winograd算法中Y=ATW,其中,Y为卷积结果,AT为输出变换矩阵;该模块通过加法和移位电路实现矩阵乘法,对所述控制多路复用器MUX输出的中间结果W进行变换,以输出正确的卷积结果。
全文数据:
权利要求:
百度查询: 电子科技大学 一种基于一维Winograd算法的高效卷积计算单元
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。