對數位系統而言,
矽晶片理論發展和實際
設計之間的設計鴻溝(
design gap)已呈現
穩定狀態。晶元重用已爲IP重用和子系統及架構重用所代替。現在,So
C設計領域已經在考慮晶片重用–將若干已完全驗證的“
chiplet"拼成單片矽晶片。100奈
米以下的CM
OS製程技術將繼續用於經濟有效地實現這些設計。最新的大規模SoC已經
是包括一組CPU、
DSP、向量
處理器和
硬體加速器的不同
種類單元的多處理器系統。
降低這些處理器
資源的功耗已成爲關鍵設計要求,尤其是對於
電池供電攜帶型設備,如行動
電話的SoC。隨著行動電話擁有
多媒體功能,如Inter
net瀏覽、
電視收
看和
3D遊戲等,改變的不僅僅是行動電話的
計算能力。行動電話的計算能力必須
保持有效的
時間長度,在以前是長期處於待機狀態,只有較短的使用時間;而現在的情況則是會有長達幾個
小時的高強度計算活動,但仍然必須使電池有足夠的電量支援移動通信。而在此期間,電池
儲存容量只略有增長。
在未來,情況會更顯麻煩。在65奈米或更小尺寸的CMOS中實現SoC將達到本行業中功耗調整的極限,因爲未來深次微米CMOS電
晶體中的功耗調整將
無法與集成
密度成比例。而結果是每單位面積矽的功耗將要接近臨界
水平。
由於再也無法依賴於基礎半導體製程固有的低功率
性能,設計者必須找到可降低功耗的新
方法。他們需要解決的不僅僅是動態功耗。對於65奈米CMOS而言,漏
電流的影響已經非常大,因此,找到可同時減少
靜態功耗的解決方案也很重要。
動態功耗
CMOS數位晶片的動態功耗通過下列關係式來估算:
P
dynamic
CV2f
其中 C = 切換
電容
V =
電壓
f = 切換
頻率
容量和對於既定
數量的閘電路的晶片面積由製程與Library技術決定。這意味著,在既定製程技術下,只能通過降低時脈頻率、
電源電壓(Vdd)或組合方式來降低動態功耗。理論上,時脈頻率只能在製程技術於最大Vdd下可以維持的最大時脈頻率和
零頻率(
停止時脈)之間調整。電源電壓可以在製程技術的指定操作電壓範圍內調整。此外,電源電壓和時脈頻率相互依賴,維持的時脈頻率越高則需要的Vdd值越高。
由於簡單且便於實現,一直使用時脈閘控形式(將時脈頻率降低到零)的動態頻率切換方式來降低暫時空閒的晶片
區域的動態功耗。但是,如果這些晶片區域再次活動,這種簡陋的
開關控制對節省功耗
效果甚微。
解決活動和空閒狀態功耗的另一種方法是動態頻率調整。該技術隨處理資源上的計算負載降低而逐漸降低晶片時脈頻率,所選的頻率可以在應用程式的
即時約束內
完成計算
任務。動態頻率調整尤其適合在已知性能水平上
執行連續操作的電路,例如週邊設備,這些設備中的設備驅動程式
軟體可以區
分不同操作模式中的性能要求。但是對於間斷操作的電路,動態頻率切換可以達到
等效的節能,並且更易於實現。
將時脈動態地縮小到更低頻率還可以通過降低電源電壓來節省更多電力。從上述功率公式中可以發現,動態功耗與時脈頻率成正比,與電源電壓的平方成正比。因此,只要略微降低電源電壓即可收到顯著效果。
SoC已經
開始具有了降低晶片部件的時脈頻率以及在更低電源電壓上運行這些部件的能力。這種能力是通過稱爲“vol
tage islands",的方式實現的,即是將附近具有共同最高時脈頻率的IP塊組合在一起,並以單獨的Vdd電源電壓供電。例如,飛利浦最近生産的65奈米SoC作爲演示下一代消費品潛在多媒體功能的平臺,就在
高速ARM1176 CPU、高速L1
緩衝記憶體及其速度較低的主存和週邊設備周圍採用了
voltage islands(參見
圖1a)。
在採用voltage islands的當前SoC中,每個島通常都在
固定的Vdd電壓上運行。而且,這些voltage islands的存在也使得應用另一技術成爲可能,即所謂的動態電壓和頻率調整(DVFS),以進一步降低功耗。DVFS在頻率調整後增加電壓調整,以便
自動將每個島的Vdd調整到維持所選時脈速度所需的最低電壓。
DVFS可以實施爲開放式迴路或閉迴路過程。在開放式迴路DVFS中,爲
目標系統定義幾個離散的頻率和電壓操作點,然後將系統設置到最近的操作點,以
保證要求的處理性能(參見圖2a)。實際上,不同操作點的數量通常限制在2和4之間,每個點都必須保證在特定處理器負載下的性能,還要考慮最壞情況的製程變化(因製程技術變化導致系統性能的變化)及操作
溫度。但是,因爲開放式迴路DVFS必須根據最壞情況的製程變化和操作溫度來進行決策,這意味著在許多情況下,可能仍然需要將電源電壓設置得略高一點。
閉迴路DVFS
克服了這個
問題,其方式是對系統中實際矽性能提供直接反饋,從而考慮製程和溫度變化。爲了實現這一目標,它在每個DVFS範圍中加入性能
監視器,即時
測量該範圍任意點上的實際時脈速度。性能監視器的
輸出將資訊傳遞到調壓器,將該範圍的Vdd電壓調整到滿足實際條件下的矽性能要求所需的最低水平(參見圖2b)。性能監視器通常位於採用柵
延遲的電路周圍,如環形振蕩器。飛利浦65奈米SoC中採用的動態功率降低技術如圖1b所示。
另一項已經提議與DVFS一起用來優化性能和功耗的技術是襯底偏壓(
body biasing)——控制CMOS
電晶體的體電壓以更改其閥電壓,從而調整其切換性能。此技術的潛在優勢在於,可以同時改善動態和靜態功耗(可以強制性完全關
斷電晶體),還可以用於通過
補償製程技術變化,減少不符合規範的常規SoC來提高産量。但由於需要隔離矽的各個區域以控制電晶體的體電壓,襯底偏壓大大增加了設計的複雜度。此外,其優勢不可能延續到65奈米CMOS以上的製程,使得完善此項技術所需的相關研發成了問題。
降低
邏輯塊中動態功耗的另一種方式是完全取消時脈,這可以通過實施無時脈自計時非
同步邏輯來實現。這是
Handshake Soluti
ons公司(位於荷蘭艾恩德霍芬)開發的技術,它使用
請求/確認
信號交換機制來取代時脈,即在任務結果可用時啓動這些任務(請求)並發出信號。這意味著,只有任務執行所涉及的那些系統部件才會消耗電力,並且系統在完成所有任務時自動
進入接近零功耗的待機模式。Handshake Solutions公司已經與處理器IP提供商ARM合作生産ARM996HS處理器,這是全球第一款針對即時
嵌入式低功率應用程式的可合成無時脈ARM9
ETM系列處理器。
靜態功耗
深次微米CMOS中的靜態(待機)功耗取決於通過電晶體極薄的
柵極氧化物的漏電流。通過下列關係式來估算:
P
static Vdd x k x e(Vgs - Vt)/s x W/L
其中 Vdd = 電源電壓
k = 柵極電介質的
介電常數
Vgs = 電晶體柵極-
源極電壓
Vt = 電晶體臨界電壓
s = 特定製程
參數
W = 電晶體溝道寬度
L = 電晶體溝道長度
因爲W和L由電晶體設計決定,這使得調整Vdd和Vt(通過反向偏壓)是
微調已完成SoC中靜態功耗的兩種
基本方式。
至於頻率切換,切斷晶片
未用區域的Vdd電源是最簡單的調整方法,並且有利於將這些區域的靜態功耗降低到零。但本方法不可避免地導致斷電邏輯塊的狀態損失,這意味著必須權衡通過
關閉這些元件所節省的功耗與進入/
退出待機時保存/還原其狀態所需的額外功率。此外,晶片上電壓切換也增加了設計的複雜度,目前的EDA
工具也很難處理與
嵌入式Vdd切換電晶體相關的電壓下降和定時。
在必須維持IP區塊,如SRAM區塊內部狀態的情況下,將Vdd降到狀態
保留所需的最
低電平也可以降低功耗。但此項技術節省的電力通常都不大。通過施加後偏壓以改變Vt來強制性關閉CMOS電晶體可爲90奈米CMOS節約大量靜態功率,但與之前提及的體偏壓一樣,無法精確調整至65奈米或更小的CMOS。
圖1c
顯示飛利浦65奈米SoC中採用的靜態功率降低技術。
跨越邊界
常規同步SoC架構中同時進
行頻率和電壓調整的結果是,從一個時脈或電壓範圍到另一範圍的信號
傳輸必須跨頻率和/或電壓邊界。因此,時脈範圍之間的邊界必須加入時脈同步機制,而電壓邊界則必須包括
電平轉換器,所有這一切都會增加矽的成本和複雜性。而且還延長了頻率邊界的通信延遲。這是因爲同步機制通常會增加幾個延遲的時脈周期,在CPU匯流排界面上這會降低CPU性能。因此,將來的SoC可能採用新的系統架構,以克服這些影響。
一種當前樂於採用的方法是
GALS(總體非同步、局部同步)架構。此方法非常適合於動態頻率調整,它將晶片劃分成若干個獨立的時脈範圍,每個時脈範圍
在內部進
行同步,而通過非同步通信通道進行相互通信。在這些通信通道中增加路由器,可將這些架構變成晶片上
網路。在這樣的架構中,可以使用頻率或電壓切換將整個子系統關閉一段時間。儘管最初是設計來克服另一問題,即由於大規模SoC中的長時脈分佈和信號
互連長度,時序收斂(
timing closure)正越來越難以實現,但是,GALS架構也明顯有助於節省功率。