TI DSP應用系統(tǒng)低功耗設計方案
電源管理器 API
表 4 對運行時應用編程接口進行了匯總。
函 數(shù) | 功 能 |
PWRM_changeSetpoint | 對最新的 V/F 設定點進行初始化更改 |
PWRM_configure | 為 PWRM 設置新的配置參數(shù) |
PWRM_getCapabilities | 在該平臺上獲取有關 PWRM 性能的信息 |
PWRM_getCurrentSetpoint | 獲取當前的有效設定點 |
PWRM_getNumSetpoints | 獲取該平臺上可用設定點的數(shù)量 |
PWRM_getSetpointInfo | 獲取設定點的相應頻率及電壓值 |
PWRM_getTransitionLatency | 獲取兩個設定點之間比例縮放的時延 |
PWRM_idleClocks | 使特定時鐘域立即進入空閑模式 |
函 數(shù) | 功 能 |
PWRM_changeSetpoint | 對最新的 V/F 設定點進行初始化更改 |
PWRM_configure | 為 PWRM 設置新的配置參數(shù) |
PWRM_getCapabilities | 在該平臺上獲取有關 PWRM 性能的信息 |
PWRM_getCurrentSetpoint | 獲取當前的有效設定點 |
PWRM_getNumSetpoints | 獲取該平臺上可用設定點的數(shù)量 |
PWRM_getSetpointInfo | 獲取設定點的相應頻率及電壓值 |
PWRM_getTransitionLatency | 獲取兩個設定點之間比例縮放的時延 |
PWRM_idleClocks | 使特定時鐘域立即進入空閑模式 |
PWRM_registerNotify | 注冊可在發(fā)生特定功耗事件時進行調(diào)用的函數(shù) |
PWRM_sleepDSP | 將 DSP 轉(zhuǎn)換至新的睡眠狀態(tài) |
PWRM_releaseDependency | 解除此前聲明的資源依賴性 |
PWRM_setDependency | 聲明對電源的可管理資源具有依賴性 |
PWRM_unregisterNotify | 未注冊來自 PWRM 的事件通知 |
表 4. 電源管理運行時 API 的匯總
戰(zhàn)略實施
由于已經(jīng)建立了提高電源效率的基礎,下一步工作就應該進行戰(zhàn)略定義,以便開發(fā)低功耗應用,并充分利用 OS 中的部分技術及支持。
所建議的策略包括以下 11 個步驟。該戰(zhàn)略具有可重復性:
當無法滿足電源管理目標,也就是說需要采用額外的運行時方案才能滿足應用電源預算時,就可重復訪問這些步驟。
- 從初始就考慮到電源效率;
- 選擇低功耗組件;
- 對電源進行建模和估測,并進行相應的硬件測試;
- 針對電源管理和測量設計具備鉤子機制的 HW;
- 構建可大幅提高工作效率的 SW;
- 啟用簡單的電源管理“開/關機切換”特性;
- 在無需電源管理的情況下也可率先進入工作;
- 重復開啟“開機”特性,并測量功耗開銷 (payoff);
- 開啟代碼生成優(yōu)化功能、重置代碼及數(shù)據(jù),并調(diào)整 “熱點” 監(jiān)測;
- 進行校準,以實現(xiàn)頻率及電壓的最小化;
- 激活所有的電源管理特性,并進行相應部署。
表 5 對上述戰(zhàn)略進行了非常詳盡的匯總說明。我們將在下文討論如何高效應用上述策略。
表 5. 低功耗應用開發(fā)的詳細策略
音頻應用范例
選用現(xiàn)成的 DSP 評估板 5509A EVM PLUS 板作為測試平臺,該評估板不僅支持 V/F 縮放 ,還包含針對 DSP 內(nèi)核與總體系統(tǒng)電源測量的鉤子機制。
需要注意的是,EVM 作為易于使用的評估平臺,并未在出廠時提供最佳功耗配置。另外,在評估效果時應謹記由于其易于配置,所以 EVM 上測量的總體系統(tǒng)電源數(shù)量就應多于通常情況下部署的平臺。EVM 還能以 DSP 內(nèi)核級與系統(tǒng)級兩種方法測量各種技術的有效性。
步驟 1 無需解釋。步驟 2 及 4 基本上都由這種特殊 EVM 完成,這充分表明了該平臺的廣泛適用性。步驟 3(試驗)在 EVM 上進行,目的是測量各種技術的效果(如片上與片外存取的內(nèi)核及系統(tǒng)電源、DMA 與 CPU 傳輸?shù)谋容^、空閑外設及時鐘域的作用等等)。
架構
應用范例如圖 2 所示。如欲獲得該應用的詳細信息(包括獨立的應用手冊及源代碼),請查閱參考資料 15。
圖 2. 音頻應用
音頻信號經(jīng)過采樣通過多信道緩沖串行端口 (McBSPs) 回放到 DSP。DSP DMA 引擎向McBSP 輸入或讀出采樣信號。立體聲音頻數(shù)據(jù)通過 RxSplit 任務與 Processing Task(正在處理的任務)分離為兩個數(shù)據(jù)流。DIP 開關用于選擇 G726 編碼/解碼處理或簡單音量控制。兩個通道隨后在 TxJoin 任務中組合,然后輸出至揚聲器。
Control(控制)任務被周期性觸發(fā),檢查 DIP 開關以確定是否需要進行模式切換(如改變處理模式或進入睡眠狀態(tài))。根據(jù)應用模式的不同,Control(控制)任務可能會檢查 CPU 負載,如果合適還會更改 V/F 設定點。
與電源相關的關鍵設計決定包括:
- 使用 OS 線程及阻塞原語 (blocking primitive) 空閑時鐘;
- 使用 DMA 提高后臺數(shù)據(jù) (background data) 傳輸效率。在 DMA 塊中完成傳輸(而不是每次數(shù)據(jù)采樣都從串行端口導入或讀出)后即中斷 CPU;
- 使用共享的外部時鐘控制串行端口(無需對串行端口進行重新編程,即可進行 DSP CPU 的頻率縮放);
- 注冊回叫以便為編解碼器驅(qū)動程序設定鉤子機制,當應用進入深度睡眠模式時關斷編解碼器;
- 在音頻質(zhì)量下降前使用校準功能恢復設定點頻率(及電壓);
- 使用電源管理器的時鐘適應功能,使周期函數(shù)在頻率縮放后繼續(xù)以特定速率工作;
- 使用 DSP 再引導間的電源管理器“深度睡眠”接口。
結論
總體效果總結如表 6 所示。前后模式的主要差異用黑體表示。
設置 | DSP 內(nèi)核 (mW) | DSP 節(jié)省 (%) | 電路板 (mW) | 電路板節(jié)省 (%) |
1. CPU 工作頻率為 192MHz、電壓為1.6v | 207.8 | -- | 2219 | -- |
2. CPU 工作頻率為192MHz、電壓為 1.6v | 203.3 | 2.17 | 1789 | |
3. CPU 工作頻率為192MHz、電壓為1.6v | 155.2 | 1663 | 25.1 | |
4. CPU 工作頻率為144MHz、電壓為 1.4v | 99.5 | 1605 | 27.7 | |
5. DSP 處于深度睡眠(完全空閑)狀態(tài) | 0.361 | 1352 |
表 6. 節(jié)電效果
- 模式 #1 為基準測量,全部使用片外代碼。
- 模式 #2 消除所有片上代碼,DSP 級節(jié)電效果較小,但板級節(jié)電達到 19%。
- 模式 #3 包括一些引導時間節(jié)電配置(如關閉 DSP 的 CLKOUT 信號、未用計時器的自動空閑配置以及關閉板上 LED)及在 BIOS 空閑環(huán)路中的閑置,從而可實現(xiàn)25% 的 DSP 內(nèi)核級節(jié)電。
- 模式 #4 為設定點在 1.4v 下降至 144MHz 時的功耗,在該模式下可進行音頻處理,同時仍能滿足實時最低要求,從而實現(xiàn) 52% 的 DSP 內(nèi)核級節(jié)電。
- 模式 #5 為應用處于待機模式下的功耗,該模式配置包括外部編解碼器關斷、設定點支持以最小電壓最大頻率快速啟動驅(qū)動、DSP 處于門控鐘深度睡眠模式,該模式下的待機功耗僅為 361μW。
設計人員可根據(jù)特定應用的要求選擇適用的技術,從而更有利于支持 RTOS 集成高回報技術。借助 OS 的這種支持功能,設計人員能夠以低開銷方便安全地提高應用電源效率。
本文討論的電源優(yōu)化策略是一種從嵌入式項目之初即可用于降低與調(diào)節(jié)應用功耗的通用模型。當測量功耗無法滿足要求或需要采用額外的運行時技術時,上述策略可重復使用,先期步驟也可重復進行。例如,在音頻應用中采用這種策略,僅需幾種高回報的節(jié)電技術,即可節(jié)省大量電能。
評論