[发明专利]一种计算装置和计算方法在审
申请号: | 202010038243.X | 申请日: | 2020-01-14 |
公开(公告)号: | CN113190209A | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06F7/483 | 分类号: | G06F7/483;H03M7/24 |
代理公司: | 北京维昊知识产权代理事务所(普通合伙) 11804 | 代理人: | 李波;孙新国 |
地址: | 100000 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算 装置 计算方法 | ||
1.一种计算装置,包括:
第一转换单元(T1),配置为将具有第一精度m的第一数据转换为具有第二精度n的第二数据,其中,第二数据占用的空间为第一数据的n/m倍并且包括n/m个部分,其中n和m为整数,且n大于m;
运算单元(C),所述运算单元配置为连接到所述第一转换单元(T1),分别对所述第二数据的n/m个部分进行运算,以得到具有第二精度n的第三数据,所述第三数据包括n/m个部分;
第二转换单元(T2),配置为将具有第二精度n的第三数据转换为具有第一精度m的结果数据。
2.根据权利要求1所述的计算装置,其中,所述第一数据为精度4、8、16和32的Float数据中的任何一个,所述第二数据为精度为8、16、32和64的Float数据中的任何一个。
3.根据权利要求1所述的计算装置,其中,所述第一数据在存储器中被存储为多行,所述第一转换单元(T1)进一步配置为每次读取一行第一数据,从而每次所读取的一行第一数据被转换为n/m行的第二数据。
4.根据权利要求3所述的计算装置,其中,所述第一数据中的每行被分为n/m个分段,所述第一转换单元(T1)配置为将每个分段转换为一行第二数据,从而将一行第一数据转换为n/m行的第二数据。
5.根据权利要求4所述的计算装置,其中,所述运算单元包括n/m个累加器,配置为每次分别对n/m行第二数据进行累加操作。
6.根据权利要求5所述的计算器,其中,所述累加器进一步包括反馈路径,所述反馈路径将所述累加器的输出反馈至所述累加器中,以由所述累加器将所述第三数据与所述累加器中的当前数据进行累加。
7.根据权利要求1-6中任意一项所述的计算装置,其中,所述第一转换单元(T1)配置为,响应于检测到所述第一数据中的元素为无效数据,则略过对所述无效数据的转换。
8.根据权利要求1-6中任意一项所述的计算装置,其中,所述运算单元(C)配置为,响应于检测到所述第一数据和/或第二数据中的元素为无效数据,则略过对所述无效数据的运算。
9.根据权利要求1-6中任意一项所述的计算装置,其中,所述运算单元(C)配置为,响应于检测到所述第一数据和/或第二数据中的元素为无效数据,则将作为无效数据的元素视为零。
10.根据权利要求1-9中任意一项所述的计算装置,其中,所述第二转换单元(T2)配置为将n/m行第三数据转换为一行结果数据。
11.一种芯片,包括如权利要求1-10中任意一项所述的计算装置。
12.一种板卡,包括如权利要求1-10中任意一项所述的计算装置或者如权利要求11所述的芯片。
13.一种电子设备,包括如权利要求1-10中任意一项所述的计算装置,或者如权利要求11所述的芯片,或者如权利要求12所述的板卡。
14.一种计算方法,包括:
将具有第一精度m的第一数据转换为具有第二精度n的第二数据,其中,第二数据占用的空间为第一数据的n/m倍并且包括n/m个部分,其中n和m为整数,且n大于m;
分别对所述第二数据的n/m个部分进行运算,以得到具有第二精度n的第三数据,所述第三数据包括n/m个部分;以及
将具有第二精度n的第三数据转换为具有第一精度m的结果数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010038243.X/1.html,转载请声明来源钻瓜专利网。