[发明专利]一种矩阵乘法的计算方法及装置在审
申请号: | 201810386460.0 | 申请日: | 2018-04-26 |
公开(公告)号: | CN110415157A | 公开(公告)日: | 2019-11-05 |
发明(设计)人: | 方民权;吴小蓉;程剑 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06F17/16 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 矩阵乘法 矩阵乘法器 矩阵 图形处理器 存储访问 计算方法及装置 多处理器 计算单元 计算效率 连接网络 芯片空间 被乘数 存储库 列元素 乘数 加载 申请 占用 访问 | ||
1.一种矩阵乘法器,其特征在于,所述矩阵乘法器包括:
N*N个计算单元,所述N*N个计算单元组成N*N的矩阵,N为大于等于2的正整数;
两个存储库集合,每个存储库集合包括N个存储库,第一存储库集合用于存储输入矩阵中的第一乘法矩阵,第二存储库集合用于存储输入矩阵中的第二乘法矩阵,所述第一存储库集合中第M个存储库与所述N*N的矩阵中第M行的每个计算单元相连接,所述第二存储库集合中第M个存储库与所述N*N的矩阵中第M列的每个计算单元相连接,其中,M为变量,取值为1≤M≤N;
在每个时钟周期,所述N*N的矩阵中的每一行的每个计算单元用于接收与自身相连接的所述第一存储库集合中的存储库所广播的第一输入数据,所述N*N的矩阵中的每一列的每个计算单元用于接收与自身相连接的所述第二存储库集合中的存储库所广播的第二输入数据;在每个时钟周期,所述N*N的矩阵中的每个计算单元根据接收到的所述第一输入数据和所述第二输入数据进行乘法计算;在第N个时钟周期结束后,所述矩阵乘法器完成所述第一乘法矩阵与所述第二乘法矩阵的乘法运算。
2.根据权利要求1所述的矩阵乘法器,其特征在于,在每个时钟周期,所述N*N的矩阵中位于同一行的所有计算单元接收到相同的第一输入数据,所述N*N的矩阵中位于同一列的所有计算单元接收到相同的第二输入数据。
3.根据权利要求1或2所述的矩阵乘法器,其特征在于,所述矩阵乘法器还包括:
第三存储库集合,所述第三存储库集合用于存储结果矩阵,所述第三存储库集合中第M个存储库与所述N*N的矩阵中第M列的每个计算单元相连接。
4.根据权利要求1-3任意一项所述的矩阵乘法器,其特征在于,所述矩阵乘法器还包括:
第四存储库集合,所述第四存储库集合用于存储输入矩阵中的加法矩阵,所述第四存储库集合中第M个存储库与所述N*N的矩阵中第M行的每个计算单元相连接;
在第一个时钟周期,所述N*N的矩阵中的第一列的每个计算单元用于接收与自身相连接的所述第四存储库集合的存储库输入的第一组数据,所述第一组数据为所述加法矩阵中的第一列数据,在第二个时钟周期所述N*N的矩阵中的第二列的每个计算单元用于接收与自身相连接的所述第四存储库集合中的存储库输入的第二组数据,所述第二组数据为所述加法矩阵中的第二列数据,以此类推,在第N个时钟周期所述N*N的矩阵中的第N列的每个计算单元用于接收与自身相连接的所述第四存储库集合中的存储库输入的第N组数据,所述第N组数据为所述加法矩阵中的第N列数据;
在所述第N+1个时钟周期,所述N*N的矩阵中的每个计算单元还用于根据接收到的所述加法矩阵的输入数据和所述第一乘法矩阵与所述第二乘法矩阵的乘法计算结果,进行加法运算,以得到所述第一乘法矩阵、第二乘法矩阵与加法矩阵的乘加计算结果。
5.根据权利要求1-4任意一项所述的矩阵乘法器,其特征在于,所述矩阵乘法器还包括:
调度器,所述调度器用于获得N*N矩阵形式的第一乘法矩阵和第二乘法矩阵,并将所述第一乘法矩阵和第二乘法矩阵分别保存在所述第一存储库集合和所述第二存储库集合。
6.一种图形处理器,其特征在于,所述图形处理器包括如权利要求1-5任意一项所述的矩阵乘法器。
7.一种片上系统,其特征在于,所述片上系统包括如权利要求1-5任意一项所述的矩阵乘法器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810386460.0/1.html,转载请声明来源钻瓜专利网。