[发明专利]一种小数加法结果圆整方法与装置有效
申请号: | 201710050227.0 | 申请日: | 2017-01-23 |
公开(公告)号: | CN106802783B | 公开(公告)日: | 2019-04-23 |
发明(设计)人: | 周沈刚;李任伟 | 申请(专利权)人: | 青岛专用集成电路设计工程技术研究中心 |
主分类号: | G06F7/485 | 分类号: | G06F7/485 |
代理公司: | 青岛联智专利商标事务所有限公司 37101 | 代理人: | 周容 |
地址: | 266200 山东省青岛市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 小数 加法 结果 圆整 方法 装置 | ||
本发明提供一种小数加法结果圆整方法,包括以下步骤:定义加法器参数,根据加法器输入操作数设定进位传递因子、进位产生因子和进位取消因子,利用进位传递因子和进位取消因子判断计算低位部分处理结果,利用进位传递因子和进位产生因子判断计算高位部分处理结果,得到圆整输出。同时公开了一种小数加法结果圆整装置。本发明通过将低位计算和高位进位预测两个部分独立出来进行处理,可以代替现有技术中小数加法结果采用两个独立加法器计算的方式,经过测试,可以有效地提高现有技术中计算效率,而且在浮点乘法器或定点小数操作中,本发明所提供的方法可以更快速的对低位结果进行判断,以更快的开始后续操作。
技术领域
本发明涉及数据处理及专用集成电路技术领域,尤其涉及一种小数加法结果圆整方法与装置。
背景技术
对加法器结果的圆整(Round)操作,通常也称为舍入操作,是常见的结果处理操作之一,几乎在所有处理器中都会有类似的设计。在浮点加法器中,如果加法器的两个输入数的指数不同,一般会将指数较小的输入数的尾数右移之后在与另一个输入数进行操作。在输出结果之前,移出的位需要向上圆整。按照IEEE的圆整标准,是否将低位向上进位需要综合考虑所有移出位、加法器结果最低有效位和次低有效位。在这种情况下,最直接的处理方式是先判断决定是否需要进位,然后再进行加法运算。
在利用浮点乘累加器或者定点乘累加器对小数操作时,指令要求结果输出位宽与输入位宽相同。因此,乘法器会将输入操作数的位宽加倍,如果不对位宽进行限定,在经过多次乘法操作之后,理论上运算结果的位宽将以指数形式增长。为了避免出现这种不必要的情况,指令都需要将运算结果圆整。因此,加法器的结果需要将低半部分按照规则舍入并选择高半部分。在这种情况下,最直接的方式是先得到加法器的计算结果,然后根据结果的低半部分,决定是否向上进位,然后再计算进位结果。
在不同的环境下,加法器结果的圆整操作使用不同的设计方式。在现有技术中的高性能处理器中,浮点加法器的圆整操作常见的方法是使用进位选择和双加法器的设计方式,即同时处理需要进位的结果以及不需要进位的结果。在加法器进行计算的同时,判断是否需要舍入,然后在加法器得出结果之后进行选择。但是在浮点乘加器或者定点小数乘加器的设计中,使用传统的进位选择需要消耗更多的资源。而且因为低半部分的结果判断需要较多时间,无法在高半部分的计算完毕之前得出,所以仍然不能快速的得到结果。
综上所述,现有高性能处理器中的浮点乘加器或者定点小数乘加器存在圆整方法消耗的资源多且无法快速得到结果的问题。
发明内容
本发明公开一种小数加法结果圆整方法,以解决现有高性能处理器中浮点乘加器或者定点小数乘加器消耗资源多且无法快速得到结果的问题。
一种小数加法结果圆整方法,其特征在于,包括以下步骤:
定义编码加法器的参数,所述参数包括两个位宽为n的加法器输入操作数 a[n-1:0]和b[n-1:0], 加法器初始进位c0,加法器输出s[n-1:0]以及圆整结果r[m-1:0] ;
根据所述加法器输入操作数设定每一位的进位传递因子p[n-1:0],进位产生因子g[n-1:0]和进位取消因子k[n-1:0],其中p[n-1:0]= a[n-1:0]^ b[n-1:0],g[n-1:0]= a[n-1:0]& b[n-1:0],k[n-1:0]=~(a[n-1:0]| b[n-1:0] ),^代表异或逻辑,&代表与逻辑,~代表取反逻辑,|代表或逻辑;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛专用集成电路设计工程技术研究中心,未经青岛专用集成电路设计工程技术研究中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710050227.0/2.html,转载请声明来源钻瓜专利网。