袁 浩,唐 建,方 毅
(1.中國(guó)科學(xué)技術(shù)大學(xué)電子科學(xué)與技術(shù)系,安徽合肥230027;2.中國(guó)科學(xué)技術(shù)大學(xué)信息科學(xué)實(shí)驗(yàn)中心,安徽合肥230027)
超前進(jìn)位加法器的優(yōu)化設(shè)計(jì)
袁 浩1,唐 建1,方 毅2
(1.中國(guó)科學(xué)技術(shù)大學(xué)電子科學(xué)與技術(shù)系,安徽合肥230027;2.中國(guó)科學(xué)技術(shù)大學(xué)信息科學(xué)實(shí)驗(yàn)中心,安徽合肥230027)
在對(duì)超前加法器邏輯算法分析的基礎(chǔ)上,介紹了一種優(yōu)化設(shè)計(jì)方法。寬位加法器采用多層CLA(Carry Look-ahead Adder)塊技術(shù),按四位為一組進(jìn)行組間超前進(jìn)位,減小硬件延時(shí),達(dá)到并行、高速的目的。并在晶體管級(jí)重點(diǎn)對(duì)全加器進(jìn)行優(yōu)化設(shè)計(jì),從而降低整個(gè)電路的延時(shí)、面積和功耗。仿真結(jié)果表明,在SMIC65nm工藝下,設(shè)計(jì)出的16位超前進(jìn)位加法器,其延時(shí),面積,功耗相比傳統(tǒng)結(jié)構(gòu)都有了明顯的改善,達(dá)到了優(yōu)化的效果。
超前進(jìn)位 分層 加法器 優(yōu)化
作為減、除、乘、模乘等運(yùn)算的基礎(chǔ),加法運(yùn)算是最重要、最基本的運(yùn)算。在加法運(yùn)算中存在進(jìn)位的問題,高位計(jì)算結(jié)果的得出與所有低于它的位相關(guān)。而且由于加法器常處于DSP處理器和高性能處理器的關(guān)鍵路徑中[1],因此人們?cè)O(shè)計(jì)了多種加法器用以減少進(jìn)位傳輸延遲時(shí)間,提高計(jì)算速度,如跳躍進(jìn)位加法器(CSKA,Carry-Skip Adders)、行波進(jìn)位加法器(RCA,Carry-Ripple Adders)、進(jìn)位選擇加法器(CSLA,Carry-Select Adders)、超前進(jìn)位加法器等。
在各種加法器中,超前進(jìn)位加法器的運(yùn)算速度最快,但是結(jié)構(gòu)也最復(fù)雜,從而導(dǎo)致功耗較大。設(shè)計(jì)時(shí)的關(guān)鍵問題就是如何在保持性能不變的情況下減小其面積和功耗。文中從兩個(gè)方面對(duì)CLA進(jìn)行優(yōu)化設(shè)計(jì)以達(dá)到降低功耗、減小面積的目標(biāo)。
一個(gè)n位的加法器,設(shè)ci來自(i-1)位的進(jìn)位輸出位,ci+1是第i位的進(jìn)位輸出位,cn是整個(gè)加法器的進(jìn)位輸出,c0是整個(gè)加法器的進(jìn)位輸入。第i位的輸入為ai、bi,輸出為ci+1和si,則有:
如果ai·bi=1,那么ci+1=1,稱
為進(jìn)位產(chǎn)生函數(shù)。如果ai⊕bi=1,就會(huì)把ci傳遞到i+1位,稱
為進(jìn)位傳播函數(shù)。即有:
將式(5)展開有:
式(6)表明,n位加法器的每位進(jìn)位的生成都可由進(jìn)位生成函數(shù)和進(jìn)位傳播函數(shù)求出,即各進(jìn)位彼此獨(dú)立,不依賴于低位進(jìn)位傳播,因此延遲非常小。并且無論位數(shù)怎么增加,其總會(huì)保持三個(gè)邏輯級(jí)的深度,即生成進(jìn)位的延遲是與位數(shù)無關(guān)的常數(shù)[2]。把用上述方法生成進(jìn)位的加法器稱為超前進(jìn)位加法器(CLA)。
一般超前進(jìn)位加法器產(chǎn)生pi和gi需要一級(jí)門延時(shí),生成ci需要兩級(jí),生成si需要兩級(jí),最后輸出加法結(jié)果總共需要五級(jí)門延遲,這與普遍需要2n級(jí)門延遲[3]的串聯(lián)加法器比較,延遲顯著縮短了。
當(dāng)超前進(jìn)位加法器擴(kuò)展為比4位更寬位時(shí),隨著位數(shù)的增加式(6)的最后一項(xiàng)的項(xiàng)數(shù)在增多,通過最長(zhǎng)時(shí)延路徑的門數(shù)在增加從而導(dǎo)致其硬件延時(shí)會(huì)增大,并且也需要大扇入門、大驅(qū)動(dòng)信號(hào)和長(zhǎng)線驅(qū)動(dòng)[4]。這在實(shí)際設(shè)計(jì)時(shí)是不太可能實(shí)現(xiàn)的。
為了解決這個(gè)問題,可以采用多層CLA塊技術(shù),對(duì)寬位加法器進(jìn)行分組分層設(shè)計(jì)。
2.1 多層CLA塊技術(shù)
假設(shè)一個(gè)n(n=2k,k為整數(shù))位加法器,從中選取第i(i=4k,k為整數(shù)),如圖1所示。
圖1 n位加法器電路Fig.1N-bit adder circuit
從i位到i+3位構(gòu)成一個(gè)4位的超前進(jìn)位產(chǎn)生電路,圖2為這個(gè)電路的輸入輸出信號(hào)圖,該電路用傳播函數(shù)和產(chǎn)生函數(shù)來生成通常的進(jìn)位輸出位,同時(shí)計(jì)算出塊傳播函數(shù)p[i,i+3]和塊產(chǎn)生函數(shù)g[i,i+3],其中:
圖2 4位超前進(jìn)位產(chǎn)生電路的信號(hào)Fig.2 Signal of 4-bit carry look-ahead produce circuit
塊產(chǎn)生函數(shù)和塊傳播函數(shù)描述了從i到i+3位這一組的整體進(jìn)位特性,進(jìn)而傳送到上一級(jí)超前進(jìn)位模塊。圖3為其邏輯圖。
圖3 塊超前進(jìn)位產(chǎn)生邏輯圖Fig.3 Piece carry look-ahead logic diagram
這樣按4位一組的形式對(duì)n位加法器進(jìn)行分組,組內(nèi)實(shí)行超前進(jìn)位,組間也實(shí)行超前進(jìn)位,并同時(shí)對(duì)超前進(jìn)位邏輯進(jìn)行分級(jí),一般分為logn4級(jí)[3],如圖4所示。最低一級(jí)超前進(jìn)位邏輯模塊會(huì)計(jì)算出組內(nèi)的傳播函數(shù)pi、產(chǎn)生函數(shù)gi以及塊傳播函數(shù)p[i,i+3]和塊產(chǎn)生函數(shù)g[i,i+3]。高一級(jí)模塊會(huì)根據(jù)上一級(jí)模塊傳送的p[i,i+3]、g[i,i+3]和c0信號(hào)計(jì)算出低一級(jí)各組的進(jìn)位,并產(chǎn)生此組的塊傳播函數(shù)和塊產(chǎn)生函數(shù)傳遞給更高一級(jí)。依次計(jì)算傳遞,產(chǎn)生的所有組的進(jìn)位信號(hào)都會(huì)傳遞回最低一級(jí)的各個(gè)超前進(jìn)位模塊,此時(shí)通過加法電路就可以并行的計(jì)算出每一位的和。
圖4 超前進(jìn)位分層設(shè)計(jì)Fig.4 Carry look-ahead layered design
2.2 16位加法器的分層設(shè)計(jì)
這里以16位加法器為例,對(duì)超前進(jìn)位塊分層技術(shù)進(jìn)一步闡述。
按兩層CLA塊技術(shù)將16位加法器以4位一小組分為4組,如圖5所示。輸入b0b1…b15和a0a1…a15送入產(chǎn)生和傳播電路,輸出(p0,g0),(p1,g1),…(p15,g15)信號(hào)給第一層CLA模塊。在第一層次,4個(gè)4位超前進(jìn)位產(chǎn)生電路輸出位ci+1,ci+2,ci+3以及塊傳播和塊產(chǎn)生函數(shù)p[i,i+3]和g[i,i+3](i=0,4,8, 12)。塊傳播和產(chǎn)生函數(shù)傳送入層次2的4位超前進(jìn)位電路。在第二層次,超前進(jìn)位產(chǎn)生電路輸出位c4,c8,c12以及字的傳播和產(chǎn)生項(xiàng)p[0,15]和g[0,15]。除了c15以外所有進(jìn)位位都已產(chǎn)生。將進(jìn)位信號(hào)傳送給求和電路即可得最后的計(jì)算結(jié)果。
圖5 16位加法器的多層CLA塊技術(shù)Fig.5 16-bit adder multilayer CLA piece technology
在結(jié)構(gòu)上采用分層設(shè)計(jì)進(jìn)行優(yōu)化設(shè)計(jì)后,再對(duì)一些單元電路相應(yīng)的改造,減少晶體管數(shù)目,降低翻轉(zhuǎn)頻率和寄生電容,以期達(dá)到減少功耗和面積的目的,這里重點(diǎn)對(duì)全加器單元進(jìn)行優(yōu)化設(shè)計(jì)。
圖6是常見的28管CMOS全加器[5],該電路采用全加器的邏輯對(duì)稱性降低了傳統(tǒng)40管互補(bǔ)全加器的晶體管數(shù)目。
圖7是基于CMOS反相器和CMOS傳輸門器的全加器,該電路晶體管數(shù)目只有20個(gè),但是由于引入了多個(gè)反相器,電路的延時(shí)和功耗會(huì)增大。
圖6 28管CMOS全加器Fig.6 28-tube CMOS full adder
圖7 基于傳輸門的24管加法器Fig.7 24-tube adder based on transmission gate
改造后的全加器如圖8所示,由于不用輸出進(jìn)位信號(hào),同時(shí)減少了傳輸門電路中反相器的個(gè)數(shù),晶體管數(shù)目減小到12個(gè)。采用反相器輸出來恢復(fù)傳輸門的閥值損失,使得輸出能夠達(dá)到全擺幅,運(yùn)算速度也加快,并且在保持了高質(zhì)量的輸出電平同時(shí)降低了功耗。
圖8 改進(jìn)的12管全加器Fig.8 Improved 12-tube full adder
在Cadence的Analog Design Environment環(huán)境中,基于SMIC 65 nm工藝,運(yùn)用上述優(yōu)化設(shè)計(jì)思想,采用全定制的方法設(shè)計(jì)了一款16位超前進(jìn)位加法器。仿真波形如圖9所示,加法器邏輯功能正確,測(cè)試結(jié)果如表所示,平均延遲642 ps,晶體管數(shù)目824個(gè)。優(yōu)化后的加法器比用傳統(tǒng)方法設(shè)計(jì)的延遲減小了10%,晶體管數(shù)目減小了5%,達(dá)到了優(yōu)化的結(jié)果。
表1 16位加法器模擬結(jié)果Table 1 Simulation results of 16-bit adder
圖9 16位超前進(jìn)位加法器仿真波形Fig.9 16 bit carry look-ahead adder simulation waveform
文中在對(duì)超前進(jìn)位加法器算法研究的基礎(chǔ)上,從結(jié)構(gòu)和單元電路兩個(gè)方面介紹了優(yōu)化方法。結(jié)構(gòu)上的優(yōu)化實(shí)現(xiàn)了高速,單元電路優(yōu)化設(shè)計(jì)達(dá)到了減小管子數(shù)目和延時(shí)的目的。兩者結(jié)合,達(dá)到了整體電路的優(yōu)化。運(yùn)用這種思想,在標(biāo)準(zhǔn)單元建庫(kù)的項(xiàng)目中,設(shè)計(jì)了4位,16位,32位,64位的超前進(jìn)位加法器宏單元,這些加法器在速度、面積、功耗上都有較大的優(yōu)勢(shì),可以在各種高性能,低功耗的超大規(guī)模集成電路設(shè)計(jì)中調(diào)度使用。
[1] 司煥麗,胡楊川.一種適用于SoC的時(shí)鐘復(fù)位管理電路設(shè)計(jì)[J].通信技術(shù),2013,46(12):104-106.
SI Huan-li,HU Yang-chuan.A Usefule Clock and Reset Management Circuit Design in SoC[J].Communications Technology2013,46(12):104-106.
[2] LANG T,BRUGUERA J D.Floating-Point Multiply-Add—Fused With reduced latency[J].IEEE Transaction son Computers,2004,53(08):988-1003.
[3] BU Hung-tie,WANG Yu-ke,JIANG Ying-tao.Design and Analysis of Low-power-Transislor Full Adder Using Novel XOR-XNOR Gates[J].IEEE Transactions on Circuits and Systems,2002,49(1):25-30.
[4] 王禮平,王觀風(fēng).超前進(jìn)位加法器延遲時(shí)間公式與優(yōu)化設(shè)計(jì)[J].武漢理工大學(xué)學(xué)報(bào):交通科技版,2004,28 (04):585-588.
WANG Li-ping,WANG Guan-feng.Carry Lookahead Adder Time Formula and Delay Optimization Design[J]. Journal of Wuhan University of Technology.Traffic Science and Technology Edition,2004,28(04);585-588.
[5] MARTIN K,Digital Integrated Circuit Design[M].New York:Oxford University Press,2000:384.
YUAN Hao(1990-),male,graduate student,majoring in integrated circuit design.
唐 建(1972—),男,博士,講師,主要研究方向?yàn)橐纛l算法和DSP系統(tǒng);
TANG Jian(1972-),male,Ph.D.,lecturer,mainly engaged in audio algorithm and DSP system.
方 毅(1975—),男,博士,工程師,主要研究方向?yàn)榛旌闲盘?hào)IC芯片設(shè)計(jì)。
FANG Yi(1975-),male,Ph.D.,enginneer,mainly engaged in mixed signal IC design.
Optimized Design on Carry Look-ahead Adder
YUAN Hao1,TANG Jian1,FANG Yi2
(1.Department of Electronic Science&Technology,University of Science&Technology of China,Hefei 230027,China;2.Experiment Center of Information Science&Technology,University of Science&Technology of China,Hefei Anhui 230027,China)
This paper introduces a novel design method based on the analysis of CLA(Carry Look-ahead) logic algorithm.The wide adder adopts the multilayer CLA block technique between groups,with four bits as a group,to reduce the hardware delay and achieve the parallel and high-speed purpose.The key point is to optimize the design of full adder at the transistor level,and thus to reduce the circuit delay,area and power consumption.Simulation result indicates that compared with the traditional structure,the delay,area and power consumption of the 16 bit CLA could be significantly improved,and the optimized effect in the environment of SMIC65nm thus be achieved.
carry look-ahead;layered;adder;optimization
TN432
A
1002-0802(2014)03-0339-04
10.3969/j.issn.1002-0802.2014.03.021
袁 浩(1990—),男,碩士研究生,主要研究方向?yàn)榧呻娐吩O(shè)計(jì);