[发明专利]一种运算装置及其操作方法在审
申请号: | 202011180419.1 | 申请日: | 2016-08-05 |
公开(公告)号: | CN112214244A | 公开(公告)日: | 2021-01-12 |
发明(设计)人: | 陈云霁;刘少礼;陈天石 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 运算 装置 及其 操作方法 | ||
1.一种运算装置,其特征在于,所述运算装置包括:
数据模块,用于获取并存储运算数据,并根据所述运算数据的长度和运算模块的规模对所述运算数据进行调整,获得调整后的运算数据,以使得所述调整后的运算数据符合所述运算模块的规模;以及
运算模块,用于根据所述数据模块提供的调整后的运算数据进行运算。
2.根据权利要求1所述的运算装置,其特征在于,所述数据模块包括:
数据I/O单元,用于从内存中读取运算数据或将所述运算数据写入所述内存中;
数据暂存单元,用于存储所述数据I/O单元读取的数据,并根据所述运算数据的长度和所述运算模块的规模对所述数据进行调整,获得调整后的数据。
3.根据权利要求2所述的运算装置,其特征在于,所述运算数据包括第一数据和第二数据;
当所述第一数据的长度和所述第二数据的长度均小于或等于所述运算模块的运算规模时,则所述数据暂存单元用于直接将所述第一数据和所述第二数据作为调整后的运算数据,提供至所述运算模块进行运算。
4.根据权利要求2所述的运算装置,其特征在于,所述运算数据包括第一数据和第二数据;
当所述第一数据的长度和所述第二数据的长度均大于所述运算模块的运算规模时,所述数据暂存单元用于将分别将所述第一数据和所述第二数据拆分为多个第一子运算数据和多个第二子运算数据,并分次将所述第一子运算数据和所述第二子运算数据提供给所述运算模块进行运算;
其中,所述第一子运算数据的长度和所述第二子运算数据的长度均小于或等于与所述运算模块的运算规模。
5.根据权利要求4所述的运算装置,其特征在于,
当所述第一子运算数据的数量大于所述第二子运算数据的数量时,则所述数据暂存单元用于将多个所述第一子运算数据按顺序提供至所述运算模块,将多个所述第二子运算数据循环提供给所述运算模块,直至运算结束;
当所述第一子运算数据的数量等于所述第二子运算数据的数量时,则所述数据暂存单元用于按顺序将所述第一子运算数据和所述第二子运算数据提供给所述运算模块。
6.根据权利要求2所述的运算装置,其特征在于,所述运算数据包括第一数据和第二数据;
当所述第一数据的长度大于所述运算模块的运算规模,所述第二数据的长度小于所述运算模块的运算规模时,所述数据暂存单元用于将所述第一数据拆分为多个第一子运算数据,并分多次将所述第一子运算数据和所述第二数据提供至所述运算模块进行运算;
其中,所述第一子运算数据的长度小于或等于所述运算模块的运算规模。
7.根据权利要求2-6任一项所述的运算装置,其特征在于,所述数据暂存单元由高速暂存存储器组成,所述数据暂存单元能够存储不同长度的运算数据。
8.根据权利要求1-7任一项所述的运算装置,其特征在于,所述运算装置还包括指令模块,用于缓存指令,并向所述数据模块和所述运算模块提供指令;
其中,所述指令模块包括:
指令缓存单元,用于存储待执行的指令;
指令处理单元,用于从所述指令缓存单元获取指令,并对该指令进行处理;
依赖关系处理单元以及存储队列单元,用于判断该指令与前一正在执行的指令是否访问相同的数据:如果是,则所述依赖关系处理单元将该指令存放至所述存储队列单元,待前一正在执行的指令执行完毕后,再将该指令提供给运算模块;否则,直接将该指令提供给运算模块;
其中,所述指令处理单元包括:
取指部分,用于从所述指令缓存单元中获取指令;
译码部分,用于对获取的指令进行译码;
指令队列部分,用于对译码后的指令进行顺序存储。
9.根据权利要求1所述的运算装置,其特征在于,所述运算数据为向量,所述运算模块用于根据指令执行向量逻辑运算或向量四则运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011180419.1/1.html,转载请声明来源钻瓜专利网。