[发明专利]基于寄存器的矩阵乘法在审
| 申请号: | 201880041798.0 | 申请日: | 2018-06-08 |
| 公开(公告)号: | CN110770701A | 公开(公告)日: | 2020-02-07 |
| 发明(设计)人: | 大卫·汉纳·曼塞尔;鲁纳·霍姆;伊恩·迈克尔·考尔菲尔德;伊莲娜·米兰诺维奇 | 申请(专利权)人: | ARM有限公司 |
| 主分类号: | G06F9/30 | 分类号: | G06F9/30 |
| 代理公司: | 11258 北京东方亿思知识产权代理有限责任公司 | 代理人: | 林强 |
| 地址: | 英国*** | 国省代码: | 英国;GB |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 矩阵乘法 矩阵 寄存器 数据元素 指令 寄存器操作数 结果数据元素 矩阵乘法运算 数据处理装置 点积运算 方形矩阵 元素矢量 源寄存器 指令引用 虚拟机 存储 响应 应用 | ||
1.一种装置,包括:
寄存器存储电路,具有多个寄存器,每个寄存器存储至少四个数据元素;
解码器电路,响应于矩阵乘法指令以生成控制信号,其中,所述矩阵乘法指令在所述多个寄存器中指定:第一源寄存器、第二源寄存器以及目的寄存器;以及
数据处理电路,响应于所述控制信号以执行矩阵乘法运算,该矩阵乘法运算包括:
从所述第一源寄存器提取第一数据元素矩阵;
从所述第二源寄存器提取第二数据元素矩阵;
执行多个点积运算以生成结果数据元素的方形矩阵,其中,每个点积运算作用于所述第一数据元素矩阵的相应行和所述第二数据元素矩阵的相应列,以生成结果数据元素的所述方形矩阵的相应结果数据元素;以及
将结果数据元素的所述方形矩阵应用于所述目的寄存器。
2.根据权利要求1所述的装置,其中,将结果数据元素的所述方形矩阵应用于所述目的寄存器包括:将结果数据元素的所述方形矩阵存储在所述目的寄存器中。
3.根据权利要求1所述的装置,其中,将结果数据元素的所述方形矩阵应用于所述目的寄存器包括:将结果数据元素的所述方形矩阵与存储在所述目的寄存器中的先前存储的结果数据元素的方形矩阵进行累加。
4.根据权利要求1至3中任一项所述的装置,其中,所述第一数据元素矩阵的每个数据元素和所述第二数据元素矩阵的每个数据元素具有源元素位长度,该源元素位长度等于结果数据元素的所述方形矩阵的每个数据元素的结果元素位长度。
5.根据权利要求1至3中任一项所述的装置,其中,所述第一数据元素矩阵的每个数据元素和所述第二数据元素矩阵的每个数据元素具有源元素位长度,该源元素位长度与结果数据元素的所述方形矩阵的每个数据元素的结果元素位长度不同。
6.根据权利要求5所述的装置,其中,所述源元素位长度与所述结果元素位长度相差两倍。
7.根据权利要求5所述的装置,其中,所述源元素位长度与所述结果元素位长度相差大于两倍。
8.根据前述权利要求中任一项所述的装置,其中,所述矩阵乘法指令指定结果数据元素的所述方形矩阵的维度。
9.根据权利要求1至8中任一项所述的装置,其中,所述第一数据元素矩阵的数据元素、所述第二数据元素矩阵的数据元素和所述结果数据元素是浮点值。
10.根据权利要求1至8中任一项所述的装置,其中,所述第一数据元素矩阵的数据元素、所述第二数据元素矩阵的数据元素和所述结果数据元素是整数值。
11.根据权利要求10所述的装置,其中,所述第一数据元素矩阵的数据元素、所述第二数据元素矩阵的数据元素和所述结果数据元素是无符号整数值。
12.根据权利要求10所述的装置,其中,所述第一数据元素矩阵的数据元素、所述第二数据元素矩阵的数据元素和所述结果数据元素是有符号整数值。
13.根据权利要求1至12中任一项所述的装置,其中,所述第一数据元素矩阵和所述第二数据元素矩阵是方形矩阵。
14.根据权利要求1至12中任一项所述的装置,其中,所述第一数据元素矩阵和所述第二数据元素矩阵是非方形矩阵。
15.根据前述权利要求中任一项所述的装置,其中,所述解码器电路进一步响应于配置指令以生成配置控制信号,其中,所述配置指令指定最大矢量长度,并且所述数据处理电路响应于所述配置控制信号以约束后续的矩阵乘法运算,使得所述结果数据元素的总大小不超过所述最大矢量长度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880041798.0/1.html,转载请声明来源钻瓜专利网。





