[发明专利]卷积计算加速器、卷积计算方法及卷积计算设备有效
申请号: | 201810259875.1 | 申请日: | 2018-03-27 |
公开(公告)号: | CN110210610B | 公开(公告)日: | 2023-06-20 |
发明(设计)人: | 张博;于潇宇;王玉伟;张立鑫 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06N3/0464;G06F17/15;G06T1/40 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 刘映东 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 卷积 计算 加速器 计算方法 设备 | ||
1.一种卷积计算加速器,其特征在于,所述卷积计算加速器包括:控制器、计算矩阵、第一缓存以及第二缓存,所述计算矩阵中包含至少两行计算单元,所述至少两行计算单元组成至少两列,每一列中的相邻两个计算单元相连,且每行计算单元中的相邻两个计算单元相连;
所述控制器,用于控制将每一行计算单元的输入数据载入至所述第一缓存;
所述控制器,还用于在控制将载入至所述第一缓存的输入数据输入至对应行的计算单元中时,在一个第一时钟周期内,将所述输入数据输入至所述对应行中的第一个计算单元的寄存器中,所述第一时钟周期是指所述计算单元接收一次输入数据的周期;
所述对应行的计算单元中的第一计算单元,用于将接收到的所述输入数据在下一个第一时钟周期内输入至所述对应行的下一个计算单元的寄存器中,所述第一计算单元是所述对应行中除了最后一个计算单元之外的任意计算单元;
所述计算矩阵中的每一个计算单元,用于在所述计算单元中存储的每个卷积核对应的第二时钟周期内,将接收到的所述输入数据与所述卷积核进行卷积计算;所述第一时钟周期的周期长度不小于预设数量个所述第二时钟周期的周期长度之和,所述预设数量为计算单元内预先存储的卷积核的数量,每个卷积核对应一个第二时钟周期;所述第二时钟周期是指所述计算单元将一份输入数据与一个所述卷积核进行卷积计算所需的周期;
所述计算矩阵中的第二计算单元,用于将累加后的卷积计算结果存储至所述第二缓存,所述累加后的卷积计算结果是对应列中的各个计算单元的卷积计算结果的累加结果;所述第二计算单元是所述计算矩阵的最后一行中的任意计算单元;
所述计算矩阵中的第三计算单元,用于将在上一个第一时钟周期内进行卷积计算获得的卷积计算结果输出给对应列中的下一个计算单元;所述第三计算单元是所述计算矩阵的第一行中的任意计算单元;
所述计算矩阵中的第四计算单元,用于将在上一个时钟周期内进行卷积计算获得的卷积计算结果,与对应列中的上一个计算单元在上一个时钟周期内发送的卷积计算结果进行加和计算,获得加和计算结果;在下一个第一时钟周期内,将所述加和计算结果作为更新后的卷积计算结果输出给对应列中的下一个计算单元;所述第四计算单元是所述计算矩阵中除了第一行和最后一行之外的其它任意计算单元。
2.根据权利要求1所述的卷积计算加速器,其特征在于,所述计算矩阵中每个计算单元中预先存储有至少两个卷积核;
所述计算矩阵中的每一个计算单元,用于在一个第一时钟周期内,将接收到的输入数据与所述至少两个卷积核依次进行卷积计算。
3.根据权利要求1所述的卷积计算加速器,其特征在于,所述第二计算单元,还用于在将累加后的卷积计算结果存储至所述第二缓存之前,将在上一个第一时钟周期内进行卷积计算获得的卷积计算结果,与对应列中的上一个计算单元在上一个第一时钟周期内发送的卷积计算结果进行加和计算,获得所述累加后的卷积计算结果。
4.根据权利要求1所述的卷积计算加速器,其特征在于,
所述第三计算单元,还用于将在上一个第一时钟周期内进行卷积计算获得的卷积计算结果输出给对应列中的下一个计算单元之前,将在上一个第一时钟周期内进行卷积计算获得的卷积计算结果,与初始累加数据进行加和计算,获得加和计算结果;
所述第三计算单元,用于将在上一个第一时钟周期内进行卷积计算获得的卷积计算结果输出给对应列中的下一个计算单元时,在下一个第一时钟周期内,将所述加和计算结果作为更新后的卷积计算结果输出给对应列中的下一个计算单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810259875.1/1.html,转载请声明来源钻瓜专利网。