IPA是一個跟芯片功耗相關的方案。前面講過芯片低功耗設計方法,比如動態調壓調頻(DVFS),時鐘門控等等,基于的是功耗控制角度。今天我們從芯片熱管理(Thermal Management)角度看一下。
為了提高芯片的性能,可以對于CPU等組件采取加壓升頻的辦法。這時,我們可能忽略了一點,就是芯片的散熱問題。芯片的工作電壓越高,頻率越快,單位時間內消耗的能量越多,其中一部分電能轉化成熱能。這部分熱能累積在芯片內部,如果不能即時的散發出去,將會對芯片產生很大的危害,可能會造成芯片的使用壽命變短,工作異常,甚至是芯片被毀壞。對于某些芯片的工作環境來說,可以增加一些必要的散熱手段,雖然會增加整體系統的成本,比如我們可以在設備中增加風扇,散熱片,散熱管,水冷等設施。但是有些芯片的工作環境受限,比如手機芯片,就沒辦法增加散熱設施。這就要求芯片主動進行熱管理,軟件可以通過芯片中的硬件組件(比如傳感器)來感知芯片中的溫度,結合算法來調整硬件的供電電壓和工作頻率。
在Linux內核中,控制芯片內部溫度的機制叫做“熱框架(Thermal Framework)”。在這套體系下,芯片中有一個熱管理組件(governor),芯片內部可以劃分成多個“熱區(Thermal Zone)”,每個熱區中有溫度傳感器和冷卻設備(Cooling Device)。這里的冷卻設備指的是產生熱能的組件,也就是功能模塊,比如CPU和GPU。這也好理解,因為芯片內的降溫手段只能是被動的(passive),即讓功能模塊在單位時間內少產生熱能。
IPA就是熱管理組件。IPA的基本原理是基于一個比例積分微分(Proportional Integral Derivative,PID)控制器和一套功率分配算法,并且要求冷卻設備提供功率模型(Power Model)。IPA通過比例積分微分控制器來感知芯片的溫度控制需求,然后通過算法來動態確定每個組件的功率上限(Power Budget),最后通過組件的功率模型來調整其工作環境。接下來一一介紹。
下圖展示了IPA如何工作。IPA通過溫度傳感器探測芯片中的溫度,確定SoC的功率上限,結合組件的功率需求,動態分配每個組件的功率值。
從硬件組成上來看,首先IPA需要有一個功率仲裁(Power Arbiter)單元。功率仲裁器內要實現一個PID控制器,其控制輸入是溫度傳感器,功率策略(Power Policy)和設備的功率請求,控制輸出是各個設備的功率/性能限定。
PID控制器是一個閉環控制系統(closed-loop control system),廣泛應用于工業控制中。所謂的閉環控制系統,指的是被控對象的輸出會反送回來影響控制器的輸出。閉環控制系統有正反饋和負反饋之分,若反饋信號與系統給定值信號相反,則稱為負反饋(Negative Feedback),若極性相同,則稱為正反饋(positive feedback)。
PID的這三個單詞分別代表的是比例控制,積分控制和微分控制。其中,P是控制器的輸出與輸入誤差信號成比例關系;I與誤差積分成正比,表示過去錯誤的累積值;D與誤差的倒數成正比關系,根據D當前變化率進行線性外推,預測未來誤差。PID控制器的數學表達參考下圖。
功率模型代表了冷卻設備的功率特性。功率模型包含了設備的頻率限制,性能與功率的相對關系等。功率模型的質量決定了應用IPA的質量,如果功率模型偏差太大,那么IPA的效果肯定好不到哪去。功率模型不是一個完全的設計值,應該是通過芯片測試加以校對得出的。所以,無論模型有多精確,實際功耗仍與功率模型預測有偏差。
功率分配策略(power allocation policy)是在軟件中定義的。如果一個設備被分配的功率值小于其最大性能所需要的功率值,那么設備將工作在分配的功率值,也就是此設備性能受限,工作在對應的電壓/頻率點;如果設備被分配的功率值大于其最大性能所需要的功率值,那么多余的功率會被分配給其它的設備。功率分配策略也是一個通過測試和調教,迭代出來的。功率分配策略和功率模型會共同影響IPA的執行效果。
下面是一個了IPA運行測試案例。SoC系統中有大核處理器,小核處理器和GPU。圖中的橫坐標是時間,縱坐標是頻率。紅線表示的是GPU模塊的頻率隨時間變化;綠線表示的是小核的頻率隨時間變化;藍線表示的是大核的頻率隨時間變化。
在芯片啟動階段,也就是圖中的“Period 1”階段,由于其內部溫度低,IPA沒有啟動,所以三個模塊均工作在最高頻率。
在“Period 2”和“Period 4”階段,GPU的負載大,CPU的負載小,所以分配給GPU的功率多,GPU工作在較高的頻率,而CPU工作在較低的頻率。
在“Period 3”階段,GPU的負載小,CPU的負載大,這時分配給CPU的功率多,CPU工作在較高的頻率。
芯片工作了一段時間后,其內部溫度上升。在“Period 5”階段,IPA對所有的模塊進行了功率限制,GPU和CPU都工作在了較低的頻率。
最后總結一下,IPA是一個軟硬件相結合的SoC功耗/熱解決方案。在硬件方面,SoC需要實現調壓調頻的機制,溫度傳感器等,并且在設計初期劃定好需要管理的“熱區”;在軟件方面,需要實現硬件驅動程序,上層的分配算法等等。采用IPA技術的往往是復雜的SoC,通常在這些SoC上需要運行操作系統。目前,IPA已經集成在Linux 4.2及以上版本中。
審核編輯 :李倩
-
芯片
+關注
關注
453文章
50405瀏覽量
421812 -
溫度傳感器
+關注
關注
48文章
2913瀏覽量
155889 -
控制器
+關注
關注
112文章
16203瀏覽量
177403
原文標題:Arm系列-智能功率分配IPA技術
文章出處:【微信號:Ithingedu,微信公眾號:安芯教育科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論