多媒體應用需要多處理器SoC的設計
——
多媒體應用需要多處理器SoC的設計
移動(dòng)電話(huà)正成為手持終端娛樂(lè )的中心,其同時(shí)也可作為復雜的寬帶無(wú)線(xiàn)電話(huà)發(fā)揮作用。用戶(hù)因為其的無(wú)線(xiàn)功能而選用移動(dòng)電話(huà),但一旦隨身攜帶,用戶(hù)則進(jìn)一步希望其還能作為PDA、MP3播放器、數碼相機、攝像機、視頻播放機以及游戲機等。
開(kāi)發(fā)這樣的多媒體設備面臨著(zhù)巨大的技術(shù)挑戰,特別是在服務(wù)質(zhì)量、響應性以及電池壽命方面尤為如此。最終的解決方案在于依靠被高度集成到片上系統技術(shù)中的多個(gè)處理引擎。
請考慮用戶(hù)面臨的以下情境:
--消費者使用無(wú)線(xiàn)電話(huà)作為帶耳機的MP3播放器,她同時(shí)還可以玩視頻游戲。音樂(lè )和游戲聲音必須混合在一起,這樣二者能夠同時(shí)出現,不會(huì )出現爆音或靜止。
--另一位消費者正在觀(guān)看存儲在插入電話(huà)中閃存卡上的電影,這時(shí)他的母親來(lái)電話(huà)了。當然他希望無(wú)線(xiàn)電話(huà)能夠告知他有人來(lái)電話(huà),并顯示來(lái)電者身份。
--還有一位用戶(hù)正在參加視頻會(huì )議,但他還必須關(guān)注因特網(wǎng)上發(fā)布的臺風(fēng)警告。屏幕上的文本信息會(huì )為他提供新聞動(dòng)態(tài),不會(huì )造成視頻或音頻的中斷。
為了按照上述消費者的期望提供必要的服務(wù)質(zhì)量,我們要求多個(gè)處理引擎同時(shí)工作
開(kāi)發(fā)這樣的多媒體設備面臨著(zhù)巨大的技術(shù)挑戰,特別是在服務(wù)質(zhì)量、響應性以及電池壽命方面尤為如此。最終的解決方案在于依靠被高度集成到片上系統技術(shù)中的多個(gè)處理引擎。
請考慮用戶(hù)面臨的以下情境:
--消費者使用無(wú)線(xiàn)電話(huà)作為帶耳機的MP3播放器,她同時(shí)還可以玩視頻游戲。音樂(lè )和游戲聲音必須混合在一起,這樣二者能夠同時(shí)出現,不會(huì )出現爆音或靜止。
--另一位消費者正在觀(guān)看存儲在插入電話(huà)中閃存卡上的電影,這時(shí)他的母親來(lái)電話(huà)了。當然他希望無(wú)線(xiàn)電話(huà)能夠告知他有人來(lái)電話(huà),并顯示來(lái)電者身份。
--還有一位用戶(hù)正在參加視頻會(huì )議,但他還必須關(guān)注因特網(wǎng)上發(fā)布的臺風(fēng)警告。屏幕上的文本信息會(huì )為他提供新聞動(dòng)態(tài),不會(huì )造成視頻或音頻的中斷。
為了按照上述消費者的期望提供必要的服務(wù)質(zhì)量,我們要求多個(gè)處理引擎同時(shí)工作
。單個(gè)處理器配置即便具備多媒體擴展,可能也難以實(shí)時(shí)、同時(shí)應對上述各種動(dòng)態(tài)工作負載,因為它采用的是順序而不是并行的多任務(wù)處理方法。
為了能夠滿(mǎn)足同時(shí)出現的多媒體任務(wù)和用戶(hù)界面事件的要求,單個(gè)處理器必須始終在任務(wù)間進(jìn)行交換,這會(huì )導致很高的系統開(kāi)銷(xiāo)。最終,任務(wù)交換會(huì )造成幀丟失、音頻爆音、視頻閃爍或斑紋。
工作負載情境
我們不妨舉一個(gè)例子,考慮兩個(gè)處理器運行工作負載的情況,其中包括控制任務(wù)、用戶(hù)界面任務(wù)以及多媒體任務(wù)。處理器A使用單個(gè)處理引擎,在所有三個(gè)任務(wù)之間進(jìn)行上下文交換(Context Switching),這就造成開(kāi)銷(xiāo)。處理器B使用兩個(gè)處理引擎(一個(gè)ARM和一個(gè)DSP),將處理多媒體的任務(wù)交由DSP完成。由于A(yíng)RM處理器只需完成控制和用戶(hù)界面任務(wù),這就大大降低了上下文交換開(kāi)銷(xiāo)。即便處理器A運行于快得多的時(shí)鐘速度上,從最終用戶(hù)角度來(lái)看,其結果也會(huì )遜于處理器B。
德州儀器公司 (TI) 的Omap 1611進(jìn)一步推出了多處理技術(shù),其集成了ARM926、TI 55x DSP以及一系列針對視頻、Java及安全性的專(zhuān)用硬件加速器。為了實(shí)現最佳成本組合,ARM內核與DSP內核通過(guò)流量控制器可共享外部存儲器。
當然,軟件的高度集成對兩個(gè)以上處理引擎并行工作以實(shí)現無(wú)縫性能是至關(guān)重要的。軟件的橋接功能可識別所要求的任務(wù),并將其分配給最合適的處理器,在某些情況下,還會(huì )分配給尚未運行的處理器。其也可以關(guān)閉不使用的處理引擎,并在需要時(shí)再將其打開(kāi)。
這種多處理功能也有助于實(shí)現用戶(hù)期望的響應性。用戶(hù)已習慣于等待 MP3 音樂(lè )從因特網(wǎng)上下載,他們想聽(tīng)下載文件時(shí),希望能夠對選擇歌曲、控制音量和暫停等進(jìn)行操作,或實(shí)時(shí)切換至另一應用。用戶(hù)希望按鍵之后立即得到響應。
在無(wú)線(xiàn)多媒體設備中,實(shí)現這樣的響應性并不像想像的那么簡(jiǎn)單。原因在于,命令與控制功能、用戶(hù)界面和信號處理等在播放MP3歌曲時(shí)都是處于工作狀態(tài)的,從本質(zhì)上講,這要求不同類(lèi)型的數據處理。用戶(hù)接口是一種高中斷活動(dòng),而信號處理則要求持續與高度重復地執行復雜的數學(xué)運算。
近期的經(jīng)驗顯示,不管性能集多豐富,客戶(hù)都不會(huì )選擇通話(huà)時(shí)間或待機時(shí)間大大低于他們已習慣的、目前第二代電話(huà)的無(wú)線(xiàn)多媒體設備。日本電信運營(yíng)商Docomo在推出其第三代電話(huà)時(shí)就此方面獲得了第一手經(jīng)驗。Docomo的第一批3G電話(huà)獲得的市場(chǎng)份額大大低于預期目標。目前,該公司正在提供經(jīng)過(guò)重新設計的電話(huà),待機電池使用時(shí)間超過(guò)200小時(shí),并且工業(yè)設計與日本現有的2G電話(huà)更為接近,這樣,市場(chǎng)才開(kāi)始接受3G機型。
盡管聽(tīng)起來(lái)似乎與想當然的看法相左,但一般說(shuō)來(lái)多處理引擎的功耗確實(shí)低于單個(gè)處理核心設計,其電池壽命也更長(cháng)。利用不同類(lèi)型處理核心(RISC、DSP和硬件加速器)的各種功能,我們可以從性能和功耗角度就優(yōu)化的引擎給出合適的算法,而且可以根據需要啟用或關(guān)閉有關(guān)單元,從而進(jìn)一步延長(cháng)電池使用時(shí)間。
DSP使用復雜的指令,使其可在單個(gè)時(shí)鐘周期內進(jìn)行若干數學(xué)運算。RISC架構與指令集一般僅允許在一個(gè)周期內僅執行一次運算。因此,DSP處理MP3音樂(lè )或視頻流所需的周期遠低于RISC芯片。此外,DSP內核由內部存儲器支持,而非由高速緩存支持。就緊湊的DSP循環(huán)而言,內部SRAM可提供兩大優(yōu)勢:確定性執行和功耗節省。
RISC核心可執行諸如用戶(hù)接口及視頻顯示管理等高中斷命令與控制功能,這比DSP的效率高得多,且其執行這些操作的功耗也比DSP低,特別是當其不需要實(shí)時(shí)發(fā)生時(shí)更為如此。
硬件加速器既可增強性能,又能提高電源效率,但會(huì )降低靈活性和可升級性。TI為其Omap器件添加了上述加速器,以解決特定的專(zhuān)用加速任務(wù),諸如Java、安全性和視頻、離散余弦轉換、反DCT、運動(dòng)估計以及像素插值等。
設計人員將多處理引擎運用到其系統的核心,既可以滿(mǎn)足消費者的當前需求,又可以為將來(lái)的無(wú)線(xiàn)多媒體設備制定發(fā)展策略。
Avner Goren (avner@ti.com)現就任于 TI(位于達拉斯)的全球無(wú)線(xiàn)終端業(yè)務(wù)部。
為了能夠滿(mǎn)足同時(shí)出現的多媒體任務(wù)和用戶(hù)界面事件的要求,單個(gè)處理器必須始終在任務(wù)間進(jìn)行交換,這會(huì )導致很高的系統開(kāi)銷(xiāo)。最終,任務(wù)交換會(huì )造成幀丟失、音頻爆音、視頻閃爍或斑紋。
工作負載情境
我們不妨舉一個(gè)例子,考慮兩個(gè)處理器運行工作負載的情況,其中包括控制任務(wù)、用戶(hù)界面任務(wù)以及多媒體任務(wù)。處理器A使用單個(gè)處理引擎,在所有三個(gè)任務(wù)之間進(jìn)行上下文交換(Context Switching),這就造成開(kāi)銷(xiāo)。處理器B使用兩個(gè)處理引擎(一個(gè)ARM和一個(gè)DSP),將處理多媒體的任務(wù)交由DSP完成。由于A(yíng)RM處理器只需完成控制和用戶(hù)界面任務(wù),這就大大降低了上下文交換開(kāi)銷(xiāo)。即便處理器A運行于快得多的時(shí)鐘速度上,從最終用戶(hù)角度來(lái)看,其結果也會(huì )遜于處理器B。
德州儀器公司 (TI) 的Omap 1611進(jìn)一步推出了多處理技術(shù),其集成了ARM926、TI 55x DSP以及一系列針對視頻、Java及安全性的專(zhuān)用硬件加速器。為了實(shí)現最佳成本組合,ARM內核與DSP內核通過(guò)流量控制器可共享外部存儲器。
當然,軟件的高度集成對兩個(gè)以上處理引擎并行工作以實(shí)現無(wú)縫性能是至關(guān)重要的。軟件的橋接功能可識別所要求的任務(wù),并將其分配給最合適的處理器,在某些情況下,還會(huì )分配給尚未運行的處理器。其也可以關(guān)閉不使用的處理引擎,并在需要時(shí)再將其打開(kāi)。
這種多處理功能也有助于實(shí)現用戶(hù)期望的響應性。用戶(hù)已習慣于等待 MP3 音樂(lè )從因特網(wǎng)上下載,他們想聽(tīng)下載文件時(shí),希望能夠對選擇歌曲、控制音量和暫停等進(jìn)行操作,或實(shí)時(shí)切換至另一應用。用戶(hù)希望按鍵之后立即得到響應。
在無(wú)線(xiàn)多媒體設備中,實(shí)現這樣的響應性并不像想像的那么簡(jiǎn)單。原因在于,命令與控制功能、用戶(hù)界面和信號處理等在播放MP3歌曲時(shí)都是處于工作狀態(tài)的,從本質(zhì)上講,這要求不同類(lèi)型的數據處理。用戶(hù)接口是一種高中斷活動(dòng),而信號處理則要求持續與高度重復地執行復雜的數學(xué)運算。
近期的經(jīng)驗顯示,不管性能集多豐富,客戶(hù)都不會(huì )選擇通話(huà)時(shí)間或待機時(shí)間大大低于他們已習慣的、目前第二代電話(huà)的無(wú)線(xiàn)多媒體設備。日本電信運營(yíng)商Docomo在推出其第三代電話(huà)時(shí)就此方面獲得了第一手經(jīng)驗。Docomo的第一批3G電話(huà)獲得的市場(chǎng)份額大大低于預期目標。目前,該公司正在提供經(jīng)過(guò)重新設計的電話(huà),待機電池使用時(shí)間超過(guò)200小時(shí),并且工業(yè)設計與日本現有的2G電話(huà)更為接近,這樣,市場(chǎng)才開(kāi)始接受3G機型。
盡管聽(tīng)起來(lái)似乎與想當然的看法相左,但一般說(shuō)來(lái)多處理引擎的功耗確實(shí)低于單個(gè)處理核心設計,其電池壽命也更長(cháng)。利用不同類(lèi)型處理核心(RISC、DSP和硬件加速器)的各種功能,我們可以從性能和功耗角度就優(yōu)化的引擎給出合適的算法,而且可以根據需要啟用或關(guān)閉有關(guān)單元,從而進(jìn)一步延長(cháng)電池使用時(shí)間。
DSP使用復雜的指令,使其可在單個(gè)時(shí)鐘周期內進(jìn)行若干數學(xué)運算。RISC架構與指令集一般僅允許在一個(gè)周期內僅執行一次運算。因此,DSP處理MP3音樂(lè )或視頻流所需的周期遠低于RISC芯片。此外,DSP內核由內部存儲器支持,而非由高速緩存支持。就緊湊的DSP循環(huán)而言,內部SRAM可提供兩大優(yōu)勢:確定性執行和功耗節省。
RISC核心可執行諸如用戶(hù)接口及視頻顯示管理等高中斷命令與控制功能,這比DSP的效率高得多,且其執行這些操作的功耗也比DSP低,特別是當其不需要實(shí)時(shí)發(fā)生時(shí)更為如此。
硬件加速器既可增強性能,又能提高電源效率,但會(huì )降低靈活性和可升級性。TI為其Omap器件添加了上述加速器,以解決特定的專(zhuān)用加速任務(wù),諸如Java、安全性和視頻、離散余弦轉換、反DCT、運動(dòng)估計以及像素插值等。
設計人員將多處理引擎運用到其系統的核心,既可以滿(mǎn)足消費者的當前需求,又可以為將來(lái)的無(wú)線(xiàn)多媒體設備制定發(fā)展策略。
Avner Goren (avner@ti.com)現就任于 TI(位于達拉斯)的全球無(wú)線(xiàn)終端業(yè)務(wù)部。
評論