地址總線低功耗編碼的設(shè)計(jì)與實(shí)現(xiàn)
對(duì)降低地址總線功耗的編碼方法研究與應(yīng)用正在逐漸增多。本文在簡述地址總線上的功耗來源的基礎(chǔ)上,介紹了幾種典型的地址總線低功耗編碼方法,通過結(jié)合實(shí)際采用的T0編碼,能有效地降低智能卡芯片的功耗。
CMOS電路中的功耗來源于兩部分:一部分為靜態(tài)功耗,由漏電和其它靜態(tài)電流產(chǎn)生;另一部分為動(dòng)態(tài)功耗,由短路電流和負(fù)載電容充放電產(chǎn)生。這兩部分中共有三種最主要的消耗:跳變損耗(switching loss)、短路損耗(short-circuit loss)、漏電損耗(leakage loss)。短路損耗這部分功耗占總功耗的10-15%,而跳變損耗引起的功耗則占到總功耗的70%~80%。N位地址總線的跳變功耗表達(dá)式為:
其中,N表示地址總線寬度,Cload表示平均每位地址線的負(fù)載,VDD為電源電壓,α表示一個(gè)周期內(nèi)平均電容充放電的次數(shù),f是操作頻率,α×f表示翻轉(zhuǎn)率。
智能卡芯片內(nèi)部的地址總線,要將RAM、ROM等模塊相連接,負(fù)載比較重,而且地址總線一般走線也比較長,這無疑都將增大地址總線的負(fù)載電容。同時(shí),CPU對(duì)存儲(chǔ)器訪問頻繁,也增大了地址總線的翻轉(zhuǎn)頻率。因此,地址總線上消耗的功耗比較大。
低功耗地址編碼方法
對(duì)地址總線進(jìn)行低功耗設(shè)計(jì)主要是對(duì)其進(jìn)行低功耗編碼,方法有BI(Bus-Invert)和T0(Zero-Transition)、格雷碼、WZE編碼等。它對(duì)CPU送出的t時(shí)刻與t-1時(shí)刻N(yùn)位地址總線進(jìn)行比較,總線上變化的位數(shù)如果大于N/2,則將總線取反外送,否則就直接外送。地址接收端收到地址后是否取反根據(jù)INV信號(hào)線來確定。例如,地址總線為4位,t-1時(shí)刻為0000,t時(shí)刻為1111,那么將1111取反后送出去。
BI編碼公式如下所示:
式中的b(t)是指t時(shí)刻的實(shí)際地址,B(t)是編碼后的地址,H(t)是b(t)和b(t.1)相異的位數(shù)。
BI解碼公式如下所示:
其中,J(t)為解碼后的地址總線。
T0碼通過增加一條冗余連線INC來通知地址的接收端總線上的地址是否連續(xù)。如果INC為高,表明總線上的地址是連續(xù)的,此時(shí)所有的地址總線保持不變,地址接收端自動(dòng)將上一地址加1,作為當(dāng)前的地址;如果INC為低,表明前后兩次地址并非連續(xù),此時(shí)總線將正常地傳送地址碼。
評(píng)論