欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

減少高速算術(shù)單元中超前進(jìn)位加法器級(jí)數(shù)的結(jié)構(gòu)和方法

文檔序號(hào):6408485閱讀:638來源:國知局
專利名稱:減少高速算術(shù)單元中超前進(jìn)位加法器級(jí)數(shù)的結(jié)構(gòu)和方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種用于數(shù)字加法的方法和裝置,更具體地說,涉及一種構(gòu)造超前進(jìn)位加法器的方法和裝置。
超前進(jìn)位加法器是數(shù)字計(jì)算機(jī)中的關(guān)鍵部件。在高速算術(shù)單元中,它通常是一個(gè)集成部件,以便進(jìn)行高效運(yùn)算。在許多操作中都會(huì)用到超前進(jìn)位加法器,包括加法,減法,乘法,除法以及平方根等。為進(jìn)行高速運(yùn)算,加法器功能需要很復(fù)雜的電路,因此成為數(shù)字計(jì)算機(jī)速度的瓶頸。這樣,提高超前進(jìn)位加法器的性能就會(huì)直接提高計(jì)算機(jī)在計(jì)算密集型應(yīng)用中的性能。
在現(xiàn)有的M位超前進(jìn)位加法器中,使用一對M位輸入數(shù)來獲得相應(yīng)的合成值(generate value)和增加值(propagatevalue)。因此,常規(guī)超前進(jìn)位加法器需要[Log2(M)]—1級(jí),目的是使用合成值和增加值給每一列計(jì)算進(jìn)位。例如,扇入限制為4時(shí),4位輸入數(shù)需要一級(jí),16位輸入數(shù)需要3級(jí),64位輸入數(shù)需要5級(jí)。在最后步驟中,各個(gè)進(jìn)位與2個(gè)M位輸入數(shù)合成到一起,生成輸入數(shù)的加和值。
加法器的計(jì)算速度正比于Log(M)。由于在給定的計(jì)算中需要的級(jí)數(shù)直接影響到算術(shù)操作的總體執(zhí)行速度,因此希望CLA電路級(jí)越少越好。確實(shí)每個(gè)CLA級(jí)的門延遲數(shù)是與實(shí)現(xiàn)電路無關(guān)的。但是,正如所示出的那樣,在CLA中的級(jí)數(shù)隨輸入位數(shù)的對數(shù)的增加而增加,因此就增加了整個(gè)加法器的總延遲數(shù)。換句話說,輸入位數(shù)如果很高,實(shí)際上就會(huì)影響CLA的速度,從而影響處理器的速度。因此,減少超前進(jìn)位加法器的級(jí)數(shù)將實(shí)際上提高數(shù)字計(jì)算機(jī)中給定算術(shù)單元的速度。
本發(fā)明描述了一種用于把加數(shù)和被加數(shù)求和,得到最后的加合值的加法電路。加數(shù),被加數(shù),以及加合值是二進(jìn)制數(shù),每一個(gè)都有很多位。加數(shù)和被加數(shù)的相同順序的位組成2位的列。加法電路包含至少一級(jí)數(shù)據(jù)簡化級(jí),每個(gè)數(shù)據(jù)簡化級(jí)包含至少一個(gè)多列全加法器。數(shù)據(jù)簡化級(jí)使用加數(shù)和被加數(shù)組成的列,生成簡化的加數(shù)和簡化的被加數(shù),其中簡化之后的被加數(shù)的位數(shù)少于原來被加數(shù)的位數(shù)。合成/增加計(jì)算級(jí)使用簡化的加數(shù)和簡化的被加數(shù)來計(jì)算合成數(shù)和增加數(shù)。加法器中對合成/增加計(jì)算級(jí)進(jìn)行了修改,使它能夠適應(yīng)簡化了的加數(shù)和被加數(shù)。進(jìn)位合成級(jí)使用合成/增加數(shù)生成至少一個(gè)最終進(jìn)位。最后,最終求和計(jì)算級(jí)使用簡化的加數(shù),簡化的被加數(shù)以及最終進(jìn)位,求出最終的加和值。數(shù)據(jù)簡化級(jí)減少了輸入到合成/增加計(jì)算級(jí)的輸入位數(shù),從而減少了進(jìn)位合成電路的輸入數(shù)。由于減少了輸入數(shù),因此就減少了進(jìn)位合成電路的級(jí)數(shù),從而使超前進(jìn)位加法器的速度得到提高。
同時(shí)提供了另外一個(gè)實(shí)施例,其中數(shù)據(jù)簡化級(jí)僅在加數(shù)和被加數(shù)的連續(xù)列中的指定組中進(jìn)行操作。這些列通常為二進(jìn)制乘法器中進(jìn)位存儲(chǔ)加法器生成的列陣列的兩個(gè)末端。由于接近陣列末端的列數(shù)據(jù)比陣列中心的列數(shù)據(jù)先到達(dá),因此簡化操作只在先到達(dá)的列中進(jìn)行。
在用于舍入電路的另一個(gè)實(shí)施例中,修改了合成/增加計(jì)算級(jí),使該級(jí)只在連續(xù)列中被加數(shù)位已知為邏輯零的組中進(jìn)行,生成合成值和增加值。這樣使得合成值等于零,增加值等于連續(xù)列中加數(shù)位的邏輯與。
參照下面的描述和附圖,可以更進(jìn)一步地理解本發(fā)明的特征和優(yōu)勢。


圖1是表示現(xiàn)有超前進(jìn)位加法器的操作原理的示意圖。
圖2A是單列合成/增加函數(shù)的函數(shù)表。
圖2B是單列合成/增加函數(shù)的電路原理圖。
圖3A是從超前進(jìn)位加法器的進(jìn)位合成級(jí)得到的最終加合值的函數(shù)表。
圖4是表示修改后的超前進(jìn)位加法器的操作原理的示意圖。
圖5A是2位全加法器的函數(shù)表,用來示出輸出信號(hào)相對于輸入信號(hào)級(jí)的特征。
圖5B是表示簡化了的2位全加法器的電路原理圖。
圖5C是用二輸入和三輸入或非邏輯和線連或邏輯實(shí)現(xiàn)的2位全加法器的電路原理圖。
圖6A是2列合成/增加函數(shù)的函數(shù)表。
圖6B是2列合成/增加函數(shù)的簡化的電路原理圖。
圖6C是修改后的2列合成/增加函數(shù)的電路原理圖。
圖7A是從超前進(jìn)位加法器的進(jìn)位合成級(jí)得到的修改后的最終加合值的函數(shù)表。
圖7B是從超前進(jìn)位加法器的進(jìn)位合成級(jí)得到最終加合值的修改后的簡化電路原理圖。
圖7C是從超前進(jìn)位加法器的進(jìn)位合成級(jí)得到修改后的最終加合值的電路原理圖。
圖8是帶有2級(jí)輸入數(shù)據(jù)簡化的修改后的超前進(jìn)位加法器的操作原理圖。
圖9A是與3列加法函數(shù)相聯(lián)系的函數(shù)表。
圖9B是修改后的3列加法器的簡化電路原理圖。
圖9C是修改后的3列加法器的電路原理圖。
圖10是修改后的超前進(jìn)位加法器中的修改后的4列合成/增加函數(shù)的電路原理圖。
圖11是從修改后的超前進(jìn)位加法器的進(jìn)位合成級(jí)得到最終加合值的修改后的電路原理圖。
圖12是示出了帶有3級(jí)輸入數(shù)據(jù)簡化的修改后的超前進(jìn)位加法器的操作原理圖。
圖13是示出了帶有4級(jí)輸入數(shù)據(jù)簡化的修改后的超前進(jìn)位加法器的操作原理圖。
圖14A是示出了二進(jìn)制乘法函數(shù)的簡化的方塊圖。
圖14B是示出了二進(jìn)制乘法函數(shù)的原理圖。
圖15A示出了現(xiàn)有WTA相對于位數(shù)所需要的FA級(jí)數(shù),其中假定扇入系數(shù)為4。
圖15B示出了現(xiàn)有超前進(jìn)位加法器相對于位數(shù)所需要的級(jí)數(shù),其中假定扇入系數(shù)為4。
圖16示出了在二進(jìn)制乘法中,乘法函數(shù)相對于數(shù)據(jù)位的位置的時(shí)間進(jìn)展情況。
圖17示出了在超前進(jìn)位加法器的輸入端使用了數(shù)據(jù)簡化的二進(jìn)制乘法中,乘法函數(shù)相對于數(shù)據(jù)位的位置的時(shí)間進(jìn)展情況。
圖18是示出了50位舍入電路的操作原理的示意圖。
本發(fā)明將從現(xiàn)有的超前進(jìn)位加法器開始描述,其后將給出幾個(gè)特定應(yīng)用的一般性說明。這些應(yīng)用包括全加單元,二進(jìn)制乘法器,以及輸入位數(shù)不全占滿的加法器中的修改后的超前進(jìn)位加法器。
可以根據(jù)本發(fā)明,構(gòu)造出修改后的超前進(jìn)位加法器,作為全加單元,即,按一定間隔執(zhí)行加法函數(shù)的單元。這樣就消除了使用進(jìn)位合成電路的需要。更進(jìn)一步,如將要討論到的那樣,修改后的超前進(jìn)位加法器還可用于二進(jìn)制乘法器中。在二進(jìn)制乘法器中,進(jìn)位存儲(chǔ)加法器(生成CLA的輸入數(shù)據(jù))的某些列的計(jì)算要先于另外列的計(jì)算,在這種情況下,使用本發(fā)明是非常有用的。某些數(shù)據(jù)先于其它數(shù)據(jù)到達(dá)CLA的情況,使得可以在時(shí)間間隙中對這些″快速數(shù)據(jù)″進(jìn)行處理。這樣就可以減少CLA在等待慢速數(shù)據(jù)到達(dá)時(shí),其進(jìn)位合成電路的輸入位數(shù)。舍入加法器的兩個(gè)加數(shù)中,有一個(gè)加數(shù)沒有占滿全部輸入位數(shù)。對這種類型的超前進(jìn)位加法器的修改將如后面所示那樣,實(shí)際上降低加法器的進(jìn)位合成級(jí)的復(fù)雜程度。
現(xiàn)有的超前進(jìn)位加法器圖1示出了現(xiàn)有的超前進(jìn)位加法器(CLA)2。該電路用于處理2路18位數(shù)據(jù)(4和6),并且計(jì)算最后結(jié)果8。現(xiàn)有電路包含3個(gè)子段合成/增加計(jì)算級(jí)10;進(jìn)位合成級(jí)12;以及最終求和級(jí)14。在圖1中,計(jì)算過程中從上到下進(jìn)行,相應(yīng)的數(shù)據(jù)位的位置用X表示,并安排到列16中,編號(hào)從1到19(從右到左)。在最初,中間以及最后結(jié)果中使用下標(biāo)k做進(jìn)一步討論。
合成/增加計(jì)算由合成/增加電路10(GPC)進(jìn)行,使用加數(shù)4和被加數(shù)6做輸入數(shù)據(jù),為每一列16計(jì)算合成和增加數(shù)(18和20)。對于每一數(shù)據(jù)位的位置(k),合成位以及增加位由下面等式求出Gk=AkBk(1)Pk=Akxor(異或,下同)Bk(2)其中,Ak和Bk是相應(yīng)的加數(shù)和被加數(shù)位。這兩個(gè)等式指示出,數(shù)據(jù)專門地從數(shù)據(jù)(k)的單列16中分開來,其結(jié)果對應(yīng)于該單列16。這兩個(gè)等式的函數(shù)如圖2A所示,完成這些合成/增加計(jì)算的電路原理圖如圖2B所示。
這些數(shù)據(jù)18和20然后被直接送入到進(jìn)位合成電路12。圖1中的進(jìn)位合成電路同樣也是現(xiàn)有的結(jié)構(gòu),為輸入的合成值18和增加值20組成的18套數(shù)據(jù)提供運(yùn)算。假定扇入系數(shù)為4,則進(jìn)位合成電路12對于18位輸入數(shù)據(jù)來說,需要5級(jí),假定扇入系數(shù)為5,則進(jìn)位合成電路需要3級(jí)。進(jìn)位合成計(jì)算的結(jié)果是一組進(jìn)位22,即圖1中的Ck。列k-1產(chǎn)生的進(jìn)位稱為Ck,因?yàn)樗谧罱K加合電路14中與列k的Pk相對應(yīng),從而得到最終加合值8(Sk)。對于現(xiàn)有的最終加合電路來說,Ck由進(jìn)位合成電路12來計(jì)算,最終加合位8通過下式計(jì)算Sk=PkxorCk(3)或者,用等式(2)來取代上式中的Pk,則得Sk=(AkxorBk)xorCk(4)最終加合計(jì)算的函數(shù)表如圖3A所示,實(shí)現(xiàn)該計(jì)算的電路原理圖如圖3B所示。以上就完成了對現(xiàn)有超前進(jìn)位加法器2的描述。修改后的超前進(jìn)位加法器考慮修改后的超前進(jìn)位加法器30,如圖4所示。一組2列全加法器32(TA)放置在加數(shù)4和被加數(shù)6以及合成/增加電路34之間。這種電路修改減少了直接進(jìn)入到進(jìn)位合成電路36的數(shù)據(jù)位數(shù),導(dǎo)致在進(jìn)位合成電路36中所需要的電路級(jí)數(shù)的減少。這里使用TA32按照下述方式修改數(shù)據(jù)位長度。2位加法器32(TA)的操作特征在圖5A中用函數(shù)表指示出來。輸入數(shù)據(jù)端口52記為Ak,Bk,Ak+1,以及Bk+1;輸出端口54記為Dk(加0),Dk+1(加1),以及Ek+2(進(jìn)位溢出)。函數(shù)表50表示出輸出數(shù)據(jù)是4位二進(jìn)制輸入數(shù)的所有16種可能的組合的函數(shù)。TA32的函數(shù)特征也說明Ak+1,Bk+1輸入數(shù)據(jù)作為下一高位的數(shù)據(jù)。對于輸出來說,Dk+1作為下一高位數(shù)據(jù),Ek+2則作為再高一位的數(shù)據(jù)。TA32的函數(shù)式如下所示Dk=(AkxorBk) (5)Dk+1=(Ak+1xorBk+1)xor(AkBk)(6)Ek+2=(Ak+1Bk+1)+(Ak+1AkBk)+(Bk+1AkBk) (7)圖5C中示出了TA32的一個(gè)特定實(shí)現(xiàn)的門級(jí)電路。在本例中,TA函數(shù)使用“或非”(NOR)邏輯部件56和連線或(OR)部件58來完成,輸入52和輸出54相應(yīng)地示于頂部和底部。這種電路正確地滿足了圖5A中函數(shù)表50的特征。與圖4中示例所對應(yīng)的詳細(xì)的列含義如圖5B所示。圖5B同樣示出了數(shù)據(jù)簡化特征。即,使用加數(shù)和被加數(shù)的兩個(gè)相鄰列的2位數(shù)據(jù),TA產(chǎn)生3位輸出數(shù)據(jù),其分布為3列。這些位中的一位是進(jìn)位溢出,延伸到給定輸入數(shù)據(jù)位的更高位。
這個(gè)過程消除了結(jié)果數(shù)據(jù)中每一個(gè)其它的被加數(shù)位,從而稱其為簡化了的加數(shù)38,Dk,以及簡化了的被加數(shù)40,Ek。簡化了的數(shù)據(jù)然后輸入到一組修改后的合成與增加電路34,這些電路做了適當(dāng)?shù)男薷?,用來適合前面所說的簡化了的數(shù)據(jù)的需要。即Gk=0 (8)以及Pk=Dk(9)對于Ek列來說,簡化了的被加數(shù)40已經(jīng)被設(shè)置成0(本例中k是偶數(shù))。
出于實(shí)際的目的,Ek列,對于k為偶數(shù)來說,已經(jīng)被考慮消除。這可以從圖4的結(jié)果數(shù)據(jù)中占據(jù)該位置的X已經(jīng)不存在這一點(diǎn)看出來。對于相鄰的數(shù)據(jù)位對(k和k-1,k為奇數(shù)),合成和增加數(shù)據(jù)位(42和44)為Gk,k-1=Gk+PkGk-1(10)Pk,k-1=PkPk-1(11)代表這兩列合成/增加數(shù)的函數(shù)表如圖6A所示。代入等式(10)和(11),可得Gk,k-1=Gk(12)=DkEk(13)Pk,k-1=(DkxorEk)Dk-1(14)=(DkDk-1)xor(EkDk-1) (15)對于相鄰的列,k所對應(yīng)的列中的D和E都可能是非0的。這些結(jié)果示于圖6A的函數(shù)表的前8項(xiàng)中,例如對于現(xiàn)在的數(shù)據(jù)情況來說,Ek-1=0。圖6B示出了這種修改后的合成/增加電路的詳細(xì)說明。圖6C示出了用于完成上述所需的計(jì)算的電路原理圖。
數(shù)據(jù)42和44然后被直接送入進(jìn)位合成電路36。圖4中的進(jìn)位合成電路是現(xiàn)有的電路結(jié)構(gòu),除了該圖中使用8組輸入的合成數(shù)42和增加數(shù)44而圖1中的現(xiàn)有電路使用18組數(shù)據(jù)之外,沒有任何不同。由于輸入數(shù)據(jù)位數(shù)減少,該實(shí)施例中進(jìn)位合成電路36所需要的級(jí)數(shù)少于純粹的現(xiàn)有超前進(jìn)位加法器(例如,如果扇入系數(shù)為4,則該實(shí)施例需要3級(jí)電路,而現(xiàn)有電路需要5級(jí))。
最終加合位(Sk)8按照下式計(jì)算Sk=DkxorCk(k為偶數(shù)) (16)Sk=Pkxor(Dk-1Ck-2)(k為奇數(shù)) (17)Ck是最終進(jìn)位48,由進(jìn)位合成電路36計(jì)算出來。
圖7A示出了最終加合計(jì)算的函數(shù)表60。輸入62Pk,Dk-1,Ck-1與兩相鄰列相關(guān),并且產(chǎn)生兩列結(jié)果64,Sk和Sk-1(k為奇數(shù))。圖7C中示出了該電路的詳細(xì)的方塊圖,圖7B中則示出了列代表圖。以上完成了對超前進(jìn)位加法器進(jìn)行單級(jí)修改的描述。對超前進(jìn)位加法器的進(jìn)一步修改考慮對超前進(jìn)位加法器做進(jìn)一步修改則可以得到圖8。除了一組TA32放置于輸入數(shù)據(jù)(加數(shù)4和被加數(shù)6)和合成/增加電路74之間外,在TA32組的后面還跟隨有一組修改后的3列加法器72(FCA)。該附加電路提供第二級(jí)數(shù)據(jù)簡化,進(jìn)一步減少了直接進(jìn)入到進(jìn)位合成電路76里的數(shù)據(jù)位數(shù)。從而使得進(jìn)位合成電路76所需的級(jí)數(shù)進(jìn)一步減少。
TA32消除了被加數(shù)6的每隔一個(gè)進(jìn)位位。作為第二級(jí)數(shù)據(jù)簡化電路的新加的修改后3列加法器的放入,則進(jìn)一步消除了被加數(shù)6中的每隔一個(gè)進(jìn)位位。圖9A示出了FCA72的各列關(guān)系表。Dk,Ek,Dk+1,Dk+2以及Ek+2對應(yīng)于3個(gè)相鄰列的輸入,并且產(chǎn)生4個(gè)列結(jié)果Fk,F(xiàn)k+1,F(xiàn)k+2以及Hk+3。圖9B示出了該電路的詳細(xì)的列表示圖。圖9C示出了典型的修改后的3列加法器72的電路原理圖。該電路有一個(gè)信號(hào)增長的延遲,大約與TA32或者1位全加法器相等。
兩次簡化了的數(shù)據(jù)輸入到一組修改后的合成和增加電路74中,對合成和增加電路74進(jìn)行了適當(dāng)?shù)男薷模靡赃m應(yīng)輸入數(shù)據(jù)減少的需要。在本例中,列數(shù)據(jù)減少1/4。對于四個(gè)相鄰列來說,合成和增加數(shù)據(jù)位為Gk,k-3=Gk+PkGk-1+PkPk-1Gk-2+PkPk-1Pk-2Gk-3(18)Pk,k-3=PkPk-1Pk-2Pk-3(19)對于簡化了的數(shù)據(jù)(Hk-1=Hk-2=Hk-3=0),我們得到Gk,k-3=FkHk(20)Pk,k-3=(FkxorHk)Fk-1Fk-2Fk-3(21)圖10示出了完成這些計(jì)算的電路原理圖。
數(shù)據(jù)然后被送入到進(jìn)位合成電路76。該電路是現(xiàn)有的電路結(jié)構(gòu),但在本情況中,它只有4組合成和增加值作為輸入,因此所需要的級(jí)數(shù)比以前的電路更少。例如,如果扇入系數(shù)為4或者更高,則只需要1級(jí)電路。
對于最終加合計(jì)算,Ck由進(jìn)位合成電路計(jì)算,最終加合位使用等式(3)或者(4)來計(jì)算。這樣,本結(jié)構(gòu)中最終加合位(Sk)的計(jì)算如下Sk=FkxorCk(22)對于第一列,Sk+1=Fk+1xor(FkCk)(23)對于第二列,
Sk+2=Fk+2xor(Fk+1FkCk) (24)對于第三列,以及Sk+3=Fk+3xor(Fk+2Fk+1FkCk) (25)對于第四列,更進(jìn)一步,可以用下式計(jì)算中間結(jié)果Lk+1Lk+1=Fk+1Fk(26)可以在得到Ck之前就先計(jì)算這個(gè)中間結(jié)果,使得Sk+2的實(shí)際計(jì)算過程不再復(fù)雜于Sk+1的計(jì)算過程,例如Sk+2=Fk+2xor(Lk+1Ck)(27)同理,也可以計(jì)算另一個(gè)中間數(shù)Lk+2=Fk+2Fk+1Fk(28)這個(gè)中間結(jié)果也可以在得到Ck之前就得到,因此最終結(jié)果計(jì)算不再復(fù)雜于Sk+1的計(jì)算,例如Sk+3=Fk+3xor(Lk+2Ck)(29)圖11示出了4對1最終加合計(jì)算的電路圖。值得注意的是,限制數(shù)據(jù)簡化到更高比例的因素只有技術(shù)上的實(shí)際扇入能力的限制。圖12示出了按照上述原理的更進(jìn)一步修改的例子。其中加入了第三級(jí)數(shù)據(jù)簡化電路80,位于合成值Gk和增加值Pk的計(jì)算之前。如圖中所示的那樣,進(jìn)位合成級(jí)84所得到的結(jié)果輸入數(shù)據(jù)減少為2列,最終進(jìn)位Ck只有1列。新增的數(shù)據(jù)簡化電路與上面所描述的相似,是上述思想的延續(xù)。
圖13示出了在18位輸入CLA90中并入數(shù)據(jù)簡化電路的限制情況。在這種情況下,第四級(jí)數(shù)據(jù)簡化電路92的放入徹底消除了被加數(shù)位,從而直接得到最終加合值8。
以上完成了對現(xiàn)有超前進(jìn)位加法器進(jìn)行修改的描述。下面介紹上面所述發(fā)明的應(yīng)用。二進(jìn)制乘法器二進(jìn)制乘法器是計(jì)算密集型數(shù)字計(jì)算機(jī)中的關(guān)鍵部件。乘法功能需要復(fù)雜的電路,是計(jì)算速度的瓶頸部分。圖14A和圖14B示出了典型的二進(jìn)制乘法器100,帶有進(jìn)位存儲(chǔ)加法器102和超前進(jìn)位加法器104做為基本組成部分。進(jìn)位存儲(chǔ)加法器102執(zhí)行中間列相加計(jì)算,得到相關(guān)列數(shù)據(jù)的乘法初步結(jié)果,并且生成部分加和106以及部分進(jìn)位108。在M位乘以N位的乘法器中,需要N+M-1個(gè)這樣的列,每一列有直到N位的輸入位數(shù)。超前進(jìn)位加法器104得到進(jìn)位存儲(chǔ)加法器102的結(jié)果,例如部分加和106和部分進(jìn)位108,并計(jì)算最終加合值110,M+N位數(shù)。圖14A示出了使用列相加操作的二進(jìn)制乘法函數(shù)。
該操作通常由右至左進(jìn)行,得到從乘數(shù)114中的1位乘以被乘數(shù)116所得的結(jié)果中得來的中間行112。即,乘數(shù)位為1時(shí),結(jié)果行112與被乘數(shù)116相同,向右移動(dòng)乘數(shù)位的位數(shù)。如果乘數(shù)位為0,結(jié)果行112全為0。行112在列118中按相應(yīng)的位權(quán)對齊。該操作的結(jié)果是N+M-1個(gè)列118(N是被乘數(shù)116的數(shù)據(jù)位數(shù)),位于M行里(M是乘數(shù)的數(shù)據(jù)位數(shù))。在本例中,乘數(shù)114是5位二進(jìn)制數(shù),被乘數(shù)116也是5位二進(jìn)制數(shù),因此所得的中間結(jié)果有5個(gè)行112,9個(gè)列118。同樣有兩行,每一行都有9位,做為下面將要討論的部分加和106和部分進(jìn)位108。最后,生成最終加合值110,它有10位長,是在列118上執(zhí)行加法操作得到的結(jié)果。本發(fā)明的一個(gè)實(shí)現(xiàn)中涉及了二進(jìn)制乘法中超前進(jìn)位加法器104的結(jié)構(gòu)上的改進(jìn)。
Wallace—樹二進(jìn)制加法器(WTA)是二進(jìn)制乘法器中現(xiàn)有的進(jìn)位存儲(chǔ)加法器的基本組成模塊。WTA作為上面所述的中間計(jì)算的列加法器,執(zhí)行中間列加和,并且每列產(chǎn)生一個(gè)部分和位,每列產(chǎn)生一個(gè)部分進(jìn)位。在典型的實(shí)現(xiàn)電路中,每列有一個(gè)WTA。這樣,N乘以M位乘法器中就需要N+M-1個(gè)這樣的加法器,每一個(gè)加法器有直到N個(gè)的輸入位數(shù)。在這種類型的應(yīng)用中,WTA有幾種常用的實(shí)現(xiàn)方法。但是,在所有的實(shí)現(xiàn)中,數(shù)據(jù)所需要通過的級(jí)數(shù)都與輸入數(shù)據(jù)位數(shù)的對數(shù)值成正比。
圖15A示出了現(xiàn)有WTA中級(jí)120的需要數(shù)量與輸入位數(shù)122的關(guān)系,二者服從對數(shù)關(guān)系。單個(gè)WTA的速度正比于級(jí)120的數(shù)量。N位WTA(例如,執(zhí)行中間列的加和操作的WTA)是最慢的。許多列加法器快于N位WTA,尤其是那些最低數(shù)據(jù)位和最高數(shù)據(jù)位上的加法器。因此,短列加法器的結(jié)果可以比N位WTA的結(jié)果在時(shí)間上先得到。
超前進(jìn)位加法器使用列加法器得到的結(jié)果,每一列有2位數(shù)據(jù),并且計(jì)算最終加合值。它為每一列執(zhí)行合成和增加操作的中間計(jì)算,從這些數(shù)據(jù)中計(jì)算進(jìn)位,以及使用從列加法器得來的M+N-1對數(shù)據(jù)位數(shù)進(jìn)行最終加合計(jì)算。如早期所討論的那樣,超前進(jìn)位加法器電路需要[Log2(M)]-1級(jí),以計(jì)算每一個(gè)進(jìn)位,因此使得計(jì)算速度正比于Log2(M+N)。
圖15B示出了常用超前進(jìn)位的級(jí)數(shù)124與輸入數(shù)據(jù)位數(shù)126之間的關(guān)系。
圖16示出了在現(xiàn)有二進(jìn)制加法器100中,時(shí)間進(jìn)展與數(shù)據(jù)位位置(即級(jí)次)的關(guān)系。計(jì)算過程中的特定部分所需要花費(fèi)的時(shí)間垂直顯示出來,正向時(shí)間軸130垂直向下。該圖示出了前面所討論過的情況,即某些部分的計(jì)算要先于其它部分的計(jì)算完成。這在進(jìn)位存儲(chǔ)加法器102和超前進(jìn)位加法器104中都是這樣,在圖中由“等待階段”時(shí)間塊132所代表。因此,此時(shí)還不能進(jìn)行下一步的計(jì)算,必須要等待所有的中間結(jié)果計(jì)算完成才能繼續(xù)計(jì)算,目前先保持先期到達(dá)的中間結(jié)果,等待慢速計(jì)算過程的完成。
根據(jù)圖17敘述的本發(fā)明的應(yīng)用,先期到達(dá)的結(jié)果可以用來先于超前進(jìn)位加法器執(zhí)行加法計(jì)算,以減少超前進(jìn)位加法器的級(jí)數(shù)104,這樣實(shí)際上就提高了二進(jìn)制乘法器100的計(jì)算速度??梢园褕D17和圖16進(jìn)行比較,其中有幾處修改。TA134和FCA136函數(shù)可以在等待時(shí)間里進(jìn)行,并不占用時(shí)間,這樣就減少了超前進(jìn)位加法器104所要處理的合成/增加列數(shù)。超前進(jìn)位加法器104的速度由這些合成/增加列所決定。因此,減少列數(shù),就可以提高超前進(jìn)位加法器的速度,從而提高乘法器100的速度。圖17示出了完成了一級(jí)數(shù)據(jù)簡化的時(shí)間段,以及完成了兩級(jí)數(shù)據(jù)簡化的時(shí)間段。對于比較小的乘法來說,可能只需要或者只能進(jìn)行一級(jí)數(shù)據(jù)簡化,但是對于大的乘法來說,可能會(huì)用到三級(jí)到四級(jí)的數(shù)據(jù)簡化。舍入電路圖18示出了本發(fā)明的另外一個(gè)應(yīng)用舍入電路140。在電路140中,兩個(gè)50位數(shù),142和144,在超前進(jìn)位加法器140中相加,其中之一144只包含4個(gè)可能的非0位,稱之為1,2,30,以及31?,F(xiàn)有的電路是把這兩個(gè)數(shù)送到50位超前進(jìn)位加法器中。如果扇入系數(shù)為4,則這樣的加法器需要5級(jí)才能完成加法功能。本發(fā)明中的電路實(shí)現(xiàn)方法是利用輸入數(shù)據(jù)中0位的優(yōu)勢,減少加法器所需要的級(jí)數(shù)。對于這種實(shí)現(xiàn)方法,使用了修改后的合成/增加計(jì)算過程,把適當(dāng)?shù)臄?shù)據(jù)結(jié)合起來。當(dāng)幾個(gè)相鄰的列具有以下性質(zhì)時(shí),即一個(gè)操作數(shù)(被加數(shù))的所有位都已知為0,那么這一組列的合成值為0,增加值為該列中另一操作數(shù)(加數(shù))的數(shù)據(jù)位的與(AND)。在圖18的例子中,通過這種方法,把列數(shù)據(jù)減少到原來的1/3到1/4。圖中的進(jìn)位合成電路146是現(xiàn)有的電路結(jié)構(gòu),但它只有16位輸入合成數(shù)Gk和增加數(shù)Pk,因此與現(xiàn)有電路相比,所需要的級(jí)數(shù)更少。如果扇入系數(shù)同樣為4,則只需要3級(jí),而原來需要5級(jí)。
對于最終加合計(jì)算來說,Ck由進(jìn)位合成電路146來計(jì)算,使用等式(22)到(29)來計(jì)算最終合成位,已經(jīng)在前面的修改后的超前進(jìn)位加法器部分中描述過了。另外,根據(jù)所描述的針對二進(jìn)制乘法器的技術(shù),可以用先到達(dá)的中間結(jié)果進(jìn)行中間計(jì)算,來減少最終加合計(jì)算的復(fù)雜程度,從而提高速度。
盡管通過描述本發(fā)明的特定實(shí)施例介紹了本發(fā)明,但應(yīng)該理解到,精通本領(lǐng)域的人,可以對本發(fā)明進(jìn)行形式上的和細(xì)節(jié)上的各種修改,而并不脫離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種加法電路,用于把加數(shù)和被加數(shù)求和,得到最后結(jié)果,加數(shù),被加數(shù)以及其和都是二進(jìn)制數(shù),有許多數(shù)據(jù)位,加數(shù)和被加數(shù)中同級(jí)的數(shù)據(jù)位組成列,加法電路包括至少一個(gè)數(shù)據(jù)簡化級(jí),每一個(gè)數(shù)據(jù)簡化級(jí)包括至少一個(gè)全列加法器,數(shù)據(jù)簡化級(jí)使用加數(shù)和被加數(shù)列,生成一個(gè)簡化了的加數(shù)和簡化了的被加數(shù),其中簡化了的被加數(shù)的位數(shù)少于原被加數(shù)。
2.如權(quán)利要求1中所說的加法電路,其中數(shù)據(jù)簡化級(jí)的級(jí)數(shù)為,簡化后的被加數(shù)的數(shù)據(jù)位全部被消除,并且在數(shù)據(jù)簡化級(jí)直接生成最終加合值。
3.如權(quán)利要求1中所說的加法電路,進(jìn)一步包括一個(gè)合成/增加計(jì)算級(jí),使用簡化了的加數(shù)和被加數(shù),計(jì)算合成和增加值,合成/增加計(jì)算級(jí)得到適當(dāng)?shù)男薷模赃m應(yīng)簡化后的加數(shù)和被加數(shù)的需要;一個(gè)進(jìn)位合成級(jí),使用合成和增加數(shù)生成至少一個(gè)最終進(jìn)位;以及一個(gè)最終加合計(jì)算級(jí),使用簡化了的加數(shù),簡化了的被加數(shù),以及最終進(jìn)位來計(jì)算最終加合值。
4.如權(quán)利要求3中所說的加法電路,其中數(shù)據(jù)簡化級(jí)只對加數(shù)和被加數(shù)的連續(xù)列中指定的組進(jìn)行操作。
5.一種加法電路,用于把加數(shù)和被加數(shù)求和,得到最后結(jié)果,加數(shù),被加數(shù)以及其和都是二進(jìn)制數(shù),有許多數(shù)據(jù)位,加數(shù)和被加數(shù)中同級(jí)的數(shù)據(jù)位組成列,加法電路包括至少一個(gè)數(shù)據(jù)簡化級(jí),每一個(gè)數(shù)據(jù)簡化級(jí)包括至少一個(gè)全列加法器,數(shù)據(jù)簡化級(jí)使用加數(shù)和被加數(shù)列,生成一個(gè)簡化了的加數(shù)和簡化了的被加數(shù),其中簡化了的被加數(shù)的位數(shù)少于原被加數(shù);一個(gè)合成/增加計(jì)算級(jí),使用簡化了的加數(shù)和被加數(shù),計(jì)算合成和增加值,合成/增加計(jì)算級(jí)得到適當(dāng)?shù)男薷?,以適應(yīng)簡化后的加數(shù)和被加數(shù)的需要;一個(gè)進(jìn)位合成級(jí),使用合成和增加數(shù)生成至少一個(gè)最終進(jìn)位;以及一個(gè)最終加合計(jì)算級(jí),使用簡化了的加數(shù),簡化了的被加數(shù),以及最終進(jìn)位來計(jì)算最終加合值。
6.如權(quán)利要求5所說的加法電路,其中數(shù)據(jù)簡化級(jí)只對加數(shù)和被加數(shù)的連續(xù)列中指定的組進(jìn)行操作。
7.如權(quán)利要求5所說的加法電路,其中有一個(gè)數(shù)據(jù)簡化級(jí)包含許多2列全加法器,數(shù)據(jù)簡化級(jí)使用加數(shù)和被加數(shù)列,生成一個(gè)簡化了的加數(shù)和簡化了的被加數(shù),其中簡化了的被加數(shù)的位數(shù)少于原被加數(shù)。
8.如權(quán)利要求7所說的加法電路,其中數(shù)據(jù)簡化級(jí)只對加數(shù)和被加數(shù)的連續(xù)列中指定的組進(jìn)行操作。
9.如權(quán)利要求5所說的加法電路,其中數(shù)據(jù)簡化級(jí)包括數(shù)據(jù)簡化級(jí)一,包括許多2列全加法器,數(shù)據(jù)簡化級(jí)使用加數(shù)和被加數(shù)列,生成簡化了的加數(shù)一和簡化了的被加數(shù)一,其中簡化了的被加數(shù)一的位數(shù)少于原被加數(shù)。至少一個(gè)中間數(shù)據(jù)簡化級(jí),每一個(gè)中間數(shù)據(jù)簡化級(jí)都包含至少一個(gè)3列全加法器,中間數(shù)據(jù)簡化級(jí)使用加數(shù)一和被加數(shù)一,生成簡化了的加數(shù)和簡化了的被加數(shù),其中簡化了的被加數(shù)的位數(shù)少于被加數(shù)一。
10.如權(quán)利要求9所說的加法電路,其中數(shù)據(jù)簡化級(jí)只對加數(shù)和被加數(shù)的連續(xù)列中指定的組進(jìn)行操作。
11.一種加法電路,用于把加數(shù)和被加數(shù)求和,得到最后結(jié)果,加數(shù),被加數(shù)以及其和都是二進(jìn)制數(shù),有許多數(shù)據(jù)位,加數(shù)和被加數(shù)中相同級(jí)次數(shù)的數(shù)據(jù)位組成列,被加數(shù)只有特殊的列中有非0位,加法電路包括一個(gè)合成/增加計(jì)算級(jí),使用加數(shù)和被加數(shù)列計(jì)算合成和增加值,合成/增加計(jì)算級(jí)得到適當(dāng)?shù)男薷模詫δ切┻B續(xù)列中被加數(shù)位已知為邏輯0的組計(jì)算,生成合成數(shù)一和增加數(shù)一,合成數(shù)一等于邏輯0,增加數(shù)一等于連續(xù)列中加數(shù)位的邏輯與(AND);一個(gè)進(jìn)位合成級(jí),使用合成和增加數(shù)生成至少一個(gè)最終進(jìn)位;以及一個(gè)最終加合計(jì)算級(jí),使用簡化了的加數(shù),簡化了的被加數(shù),以及最終進(jìn)位來計(jì)算最終加合值。
12.如權(quán)利要求11所說的加法電路,其中數(shù)據(jù)簡化級(jí)只對加數(shù)和被加數(shù)的連續(xù)列中指定的組進(jìn)行操作。
13.一種用于把加數(shù)和被加數(shù)求和并得到最后結(jié)果的方法,加數(shù),被加數(shù)以及其和都是二進(jìn)制數(shù),有許多數(shù)據(jù)位,方法包括以下步驟把加數(shù)和被加數(shù)中相同級(jí)次的數(shù)據(jù)位組成列;對加數(shù)和被加數(shù)列進(jìn)行操作,生成簡化了的加數(shù)和被加數(shù),其中簡化了的被加數(shù)的數(shù)據(jù)位數(shù)少于原被加數(shù);使用簡化了的加數(shù)和被加數(shù)計(jì)算合成值和增加值;使用合成值和增加值生成至少一個(gè)最終進(jìn)位;以及使用簡化了的加數(shù),簡化了的被加數(shù),以及最終進(jìn)位來計(jì)算最終加合值。
14.如權(quán)利要求13所說的方法,其中執(zhí)行步驟在簡化后的被加數(shù)中消除了所有的位,因此生成了最終加合值。
全文摘要
一種超前進(jìn)位加法器,用于將加數(shù)和被加數(shù)相加,并生成最終加合,所述加數(shù)、被加數(shù)以及最終加合為多位二進(jìn)制數(shù),將加數(shù)和被加數(shù)中同級(jí)的位組成列。該加法器有至少一個(gè)數(shù)據(jù)簡化級(jí),它利用簡化了的加數(shù)和被加數(shù)生成最終簡化的加合,一個(gè)合成/增加計(jì)算級(jí)利用簡化加數(shù)和被加數(shù)計(jì)算加合和增加數(shù)據(jù)。一個(gè)進(jìn)位合成級(jí)利用合成和增加數(shù)據(jù)生成至少一個(gè)進(jìn)位。最終加合計(jì)算級(jí)利用簡化了的加數(shù),被加數(shù)及最終進(jìn)位計(jì)算最終加合。
文檔編號(hào)G06F7/50GK1128071SQ94192950
公開日1996年7月31日 申請日期1994年8月1日 優(yōu)先權(quán)日1993年8月5日
發(fā)明者雷納德·丹尼斯·拉里克 申請人:現(xiàn)代電子美國公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
大方县| 乡城县| 安仁县| 永清县| 丰原市| 临邑县| 从江县| 玉环县| 贞丰县| 鄂伦春自治旗| 二手房| 新源县| 康马县| 建昌县| 梁山县| 仁怀市| 台中市| 巴楚县| 葫芦岛市| 万州区| 常熟市| 将乐县| 宁河县| 明溪县| 蓬溪县| 台东县| 黄骅市| 西盟| 清新县| 招远市| 兰西县| 凤台县| 桃园县| 浦北县| 承德市| 蒙山县| 怀安县| 彰化市| 德阳市| 丽水市| 涞源县|