嵌入式系統(tǒng)能耗的動態(tài)管理方案
一般來說,處理器運行得都太快了。例如,從 QoS 觀點來看,如果軟件只需要在一秒鐘內(nèi)顯示完 30 幀視頻圖像,則處理器在半秒內(nèi)就完成所有解碼是沒有意義的。提前完成任務的做法使能量利用效率較低。
取得性能與節(jié)能平衡的關鍵在于使用智能軟件,它可以把處理器的性能降低到正好滿足應用軟件需求底線的水平。這種軟件應該包括“性能設定”算法,由該算法來確定處理器運行的最佳性能級別,并且管理象 DVS 這樣的性能調(diào)整技術。
現(xiàn)有的 DVS 系統(tǒng)使用的是開環(huán)控制技術,CPU 的特性是通過給定時鐘速度和電壓下的工作量來確定的,并留有足夠的余量來適應溫度、供電和晶圓工藝的變化。
嵌入式處理器被設計成能在寬廣的溫度范圍內(nèi)工作和適應不同的硅工藝。因此,必須采用較高的安全裕度,才能在電源效率降低時確保足夠的安全工作范圍。隨著供電電壓逐步轉(zhuǎn)向 1.2V 或更低,所需安全裕度的百分比也隨之增加,以覆蓋溫度及硅片工藝的各種變化。
CMOS 電路的速度會隨溫度的升高而減慢,這一效應必須算到供電電壓安全裕度里,雖然一般的工作溫度都是室溫。由于工藝技術的變數(shù)很多,如不同內(nèi)核、不同晶圓、不同批量甚至不同代工廠都各不相同。為了保證高的產(chǎn)量,這些保護帶(guard-b ands)可以相當寬,從而對總體功耗有顯著的影響。
可以用大量的特性來構(gòu)建一個頻率與電壓對照表,以確保在所有工作條件下都能滿足性能要求。然后把一個確定的電壓/速度集合以硬編碼方式寫到芯片中。在實際工作中,SoC 上定制的軟件驅(qū)動通過一個專門的硬件接口來設定所需電壓級別。在改變時鐘頻率前,必須通過一個定時器或其它方法來檢查穩(wěn)定電壓狀態(tài)(VDD_OK)。
自適應電壓調(diào)整(AVS)方法是一種閉環(huán)控制技術,它比 DVS 有明顯的改進。AVS 采用固有的對工藝與溫度變化的補償,簡化了電壓調(diào)整的方法,不再需要頻率/電壓表。這種技術的實現(xiàn)需要與嵌入式處理器協(xié)同使用幾個硬件性能監(jiān)控器,由它們接收從性能設定算法送來的更改性能級別的請求。這些性能監(jiān)控器可以準確地監(jiān)控內(nèi)核內(nèi)外的工藝與溫度變化情況,并且通過標準接口與外部的能量管理單元(EMU)進行通信。
ARM國家半導體能量管理解決方案ARM公司一直在研究一種對性能調(diào)整硬件進行智能控制的解決方案。美國國家半導體公司則一直在研究一種智能控制供電電壓、簡化 DVS 方法以及通過 AVS 減小安全裕度的解決方案。兩家公司現(xiàn)在已經(jīng)可以給電池供電設備的開發(fā)商提供一種端到端的方案。
ARM 公司的 Intelligent Energy Manager(智能能量管理器,IEM)解決方案以一個軟件部件為中心,即 Intelligent Energy Management 軟件。IEM 軟件與運行在應用軟件下的操作系統(tǒng)(OS)相互銜接,使用從 OS 內(nèi)部架構(gòu)獲得的參數(shù),通過正在運行的應用程序“指導” OS 的使用??梢杂靡恍碗s的軟件算法來評價不同類型的軟件活動,然后產(chǎn)生一個對未來性能的預測。每個預測結(jié)果用一個評測棧來加總,以確定出一個總體的性能預測。
策略棧的工作情況顯示在圖 4 中。每個算法都把自己的預測作為一種性能級別 (PeRF.)送進棧中,每個預測都有一個相關的指令指出當前預測的權(quán)重,如果信任水平為低則 IGNORE(放棄該預測),如果為高則 SET(指定該預測),SET_IFGT 表示如果該預測的信任水平在棧中為最高,則應該使用該水平。當系統(tǒng)中發(fā)生某特殊事件時,例如一次任務切換,則要從棧底開始向上重新對不同的預測進行評估,以導出一個唯一的總體性能預測。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論