1.引言
隨著手持式個(gè)人通訊系統(tǒng)等的發(fā)展,低壓低功耗高吞吐量電路的需求越來越多,因此低功耗微處理器和元件的設(shè)計(jì)已經(jīng)變成了主流。ALU是微處理器最重要的組成部分,其中全加器電路是所有運(yùn)算電路的基本單元,設(shè)計(jì)低功耗快速加法器單元是獲得低功耗高速運(yùn)算電路的關(guān)鍵。ALU單元的設(shè)計(jì)標(biāo)準(zhǔn)是多種多樣的,晶體管數(shù)量顯然是一個(gè)主要的關(guān)注點(diǎn),因?yàn)樗鼧O大的影響了功能單元ALU的設(shè)計(jì)復(fù)雜性。另外兩個(gè)重要的卻又相互矛盾的因素是功耗和速度。與功耗降低相關(guān)的一個(gè)因素是電路能工作的最低電壓, 還有一個(gè)是晶體管的數(shù)量,而全加器晶體管的數(shù)量又極大的影響了ALU單元的晶體管數(shù)量,因此全加器的設(shè)計(jì)也是ALU設(shè)計(jì)中必須重點(diǎn)考慮的一部分。對于已有的全加器的設(shè)計(jì)按照種類來分【1-8】有靜態(tài)CMOS電路,動(dòng)態(tài)電路,傳送管和傳輸門邏輯。其中全靜態(tài)CMOS電路是最傳統(tǒng)的,但需要28個(gè)管子。動(dòng)態(tài)電路能極大的減少晶體管的數(shù)量但是短路功耗卻很大;使用傳送門邏輯是一個(gè)可選的降低電路復(fù)雜性的方案。在【1】中基于傳送門和反向器的全加器設(shè)計(jì)中各使用了20和16個(gè)晶體管,為了得到更少管子的全加器,在【2】中基于XOR/XNOR的傳送門邏輯電路組成的全加器只用了14個(gè)管子,在【3】中,介紹了一個(gè)基于傳輸管的靜態(tài)能量恢復(fù)全加器(SERE),它只使用了10個(gè)管子,且不管它自稱的功耗小,這個(gè)設(shè)計(jì)相比同類的設(shè)計(jì)來講速度比較慢,同時(shí)這個(gè)設(shè)計(jì)不能用來級連,因?yàn)樵诘碗妷合鹿ぷ鲿r(shí)有多閥值損失問題。在【4】中一種新的基于選擇電路的10管全加器設(shè)計(jì)被提出,然而這個(gè)設(shè)計(jì)也同樣有多閥值損失問題,以至于不能在低電壓級連模式下正確的工作,前面提到的10管全加器都是基于圖1的原理來的。文中的ALU單元將采用一種新的10管全加器,它可以減輕閥值損失問題,這個(gè)設(shè)計(jì)可以在使用少量管子的情況下組成快速的并行加法器(RCA)同時(shí)保持較低的能量損耗,另外,這個(gè)設(shè)計(jì)可以在較低的工作電壓下正確運(yùn)行。
圖1 .現(xiàn)有的10管全加器結(jié)構(gòu)
Figure 1. 10-T Full adder Architecture of existent
2.新的基于CLRCL全加器的ALU單元
首先考慮全加器的設(shè)計(jì),全加器的邏輯表達(dá)式為:
Sum=(A⊙B)·Cin+(A⊕B) ·!Cin Count=(A⊕B) ·Cin+(A⊙B) ·A
可以看出有兩個(gè)基本的模型需要使用――XOR和2選1選擇器。一個(gè)XOR/XNOR功能用傳送門邏輯只用四個(gè)管子就可以達(dá)到【5】,一個(gè)2選1選擇器可以用兩個(gè)管子實(shí)現(xiàn)。但是這些電路都有不同程度的閥值電壓損失,所以在使用時(shí)必須小心,文中將采用一種新的全加電路,這個(gè)全加器的特點(diǎn)是進(jìn)位邏輯電平恢復(fù)稱之為(Complementary and Level Restoring Carry Logic or CLRCL)。目的是為了減小電路的復(fù)雜性和達(dá)到快速的級連運(yùn)作。為了避免進(jìn)位鏈的多閥值電壓損失,為此重寫全加器的和以及進(jìn)位邏輯公式:
Sum =(A⊕Cin) ·!Cout+(A⊙Cin) ·B Count =(A⊕Cin) ·B+(A⊙Cin) ·A
圖2.新的1位ALU單元電路圖
Figure 2. New 1-bit ALU unit
改進(jìn)后的電路圖如圖2.其中MUX的電路如圖3所示。這樣設(shè)計(jì)的合理之處在于以下幾點(diǎn):首先,避免了使用有閥值損失的信號作為下一個(gè)單元的控制信號,這是在現(xiàn)有的10管全加器中普遍存在的問題,這將導(dǎo)致在電路級連的時(shí)候有多閥值電壓損失從而使電路不能正確工作;第二,在傳送管鏈中去除了沒有緩沖的進(jìn)位信號傳送。根據(jù)Elmore公式,傳送延遲時(shí)間跟級連的傳送門數(shù)目是二次方的關(guān)系【6】。即使是中等數(shù)目的級連長度,這樣的延遲也是不能忍受的。
圖3 .MUX 的MOS電路圖
Figure 3 . MOS schematic circuit of MUX
正如圖2中全加器部分電路所示,XNOR電路采用了一個(gè)2選1選擇器加一個(gè)反向器來實(shí)現(xiàn),這個(gè)反向器的功用有三個(gè):第一,反向器INV1可以用來補(bǔ)償輸出傳送門輸出電壓的損失,這個(gè)輸出將用來與另外兩個(gè)2選1選擇器一起實(shí)現(xiàn)和以及進(jìn)位功能,這樣和以及進(jìn)位信號的閥值電壓損失可以控制在一個(gè)|V t|;第二,反向器INV2在進(jìn)位鏈中充當(dāng)了一個(gè)緩沖器的作用,從而加速了進(jìn)位的傳送;第三,同時(shí)這個(gè)反向器提供了一個(gè)進(jìn)位的互補(bǔ)信號(!Count)供下一級電路使用。這樣全部的全加器部分電路就只需要10個(gè)管子(5個(gè)PMOS和5個(gè)NMOS),這是目前我們所知的最少的實(shí)現(xiàn)全加器電路的晶體管數(shù)目。
在邏輯與或的功能部分,采用了兩個(gè)信號來控制(Cnt2和Cnt3)(Figure 2所示),當(dāng)全加器的和信號以及邏輯與/或功能信號產(chǎn)生后,再使用一個(gè)2選1選擇器(控制信號為Cnt1),共使用了三個(gè)控制信號實(shí)現(xiàn)了全加及邏輯與/或的功能(見Table 1),使用了兩個(gè)用傳送門實(shí)現(xiàn)的2選1選擇器串聯(lián)后,這個(gè)電路會(huì)有兩個(gè)閥值電壓的損失,不過這并不影響最終電路的正確操作,因?yàn)閮蓚€(gè)閥值電壓的損失在3.3v的工作電壓下還是可以正確工作。
至于左移、右移和SWAP功能可以通過傳輸門來實(shí)現(xiàn)(見Figure 2右部分),通過不同的控制信號可以輕易的實(shí)現(xiàn)這些功能。
前面提到了本文中提出的電路會(huì)有兩個(gè)閥值電壓的損失,為了后續(xù)電路的正確工作我們可以加一個(gè)電平恢復(fù)電路,同時(shí)這個(gè)電路還可以加快電路的傳送速度(見Figure 2右半部分),在此恢復(fù)電路中我們使用了一個(gè)控制信號(Cnt4)來實(shí)現(xiàn)三態(tài)門的功能以控制信號的輸出與否。加上這部分電路后輸出信號會(huì)取反,在許多處理器中信號采用的是補(bǔ)碼形式,而這為補(bǔ)碼的實(shí)現(xiàn)提供了便利。
3. 電路分析和仿真結(jié)果
一些其他的全加器設(shè)計(jì)將用來和本文的全加器比較,因?yàn)樵O(shè)計(jì)的目標(biāo)是降低電路的復(fù)雜性和提高電路的速度以及能量損耗的降低,所以主要關(guān)注于門數(shù)少并基于傳送門的全加器之間的比較。已有的全加器總結(jié)如下表2。
在0.35um工藝下仿真一些10管的全加器的DC特性,其中Vdd為3.3v,反向器的(W/L)p=1.4um/0.35um 以及(W/L)n=0.7um/0.35um(table3)。另外,此電路在1.9v的電壓下依然可以正確工作,這為進(jìn)一步降低功耗提供了一個(gè)很好的途徑。
TALBE 3. Simulation results of 10-T adder designs in 0.35um CMOS technology .(td=time delay)
對整個(gè)電路進(jìn)行DC分析,得到整個(gè)電路的功耗為12.12 uw,延時(shí)1.5ns,仿真結(jié)果見圖5。另外在AC方面,這個(gè)電路的工作頻率也是比較高的。
圖5 . 電路仿真結(jié)果
Figure 5. simulation result for all circuit
4.結(jié)論
本文提出了一種新的1位的ALU單元。所提議的ALU單元在DC方面,可以在很低的工作電壓下工作,功耗小且速度快;在AC方面,由于采用了CLRCL全加器可以工作在很高的頻率下。同時(shí),比較了現(xiàn)有的一些全加器的性能,可以看到文中的CLRCL電路不僅使用的晶體管的數(shù)目較少,同時(shí)它的功耗和速度性能也是比較優(yōu)良的,極大的提高了1位ALU的性能。
本文創(chuàng)作者新點(diǎn):
本文針對目前在RISC結(jié)構(gòu)的MCU/MPU等中需要使用低功耗,小面積,快速的ALU單元,提出了一種新的結(jié)構(gòu)簡單的ALU單元結(jié)構(gòu),在此結(jié)構(gòu)中使用的全加器是目前比較流行的10-T全加器,通過對全加器布爾邏輯的重組,使這種全加器在級連結(jié)構(gòu)中不會(huì)產(chǎn)生多閥值損失的情況,最后在電路輸出部分采用了電平恢復(fù)結(jié)構(gòu),使電路的輸出波形很好,同時(shí)這種結(jié)構(gòu)與現(xiàn)有的結(jié)構(gòu)相比有著明顯的面積,速度,功耗方面的優(yōu)勢。
參考文獻(xiàn):
[1] N.Zhuang and H. Wu,”A new design of the COMS full adder,” IEEE J. of solid state circuits, Vlo.27,pp.840-844,May 1992.
[2] J.Wang, S.Fang, and W. Feng, “New efficient designs for XOR and XNOR function on the transistor level ,”IEEE J. Solid-State Circuits, Vol. 29, pp. 780-786, July 1994.
[3] R. Shalem, E . John, and L.K. John ,”A novel low-power energy recovery full adder cell,” in Proc. Great Lakes Symp. VLSI,pp.380-383, Feb.1999.
[4] Fartash Vasefi and Z. Abid ,”10-Transistor 1-bit Adders for n-bit Parallel Adders,” IEEE J. of solid state circuit ,pp.7803-8656,Apr, 2004.
[5] H.T.Bui, A.K.Al-Sheraidah, and wang,“Design and analysis of 10-transistor full adders using novel XOR-XNOR gates,” in Proc. Int. Conf. Signal Processing 2000(Wold Computer Congress),Beijing, China,Aug.2000
[6] N.Weste and K. Eshraghian, Principles of CMOS VLSI Design, a System Perspective. Reading, MA: Addison-Wesley,1993.
7] Yingtao Jiang, Abdulkarim Al-Sheraidah, Yuke Wang , Edwin Sha, and Jin-Gyun chung, “A Novel Mutipleser-Based Low-Power Full Adder,” IEEE Transactions on circuits and systems-II: express briefs, Vol.51,No.7 ,July 2004.
[8] 盧君明,徐鋒,胡鵬飛,“低電壓低功耗全加器的研究設(shè)計(jì),”固體電子學(xué)研究與進(jìn)展,第24卷,第3期,2004年8月
[9] 張杰; 基于FPGA的八位RISC CPU的設(shè)計(jì)[J]; 微計(jì)算機(jī)信息,2006-35-05