快速多周期二进制及十进制加法器单元的高度并行结构制造技术

技术编号:2855846 阅读:230 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种加法器电路用于将两个二进制或两个十进制操作数A和B相加,并且特别地,指的是这样一种处理十进制操作数的加法器电路,其中每一个十进制数位0到9具有一个二进制4位表示。进一步,所述加法器电路包括:a)第一进位支路(12);b)第二加法器支路(14);以及c)加前逻辑(22)。

【技术实现步骤摘要】

本专利技术涉及一种将两个浮点操作数A和B相加的加法器电路,并且特别地,涉及一种处理十进制操作数的加法器电路,其中每一个十进制数位0到9具有一个二进制4位表示。
技术介绍
在十进制加法器中,任何一个0到9的十进制数位由一个4位组来表示。由于4位必然覆盖从十进制数0到15的范围,通常对应着十进制数10,11,12,13,14,15的不用的六个最高组1010,1011,1100,1101,1110,1111被从进一步的计算中排除。在当今的高端计算机系统中,对于十进制算法和计算的需求渐长。这就涉及了浮点十进制数。这类应用的操作数的宽度的范围为32位甚至为更多位(>128位)。因此无法达到如今的千兆赫设计的单周期方法。而必要代之以多个执行周期。然而,这导致了新的临界路径并且要求对于现有技术的加法器方案的结构性的改变。至于处理长度为64位的操作数的技术方案的情形。参考美国专利No.6,292,819,其在此通过参考被引入,可以在当前可用的处理单元的一个周期内完成。在这类现有技术的加法器结构中,有一条最为临界的路径通过进位逻辑(上述US专利的图2中指示为C1),其生成进位到每一个数位。特别地,根据现有技术对于特别的“十进制适配电路”其在此处称为“加前逻辑”的十进制加法运算进行了一个(十进制)按位运算(操作数A加操作数B加6)。数位的进位输出表示了是否需要进行数位和的条件修正。对于十进制减法在所述的加前电路中进行了一个操作数A减去操作数B的独立的减法,并且当进位输出结果是0的时候数位和减6。否则和即已经被修正。平行于主进位网路C1,其对于每个数位产生“热”进位,准备了对于加/减的所有可能的数位和计算。这就是A加B加6,A加B,A减B,以及A减B减6,这些预加的每一个都分别利用一个所假设的进位输入0及1来进行。根据运算,4位加前cy0到cy3的适当进位输出通过指出是否需要对数位和进行修正从而定义了数位和的正确选择。关于定时目的可以看出,通过加前逻辑到cy0,cy1,cy2,cy3并接着到多路器M50和M60的选择信号的路径与产生进位(CyIn)到每一个数位的进位逻辑的延时构成竞争。对于单周期的方法,其中进位逻辑必须处理长度为64位的操作数,不会产生问题。进位产生12无疑是最为临界的网。然而,对于多周期的方法,对于施加了几个千兆赫的高时钟频率,其中所处理的操作数据块较小,例如,16位,由于进位产生逻辑相对更快因此竞争就会很强。产生多路器M50和M60的选择信号的路径延迟等于产生进位输入Carry-Ins的延迟。这样,加前逻辑就非常不利地过慢,并且ADDCYOUT以及SUBCARRYOUT信号以及各个多路器控制信号就会太迟地到达将来自进位产生逻辑的输入信号以及加前逻辑的输入信号进行合并的多路器M70。这样,非常不利地,这种现有技术不能被用于高时钟频率和短操作数,例如2周期加法器结构中的32位。
技术实现思路
本专利技术的目的在于提供一种加法器电路,其克服了上述的不利之处。本专利技术的目的通过所附的独立权利要求所列出的特征得以实现。本专利技术的进一步优势安排以及本专利技术的实施例在各个从属权利要求中得以阐明。现参照所附的权利要求。根据其第一基本方面,本专利技术公开了一种加法器电路用于将两个十进制操作数A和B相加,其中每一个十进制数0到9具有一个二进制的4位表示,并且进行按位的操作数A加操作数B加6的运算,其中数位的进位输出指示着,是否需要数位和的修正。所述的加法器电路包括a)第一进位支路用以产生“热”进位到每一个数位;b)第二加法器支路用以预算对于假设的进位输入0和1的所有可能的数位和A加B,A减B,A加B加6,以及A减B减6,特征在于c)加前逻辑用以从输入操作数直接计算进位输出cy0,cy1,cy2,cy3;d)所述的加前逻辑完成下面的表达式(1)或是其逻辑等效Cy0=g0+(g1*p0)+(g2*p0*p1)+(g3*p0*p1*p2);Cy1=g0+(g1*p0)+(g2*p0*p1)+(p0*p1*p2*p3);Cy2=g0+(p0*p1)+(p0*p2)+(p0*g3)+(g1*p2)+(g1*g3)+(p1*g2*g3);Cy3=g0+(p0*p1)+(p0*p2)+(p0*p3)+(g1*p2)+(g1*p3)+(p1*g2*p3);具有以下的注释g=用gi=Ai*Bi生成;p=用pi=Ai+Bi传播+=逻辑OR*=逻辑AND这样本专利技术介绍了一种新的逻辑结构,其中进位由输入操作数A和B直接计算,以避免了通往选择信号Sel0,Sel1,Sel2和Sel3的临界路径。进一步,本专利技术的进位产生避免了将加6或减6运算包括在进位计算中。换句话说,加前逻辑块的进位输出的定时临界选通就不再使用。对于所有的定时临界功能,可以使用减少的输入数据组,也就是有效的十进制数据且不存在的十进制数(10-15)就不需要通过单独的校验逻辑进行排除。这样就减少了逻辑功能的复杂性。进一步,现在多路器M1和M2的选择是正交的,也就是,信号Sel_mux0/2是(Sel_mux1/3)的补码,由于如果使用了快速传送选通多路器,就要求多路器实现“XOR”性能。这样,这个条件就自动为真,并且由于不需要单独的优先逻辑,电路就会很快。Cy0和Cy1输入是固定的,也就是,A操作数为正,而仅在减法模式时需要操作数B方为负。并且Cy2和Cy3输入是固定的,操作数A和操作数B为正仅用于加法模式。这样,具有优势地,就无需在加法和减法之间进行转换的转换装置。进一步,本专利技术基本上适合超高速加法器结构,其中字长减少,例如在2周期的结构中,其中16位的块被处理。Cy0到Cy3代表着A加/减B加C的功能,其中C是常数0,1,6或7。因此如果需要,本专利技术方法还可以用于非-十进制加法器的环境下并且用于在单个数位位置上具有多于一个的进位的加法运算,具有有限输入范围的3端口加法。本专利技术同时适用于整数和浮点以及适用于二进制和十进制(不动点和浮点)运算。这样,本专利技术并不特定于浮点运算。附图说明本专利技术通过使用例子进行说明但是并不限于附形的形式,其中图1是现有技术的64位十进制加法器的进位部分的方框图;图2是根据本专利技术的加法器的各个块的方框图;图3是表示控制信号any_add,dec_add,dec_sub的设定及其各自的功能的总览表。具体实施例方式参考全部的附图并且特别参考图2对加法器的专利技术的数位选择电路的优选实施例进行更详细的描述,其具有优势地适于当今关于具有128位或更多长度的操作数的高端计算机系统的十进制算法和计算,其中4位的组代表一个十进制数位。该图表示了一个这样的十进制数位的处理。本专利技术并不注重实际的加法。应当注意的是在附图中符号“A+B”意味着加法运算而不是逻辑OR运算。而“A-B”则意味着减法。加法器部分在其附图的上部具有和现有技术在图1中引用的类似的结构。且其可以根据控制信号被用于十进制加/减运算以及二进制运算,如下所示如果指示为dec_add(十进制加)以及dec_sub(十进制减)并且控制着多路器M5和M6的控制信号不是正交的,加法器结构就会错误地进行二进制加/减。这就是当dec_add=0且dec_sub=0的情况,也参见图3。框14内的四个支路构造近似而且除了进位输出值Cy0本文档来自技高网
...

【技术保护点】
一种加法器电路用于将两个二进制或十进制操作数A和B相加,其中在十进制操作数的情况下每一个十进制数位0到9具有一个二进制4位表示,并且其中十进制-按位运算的执行包括数位和计算:操作数A加操作数B加6;操作数A减操作数B减6;   操作数A加操作数B;操作数A减操作数B;其中十进制数位的进位输出指示着是否需要对数位和进行修正,所述加法器电路包括:a)第一进位支路(12)用以产生“热”进位到每个数位中;b)第二加法器支路(14)用以 分别预算对于十进制操作数,假设进位输入值0和1的,所有可能的数位和,A加B,A减B,A加B加6,A减6减B,其特征在于:c)加前逻辑(22),用于从输入操作数直接计算出进位输出值cy0,cy1,cy2以及cy3;d)所述的加 前逻辑(22)完成下面的表达式(1)或其逻辑等效:Cy0=g0+(g1*p0)+(g2*p0*p1)+(g3*p0*p1*p2);(1A)Cy1=g0+(g1*p0)+(g2*p0*p1)+(p0*p1*p2*p3);   (1B)Cy2=g0+(p0*p1)+(p0*p2)+(p0*g3)+(g1*p2)+(g1*g3)+(p1*g2*g3);(1C)Cy3=g0+(p0*p1)+(p0*p2)+(p0*p3)+(g1*p2)+(g1* p3)+(p1*g2*p3);(1D)。...

【技术特征摘要】
...

【专利技术属性】
技术研发人员:威廉哈勒尔霍尔格韦特尔李何雯迈克尔罗伯特凯利
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1