将跳跃进位单元与加和单元合并的跳跃进位加法器的制作方法

文档序号:6656550阅读:628来源:国知局
专利名称:将跳跃进位单元与加和单元合并的跳跃进位加法器的制作方法
技术领域
本发明一般涉及多位加法器,尤其但不排他地涉及低压摆动加法器。
背景信息二进制加法器是将两个二进制操作数相加以获得二进制结果的基本电子电路。能够将两个操作数连同进位输入一起相加以获得结果和进位输出的加法器称为全加器。全加器可用将一个全加器的进位输出耦合到下一个加法器的进位输入的方式串联地耦合以实现更大宽度的二进制加法器。


图1是一种已知的具有一个进位输入(“CI”)和一个进位输出(“CO”)的16-位跳跃进位加法器100。跳跃进位加法器100包括传播-生成-删除(“PGK”)级105、跳跃进位单元110和加和单元115(仅标注了一部分元件以免使图1混乱)。CI0表示PGK级0的进位输入。如果PGK级0接收CI0(即,CI=“1”),则PGK级0可将CI0作为将被接收为PGK级1的进位输入125的进位输出120传播或者删除CI0,使得PGK级1不接收进位输入125。如果PGK级0没有接收CI0(即CI=“0”),则PGK级0可生成将被接收为PGK级1的进位输入125的进位输出120。PGK级105中的每一个可传播、生成或删除进位输入,这取决于对应于其位位置的两个操作数的值。
加和单元115用于将进位输入位与具有相同位位置的两个操作数加和以生成多位结果的一个结果位。然而,在每一个加和单元115生成结果位之前,必须确定对应的进位输入。为了确定进位输入,必须给予CI0机会来从PGK级0传播到PGK级15。如此,进位输入的传播是限速因素。
为了加速进位输入通过跳跃进位加法器100的传播,将PGK级105通过跳跃进位单元110耦合成组。分析操作数的对应组以确定到PGK级105的某一组的进位输入是否将传播通过PGK级105的整个组。如果该条件是真,则跳跃进位单元将使到该组的进位输入跳过该组,并将进位输入提供到下一组PGK级105。经由跳跃进位单元110跳过PGK级105的组导致了比等待进位输入传播通过该组的每一个PGK级更少的延迟。然而,即使有跳跃进位单元110,进位输入通过跳跃进位加法器100的传播仍是限速因素。
附图简述参考以下附图描述本发明的非限制性且非穷举的实施例,其中在各视图中相似的附图标记指的是相似的部件,除非另有说明。
图1是示出已知的跳跃进位加法器电路的框图。
图2是示出根据本发明的实施例的、包括将跳跃进位单元与加和单元合并的进位-加和单元的加法器的框图。
图3是示出根据本发明的一个实施例的加法器的工作过程的流程图。
图4是示出根据本发明的一个实施例的传播、生成、删除(“PGK”)级的电路图。
图5是示出根据本发明的一个实施例的加和单元的电路图。
图6是示出根据本发明的一个实施例的进位-加和单元的电路图。
图7是示出实现本发明的实施例的说明性系统的图。
详细描述这里描述了用于高速多位加法器的装置、系统和方法的实施例。在以下描述中,陈述了大量具体的细节以提供对实施例的透彻理解。然而,相关技术领域的技术人员将认识到这里描述的技术可在缺少其中的一个或多个细节的情况下实施,或者以其它的方法、组件、材料等实施。在其它的情况下,未示出或详细描述众所周知的结构、材料或操作以避免使某些方面模糊。
在整个说明书中提及“一个实施例”或“实施例”之时,意味着是将结合该实施例所描述的特定特征、结构或特性包含在了本发明的至少一个实施例中。因此,在整个说明书的各种位置出现的短语“在一个实施例中”或“在实施例中”未必全部是指同一个实施例。此外,特定特征、结构或特性可以任何适当的方式结合于一个或多个实施例中。
图2是示出根据本发明的一个实施例的具有改进的跳跃进位网络的加法器200的框图。加法器200的所示实施例包括进位链205、加和单元0-15210、跳跃进位网络215、进位-加和12-15单元220和读出放大器225。进位链205包括传播-生成-删除(“PGK”)级0-15207,跳跃进位网络215包括跳跃进位单元0-6,9 217。与PGK级217、加和单元210和进位-加和单元220中的每一个相关联的下标指明位位置。虽然加法器200示为16-位加法器,但应该意识到这里描述的技术同等地适用于诸如4-位加法器、32-位加法器、64-位加法器等更大或更小的加法器。
进位链205为每一个位位置提供了用于要被传播、生成或删除的进位输入(“CI”)0至15的机制。PGK级207中的一个的CI与前一个PGK级207的进位输出(“CO”)相同。例如,CO0等于CI1,以此类推。如上所述,每一个PGK级207可传播、生成或删除一个进位位。某一PGK级207的CO根据等式1来确定,CON=AN·BN+AN·CIN+BN·CIN(等式1)其中A和B表示多位操作数,N表示位位置,“·”表示两位逻辑与功能,而“+”表示两位逻辑或功能。根据等式1,对于每个PGK级207,如果操作数AN和BN都是“0”,则CI被“删除”(即,不管CIN的值,CON=0);如果操作数AN和BN都是“1”,则CO被“生成”(即不管CIN的值,CON=1,);如果操作数AN≠BN,则CI被“传播”(即,CON=CIN)。以下的表1总结了等式1。
表1

将每一个位位置N处的加和单元210耦合以接收该位位置的CIN并将该CIN与操作数AN和BN的对应的位位置相加。因此,将加和单元0210耦合以接收CI0,并将加和单元15210耦合以接收CI15。在一个实施例中,加和单元210将从加和逻辑212接收的AN和BN的逻辑异或结果与CIN进行逻辑异或操作。因此,每一个加和单元210根据等式2生成多位结果中的一位(即,sumN)SUMN=ANBNCIN(等式2)其中表示逻辑异或(XOR)功能。然而,加和单元210直到某一位位置的CI被决定(resolved)才能将该位位置相加。CIN直到前一PGK级207的CO(即,CON-1)被决定才能被决定。因此,等待沿进位链205决定进位位是加法器200的操作的速度关键限制因素。
因此,跳跃进位网络215利用CON=CIN的情况以使一个PGK级207的CO跳过多个PGK级207来提供作为下游PGK级207的CI。跳跃进位(“CS”)单元将PGK级207分成“组”。例如,CS单元0217将PGK单元0,1,2207分成为组1,CS单元1217将PGK级1,2207分成为组2,CS单元9217将PGK级11-15207分成为组9等。如此,将每一个CS单元217耦合到组传播(grouppropagate“GP”)逻辑240以确定进入某一组的CI何时传播经过整个组(仅示出了一部分GP逻辑240以免使图2拥挤)。在CI横越整个组传播的情况下,对应的CS单元217将通过跳过该组把该组的CI转送给下一组,而不等待CI沿进位链205传播通过该组。例如,GP逻辑0240可确定CI0将传播通过组1(即,PGK级0,1,2207)。在该例子中,PG逻辑0240指示CS单元0217将CI0跳跃到位位置3以提供作为PGK级3207的CI3。
在一个实施例中,跳跃进位网络215的每一个CS单元217是负型场效应晶体管(“NFET”)。在一个实施例中,将NFET的源端子和漏端子耦合成分路(shunt)PGK级207的组,同时将栅端子耦合到对应的GP逻辑240。在这些NFET实施例中,CS单元217用作在GP逻辑240的控制下选择性地开启或闭合的分路开关,以使进位位跳过PGK级207的各组。应该意识到比图2所示的更多或更少的CS单元217可分路PGK单元207的各种其它的组构造。
在一个实施例中,GP逻辑240生成GP信号以控制CS单元217。GP信号通过将对应于每一个位位置N的传播变量PN进行逻辑与操作来生成。PN由等式3给出,PN=ANBN(等式3)其中表示两位逻辑异或功能。控制某一CS单元217的GP信号通过将由该CS单元217分路的每一个位位置的PN进行逻辑与操作来生成。例如,CS单元0217由GP0信号控制,该GP0信号由等式4给出。
GP0=P0·P1·P2(等式4)类似地,CS单元9217由GP9信号控制,该GP9信号由等式5给出。
GP9=P11·P12·P13·P14·P15(等式5)如图2所示,将加法器200分为较低有效位(“LSB”)位置、较高有效位(“MSB”)位置和中间位位置。LSB位置是不及中间位位置有效的位位置,而MSB位置是比中间位位置更有效的位位置。虽然图2将LSB位置分配为位0-10,中间位位置为位11,而MSB位置为位11-15,但其它实施例可包括其它的分配。
参考图1,当相加的操作数使得PGK级0105生成进位输出120,进位输出120经由CS单元1,2,5,9110进位跳过中间PGK级1-14105,并最终在加和单元15115处与操作数位A15和B15相加时,可发生跳跃进位加法器100的一个可能最差情况的工作时间。因此,跳跃进位加法器100的最长延迟路径(且由此为关键路径)是六块长。
回到图2,将进位-加和单元220全部耦合以从进位链205上的中间位位置接收CI11。进位-加和单元220各自将跳跃进位单元与加和单元的功能性合并,与跳跃进位加法器100相比加速加法器200的运算。例如,在上述的加法器200的最差情况操作期间,CO0由PGK级0207生成并经由跳跃进位单元CS单元1,25217跳跃进位到中间节点245。然后将CO0作为CI11输入到进位-加和单元220以计算一个或多个结果位12-15。因此,加法器200的最长延迟路径(并因此为关键路径)仅五块长。因此,加法器200有效地减少了用于处理到MSB位置的最差情况的跳跃进位的延迟数量。从最低有效位位置到最高有效位加和单元15210(或进位-加和单元15220)的加和输出少穿过一个块可导致进位位在穿过跳跃进位网络215时经历的更少的电阻和电容。最长(且最慢)跳跃进位传播路径的传播延迟中的减小导致加法器200整体提速。
在一个实施例中,进位-加和单元220进行全局路径进位-加和功能,而加和单元12-15210进行局部路径加和功能。如果CI在MSB位置中的一个位置中生成(如CI12-15),则全局路径进位-加和单元220被禁用,而局部路径CI将由PGK级12-15207来传播、生成或删除,并且加和单元12-15将计算结果位12-15中的一位或多位。然而,如果CI不在MSB位置内生成,则CI11可由进位-加和单元220中的每一个直接使用以计算结果位12-15中的每一位(即,位和12-15)。进位-加和单元12-15将跳跃进位功能性与加和功能性合并,从而消除了图1所示的跳跃进位单元7,8110。
在一个实施例中,进位-加和单元12-15220在CI11和从耦合到进位-加和单元220中的每一个的对应的控制块250(仅示出了控制块12,15250以免使图2混乱)接收的控制信号上进行逻辑异或功能。在一个实施例中,通过将中间位位置(例如,位位置11)到进位-加和单元220的对应的位位置之间(包括端点位置)的传播变量PN进行逻辑与操作来生成每一个控制信号。因此控制N信号由等式6给出。
CTRLN=GP11→(N-1)·PN(等式6)例如,控制块12250根据等式7生成控制12信号。
CTRL12=(P11)·P12(等式7)类似地,控制块15250根据等式8生成控制15信号。
CTRL15=(P11·P12·P13·p14)·P12(等式8)因为加法器200的关键路径不穿过沿PGK级11-15207和加和单元12-15210的局部路径,所以可显著地减小用于形成PGK级11-15207和加和单元11-15210的晶体管的尺寸。减小这些器件的尺寸不仅保存集成电路管芯上的宝贵面积,而且减小反射回全局路径和跳跃进位网络215的容性负载。从MSB位置反射回的容性负载的减小允许进位输入位以较少的时间穿过加法器200。如上所提及的,由于这里描述的技术还减小了跳跃进位网络215的电阻。因此,沿所有的关键跳跃进位传播路径的减小的电阻-电容因素(RC延迟)导致加法器200的更快速的加和计算。
读出放大器225耦合到加和单元210和进位-加和单元220的输出。在一个实施例中,读出放大器225读出加和单元210和进位-加和单元220中的每一个的电压输出并纪录逻辑“1”或逻辑“0”。在一个实施例中,加法器200是低压摆动(“LVS”)加法器。在该LVS加法器实施例中,PGK级207、加和单元210和进位-加和单元220中的每一个输出差分互补信号。读出放大器225读出互补信号之间的差分电压的极性以确定在每一个结果位位置计算出逻辑“1”还是逻辑“0”。
LVS加法器对由沿进位链(例如,进位链205)和跳跃进位网络(例如,跳跃进位网络215)的各种耦合和器件漏电事件形成的差分噪声敏感。这些差分噪声源减小了被传播的进位信号的差分量。在最差情况的结果中,差分噪声淹没差分进位信号,导致差分反转和LVS加法器的故障。更典型的是,进位信号的差分量的减小仅导致LVS加法器的减速。LVS加法器对差分噪声敏感的一个原因是噪声抑制路径(汇集进入进位链的噪声电荷的路径)是非常有电阻的(例如,在汇/源节点多达6个延迟块的电阻),并由此难以通过跳跃进位网络汇集噪声电荷。
进位-加和单元220的结合允许跳跃进位加法器100上的关键路径中减少单个延迟块,这导致跳跃进位网络215的电阻的减小。在加法器200的LVS加法器实施例中,跳跃进位网络215的减小的电阻沿跳跃进位网络215提供了增加的差分噪声抑制。该电阻的减小导致更快且更强的LVS加法器。
根据计算机软件和硬件描述以下解释的过程。这些过程可在诸如专用集成电路(“ASIC”)等硬件中具体化。不应认为在每一个过程中部分或全部处理块的出现的顺序是限制的。相反,得益于本公开内容的本领域中的技术人员将理解可按未示出的各种顺序来执行处理块中的一些。
图3是示出根据本发明的实施例用于操作加法器200的过程300的流程图。在处理块305中,在沿进位链205的每一个PGK级207处选择性地传播、生成或删除进位位(例如CI0-15)。
在处理块310中,进位位中的一些选择性地跳过PGK级207的组。例如,如果GP逻辑2240确定进位输入到PGK级3207的CI3将传播通过组2的全体(即,PGK级3,4,5,6207),则CS单元2217将使CI3跳跃过组2以将其作为CI7提供给PGK级7207。在一个实施例中,CS单元217通过为进位位提供传播通过的导通路径来使进位位跳跃过PGK级207的组。
在处理块315中,加和单元0-11210计算多位结果的LSB位置和中间位位置。在一个实施例中,每个加和单元210通过将CIN位与由每一个对应的加和逻辑N212计算的和信号进行逻辑异或操作来计算多位结果中的一位。每一个加和逻辑N212生成操作数AN和BN的和,该和与CIN通过加和单元N210相加。
在处理块320中,控制逻辑N250生成将被提供给相应的进位-加和单元N220的控制信号。如上所述,控制信号基于操作数A和B生成。
在判决块325中,如果局部进位输出(即,CO11-15)不是由PGK级11-14207中的一个生成或删除的,则过程300继续到处理块330。在处理块330中,每一个进位-加和单元220将其对应的控制信号与CI11进行逻辑异或操作以计算多位结果中的每一个MSB位置。在处理块335中,由加和单元0-11210和进位-加和单元220输出的电压由读出放大器225读出,以确定/寄存多位结果。
回到判决块325,如果生成或删除局部进位输出(即,CO11-14)(即,如果PGK级11-15中的一个生成或删除进位输出),则沿进位链205的局部路径确定从该点起的所有CI。应该意识到如果在PGK级14207生成进位输出而PGK级12,13207传播CI11,则进位-加和单元12,13220将计算和12以及和13,而加和单元14,15210将计算和14以及和15。在处理块340中,加和单元12-15210计算多位结果的MSB位置。在处理块335,读出放大器225读出由加和单元0-11210和进位-加和单元12-15220输出的电压。
图4是示出根据本发明的实施例的PGK级400的电路图。PGK级400是PGK单元207的一个可能的实施例。PGK级400的所示实施例包括四个NFET晶体管405、410、415和420,以及两个正型场效应晶体管(“PFET”)425和430。PGK级400接收互补输入CIN并计算互补输出CON。PGK级400可结合加法器200的LVS加法器实施例来使用。
在一个实施例中,NFET和PFET的栅耦合到PGK逻辑209,示于图2(仅示出一个PGK逻辑单元以免使图2混乱)。PGK逻辑209生成控制变量PN、GPN、KN、 和 控制变量PN和GPN类似于以上结合等式3、4和5所描述的。如果PGK逻辑209基于操作数AN和BN确定PGK级N207应“删除”CIN,则将控制变量KN声明为高。
在输入435和440处分别接收CIN和其补码 并在输出445和450处分别输出CON和 如果PGK逻辑209将PN声明为高,则晶体管405和410传播CIN和 如果将 声明为低,则晶体管425生成CON。类似地,如果将KN声明为高,则晶体管420删除CIN。
图5是示出根据本发明的一个实施例的加和单元500的电路图。加和单元500是加和单元210的一个可能的实施例。加和单元500的所示实施例包括NFET505、510、515和520。加和单元500接收异或输入525以控制NFET505和510的栅,并接收异或非输入530以控制NFET515和520的栅。加和单元500在输入535和540上分别接收CIN和其补码 并在其输出545和550上分别计算 和SUMN(见等式2)。
异或输入525和异或非输入530由加和逻辑212基于操作数位AN和BN生成。加和单元500计算异或输入525和在输入535上接收的CIN的逻辑异或,以在输出550上生成sumN。类似地,加和单元500计算异或非输入530和在输入540上接收的 的逻辑异或非,以在输出545上生成的 图6是示出根据本发明的实施例的进位-加和单元600的电路图。进位-加和单元600是进位-加和单元13220的一个可能的实施例。进位-加和单元600的所示实施例除将输入耦合以接收不同的变量外类似于加和单元500。虽然进位-加和单元500示为用于加法器200的位位置13,但进位-加和单元500同样适用于MSB位置中的每一个。取决于具体的MSB位置,如以上结合等式6,7和8所描述的,进行逻辑与操作的具体的传播变量PN变化。
进位-加和单元600是用于LVS加法器的进位-加和单元220的一个实施例。因此,进位-加和单元600接收并生成差分信号。类似地,在该实施例中,控制块250向进位-加和单元600提供一对控制信号CTRL1N和CTRL2N,由等式9和10以及11给出。
CTRL1N=GP11→(N-1)·PN,(等式9)CTRL2N=GP11→(N-1)·P‾N,]]>(等式10)其中PN‾=AN⊗BN‾]]>(等式11)图7是根据本发明的实施例的可结合一个或多个加法器200的系统700的图。系统700的所示实施例包括机箱710、监视器715、鼠标720(或其它定点设备)以及键盘725。机箱710的所示实施例还包括软盘驱动器730、硬盘735、光盘(“CD”)和/或数字视频光盘(“DVD”)驱动器737、电源(未示出)以及以包括系统存储器745、非易失性(“NV”)存储器750以及一个或多个处理器755的适当的集成电路组装的主板740。
处理器755经由主板740上的芯片组通信上耦合到系统存储器745、NV存储器750、硬盘735、软盘驱动器730以及CD/DVD驱动器737,以向其发送/从其接收指令或数据。在一个实施例中,NV存储器750是闪存装置。在其它实施例中,NV存储器750包括只读存储器(“ROM”)、可编程ROM、可擦除可编程ROM、电可擦除可编程ROM等中的任一个。在一个实施例中,系统存储器745包括诸如动态RAM(“DRAM”)、同步DRAM(“SDRAM”)、双数据率SDRAM(“DDR SDRAM”)、静态RAM(“SRAM”)等随机存取存储器(“RAM”)。硬盘735表示用于软件数据、应用程序和/或操作系统的任何存储装置,但大部分是非易失性存储装置。硬盘735可选择地包括集成驱动电子(“IDE”)硬盘、增强IDE(“EIDE”)硬盘、独立磁盘的冗余阵列(“RAID”)、小型计算机系统接口(“SCSI”)硬盘等的一或多个。
在一个实施例中,网络接口卡(“NIC”)(未示出)耦合到主板740的扩展槽上。NIC用于将系统700连接到诸如局域网、广域网或互联网之类的网络760。在一个实施例中,网络760还耦合到远程计算机765上,以使系统700和远程计算机765能够通信。
在一个实施例中,处理器755可包括一个或多个加法器200以提供全加功能性。例如,处理器755可包括算术逻辑单元(“ALU”)以进行具有一个或多个级联的加法器200的数学功能,提供更高数量级的加法功能性。可将加法器200的实施例结合于ALU以实现高速ALU子组件。
如上所述,可将加法器200结合于处理器755以及各种其它的集成电路。加法器200的描述可结合于处理器755或其它各种专用集成电路(“ASIC”)来生成或编译。例如,描述加法器200或其部分的行为级编码可利用诸如VHDL或Verilog之类的硬件描述语言来生成并存储到机器可存取介质(例如,CD-ROM、硬盘、软盘等)中。此外,可将行为级编码编译为寄存器传送级(“RTL”)编码、网表甚至电路布图,并可将行为级编码存储到机器可存取介质中。行为级编码、RTL编码、网表以及电路布图都表示用于描述加法器200的实施例的各种级别的抽象。
包括摘要中描述的内容的本发明的所示实施例的以上描述不是详尽的也不将本发明限于精确的公开形式。尽管这里出于说明的目的描述了本发明的特定实施例和示例,但正如本领域的技术人员将认识到,各种等价的修改在本发明的范围内是有可能的。
根据以上详细的描述可对本发明进行这些修改。在权利要求书中所使用的术语不应解释为将本发明限于本说明书和权利要求书中公开的特定实施例。相反,本发明的范围完全地由权利要求书来确定,该权利要求书将根据权利要求解释建立的教义来解释。
权利要求
1.一种多位加法器,包括进位链,用于选择性地传播、生成和删除进位输入位;跳跃进位网络,耦合到所述进位链以选择地使所述进位输入位跳跃过所述进位链的至少一部分;加和单元,沿所述进位链耦合以将所述进位输入位与两个操作数的对应位加和,每一个加和单元用于生成多位结果的一位;以及进位-加和单元,耦合以接收送往所述进位链上的单个中间位位置的所述进位输入位中的一位,并生成所述多位结果中具有比所述单个中间位位置更高有效位位置的一位。
2.如权利要求1所述的多位加法器,其特征在于,所述进位-加和单元被耦合成将送往所述单个中间位位置的所述进位输入位中的一位与控制信号进行逻辑异或操作,以便生成所述多位结果中的所述一位。
3.如权利要求2所述的多位加法器,其特征在于,还包括耦合到所述进位-加和单元用于生成所述控制信号的控制块,所耦合的控制块通过对所述两个操作数的对应的位位置进行逻辑异或来确定对应于在所述中间位位置和所述进位-加和单元的位位置之间并包括它们的所述多位结果的每一个位位置的传播值,所述控制块对所述传播值进行逻辑与以生成所述控制信号。
4.如权利要求3所述的多位加法器,其特征在于,所述多位结果中的一位和所述进位-加和单元的位位置包括所述多位结果和所述两个操作数的最高有效位位置。
5.如权利要求3所述的多位加法器,其特征在于,还包括多个进位-加和单元,每个进位-加和单元耦合成接收到所述单个中间位位置的所述进位输入位中的一位,并生成具有在所述中间位位置和最高有效位(“MSB”)位置之间并包含所述MSB位置的位位置的所述多位结果的一部分。
6.如权利要求5所述的多位加法器,其特征在于,一部分所述加和单元各自耦合到具有对应的位位置的所述多个进位-加和单元中的一个,以在所述进位输入位中的一位在所述中间位位置和所述MSB位置之间生成时生成具有在所述中间位位置和所述MSB位置之间的位位置的所述多位结果的一些部分。
7.如权利要求1所述的多位加法器,其特征在于,所述进位链包括级联的传播-生成-删除(“PGK”)级,以选择性地传播、生成和删除所述进位输入位;以及所述跳跃进位网络包括耦合到所述进位链的跳跃进位单元,以选择性地使所述进位输入位跳跃过所述PGK级的组。
8.如权利要求7所述的多位加法器,其特征在于,每一跳跃进位单元包括具有源端子、漏端子和栅端子的晶体管,所述源和漏端子耦合成以分路PGK级的组中的一组;以及耦合到所述栅端子的组传播(“GP”)逻辑,所述GP逻辑确定至所述PGK级的组中的分路的一组的进位输入位何时可跳跃过所述PGK级的组中的所述分路的一组,以成为至PGK级的下一组的下一个进位输入位。
9.如权利要求7所述的多位加法器,其特征在于,包括16个PGK级、16个加和单元和4个进位-加和单元,并且其中所述多位加法器包括16位全加器。
10.如权利要求1所述的多位加法器,其特征在于,所述多位加法器包括低压摆动加法器,所述加和单元耦合以生成所述多位结果作为电压差分,并且还包括耦合成读出从加和单元输出的电压差分的读出放大器。
11.一种方法,包括沿进位链选择性地传播、生成或删除进位输入位;将第一操作数、第二操作数以及所述进位输入位的相同位位置相加,以获得多位结果的第一部分,所述第一部分包括中间位位置和比所述中间位位置低的较低有效位位置;基于所述第一和第二操作数生成控制信号;以及对所述进位输入位的中间位位置与所述控制信号进行逻辑异或操作,以确定所述多位结果的第二部分,所述第二部分包括比所述中间位位置高的较高有效位位置。
12.如权利要求11所述的方法,其特征在于,还包括如果确定部分进位链传播至少一些所述进位输入位,则选择性地使所述至少一些进位输入位跳跃过所述部分进位链。
13.如权利要求12所述的方法,其特征在于,生成所述控制信号包括通过对所述第一和第二操作数的所述中间位位置和所述较高有效位位置进行逻辑异或,来生成用于所述较高有效位位置和所述中间位位置的每一个的传播值;以及对所述中间位位置和所述较高有效位位置中的每一个之间且包括它们的传播值进行逻辑与。
14.如权利要求13所述的方法,其特征在于,还包括在所述中间位位置生成进位输出时,将所述第一操作数、所述第二操作数、以及所述进位输入位的相同位位置相加,以获得多位结果的第二部分。
15.如权利要求11所述的方法,其特征在于,还包括读出对于所述多位结果的每一个位位置的差分电压,以确定所述多位结果的数字值。
16.一种在其上包含集成电路的描述的机器可存取介质,所述集成电路包括用于选择性地传播、生成和删除进位输入位的进位链;耦合到所述进位链以选择性地使所述进位输入位跳跃过部分进位链的跳跃进位网络;沿所述进位链耦合的第一加和单元,用于将第一操作数和第二操作数以及所述进位位的相同位位置相加,以生成多位结果的第一部分,所述第一部分包括中间位位置和比所述中间位位置低的较低有效位位置;以及各自耦合到所述进位链的中间位位置的多个进位-加和单元,用于对所述进位输入位的中间位位置与控制信号进行逻辑异或,以生成所述多位结果的第二部分,所述第二部分包括比所述中间位位置高的较高有效位位置。
17.如权利要求16所述的机器可存取介质,其特征在于,所述集成电路还包括各自耦合到所述进位-加和单元中之一的控制块,以生成所述控制信号,所述控制块各自包括耦合以对所述第一操作数和所述第二操作数的所述中间位位置和至少一些较高有效位位置进行逻辑异或以生成传播值的异或逻辑;以及耦合以将所述中间位位置和所述控制块的位位置之间且包括它们的所述传播值进行逻辑与的与逻辑。
18.如权利要求17所述的机器可存取介质,其特征在于,还包括沿进位链耦合的第二加和单元,用于在所述中间位位置生成进位输出时将所述第一操作数和所述第二操作数以及所述进位位的相同位位置相加,以生成多位结果的第二部分。
19.如权利要求16所述的机器可存取介质,其特征在于,将所述第一加和单元和所述第二加和单元耦合以生成所述多位结果作为电压差分,还包括耦合以读出从所述第一加和单元和所述第二加和单元中的每一个输出的所述电压差分的读出放大器。
20.一种系统,包括同步动态随机存取存储器(“SDRAM”);以及耦合以存取SDRAM的处理器,所述处理器包括多位加法器,所述多位加法器包括用于进行传递、生成和删除进位输入位中的至少一种动作的进位链;耦合到所述进位链以选择性地使所述进位输入位跳跃过所述进位链的至少一部分的跳跃进位网络;沿所述进位链耦合以将所述进位输入位与两个操作数的对应位相加的加和单元,每个加和单元生成多位结果中的一位;以及耦合以接收至所述进位链上的单个中间位位置的所述进位输入位中的一位,并生成具有比所述单个中间位位置高的有效位位置的所述多位结果的一位的进位-加和单元。
21.如权利要求20所述的系统,其特征在于,将所述进位-加和单元耦合,以对至单个中间位位置的进位输入位的一位与控制信号进行逻辑异或,以生成所述多位结果中的所述一位。
22.如权利要求21所述的系统,其特征在于,所述多位加法器还包括耦合到所述进位-加和单元的控制块,以生成所述控制信号,所述耦合的控制块通过对所述两个操作数的对应的位位置进行逻辑异或来确定对应于所述中间位位置和所述进位-加和单元的位位置之间并包括它们的所述多位结果的每一个位位置的传播值,所述控制块对所述传播值进行逻辑与以生成所述控制信号。
23.如权利要求22所述的系统,其特征在于,所述多位加法器还包括多个进位-加和单元,每个进位-加和单元耦合成接收至所述单个中间位位置的所述进位输入位中的一位,并生成具有在所述中间位位置和最高有效位(“MSB”)位置之间并包括MSB位置的位位置的所述多位结果的一部分。
24.如权利要求23所述的系统,其特征在于,所述加和单元的一部分各自耦合到具有对应的位位置的所述多个进位-加和单元中的一个,以在所述进位输入位中的一位在所述中间位位置和所述MSB位置之间生成时生成具有介于所述中间位位置和MSB位置之间的位位置的所述多位结果的一些部分。
25.如权利要求24所述的系统,其特征在于,所述多位加法器包括具有MSB进位输出和最低有效位(“LSB”)进位输入的16位低压摆动(“LVS”)加法器。
26.如权利要求25所述的系统,其特征在于,还包括至少两个串联耦合的16位LVS加法器,其中第一个所述16位LVS加法器的MSB进位输出耦合到第二个所述16位LVS加法器的LSB进位输入。
全文摘要
一种多位加法器包括进位链、跳跃进位网络、加和单元以及进位-加和单元。进位链传播、生成或删除进位输入位。跳跃进位网络耦合到进位链以使进位输入位选择性地跳跃过进位链的至少一部分。加和单元沿进位链耦合以将进位输入位与两个操作数的对应的位相加,以生成多位结果。将进位-加和单元耦合以接收至进位链上的单个中间位位置的进位输入位中的一位并生成具有比所述单个中间位位置高的有效位位置的多位结果中的一位。
文档编号G06F7/50GK101014932SQ200580025666
公开日2007年8月8日 申请日期2005年7月15日 优先权日2004年8月4日
发明者S·维尔瑞特尼 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1