<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 滿足多媒體處理器需求的動態(tài)電源管理技術(shù)

          滿足多媒體處理器需求的動態(tài)電源管理技術(shù)

          —— Dynamic power management techniques for multimedia processors
          作者:Arthur Musah Andy Dykstra 德州儀器 時間:2009-02-13 來源:電子產(chǎn)品世界 收藏

            有源電源管理

          本文引用地址:http://www.ex-cimer.com/article/91246.htm

            片上電源管理技術(shù)分為兩大類,管理工作系統(tǒng)功耗與管理待機功耗。

            有源電源管理分為三個領(lǐng)域:動態(tài)電壓與頻率縮放 ()、自適應(yīng)電壓調(diào)整 () 與動態(tài)電源切換 ()。靜態(tài)功耗管理需要確保閑置的系統(tǒng)在需要更高處理能力之前處于省電狀態(tài),也就是采用所謂的靜態(tài)漏電管理 (SLM) 技術(shù),這種管理通常依賴于從待機到斷電的幾種低功耗模式。

            我們先來看看主動模式。利用 技術(shù),可根據(jù)應(yīng)用的性能需求通過軟件來降低時鐘速度和電壓。例如,我們不妨設(shè)想一款集成了高級 RISC 微處理器 (ARM) 與數(shù)字信號處理器 (DSP) 的應(yīng)用處理器。盡管 ARM 組件的運行速度可高達 600 MHz,但系統(tǒng)并不總是需要如此高的計算能力。通常,我們可通過軟件來選擇預(yù)定義的處理器工作性能點 (OPP),這時的電壓可確保處理器工作在可滿足系統(tǒng)處理性能要求的最低頻率上。為了適應(yīng)不同應(yīng)用,進一步提高優(yōu)化功率的靈活性,我們還可為處理器中的互連與外設(shè)預(yù)定義另外一組器件內(nèi)核 OPP。

            軟件根據(jù) OPP 需向外部穩(wěn)壓器發(fā)送控制信號才能設(shè)置最低電壓。例如, 適用于兩個供電電壓 VDD1(DSP 與 ARM 處理器的供電電壓)與 VDD2(子系統(tǒng)與外設(shè)互連的供電電壓),這兩個電壓軌提供了大部分芯片功率(通常在 75% 到 80% 之間)。在執(zhí)行 MP3 解碼時,可將 DSP 處理器轉(zhuǎn)入低操作性能點,從而大幅減少功耗供處理其他任務(wù)之用,這時的 ARM 運行頻率高達 125 MHz。為了在最佳功耗情況下實現(xiàn)必需的功能性,我們可將 VDD1 降至 0.95 伏特,而不使用最高 1.35 伏特的電壓,以確保 600 MHz 的工作頻率。

            自適應(yīng)電壓縮放 () 作為第二種有源電源管理技術(shù),是以芯片制造過程中以及器件運行生命周期中產(chǎn)生的差異為基礎(chǔ)的。該技術(shù)與所有處理器都采用相同預(yù)編程 OPP 的 DVFS 不同??梢韵胍?,就大多數(shù)已經(jīng)成熟的制造工藝而言,芯片的性能在既定頻率要求下要遵循一定的分布情況。部分器件(所謂的“熱”器件)相對于其他器件(所謂的“冷”器件)而言,能以較低的電壓實現(xiàn)給定的頻率,這就是 發(fā)揮作用的原理——處理器感應(yīng)到自身的性能級別,并相應(yīng)調(diào)整供電電壓。專用的片上 AVS 硬件可實施反饋環(huán)路,無需處理器干預(yù)即可動態(tài)優(yōu)化電壓電平,以滿足進程、溫度以及硅芯片衰減等造成的差異要求(圖 1)。

            圖 1 給定處理器的典型性能分布。此處的“冷”器件工作在125 MHz的頻率時需要0.94伏特,而“熱”器件在該頻率下只需 0.83 伏特。自適應(yīng)電壓縮放 (AVS) 技術(shù)采用反饋環(huán)路相應(yīng)調(diào)節(jié)供電電壓,確保各器件運行在特定處理任務(wù)所需的頻率上

            軟件可在工作中為每個 OPP 設(shè)置 AVS 硬件,而控制算法則通過 I2C 總線向外部穩(wěn)壓器發(fā)送指令,以逐步降低適當(dāng)穩(wěn)壓器的輸出,直至處理器剛好超過目標(biāo)頻率的要求為止。

            例如,開發(fā)人員可首先設(shè)計一個能滿足所有情況的電壓,在 125 MHz 頻率下為 0.95 伏特(在圖 1 中的 V1 上方)。但是,如果系統(tǒng)中插入了采用 AVS 技術(shù)的“熱”器件,那么片上反饋機制就會自動將 ARM 的電壓降至 0.85 伏特或更低(圖 1 中的 V2 上方)。

            前兩種有源電源管理技術(shù)可以最小的工作電壓讓器件的某部分工作在理想的速度上。相比之下,第三種方法 — 動態(tài)功率切換 () 先確定器件何時可完成當(dāng)前的計算任務(wù),如果暫時不需要,則讓器件進入低功耗待機狀態(tài)(圖 2)。例如,處理器在等待 DMA 傳輸完成過程中會進入低功耗狀態(tài)。處理器在喚醒后幾微秒內(nèi)就能返回正常工作狀態(tài)。

            圖 2 動態(tài)電源切換 () 在給定器件的某部分完成任務(wù)后使其進入低功耗狀態(tài)

            無源電源管理

            雖然 DPS 可讓多媒體片上系統(tǒng) (SoC) 的一部分進入低功耗狀態(tài),不過在有些情況下,我們可讓整個器件都進入低功耗模式 — 在沒有應(yīng)用運行時自動或通過用戶請求進入低功耗模式。要實現(xiàn)這一目的,我們可應(yīng)用靜態(tài)漏電管理 (SLM) 技術(shù),啟動待機或器件關(guān)閉模式。這兩種模式一個關(guān)鍵的不同之處在于:在待機模式下,器件仍然占用著內(nèi)部存儲器和邏輯,而在器件關(guān)閉模式下,所有系統(tǒng)狀態(tài)都保存于外部存儲器中。利用 SLM 技術(shù),喚醒時間大大快于冷啟動速度,因為程序已經(jīng)載入到了外部存儲器,用戶無需等待操作系統(tǒng) (OS) 完全重新啟動。在采用 SLM 技術(shù)情況下,我們以媒體播放器為例,如果打開十秒鐘后還沒有得到處理指令或用戶輸入,就會關(guān)閉顯示屏進入待機或器件關(guān)閉模式。

            例如,TI 采用 ARM Cortex-A8 內(nèi)核的 OMAP35x 單芯片處理器器件就支持器件關(guān)閉模式,即器件可自動喚醒的最低功耗模式。除了喚醒域之外,所有電源域均關(guān)閉,耗電的只有喚醒域與 I/O 漏電流。系統(tǒng)時鐘關(guān)閉,在此情況下,喚醒域的時鐘被單獨設(shè)為 32 kHz。此外,OMAP35x 還可自動向外部穩(wěn)壓器發(fā)送信號,穩(wěn)壓器能夠在深度睡眠狀態(tài)下關(guān)閉。處理器內(nèi)部不保存存儲器或邏輯。在進器件關(guān)閉電模式前,系統(tǒng)狀態(tài)存儲在外部存儲器中。經(jīng)后喚醒復(fù)位后,微處理器單元 (MPU) 會啟動用戶定義的功能,SDRAM 控制器配置從高速暫存存儲器 (SPM) 中恢復(fù)。

            可滿足各種用途的技術(shù)

            通過結(jié)合采用上述電源管理技術(shù),我們可實現(xiàn)多種操作條件下的最佳功耗。如果系統(tǒng)忙于處理播放高分辨率視頻等便攜式播放器任務(wù),那么可在 VDD1 上設(shè)置過壓 OPP。如果是功耗適中的 web 瀏覽,則可為 VDD1 與 VDD2 設(shè)置額定的 OPP。若是功耗較低的音樂欣賞,則可為 VDD1 與 VDD2 設(shè)置最低的 OPP。在上述所有情況下,我們都可啟動 AVS 來平衡“冷”“熱”器件的功耗差別。最后,如果用戶打開媒體播放器但數(shù)小時或數(shù)天都不使用,其會通過 SLM 技術(shù)自動使器件進入關(guān)閉模式。

            為更好的理解采用上述技術(shù)所帶來的節(jié)能優(yōu)勢,需要將下列案例納入考慮范圍。在以下案例中,除有特別說明,否則我們一概不采用 TI 的 AVS/SmartReflex 技術(shù)。在這些描述中,IVA 指影像、視頻以及音頻加速器子系統(tǒng)。

            ·案例一:器件關(guān)閉模式 — 0.590 mW。這是 TI OMAP 可自動喚醒的最低功耗模式。在該模式下,整個器件除了喚醒域之外全部關(guān)閉,而喚醒域的工作頻率還不到 32 kHz。關(guān)閉不使用的穩(wěn)壓器(VDD1 = VDD2 = 0),自動刷新 SDRAM,喚醒時特殊啟動序列恢復(fù) SDRAM 控制器和系統(tǒng)狀態(tài)。

            ·案例二:待機模式 — 7 mW。在該器件狀態(tài)下,僅喚醒域工作,所有其他非喚醒電源域都處于低功耗保存狀態(tài)(VDD1 = VDD2 = 0.9 伏特)。所有邏輯和存儲器將保留。AVS 關(guān)閉。

            ·案例三:音頻解碼 — 22 mW(不含 DPLL 與 IO 功耗)。雖然 ARM 工作在 125 MHz 頻率上,但僅設(shè)置 DMA 從多媒體卡讀取輸入數(shù)據(jù),隨后進入休眠狀態(tài)。IVA 解碼 MP3 幀(44.1 kHz、128k bps 立體聲),并將解碼數(shù)據(jù)發(fā)送到 SDRAM 的緩沖中。片上多通道緩沖串行端口發(fā)送數(shù)據(jù)到音頻編解碼器以用于回放。就系統(tǒng)配置而言,DSP 的工作頻率為 90 MHz,在無需處理周期時進入低功耗模式以降低功耗。這時,VDD1 為 0.9伏特,VDD2 為 1伏特。

            ·案例四:音頻/視頻編碼 — 540 mW(不含 DPLL 與 IO功耗)。在該案例中,我們捕獲并對音頻進行編碼(AACe+、48 kHz、32k bps 立體聲),捕獲并編碼視頻(H.264 VGA 分辨率,每秒 20 幀,2.4 Mbsp),音頻和視頻都保存,同時顯示視頻。在該配置下,ARM 工作頻率為 500 MHz,DSP 運行頻率為 360 MHz,VDD1 為 1.2伏特,VDD2 為 1.15伏特。此外,片上攝像子系統(tǒng)還可從外部傳感器捕獲視頻輸入,多通道緩沖串行端口捕獲音頻 PCM 輸入,IVA 執(zhí)行音頻和視頻編碼,編碼數(shù)據(jù)存儲在多媒體卡中,而顯示子系統(tǒng)則使視頻循環(huán),并將視頻發(fā)送至 LCD 與電視輸出接口。

            實施電源管理

            為了實現(xiàn)充分的電源管理靈活性,DSP 處理器采用片上電源復(fù)位與時鐘管理器 (PRCM)。OMAP3530 處理器的功能模塊分為 18 個電源域,每個電源域都擁有自己的開關(guān)。PRCM 可開關(guān)所有電源域,但許多電源域也可由用戶控制。此外,每個電源域都能根據(jù)邏輯與存儲器是否加電、以及時鐘是否處于工作狀態(tài)而進入四種狀態(tài)之一:工作狀態(tài)、非工作狀態(tài)、保持或關(guān)閉。

            就 ARM 與 DSP 器件而言,上述狀態(tài)通常需要輔助穩(wěn)壓器。市場上的許多穩(wěn)壓器都可滿足上述要求,當(dāng)然還需滿足處理器的電壓、電流、功率轉(zhuǎn)換速率規(guī)范以及功率上升下降排序要求等。為了在 ARM 與 DSP 處理器上執(zhí)行 DVFS 與 AVS操作,相關(guān)穩(wěn)壓器必須支持 I2C 可編程性。在器件關(guān)閉模式下,電路系統(tǒng)必須能通過自動發(fā)出的 I2C 命令或?qū)iT的 GPIO 信號打開或關(guān)閉 VDD1 與 VDD2 穩(wěn)壓器。如果采用 GPIO 信號,由于不存在 I2C 延遲,那么喚醒時間會更快些。為了減輕設(shè)計工程師的負擔(dān),上述各功能的所有特性最好集成在單個器件中,從而大幅減少部件數(shù)(圖 3)。

            圖 3 高級穩(wěn)壓器芯片集成了多個開關(guān)穩(wěn)壓器與低壓降線性穩(wěn)壓器,因而可滿足 OMAP35x 處理器的電壓域要求



          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();