[发明专利]一种浮点向量加速方法及装置在审
申请号: | 201711378427.5 | 申请日: | 2017-12-19 |
公开(公告)号: | CN108153514A | 公开(公告)日: | 2018-06-12 |
发明(设计)人: | 海明;王英力;宋风合 | 申请(专利权)人: | 北京云知声信息技术有限公司 |
主分类号: | G06F7/57 | 分类号: | G06F7/57;G06F9/30 |
代理公司: | 北京尚伦律师事务所 11477 | 代理人: | 张俊国 |
地址: | 100191 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存模块 缓存 向量运算指令 缓存单元 浮点 向量 算数逻辑单元 互连单元 控制器 互联单元 接收数据 数据存储 运算对象 运算结果 资源开销 运算 存储 节约 灵活 | ||
本发明是关于一种浮点向量加速方法及装置。该装置包括:算数逻辑单元、控制器、缓存单元及缓存互连单元,其中,所述缓存单元包括6个缓存模块;所述缓存单元通过所述缓存互联单元接收数据,并将所述数据存储到相应的缓存模块;所述算数逻辑单元,通过所述控制器获取向量运算指令,根据所述向量运算指令从对应的缓存模块中获取运算对象进行相应运算,并将得到的运算结果通过所述缓存互连单元发送到所述向量运算指令指定的缓存模块存储。该技术方案更加灵活、高速、准确地完成浮点向量的计算,节约了CPU的资源开销。
技术领域
本申请涉及数据处理技术领域,尤其涉及浮点向量加速方法及装置。
背景技术
目前,随着计算机技术的快速发展,在系统应用中,算法越来越复杂,计算量越来越大,因此,集成的运算单元也越来越多。向量计算,是计算机科学领域的较为常见的计算。目前,由于向量计算相对复杂,不能采用简单的运算单元进行计算,而需要在CPU或DSP中进行计算。这样,灵活性较差,运算速度较低。
发明内容
本申请实施例提供浮点向量加速方法及装置。所述技术方案如下:
根据本申请实施例的第一方面,提供一种浮点向量加速方法,应用于浮点向量加速装置,该装置包括:算数逻辑单元、控制器、缓存单元及缓存互连单元,其中,所述缓存单元包括6个缓存模块;所述方法包括:
所述缓存单元通过所述缓存互联单元接收数据,并将所述数据存储到所述缓存单元中相应的缓存模块;
所述算数逻辑单元通过所述控制器获取向量运算指令,根据所述向量运算指令从对应的缓存模块中获取运算对象,并根据所述向量运算指令在所述算数逻辑单元进行相应运算;
所述算数逻辑单元将得到的运算结果通过所述缓存互连单元发送到所述向量运算指令指定的缓存模块存储。
可选的,所述算数逻辑单元包括:至少4个浮点运算单元及至少两个数据选择器,所述算数逻辑单元通过所述控制器获取向量运算指令,根据所述向量运算指令从对应的缓存模块中获取运算对象,并根据所述向量运算指令在所述算数逻辑单元进行相应运算,包括:
所述数据选择器根据所述控制指令,从所述缓存单元中的缓存模块获取所述运算对象;
所述数据选择器将所述运算对象发送到相应的浮点运算单元,由所述浮点运算单元根据所述运算指令进行相应的运算。
可选的,所述通过所述缓存互联单元接收数据,包括:
通过所述缓存互联单元接收来自外部总线或CPU的数据。
可选的,所述算数逻辑单元通过所述控制器获取向量运算指令,根据所述向量运算指令从对应的缓存模块中获取运算对象,并根据所述向量运算指令在所述算数逻辑单元进行相应运算,包括:
所述控制器解析所述向量运算指令,得到运算对象所在的缓存模块,所要进行的运算类型以及运算结果的存储位置;
所述算数逻辑单元根据所述控制器的解析结果,从所述控制器获取运算类型,并从对应的缓存模块中获取所述运算对象;
所述算数逻辑单元对所述运算对象完成所述运算类型对应的运算,得到运算结果发送至所述缓存互联单元;
所述缓存互联单元根据所述控制器解析得到的运算结果的存储位置,将所述运算结果发送至所述存储位置对应的缓存模块存储。
可选的,所述浮点向量加速装置还包括:指令传输单元,所述方法还包括:
所述指令传输单元将接收到的运算指令按照先入先出的方式发送到所述控制器。
根据本申请实施例的第二方面,提供一种浮点向量加速装置,包括:算数逻辑单元、控制器、缓存单元及缓存互连单元,其中,所述缓存单元包括6个缓存模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京云知声信息技术有限公司,未经北京云知声信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711378427.5/2.html,转载请声明来源钻瓜专利网。