1.一种小数加法结果圆整方法,其特征在于,包括以下步骤:
定义编码加法器的参数,所述参数包括两个位宽为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]),^代表异或逻辑,&代表与逻辑,~代表取反逻辑,|代表或逻辑;
接收所述加法器输入操作数和初始进位,利用所述进位传递因子和进位取消因子预先判断计算生成低位部分处理结果:将低位部分分为三段,将p[n-m-1]和k[n-m-2]同或计算得到所述低位部分的最高位zl[n-m-1],将每一位的进位传递因子与与其相比低一位的进位取消因子按位异或计算得到所述低位部分的次高位至次低位zl[n-m-2:1],将p[0]与初始进位c0同或计算得到zl[0],将n-m位zl[n-m-1:0]进行n-m位的与操作,得到低位部分处理结果mid;
接收所述加法器输入操作数,利用所述进位传递因子和进位产生因子判断预测高位部分处理结果,将高m位的进位传递因子与与其相比低一位的进位产生因子异或计算得到高m位结果zh[m-1:0],将高m位结果zh[m-1:0]的每一位的与所有低于该权重的位做与操作得到高m位的高位进位预测结果zhc[m-1:0];
将加法器低位部分输出的最高位s[n-m-1]分别和所述高位进位预测结果zhc[m-1:0]的每一位分别进行与逻辑计算,得到zhcs[m-1:0];
将加法器高位部分的输出s[n-1:n-m+1]和zhcs[m-1:1]进行异或计算得到部分圆整输出r[m-1:1];
利用加法器的部分输出s[n-m]作为选择信号,s[n-m]为高则选择mid和s[n-m-1]的或非逻辑计算结果作为所述圆整输出的最低位,s[n-m]为低则选择~mid和s[n-m-1]的与逻辑计算结果作为所述圆整输出的最低位,得到r[0]。
2.根据权利要求1所述的小数加法结果圆整方法,其特征在于,还包括以下步骤:
溢出判断;
在浮点操作中,如果所述加法器输出最高位有进位则N上溢出;如果zhcs的最高位为1时,则R溢出;
其中,所述N上溢出有效或R溢出有效则上溢出。
3.根据权利要求1所述的小数加法结果圆整方法,其特征在于,还包括以下步骤:
溢出判断;
在定点操作中,首先根据所述加法器输入操作数的符号位以及所述加法器输出的符号位判断所述加法器输出的正负;
如果所述加法器的输出为正数且所述加法器输出最高位有进位则N上溢出;如果zhcs的最高位为1时,则R溢出;
其中,所述N上溢出有效或R溢出有效则上溢出;
如果所述加法器的输出为负数且所述加法器输出最高位没有进位则N下溢出;如果zhcs的最高位为1时,则R溢出;
其中,所述N下溢出有效且R不溢出时则下溢出。
4.根据权利要求3所述的小数加法结果圆整方法,其特征在于,通过与门行计算zhcs[m-1:0],所述与门行包括m-1个与门电路,每一个与门电路的一个输入端输入所述加法器低位部分输出的最高位s[n-m-1],与门电路的另一端分别输入所述高位进位预测结果zhc[m-1:0]的每一位,得到zhcs[m-1:0]。
5.根据权利要求4所述的小数加法结果圆整方法,其特征在于,所述进位传递因子、进位取消因子和进位产生因子采用独立于所述加法器的逻辑门电路生成。
6.根据权利要求4所述的小数加法结果圆整方法,其特征在于,所述进位传递因子、进位取消因子和进位产生因子采用所述加法器内部的逻辑门电路生成。
7.根据权利要求1所述的小数加法结果圆整方法,其特征在于,所述加法器为超前进位加法器。
8.一种小数加法结果圆整装置,其特征在于,包括
第一加法器;
第一逻辑单元,所述第一逻辑单元被配置为接收加法器输入操作数和初始进位,利用根据所述加法器输入操作数生成的进位传递因子和进位取消因子预先判断计算生成低位部分处理结果;
第二逻辑单元,所述第二逻辑单元被配置为接收加法器输入操作数,利用根据所述加法器输入操作数生成的进位传递因子和进位产生因子预先预测计算高位部分处理结果;
圆整结果输出单元,所述圆整结果输出单元耦接所述第一加法器、第一逻辑单元和第二逻辑单元,所述圆整结果输出单元使用所述第一加法器、第一逻辑单元和第二逻辑单元的输出结果,形成圆整结果。
9.根据权利要求8所述的小数加法圆整装置,其特征在于,还包括溢出判断逻辑单元,所述溢出判断逻辑单元耦接所述第一加法器和第二逻辑单元,所述溢出判断逻辑单元使用第一加法器高位部分输出结果和/或第二逻辑单元输出结果判断溢出。