如何善用動(dòng)態(tài)電源管理提高多媒體處理器能效
多媒體處理器通常是便攜式電子設(shè)備中功耗最高的器件。降低 CPU 功耗要求的常見(jiàn)方法是降低時(shí)鐘頻率或工作電壓,但是一般而言這樣做會(huì)使系統(tǒng)性能降低。另一方面,芯片設(shè)計(jì)人員還提出了各種片上方法來(lái)降低功耗,并且不會(huì)對(duì)系統(tǒng)產(chǎn)生不利影響。本文介紹了這些方法的概念,以及我們?nèi)绾芜\(yùn)用它們實(shí)現(xiàn)節(jié)能的目的,同時(shí)還討論了幫助處理器芯片獲益的一些外部電源管理器件和電源 IC。
本文引用地址:http://butianyuan.cn/article/175512.htm有源電源管理
片上電源管理技術(shù)主要適用于兩類應(yīng)用:管理有源系統(tǒng)功耗和管理待機(jī)功耗。
有源電源管理分為三個(gè)部分:動(dòng)態(tài)電壓與頻率縮放 (DVFS);自適應(yīng)電壓縮放 (AVS);以及動(dòng)態(tài)電源轉(zhuǎn)換 (DPS)。另一方面,靜態(tài)功耗管理包括在需要進(jìn)行更多處理以前將空閑系統(tǒng)維持在一種低功耗狀態(tài)。這種電源管理使用所謂的靜態(tài)漏電管理 (SLM),其通常利用從待機(jī)到關(guān)機(jī)的數(shù)種低功耗模式。
讓我們來(lái)看一下有源模式。利用 DVFS,根據(jù)應(yīng)用所要求的不同性能,時(shí)鐘頻率和電壓在軟件中得到了降低。例如,一款包括了先進(jìn) RISC 機(jī)器 (ARM) 和數(shù)字信號(hào)處理器 (DSP) 的應(yīng)用處理器,即使 ARM 組件可以運(yùn)行在高達(dá) 600 MHz 的時(shí)鐘頻率下,但卻并非總是需要所有這些計(jì)算能力。一般而言,軟件會(huì)選擇數(shù)個(gè)預(yù)定義處理器工作性能點(diǎn) (OPP),其包括確保處理器能夠運(yùn)行在滿足系統(tǒng)處理要求的最低頻率下的電壓。在對(duì)滿足不同應(yīng)用要求的功耗進(jìn)行優(yōu)化的過(guò)程中,為了獲得更大的靈活性,人們?yōu)樘幚砥髦械幕ミB和外設(shè)預(yù)定義了一個(gè)單獨(dú)的器件內(nèi)核 OPP 集。
與給定的 OPP 相對(duì)應(yīng),軟件向外部穩(wěn)壓器發(fā)出控制信號(hào)來(lái)設(shè)置最低電壓。例如,DVFS 適用于兩個(gè)電壓源 VDD1(為 DSP 和 ARM 處理器供電)和 VDD2(為子系統(tǒng)和外設(shè)之間的互連供電),同時(shí)這些電源軌提供芯片所需的大部分電量(一般約為全部所需電量的 75% 到 80%)。通過(guò)將 DSP 處理器轉(zhuǎn)入一個(gè) ARM 可以高達(dá) 125MHz 時(shí)鐘頻率運(yùn)行的低工作性能點(diǎn)完成對(duì) MP3 解碼的同時(shí),還可以有許多剩余電力用于完成其他任務(wù)。為了獲得具有理想功耗的這種功能性,我們可以把 VDD1 降至 0.95V,而非保證 600 MHz 運(yùn)行的 1.35V 最高電壓。
第二種有源電源管理技術(shù)即自適應(yīng)電壓縮放 (AVS) 基于芯片制造和器件工作壽命期間出現(xiàn)的各種變化。這種技術(shù)是相對(duì)于 DVFS 的,DVFS 中所有處理器均具有相同的預(yù)編程 OPP。正如人們認(rèn)為的那樣,在大多數(shù)現(xiàn)有制造工藝中規(guī)定頻率要求的芯片性能符合一種充分定義的電源分配。相比許多“冷”器件,一些器件(即“熱”器件)可以在較低的電壓下達(dá)到規(guī)定頻率。此時(shí),AVS 便可以發(fā)揮作用了—處理器檢測(cè)其自有性能水平,并相應(yīng)地調(diào)節(jié)各電壓源。專用片上 AVS 硬件可實(shí)施一個(gè)反饋環(huán)路,其并不要求處理器介入,從而動(dòng)態(tài)地優(yōu)化電壓電平來(lái)應(yīng)對(duì)處理結(jié)果、溫度和硅芯片性能降低中的變化(請(qǐng)參見(jiàn)圖 1)。
圖1
圖 1 顯示了特定處理器的典型性能分布情況。其中,“冷”器件要求 0.94V 電壓以實(shí)現(xiàn) 125 MHz 的運(yùn)行,而“熱”器件則只需要 0.83 V 就可實(shí)現(xiàn)相同頻率的運(yùn)行。自適應(yīng)電壓縮放 (AVS) 使用一個(gè)可相應(yīng)調(diào)節(jié)電源電壓的反饋環(huán)路,這樣單個(gè)器件便可以完成特定處理任務(wù)所需的頻率運(yùn)行了。
運(yùn)行中,軟件為每一個(gè) OPP 安排 AVS 硬件,同時(shí)控制算法通過(guò)一條 I2C 總線向外部穩(wěn)壓器發(fā)送命令,逐步遞增降低相應(yīng)穩(wěn)壓器的輸出,直到該處理器剛好超出目標(biāo)頻率要求為止。
例如,開(kāi)發(fā)人員可以在一個(gè)適合于所有情況的電壓下并以 0.95V 的 125 MHz 頻率為目標(biāo)開(kāi)始進(jìn)行設(shè)計(jì)(上面圖 1 所示的 V1)。但是,如果一個(gè)使用 AVS 的“熱”器件被插入該系統(tǒng),那么該片上反饋機(jī)制就會(huì)自動(dòng)地將電壓降至 ARM,即 0.85V 或更低(上面圖 1 所示的 V2)。
前兩種有源電源管理方法可獲得理想速度下運(yùn)行器件局部所需的最低工作電壓。相比之下,第三種方法動(dòng)態(tài)電源轉(zhuǎn)換 (DPS) 可確定器件何時(shí)完成其當(dāng)前計(jì)算任務(wù),如果當(dāng)前并不需要,則將器件切換到低功耗狀態(tài)(請(qǐng)參見(jiàn)圖 2)。例如,在等待 DMA 傳輸完成時(shí),處理器進(jìn)入低功耗狀態(tài)。喚醒時(shí),處理器可以在數(shù)微秒時(shí)間內(nèi)迅速返回到正常狀態(tài)。
圖2 動(dòng)態(tài)電源轉(zhuǎn)換 (DPS) 將完成任務(wù)后的特定器件的相應(yīng)部分切換至低功耗狀態(tài)。
無(wú)源電源管理
DPS 只能將多媒體片上系統(tǒng) (SoC) 的某一部分切換至低功耗狀態(tài),而在許多情況下將整個(gè)器件都切換至低功耗狀態(tài)是頗具現(xiàn)實(shí)意義的(無(wú)論是無(wú)應(yīng)用程序運(yùn)行時(shí)自動(dòng)切換,還是根據(jù)用戶要求切換)。為了達(dá)到這一目標(biāo),我們可以運(yùn)用了靜態(tài)漏電管理 (SLM),其被用于啟動(dòng)待機(jī)或關(guān)機(jī)模式。一個(gè)關(guān)鍵的區(qū)別在于,在待機(jī)模式下該器件可維持內(nèi)部存儲(chǔ)器和邏輯電路的狀態(tài),而在關(guān)機(jī)模式下所有系統(tǒng)狀態(tài)均被存入外部存儲(chǔ)器中。利用 SLM 后,喚醒時(shí)間比冷啟動(dòng)要短得多,因?yàn)槌绦蛞呀?jīng)被加載到外部存儲(chǔ)器,并且用戶不必等待整個(gè)操作系統(tǒng) (OS) 重新啟動(dòng)。媒體播放器可能會(huì)是運(yùn)用 SLM 的一個(gè)例子:在沒(méi)有處理任務(wù)也沒(méi)有用戶輸入的狀態(tài)下持續(xù) 10 秒鐘后,媒體播放器便關(guān)閉顯示器,并進(jìn)入待機(jī)或關(guān)機(jī)模式。
例如,具有 ARM Cortex-A8 內(nèi)核的 TI OMAP35x 單芯片處理器器件便可實(shí)施關(guān)機(jī)模式—器件可自動(dòng)喚醒的一種最低功耗模式。除喚醒域外,所有功耗域均處于關(guān)閉狀態(tài)。這樣,僅在喚醒域中有一定的功耗,并且所消耗電量來(lái)自于 I/O 漏電流。系統(tǒng)時(shí)鐘被關(guān)閉的情況下,喚醒域以 32 kHz 獨(dú)立運(yùn)行。OMAP35x 還會(huì)自動(dòng)將信號(hào)發(fā)送給外部穩(wěn)壓器,隨后穩(wěn)壓器在這種深度睡眠狀態(tài)下被關(guān)閉。處理器中的存儲(chǔ)器或邏輯電路并未被維持。在進(jìn)入關(guān)機(jī)模式之前,系統(tǒng)狀態(tài)被存入外部存儲(chǔ)器中;一次喚醒后復(fù)位以后,微處理器單元 (MPU) 跳至用戶定義功能,SDRAM 控制器配置從暫時(shí)存儲(chǔ)器中得到恢復(fù)。
通用技術(shù)
將前面所述電源管理技術(shù)結(jié)合起來(lái)使用,我們便能以一種最佳的方法來(lái)處理各種運(yùn)行情況。當(dāng)便攜式多媒體播放器的系統(tǒng)活動(dòng)級(jí)別較高時(shí),例如:觀看高分辨率視頻等,則可以在 VDD1 上設(shè)置過(guò)度驅(qū)動(dòng) OPP;對(duì)于要求中等水平功耗的網(wǎng)頁(yè)瀏覽而言,此時(shí)可為 VDD1 和 VDD2 設(shè)置正常的 OPP;聽(tīng)音樂(lè)的功耗要求相對(duì)較低,可為 VDD1 和 VDD2 設(shè)置最低的 OPP。所有這些例子中,都可以激活 AVS 來(lái)降低“熱”器件和“冷”器件之間的功耗差異。最后,如果用戶保持媒體播放器開(kāi)啟閑置數(shù)小時(shí)或幾天時(shí)間,則可以使用 SLM 來(lái)自動(dòng)地將該設(shè)備轉(zhuǎn)入關(guān)機(jī)模式。
為了更好地理解運(yùn)用這些特性所帶來(lái)的節(jié)能效果,請(qǐng)看下列幾種情況。除特別注明外,下列例子均未使用 TI 的 AVS/SmartReflex 技術(shù)。在這些描述中,IVA 是指影像、視頻以及音頻加速器或子系統(tǒng)。
第 1 種情況:關(guān)機(jī)模式—0. 590 mW。這是一種最低功耗模式,TI 的 OMAP 3 可從該模式中自動(dòng)喚醒。在這種模式下,整個(gè)器件(喚醒域除外)均處于關(guān)閉狀態(tài),喚醒域以低于 32 kHz 的頻率運(yùn)行。閑置穩(wěn)壓器被關(guān)閉(VDD1 = VDD2 = 0),SDRAM 自刷新,并且在喚醒時(shí)特定啟動(dòng)順序會(huì)恢復(fù) SDRAM 控制器和系統(tǒng)狀態(tài)。
第 2 種情況:待機(jī)模式—7 mW。這種器件狀態(tài)下,喚醒域處于運(yùn)行狀態(tài),而其他所有非喚醒功耗域則處于低功耗維持狀態(tài)(VDD1 = VDD2 = 0.9V)。所有邏輯電路和存儲(chǔ)器得以維持。AVS 處于關(guān)閉狀態(tài)。
第 3 種情況:音頻解碼—22 mW(不包括 DPLL 和 IO 功耗)。盡管 ARM 以 125 MHz 運(yùn)行,但是在其進(jìn)入睡眠模式后 ARM 僅允許 DMA 從多媒體卡讀取輸入數(shù)據(jù)。IVA 對(duì) MP3 幀(44.1 kHz、128k bps 立體聲)進(jìn)行解碼,并將解碼后的數(shù)據(jù)發(fā)送至位于 SDRAM 中的緩沖器。一個(gè)片上多通道緩存串行端口將數(shù)據(jù)發(fā)送給音頻編解碼器進(jìn)行回放。至于系統(tǒng)配置,DSP 以 90 MHz 運(yùn)行,并且在無(wú)需為處理提供循環(huán) (cycle) 時(shí)轉(zhuǎn)入低功耗狀態(tài)以達(dá)到節(jié)能的目的。此時(shí),VDD1 = 0.9V,而 VDD2 = 1V。
第 4 種情況:音頻/視頻編碼—540 mW(不包括 DPLL 和 IO 功耗)。在這種情況下,采集音頻并對(duì)其進(jìn)行編碼(48 kHz 的 AACe+,32k bps 立體聲),采集視頻并對(duì)其進(jìn)行編碼(20 幀/秒的 H.264 VGA 分辨率,2.4 Mbsp),并且對(duì)二者進(jìn)行了存儲(chǔ)。與此同時(shí),視頻被顯示出來(lái)。這種配置中,ARM 以 500 MHz 運(yùn)行,DSP 以 360 MHz 運(yùn)行,VDD1 = 1.2V,而 VDD2=1.15V。一個(gè)片上攝像頭子系統(tǒng)也會(huì)對(duì)來(lái)自外部傳感器的視頻輸入進(jìn)行采集,多通道緩存串行端口對(duì)音頻 PCM 輸入進(jìn)行采集,IVA 對(duì)視頻和音頻進(jìn)行編碼,編碼后的數(shù)據(jù)被存儲(chǔ)至多媒體卡中,而顯示子系統(tǒng)則對(duì)視頻進(jìn)行旋轉(zhuǎn)處理,并將其發(fā)送至 LCD 和 TV 輸出接口。
實(shí)施電源管理
為了實(shí)現(xiàn)電源管理的廣泛靈活性,DSP 處理器利用一個(gè)片上電源復(fù)位和時(shí)鐘管理器 (PRCM)。OMAP3530 處理器將其功能塊分為 18 個(gè)電源域,每一個(gè)域均有其自己的開(kāi)關(guān)。PRCM 可對(duì)所有電源域進(jìn)行開(kāi)關(guān),但是它們中的許多仍然由用戶來(lái)控制。另外,每一個(gè)電源域都可以被切換到四種狀態(tài)的任何一種,具體取決于電力是否施加于邏輯電路和存儲(chǔ)器,以及時(shí)鐘是激活還是未激活:激活、未激活、維持或關(guān)閉。
這些狀態(tài)要求和備用穩(wěn)壓器配合,而一些基于 ARM 和 DSP 的器件一般都需要這種穩(wěn)壓器。市場(chǎng)上許多穩(wěn)壓器都可以完成這一工作;當(dāng)然,這些穩(wěn)壓器必須要滿足處理器的電壓、電流和電源轉(zhuǎn)換速率等規(guī)范要求,同時(shí)還要能夠滿足上電/斷電定序要求。為了實(shí)現(xiàn) DVFS 和 AVS 在基于 ARM 和 DSP 的處理器上運(yùn)行,相關(guān)的穩(wěn)壓器還必須要具有 I2C 可編程性。在關(guān)機(jī)模式下,電路必須能夠利用自動(dòng)發(fā)出的或由專用 GPIO 信號(hào)發(fā)出的 I2C 命令對(duì) VDD1 和 VDD2 穩(wěn)壓器進(jìn)行開(kāi)關(guān)。第二種選項(xiàng)的喚醒時(shí)間更短一些,因?yàn)槠錄](méi)有 I2C 延遲。為了減輕設(shè)計(jì)工程師的負(fù)擔(dān),最好將這些獨(dú)立功能的所有特性置于單個(gè)器件中,這樣可以極大地減少組件數(shù)量(請(qǐng)參見(jiàn)圖 3)。
圖 3 高級(jí)穩(wěn)壓器芯片整合了多個(gè)單獨(dú)開(kāi)關(guān)穩(wěn)壓器和低壓降線性穩(wěn)壓器,可滿足 OMAP35x 處理器處理各種電壓域的要求。
評(píng)論