并行結(jié)構(gòu)的原理是通過(guò)犧牲面積來(lái)降低功耗。將一個(gè)功能模塊復(fù)制為n(n≥2)個(gè)相同的模塊,這些模塊并行計(jì)算后通過(guò)數(shù)據(jù)選擇器選擇輸出,采用二分頻的并行結(jié)構(gòu),如圖4所示。
并行設(shè)計(jì)后,由于有多個(gè)模塊同時(shí)工作,提高了吞吐能力,可以把每個(gè)模塊的速度降低為原來(lái)的l/n。根據(jù)延時(shí)和工作電壓的線性關(guān)系,工作電壓可以相應(yīng)降低為原來(lái)的l/n,電容增大為原來(lái)的n倍,工作頻率降低為原來(lái)的l/n,根據(jù)式(1)功耗降低為原來(lái)的1/n2。并行設(shè)計(jì)的關(guān)鍵是算法設(shè)計(jì),一般算法中并行計(jì)算的并行度往往比較低,并行度高的算法比較難開(kāi)發(fā)。例如:若原模塊的功耗為P=a×CL×V2dd×f,采用二分頻結(jié)構(gòu),由于增加了一個(gè)模塊和數(shù)據(jù)選擇器,整個(gè)電容負(fù)載為2.2CL,工作頻率為f/2,工作電壓可以降為O.6 V,則其功耗為:
由此可見(jiàn),二分頻并行結(jié)構(gòu)在保持原有電路性能的同時(shí)降低了60%的功耗。
流水線技術(shù)本質(zhì)上也是一種并行。把某一功能模塊分成n個(gè)階段進(jìn)行流水作業(yè),每個(gè)階段由一個(gè)子模塊來(lái)完成,在子模塊之間插入寄存器,如圖5所示。若工作頻率不變,對(duì)某個(gè)模塊的速度要求僅為原來(lái)的1/n,則工作電壓可以降低為原來(lái)的1/n,電容的變化不大(寄存器面積占的比例很小),功耗可降低為原來(lái)的 1/n2,面積基本不變,但增加了控制的復(fù)雜度。例如,若原模塊的功耗為P=α×C1×V2dd×f,采用流水線技術(shù),由于增加了寄存器,整個(gè)電容負(fù)載為 1.2CL,工作頻率不變,工作電壓降為0.6 V,則其功耗為:
由此可見(jiàn),流水線技術(shù)能顯著降低系統(tǒng)功耗。
通過(guò)流水線技術(shù)和并行結(jié)構(gòu)降低功耗的前提是電路工作電壓可變。如果工作電壓固定,則這兩種方法只能提高電路的工作速度,并相應(yīng)地增加了電路的功耗。在深亞微米工藝下,工作電壓已經(jīng)比較接近閾值電壓,為了使工作電壓有足夠的下降空間,應(yīng)該降低闊值電壓;但是隨著閾值電壓的降低,亞閾值電流將呈指數(shù)增長(zhǎng),靜態(tài)功耗迅速增加。因此,電壓的下降空間有限。
2.4 低功耗單元庫(kù)
設(shè)計(jì)低功耗單元庫(kù)是降低功耗的一個(gè)重要方法,包括調(diào)整單元尺寸、改進(jìn)電路結(jié)構(gòu)和版圖設(shè)計(jì)。用戶可以根據(jù)負(fù)載電容和電路延時(shí)的需要選擇不同尺寸的電路來(lái)實(shí)現(xiàn),這樣會(huì)導(dǎo)致不同的功耗,因此可以根據(jù)需要設(shè)計(jì)不同尺寸的單元。同時(shí),為常用的單元選擇低功耗的實(shí)現(xiàn)結(jié)構(gòu),如觸發(fā)器、鎖存器和數(shù)據(jù)選擇器等。
2.5 低功耗狀態(tài)機(jī)編碼
狀態(tài)機(jī)編碼對(duì)信號(hào)的活動(dòng)性具有重要影響,通過(guò)合理選擇狀態(tài)機(jī)狀態(tài)的編碼方法,減少狀態(tài)切換時(shí)電路的翻轉(zhuǎn),可以降低狀態(tài)機(jī)的功耗。其原則是:對(duì)于頻繁切換的相鄰狀態(tài),盡量采用相鄰編碼。例如:Gray碼在任何兩個(gè)連續(xù)的編碼之間只有一位的數(shù)值不同,在設(shè)計(jì)計(jì)數(shù)器時(shí),使用Gray碼取代二進(jìn)制碼,則計(jì)數(shù)器的改變次數(shù)幾乎減少一半,顯著降低了功耗;在訪問(wèn)相鄰的地址空間時(shí),其跳變次數(shù)顯著減少,有效地降低了總線功耗。
2.6 Cache的低功耗設(shè)計(jì)
作為現(xiàn)代微處理器中的重要部件,Cache的功耗約占整個(gè)芯片功耗的30%~60%,因此設(shè)計(jì)高性能、低功耗的Cach結(jié)構(gòu),對(duì)降低微處理器的功耗有明顯作用。Cache低功耗設(shè)計(jì)的關(guān)鍵在于降低失效率,減少不必要的操作。通常用來(lái)降低Cache功耗的方法有以下兩種:一種是從存儲(chǔ)器的結(jié)構(gòu)出發(fā),設(shè)計(jì)低功耗的存儲(chǔ)器,例如采用基于CAM的Cache結(jié)構(gòu);另一種是通過(guò)減少對(duì)Cache的訪問(wèn)次數(shù)來(lái)降低功耗。
以上主要是從硬件的角度來(lái)實(shí)現(xiàn)功耗的降低。除了硬件方法,通過(guò)軟件方面的優(yōu)化,也能顯著地降低功耗。例如:在Crusoe處理器中,采用高效的超長(zhǎng)指令 (VLIW)、代碼融合(Code Morphing)技術(shù)、LongRun電源管理技術(shù)和RunCooler工作溫度自動(dòng)調(diào)節(jié)等創(chuàng)新技術(shù),獲得了良好的低功耗效果。
3 微處理器的低功耗設(shè)計(jì)研究展望
功耗是微處理器設(shè)計(jì)長(zhǎng)期面臨的問(wèn)題,分析當(dāng)前的研究狀況,未來(lái)的低功耗微處理器設(shè)計(jì)研究有如下發(fā)展趨勢(shì):
首先,系統(tǒng)級(jí)的低功耗設(shè)計(jì)研究。抽象層次越高,采用低功耗技術(shù)功耗可降低的比例越大。
其次,面向功耗的軟硬件協(xié)同設(shè)計(jì)。而向功耗的軟硬件協(xié)同設(shè)計(jì)可以獲得功耗優(yōu)化的系統(tǒng)架構(gòu),再配合有效的功耗管理,可以大大降低最終的功耗。
再次,異步電路的研究。同步電路的時(shí)鐘功耗在整個(gè)系統(tǒng)的功耗中占了相當(dāng)大的比例。異步邏輯無(wú)需全局時(shí)鐘,而是采用握手信號(hào)協(xié)調(diào)模塊問(wèn)的工作,減少了時(shí)鐘驅(qū)動(dòng)和同步電路中很多不必要的翻轉(zhuǎn),從而有效地降低了功耗。然而,異步電路實(shí)現(xiàn)困難,且缺乏EDA軟件的支持,因而還有待于進(jìn)一步的研究。
4 結(jié)論
本文介紹了低功耗微處理器的研究現(xiàn)狀,討論了幾種常用的微處理器低功耗設(shè)計(jì)技術(shù),展望了低功耗微處理器設(shè)計(jì)研究的發(fā)展趨勢(shì)。
評(píng)論