張愛華


摘要:本文在概率估算和Logical Effort延遲模型基礎上提出了門級電路的功耗估計算法和延遲算法,利用此算法能夠快速地估算出電路的功耗和時間延遲。
關鍵詞:功耗;算法;延遲
1.引言
微電子技術發展到今天,電路對性能的要求越來越高。為了能夠有效地設計出高性能的電路,需要快速估算出電路的功耗和延。估算方法主要有兩種,一種是在已知輸入信號的情況下利用軟件對電路進行模擬,另一種采用概率參數對門級電路進行估算。軟件測量的結果和輸入信號的數目及電路的復雜層度有關,因此,對大量輸入信號的電路,用此估計方法是非常耗時的,而基于概率的估算則簡單快速。
本文在概率估算和Logical Effort延遲模型的基礎上提出了門級電路的功耗估計算法和延遲算法算出功耗,利用此算法能夠快速地估算出電路的功耗和時間延遲。
2.理論背景
2.1定義
CMOS電路因其功耗較低在數字電路中應用廣泛,其功耗主要由動態功耗決定,而動態功耗取決于信號在反轉的過程中對輸出電容充放電的情況。把CMOS電路動態功耗用表達式表示為[1]:
(1)
其中,vdd是供電電壓,fclk是時鐘頻率,cl是輸出負載電容,swi是節點i在一個周期內輸出信號的平均反轉次數,稱為開關活動率。從式(1)可看出平均動態功耗與開關活動率存在線性關系,因此,估算動態平均功耗可等效為估算電路中不同節點的開關活動率。為估算電路的開關活動率,引入以下定義。
定義1信號置1概率 假設把電路動作認為是0-1過程g(t),那么就可以用跳變率和信號置1概率來表示數字電路的活動特性。在時間(-T,T)內,將信號置1概率表示為[2]:
(2)
定義2信號跳變率 ng(T)是在一個周期內的反轉次數,跳變率定義為:
(3)
則置1概率為P的信號的跳變率為2×P×(1-P)。由此,隨機信號的置1概率為1/2,跳變率為1/2。
定義3置1概率的輸出特性 我們將門電路輸入信號的置1概率表示為輸出信號的置1概率。二輸入邏輯門的信號置1概率的輸出特性在在文獻[2]中已給出,例如:如果二輸入的與門輸入置1概率分別為P1和P2,那么它的輸出置1概率為P1×P2;而對于二輸入的或門,其輸出的置1概率為1-(1-P1)×(1-P2)。
3.建議的功耗和延遲估算算法
3.1 功耗估算算法
根據定義1、定義2和定義3提出了電路的功耗估算算法,其步驟如下:
第一步:根據定義1計算出各輸入信號的概率;
第二步:計算電路內部各節點(一個門的輸出定義為一個節點)信號的置1概率,這步可由定義3計算得到;
第三步:把各節點信號的置1概率代入定義2中的2×P×(1-P)式子中可計算出各節點的開關活動率;電路的總開關活動率就是把各節點的開關活動率進行累加。
根據上述步驟即可實現對任意門級電路進行功耗估算,下面以4位行波進位進位鏈(如圖1所示)為例來演示上述算法的應用。
由圖1可知,進位鏈的輸入信號分別為c0、pi和gi,它們的概率分別用P[0]、Pi [i]和Pg [i]表示,其中pi表示進位傳播信號,gi表示進位產生信號,i=1,2,3,4(以下i同)。
1)計算P[0]、Pi [i]和Pg [i]
設最低進位c0=0,故可根據信號置1概率的定義得出其概率P[0]=0;
如圖2所示,進位傳播信號pi經一個或門產生,進位產生信號gi經一個與門產生,假設輸入信號ai和bi是隨機輸入的,它們的概率分別用Pa [i]和Pb [i]來表示。對于隨機輸入信號,它們置1的概率和置0的概率是相等的,因此有Pa [i]=0.5,Pb [i]=0.5;
由定義3可知:Pg [i]=Pa [i]×Pb [i]=0.25,Pi [i]=1-(1-Pa [i])× (1-Pb [i])=0.75。
2)計算進位信號ci和內部節點信號Ni的概率,分別用P[i]和P[Ni]來表示
由圖1可知,每個進位輸出都是經由一個與門和一個或門的串聯而實現的,因此可得到進位輸出信號ci及內部節點信號Ni的概率遞推式。
;
;
進而可得出:
,;
,;
,;
,;
3)將計算出的概率代入開關活動率的公式,可得到進位信號的總開關活動率sw1及內部節點信號的總開關活動率sw2。
;
因此,進位鏈的總開關活動率為:
3.2 延遲時間的估算
在多位加法器中,關鍵路徑是進位鏈中進位信號的計算路徑,因此有效地估算進位鏈的延遲時間是估算加法器延遲時間的關鍵。本文采用了Logical Effort原理提供的延遲模型對電路的延遲時間進行估算,為此,有必要介紹Logical Effort延遲模型。
3.2.1 Logical Effort延遲模型
Logical Effort延遲模型[3]中總延遲可以表示成:
(4)
式中f和p都是無單位的延遲,τ是由工藝參數決定的延遲。LE(Logical Effort)取決于捕捉邏輯門的拓撲結構,它和MOS管的大小沒有關系。輸出端負載電容Cout和輸入電容Cin的之比說明了門的帶負載能力,它是由電路中晶體管的大小決定的。從式(4)看出,Logical Effort延遲模型與邏輯門的電路結構和放大倍數有關,而與寄生參數無關;在Logical Effort理論里,LE=1(反相器)。
由Logical Effort延遲模型可看出LE等于邏輯門與反相器的輸入電容比,因此可以計算出非門、與非門和或非門延遲的LE參數,對應的電路如圖3(a)、(b)和(c)所示。需要說明的是,圖中的數字均表示相應晶體管的寬度,寬度的大小取決于門中管子的堆棧深度,其原理是參照反相器的尺寸來調整邏輯門的尺寸,使其與反相器具有相同的輸出電流。
如圖3(b)所示,與非門電路中的兩個NMOS管是串聯的,導致電阻增大一倍,輸出電流減小一倍。為了與反相器輸出電流相等,必須使 NMOS管的寬度增大一倍。而兩個PMOS管并聯,對電流并不產生影響,因此與非門的尺寸Wp=2, Wn=2。同理也可得到或非門的尺寸Wp=4, Wn=1,其中Wp表示PMOS管的寬度,Wn表示NMOS管的寬度。
對于反相器而言:輸入電容Cin=Wp+Wn=2+1=3,LE=1;
對于二輸入與非門:
輸入電容Cin=Wp+Wn=2+2=4,
;
對于二輸入或非門:
輸入電容Cin=Wp+Wn=4+1=5,
;
3.2.2 延遲時間估算
計算電路的延遲時間,即估算信號通過一個與非門需要的Delay。
根據3.2.1中的內容可知,對于2輸入的與非門來說,LE=4/3,p=2,Cout/ Cin =(5+3)/4=2,τ=20ps(在0.25um工藝下)
由式(4)可得
同理對于任何門級電路,其延遲時間都可按照這個原理計算。
4.結束語
本文在信號跳變率和Logical Effort延遲模型基礎上提出了門級電路的功耗估計算法和延遲算法,利用此算法能夠快速地估算出電路的功耗和時間延遲。
參考文獻:
[1]趙四化,王琪,袁慧.開關電源靜態泄漏和動態功率建模與分析[J].微電子學,2012,42(6):842-845.
[2]徐勇軍,韓銀和,李華偉,等.組合電路功耗敏感性統計分析[J].計算機輔助設計與圖形學學報,2005,17(1):122-128.