使用動態(tài)電壓頻率縮放進行智能節(jié)電的解決方案
消費電子產(chǎn)品的電池壽命取決于其集成電路的動態(tài)功率行為。如果可以調(diào)整動態(tài)行為以適應手頭的任務,則可以實現(xiàn)相當大的功率節(jié)省。
在 CMOS 電路中,大部分動態(tài)功率消耗在其數(shù)字門中的寄生電容中。
電源電壓和頻率的組合對總功耗具有三次影響,因為動態(tài)功耗對電壓具有二次依賴性,對頻率具有線性依賴性。智能節(jié)電解決方案將降低工作頻率,同時降低電源電壓。動態(tài)電壓頻率縮放 (DVFS) 技術的一些示例商業(yè)實現(xiàn)是Intel 的 SpeedStep和AMD 的 PowerNow。
DVFS 已應用于硬件和操作系統(tǒng)/平臺級別。主要思想是在給定頻率下盡可能降低電源電壓,同時仍保持正確操作。電壓只能下降到某個臨界水平,超過該臨界水平就會發(fā)生時序故障。
DVFS 的一些硬件機制使用檢測時序違規(guī)的特殊“安全”觸發(fā)器在硬件本身中實現(xiàn)時序故障檢測。雖然 DVFS 方法在解決動態(tài)功耗方面是有效的,但它們在降低泄漏功率方面的效果明顯較差。隨著最小特征尺寸的縮小,電源電壓縮放需要降低閾值電壓,這導致隨著每一代新技術的出現(xiàn)漏電流呈指數(shù)級增長。已經(jīng)表明,同時使用自適應體偏置 (ABB) 和 DVFS 可用于降低高性能處理器的功耗。ABB 以前用于在待機模式下控制泄漏,并且具有以指數(shù)方式降低泄漏電流的優(yōu)勢,而動態(tài)電壓縮放則線性減少泄漏電流。
在操作系統(tǒng)級別,一些操作系統(tǒng)現(xiàn)在部署了某種形式的 DVFS。例如,Linux 使用稱為 cpu-freq 的非常標準的基礎架構來實現(xiàn) DVFS。cpu-freq 提供了一組模塊化的接口,通過各種低級、特定于 CPU 的機制和高級系統(tǒng)策略來管理 CPU 頻率的變化。cpu-freq 將 CPU 頻率控制機制從策略中解耦出來,有助于它們的獨立開發(fā)。實際的策略是作為“調(diào)節(jié)器”實施的,并且針對不同類型的系統(tǒng)提出了許多變體,每個系統(tǒng)都有自己的功率和性能要求。
專門在手持/便攜式/嵌入式系統(tǒng)級別完成了工作,提出了在電池受限設備中實現(xiàn) DVFS 的不同技術。一個這樣的例子是 AutoDVS,一種用于手持計算機的系統(tǒng),提供動態(tài)電壓縮放 (DVS)。AutoDVS 通過估算系統(tǒng)范圍內(nèi)和每個程序的用戶交互時間、思考時間和計算負載,既降低了能源使用量,又確保了服務質(zhì)量。
第二種技術涉及應用程序?qū)虻? DVFS。鑒于并非所有應用程序都以可預測的方式運行,因此可以繞過嘗試使用操作系統(tǒng)級別的統(tǒng)計數(shù)據(jù)獲得良好結果的難題。相反,通過使具有突發(fā)行為的應用程序具有功耗意識,這些應用程序可以向控制時鐘速度和處理器電壓的調(diào)度程序指定它們的平均執(zhí)行時間和截止日期。能量優(yōu)先調(diào)度算法根據(jù)截止日期和任務重疊的頻率來安排這些功率感知任務的順序。
用于多核處理器的 DVFS 是另一個有趣且具有挑戰(zhàn)性的領域。一個主要的設計決策是在芯片級別還是在每個內(nèi)核級別應用 DVFS。如果使用每核 DVFS 方法,則每個芯片需要一個以上的電源/時鐘域,并且還需要額外的電路來實現(xiàn)芯片之間的同步。盡管對于單芯片多處理器而言,每核 DVFS 的實施成本比每芯片 DVFS 的成本更高,但學術或商業(yè)實體報告說,每核的吞吐量要高 2.5 倍。原因很簡單。即使只有一個內(nèi)核開始過熱,單芯片方法也必須按比例縮小整個芯片。相比之下,per-core 方法僅使具有熱點的核心向下擴展;除非出現(xiàn)發(fā)熱問題,否則其他核心會保持快速運行。
一個仍然懸而未決的問題是如何在跨混合的多核架構集運行并行/多線程程序時管理功耗——每個架構都有自己獨特的功耗和性能配置文件。我們可以指出的一個商業(yè)示例是 ARM big.LITTLE。這種方法將速度較慢的低功耗處理器內(nèi)核 (LITTLE) 與更強大且耗電的內(nèi)核 (big) 結合在一起。通常,只有一個“邊”或另一個將同時處于活動狀態(tài)。工作負載可以從大交換到小,然后再返回,因為所有內(nèi)核都可以訪問相同的內(nèi)存區(qū)域。其目的是創(chuàng)建一個多核處理器,它可以更好地適應動態(tài)計算需求,并且比單獨的時鐘縮放使用更少的功率。ARM 的營銷材料承諾為某些活動節(jié)省高達 75% 的電力使用。
DVFS 只是控制 CMOS 電路中動態(tài)功耗的幾種方法之一。雖然它的使用帶來了一系列驗證和實施挑戰(zhàn),但我們將繼續(xù)在硬件和操作系統(tǒng)/平臺級別的未來設計中看到它的應用。