新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > TI DSP應(yīng)用系統(tǒng)低功耗設(shè)計方案

TI DSP應(yīng)用系統(tǒng)低功耗設(shè)計方案

作者: 時間:2011-07-05 來源:網(wǎng)絡(luò) 收藏

無線及有線系統(tǒng)設(shè)計師均必須重視電源效率問題,盡管雙方的出發(fā)點(diǎn)不盡相同。

對于移動設(shè)備而言,更長的電池使用壽命、更長的通話時間或更長的工作時間都是明顯的優(yōu)勢。降低電源要求意味著使用體積更小的電池或選擇不同的電池技術(shù),這在一定程度上也緩解了電池發(fā)熱問題。

對于有線系統(tǒng)而言,設(shè)計師可通過減小電源體積、減少冷卻需求以及降低風(fēng)扇噪聲來提高電池效率。人們很少會提到這樣一個事實:提高電源效率還可節(jié)省空間,用以增加能夠提高系統(tǒng)性能的組件,尤其是設(shè)計小組希望添加一個以上處理器時,這一點(diǎn)非常重要。

設(shè)計嵌入式 處理器或系統(tǒng)功耗要求嚴(yán)格的系統(tǒng)時,采用 專用技術(shù)、操作系統(tǒng)及其支持軟件可以降。超越傳統(tǒng)技術(shù)的 或雙處理器設(shè)計在節(jié)約能量方面表現(xiàn)出色。

本文將討論傳統(tǒng)及專門針對 DSP 的功耗優(yōu)化技術(shù),首先對使用到的術(shù)語和原理進(jìn)行定義與說明。

功耗基礎(chǔ)知識

互補(bǔ)金屬氧化物半導(dǎo)體 (CMOS) 電路的總功耗是動態(tài)功耗與靜態(tài)功耗之和 [參考資料 3]:

當(dāng)門發(fā)生邏輯狀態(tài)轉(zhuǎn)換并產(chǎn)生內(nèi)部結(jié)點(diǎn)充電所需的開關(guān)電流以及P 通道及N 通道同時暫態(tài)開啟引起直通電流時,就會出現(xiàn)動態(tài)功耗。通過以下公式可以估算其近似值:

其中,Cpd 為動態(tài)電容,F(xiàn) 為開關(guān)頻率,Vcc 為電源電壓,而 Nsw 為轉(zhuǎn)換的比特數(shù)。

另外,電壓 (Vcc) 決定著穩(wěn)定工作狀態(tài)下的最大開關(guān)頻率 (F)。

上述關(guān)系中包含兩個重要概念:

  • 動態(tài)功耗與開關(guān)頻率呈線性關(guān)系,與電源電壓呈二次關(guān)系。
  • 最大安全開關(guān)頻率取決于電源電壓。

為便于本文討論,將特定的頻率及電壓對稱為“設(shè)定點(diǎn)”。

很顯然,降低 CPU 時鐘速率將相應(yīng)成比例地降低動態(tài)功耗,由于動態(tài)功耗與電源電壓成二次關(guān)系,在不影響系統(tǒng)性能的前提下,通過降低電壓就可能額外大大降

不過,對于特定任務(wù)集,降低 CPU 時鐘速率也會成比例地延長執(zhí)行該任務(wù)集的時間,因此必須仔細(xì)分析應(yīng)用以確保滿足其實時需求。

靜態(tài)功耗主要是由于晶體管漏電流造成的。一般說來,CMOS 電路的靜態(tài)功耗很低,與其動態(tài)功耗相比可以忽略不計。嵌入式應(yīng)用在不工作期間通常會“閑置”CPU 時鐘以減少動態(tài)功耗,從而顯著降低總體功耗。

而在未來的設(shè)計中必須特別關(guān)注靜態(tài)功耗問題,因為更高性能的新型晶體管的漏電流將顯著提高 [參考資料 13]。

嵌入式系統(tǒng)常用技術(shù)

常用電源管理技術(shù)可以分為兩類:通過早期硬件設(shè)計決策實現(xiàn)或在系統(tǒng)運(yùn)行時實現(xiàn)。

設(shè)計早期的決策對滿足性能及功耗至關(guān)重要,下面列出了設(shè)計中需要考慮的十大要素,其中包括硬件選擇、設(shè)計策略及架構(gòu)選擇。大多數(shù)要素都是嵌入式系統(tǒng)的基本要求,其它要素則需要單獨(dú)考量。盡管下列決策是在設(shè)計早期制定的,但有些仍需在整個設(shè)計周期中進(jìn)行再驗證。如下所列:

  1. 選擇組件
  2. 分割電壓與時鐘域;
  3. 支持電壓及時鐘縮放功能;
  4. 啟用保持電壓門控功能;
  5. 利用軟件中斷減少輪詢;
  6. 采用分級存儲器模型;
  7. 降低輸出負(fù)載;
  8. 引導(dǎo)時關(guān)閉非關(guān)鍵無動力資源;
  9. 盡量減少活動 PLL 數(shù)量;
  10. 使用時鐘分割器快速變換頻率。

有關(guān)上述列表的詳細(xì)信息如表 1 所示。

表 1. 通過早期硬件設(shè)計決策降低功耗

確定系統(tǒng)架構(gòu)以后,設(shè)計團(tuán)隊需要將注意力轉(zhuǎn)向系統(tǒng)運(yùn)行時環(huán)境。雖然以下列出的僅 14項,但在設(shè)計過程中要始終關(guān)注其中大部分內(nèi)容。

  1. 不需要時則關(guān)閉門時鐘
  2. 引導(dǎo)過程中主動關(guān)閉不必要的功耗
  3. 僅在需要時用門向子系統(tǒng)供電
  4. 激活外設(shè)低功耗模式
  5. 充分利用外設(shè)活動檢測器
  6. 使用自動刷新模式
  7. 通過基準(zhǔn)應(yīng)用確定最小必需頻率及電壓
  8. 根據(jù)總體活動情況調(diào)整 CPU 頻率及電壓
  9. 動態(tài)調(diào)度 CPU 頻率及電壓以匹配預(yù)測工作負(fù)載
  10. 優(yōu)化代碼的執(zhí)行速度
  11. 使用低功耗代碼序列及數(shù)據(jù)模型
  12. 使用代碼覆蓋技術(shù)減少對高速內(nèi)存的需求
  13. 更換電源時進(jìn)入簡化性能模式
  14. 平衡精確度與功耗的關(guān)系

老練的設(shè)計團(tuán)隊必須至少要從概念上熟悉上述嵌入式系統(tǒng)應(yīng)用設(shè)計要素(其中一項與 DSP電路有關(guān)),有關(guān)上述列表的詳細(xì)信息如表 2 所示。

表 2. 通過常用運(yùn)行時技術(shù)降低功耗

實現(xiàn)表 1 及表 2 所述做法及策略并不容易。任何降低功耗的設(shè)計都有可能對性能產(chǎn)生負(fù)面影響或?qū)е孪到y(tǒng)不穩(wěn)定。下表列出了使用基本電源管理技術(shù)所面臨的主要難題。

表 3. 實際嵌入式系統(tǒng)設(shè)計面臨的主要難題

DSP RTOS 如何解決難題

大多數(shù)老練的嵌入式系統(tǒng)設(shè)計師都知道,表 2 中列出的許多技術(shù)問題都可以在操作系統(tǒng)中解決,而不必讓每個新的設(shè)計項目都“從零開始”。

上述最有價值并且得到普遍認(rèn)可的技術(shù)中的一個子集已包括在 RTOS 中,相關(guān)技術(shù)包括:閑置、關(guān)閉活動電源、器件驅(qū)動器通知、內(nèi)存管理、V/F 縮放。由于設(shè)計目標(biāo)不盡相同,將這些技術(shù)構(gòu)建到 RTOS 中需要很多技巧。設(shè)計師必須可以選擇混合或匹配子集。關(guān)鍵的設(shè)計目標(biāo)就是高效性、靈活性以及操作系統(tǒng)的松耦合。

TI 的 DSP/BIOS? 操作系統(tǒng)的電源管理器 (PWRM) 非常適于用作現(xiàn)有 RTOS 的電源管理模塊 [參考資料 4]。盡管以下描述的實施是就特定 DSP/BIOS 而言的,但其概念可簡單地運(yùn)用其他操作系統(tǒng),甚至用于無操作系統(tǒng)的應(yīng)用環(huán)境。

電源管理器的要求

電源管理器實施的關(guān)鍵要求如下:

  1. 管理決策必須由應(yīng)用觸發(fā),而不是操作系統(tǒng)觸發(fā);
  2. 電源管理活動應(yīng)當(dāng)針對大部分應(yīng)用代碼透明;
  3. 電源管理器必須支持電壓與頻率 (V/F) 縮放,并充分利用芯片空閑與睡眠模式;
  4. 電源管理器必須在應(yīng)用代碼、驅(qū)動器以及操作系統(tǒng)本身范圍內(nèi)協(xié)調(diào)電源事件處理,并在發(fā)生特定事件時向客戶端發(fā)出通知;
  5. 電源管理特性必須在任何線程環(huán)境中可用,并且還必須對特定客戶端的多個實例可用(如一個器件驅(qū)動器的多個實例);
  6. 在向客戶端發(fā)出電源事件通知時,電源管理器必須支持事件處理的延遲完成,并在等待延遲客戶端的完成信號的同時通知其他客戶端;
  7. 對具有不同功能的不同平臺,電源管理器必須是可擴(kuò)展的和便攜性的。

為滿足上述的關(guān)鍵要求,可將電源管理器作為 DSP/BIOS 的附屬模塊被添加,如圖 1 所示。

圖 1. 電源管理器分區(qū)

電源管理器位于內(nèi)核之外,其不是系統(tǒng)中的一項任務(wù),而是一系列可在應(yīng)用控制線程以及器件驅(qū)動器環(huán)境中執(zhí)行任務(wù)的 API。

這意味著無需修改內(nèi)核。但在 CPU 時鐘與操作系統(tǒng)定時器時鐘相耦合的平臺上,DSP/BIOS 時鐘模塊 (CLK) 需要補(bǔ)充例行程序,這對頻率縮放非常重要,因為這些例行程序能夠作為 PWRM 的客戶端程序適應(yīng)操作系統(tǒng)時鐘。

電源管理器寫入并讀取時鐘空閑配置寄存器,并通過控制 CPU 時鐘速率及穩(wěn)壓電路的平臺特定型功率擴(kuò)展庫 (PSL) [參考資料. 5]直接與 DSP 硬件相連接。PSL 將電源管理器及應(yīng)用的其他部分與頻率和電壓控制硬件的低級實施細(xì)節(jié)相隔離。

電源管理器擁有若干個與應(yīng)用相關(guān)的任務(wù)。由設(shè)計工程師對其進(jìn)行靜態(tài)配置,并在運(yùn)行時進(jìn)行動態(tài)調(diào)用:

  • 空閑時鐘域 —— 電源管理器提供的接口可使特定時鐘域處于空閑狀態(tài),從而降低有效功耗。此外,其還可以在 OS 空閑環(huán)路 (idle loop) 的適當(dāng)點(diǎn)提供能自動使 DSP CPU 和高速緩存處于空閑狀態(tài)的機(jī)制。
  • 降低引導(dǎo)時間的功耗——電源管理器包含一個鉤子機(jī)制 (hook mechanism),這使開發(fā)人員能夠設(shè)定省電功能,以便在引導(dǎo)時間實現(xiàn)自動調(diào)用。
  • 電壓及頻率 (V/F) 縮放——電源管理器提供的接口可使應(yīng)用動態(tài)更改 DPS 內(nèi)核的工作電壓及頻率。因此,應(yīng)用可利用該特性根據(jù)相關(guān)的處理要求相應(yīng)調(diào)整功耗。電源管理器 API 可設(shè)定應(yīng)用中的電壓是否應(yīng)隨同頻率進(jìn)行縮放,以及在降壓 (down-voltage transition) 轉(zhuǎn)換過程中是否可繼續(xù)執(zhí)行任務(wù),轉(zhuǎn)換時延由負(fù)載而定,有可能會較長;如果處理器在降壓轉(zhuǎn)換期間工作正常,則允許繼續(xù)執(zhí)行應(yīng)用;此外,電源管理器還包含用于查詢 V/F 設(shè)定點(diǎn)屬性及時延的 API。
  • 睡眠模式——電源管理器包含的配置接口及運(yùn)行時接口使開發(fā)人員可喚醒自定義睡眠模式,以便在非工作狀態(tài)期間節(jié)省電能。
  • 電源事件的注冊及通知——為了調(diào)整整個應(yīng)用中的 V/F 縮放比例、睡眠模式以及其他事件,電源管理擁有一套注冊及通知機(jī)制 (registration and notification mechanism),以使諸如應(yīng)用代碼、外設(shè)驅(qū)動器、封裝內(nèi)容以及 OS 時鐘模塊等實體能夠進(jìn)行注冊,用于通知會影響這些實體的特定事件,例如“即將更改 V/F 設(shè)定點(diǎn)”、“完成更改V/F 設(shè)定點(diǎn)”、“進(jìn)入睡眠模式”、“從睡眠模式中喚醒”以及出現(xiàn)“電源故障”等。通知進(jìn)程 (notification process) 是電源管理器的重要特性。當(dāng)無需通知時可使用“未登記”功能。
    上一頁 1 2 3 下一頁

關(guān)鍵詞: DSP 低功耗

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉