[发明专利]一种用于执行矩阵加/减运算的装置和方法在审
申请号: | 202010612191.2 | 申请日: | 2016-04-26 |
公开(公告)号: | CN111857820A | 公开(公告)日: | 2020-10-30 |
发明(设计)人: | 张潇;刘少礼;陈天石;陈云霁 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F17/16 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 执行 矩阵 运算 装置 方法 | ||
1.一种用于执行矩阵加减运算的装置,其特征在于,包括:
控制单元,用于读取矩阵运算指令并进行译码,并控制矩阵运算指令的运算过程,其中,所述矩阵运算指令包括至少一个操作域和操作码,所述操作域包括第一输入矩阵地址和第二输入矩阵地址;
矩阵运算单元,用于获取经过所述控制单元译码的矩阵运算指令,根据所述第一输入矩阵地址和所述第二输入矩阵地址获取两个指定大小的输入矩阵,接着,根据矩阵运算指令的操作码对获取的输入矩阵进行矩阵加法操作或矩阵减法操作。
2.根据权利要求1所述装置,其特征在于,所述矩阵运算单元包括多个并行的标量加减运算器,所述操作域还包括输入矩阵长度,其中,
所述输入矩阵长度等于标量加减运算器的个数,用于指示输入矩阵的大小,所述矩阵运算单元还用于根据所述输入矩阵地址和所述输入矩阵长度获得指定大小的输入矩阵。
3.根据权利要求2所述装置,其特征在于,所述输入矩阵运算单元在对应的标量运算器中执行加法或减法运算,每次计算矩阵数据中的一部分,并最终完成整个矩阵的加法或减法运算。
4.根据权利要求2所述的装置,其特征在于,所述装置还包括:
寄存器单元,用于存储矩阵地址,其中,所述矩阵地址为矩阵在所述存储单元中存储的地址;
所述操作域的形式是立即数和/或寄存器号,指示矩阵运算相关的标量数据,其中寄存器号用于指向所述寄存器单元地址。
5.根据权利要求2所述的装置,其特征在于,所述装置还包括:
存储单元,用于存储矩阵数据或计算结果数据。
6.如权利要求1所述的装置,其特征在于,所述控制单元包括:
指令队列模块,用于对译码后的矩阵运算指令进行顺序存储,并获取矩阵运算指令相关的标量数据。
7.如权利要求1所述的装置,其特征在于,所述控制单元包括:
依赖关系处理单元,用于在矩阵运算单元获取当前矩阵运算指令前,判断当前矩阵运算指令与之前未执行完的矩阵运算指令是否存在依赖关系。
8.如权利要求1所述的装置,其特征在于,所述控制单元包括:
存储队列模块,用于在当前矩阵运算指令与之前未执行完的运算指令存在依赖关系时,暂时存储当前矩阵运算指令,并且在该依赖关系消除时,将暂存的矩阵运算指令送往矩阵运算单元。
9.如权利要求1-7任一项所述的装置,其特征在于,所述装置还包括:
指令缓存单元,用于存储待执行的矩阵运算指令;
输入输出单元,用于将矩阵运算指令相关的矩阵数据存储于存储单元,或者,从存储单元中获取矩阵运算指令的运算结果。
10.如权利要求4任一项所述的装置,其特征在于,所述存储单元为高速暂存存储器;和/或所述寄存器单元为标量寄存器堆。
11.一种应用权利要求1-10任一所述装置进行矩阵运算的方法,其特征在于,包括:
采用控制单元读取矩阵运算指令并进行译码,并控制矩阵运算指令的运算过程,其中,所述矩阵运算指令包括至少一个操作域和操作码,所述操作域包括第一输入矩阵地址和第二输入矩阵地址;
采用矩阵运算单元获取经过所述控制单元译码的矩阵运算指令,根据所述所述第一输入矩阵地址和所述第二输入矩阵地址获取两个指定大小的输入矩阵,接着,根据矩阵运算指令的功能对获取的输入矩阵进行矩阵加法操作或矩阵减法,
其中,所述矩阵运算单元为定制的硬件电路。
12.根据权利要求11所述的方法,其特征在于,
所述操作域包括输入矩阵长度,所述输入矩阵长度等于标量加减运算器的个数,用于指示输入矩阵的大小,所述矩阵运算单元根据所述输入矩阵地址获取相应输入矩阵长度的输入矩阵。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010612191.2/1.html,转载请声明来源钻瓜专利网。