[发明专利]运算方法、装置、计算机设备和存储介质有效
申请号: | 201910614673.9 | 申请日: | 2019-07-09 |
公开(公告)号: | CN111026440B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 上海寒武纪信息科技有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/34;G06F9/38 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙) 11277 | 代理人: | 刘新宇 |
地址: | 201306 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 运算 方法 装置 计算机 设备 存储 介质 | ||
1.一种选择指令处理装置,其特征在于,所述装置包括:
控制模块,用于对获取到的选择指令进行解析,得到所述选择指令的操作码和操作域,并根据所述操作码和所述操作域获取执行所述选择指令所需的多个索引数据、多个待运算数据和目标地址;
运算模块,用于依次判断所述多个索引数据是否满足存储条件,并在索引数据满足所述存储条件时,将与满足存储条件的索引数据相对应的待运算数据顺序存入所述目标地址中,
其中,所述操作码用于指示所述选择指令对数据所进行的运算为选择运算,所述操作域包括待运算数据地址、索引数据地址和所述目标地址;
所述装置还包括:
存储模块,用于存储所述多个索引数据、所述多个待运算数据以及所述存储条件,
其中,所述存储模块包括寄存器和缓存中的至少一种,
所述缓存,用于存储所述多个索引数据、所述多个待运算数据以及所述存储条件,所述缓存包括至少一个神经元缓存NRAM;
所述寄存器,用于存储所述待运算数据、所述多个待运算数据以及所述存储条件中的标量数据;
所述神经元缓存,用于存储所述待运算数据、所述多个待运算数据以及所述存储条件中的神经元数据,所述神经元数据包括神经元向量数据。
2.根据权利要求1所述的装置,其特征在于,所述运算模块,包括:
多个比较器,用于依次判断所述多个索引数据是否满足所述存储条件。
3.根据权利要求2所述的装置,其特征在于,所述运算模块包括主运算子模块和多个从运算子模块,所述主运算子模块包括所述多个比较器,
所述主运算子模块,用于利用所述多个比较器依次判断所述多个索引数据是否满足所述存储条件,确定出与满足存储条件的索引数据相对应的待运算数据,并将与满足存储条件的索引数据相对应的待运算数据顺序存入所述目标地址中。
4.根据权利要求1所述的装置,其特征在于,所述操作域还包括读入量或所述读入量的存储地址,
其中,所述控制模块,还用于获取所述读入量,并按照所述读入量获取所述多个待运算数据,
其中,所述多个待运算数据的数据量小于或等于所述读入量,所述读入量小于或等于所述多个索引数据的数据量。
5.根据权利要求1所述的装置,其特征在于,所述控制模块包括:
指令存储子模块,用于存储所述选择指令;
指令处理子模块,用于对所述选择指令进行解析,得到所述选择指令的操作码和操作域;
队列存储子模块,用于存储指令队列,所述指令队列包括按照执行顺序依次排列的多个待执行指令,所述多个待执行指令包括选择指令。
6.根据权利要求5所述的装置,其特征在于,所述控制模块,包括:
依赖关系处理子模块,用于在确定所述多个待执行指令中的第一待执行指令与所述第一待执行指令之前的第零待执行指令存在关联关系时,将所述第一待执行指令缓存在所述指令存储子模块中,在所述第零待执行指令执行完毕后,从所述指令存储子模块中提取所述第一待执行指令发送至所述运算模块,
其中,所述第一待执行指令与所述第一待执行指令之前的第零待执行指令存在关联关系包括:
存储所述第一待执行指令所需数据的第一存储地址区间与存储所述第零待执行指令所需数据的第零存储地址区间具有重叠的区域。
7.根据权利要求1至6任一项所述的装置,其特征在于,所述存储条件包括索引数据不为零。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海寒武纪信息科技有限公司,未经上海寒武纪信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910614673.9/1.html,转载请声明来源钻瓜专利网。