Global Sources
電子工程專輯
 
電子工程專輯 > 處理器/DSP
 
 
處理器/DSP  

視訊播放設備的設計需符合娛樂類規格

上網時間: 2007年12月21日     打印版  Bookmark and Share  字型大小:  

關鍵字:視訊標準  視訊引擎  編解碼 

在不遠的將來,現代家庭的客廳都將配備具有IPTV功能的數位電視、高解析度電視(HDTV)視訊轉換盒和高解析度視訊光碟播放器。行動設備中也將增加娛樂媒體播放功能。很快,所有設備都將能播放專業製作的娛樂內容。

支援視訊播放的下一代家庭與可攜設備的設計者在考慮下一代SoC設計架構時,必須清楚什麼對此類設備消費者來說才是最重要的。現在有很多IP供應商提供可整合進SoC的視訊處理器核心或硬體模組。在評估這些核心和模組時,設計師必須清楚市場在支援各種視訊標準方面的發展動向。

多種不同的視訊標準

儘管H.264已成為未來系統與設備的全球性優秀視訊編碼標準,但仍有越來越多的標準在被人們採用。例如,下一代視訊光碟和DTV標準要求採用Windows Media Video 9或SMPTE VC-1編碼;有些IPTV系統採用MPEG-4及類似編碼;很多系統出於相容目的仍要求採用MPEG-2編解碼;即時雙向視訊會議系統仍廣泛採用H.263標準;中國的國家廣播則主要採用AVS編碼標準。

不同類型的設備對編解碼性能的要求也不盡相同。例如,視訊轉換盒只需解碼高品質的視訊訊號,而視訊會議設備則必須同時進行即時的視訊編解碼。電池供電的設備要求低功耗,而裝有行動天線的設備則需要特別強的位元串流糾錯能力。

由於許多編碼標準又根據採用的編碼技術對哪些應用和設備有益而細分為不同的規格,這就讓視訊處理世界變得更加複雜。通常,適用於雙向通訊類的規格要求具備即時編碼能力,但只需進行低複雜度的糾錯,而用於專業娛樂視訊編碼的規格則要求更高壓縮率和更低解碼成本。表1所示為主要壓縮標準的即時應用類規格和娛樂應用類規格。

對於將來的視訊設備甚至行動設備,能解碼H.264主規格(Main Profile)之類的娛樂視訊規格是很重要的。例如,手持式設備中的全功能DVB-H解碼器必須同時支援H.264基本規格(Baseline)和主規格(Main Profile)。終端用戶產品要在市場中取得成功,必須支援恰當的解碼規格。

早期RCA Lyra可攜式媒體播放器的購買者就曾因為發現它無法播放任何帶B訊框編碼的視訊而大感失望。B訊框雖然提高了壓縮率,但要實現即時編碼則很困難,因此只有部份娛樂類規格使用它。Lyra播放器的這一缺點導致用戶從網際網路上下載的大部份視訊都無法觀看。這種功能上的不足在競爭日益激烈的消費品市場迅速導致了一個視訊播放器產品線的消亡。

要處理多樣化的編碼標準和規格,需要多格式的可編程視訊處理器。消費者對娛樂和通訊的要求,刺激了晶片製造商採用既能處理娛樂類規格也能處理即時類規格的可編程視訊處理器。通常硬連線的視訊模組面積較小,但當同時需要多種模組以滿足多種標準時,整個視訊功能模組的面積就可能比採用處理器實現時佔用的面積大得多。而且硬連線的視訊模組在應付不斷發展的視訊標準時也不夠靈活。因此,現在絕大部份晶片設計師都只會考慮採用可編程視訊處理器。

表1:實現壓縮標準中不同部份的各個規格。
表1:實現壓縮標準中不同部份的各個規格。

高效處理各種標準

然而,僅僅因為一個處理器能夠編程並不意味它就能高效地處理每一種標準。通用嵌入式CPU若用於處理視訊串流,就會顯得配置不足,僅針對一段低品質的視訊解碼就不得不以極高的主頻執行。因此,這種方案對可攜式設備而言能效比太低。相反,專用視訊處理器中整合了專用指令集,可利用SIMD(單指令多數據)技術進行畫素數據的平行處理,或利用特殊指令進行視訊數據的串列處理(例如熵解碼、運動向量預測等)。以Tensilica公司的Diamond 388VDO標準視訊引擎時為例,在設計該產品時,Tensilica在標準32位元RISC指令集之外還增加了許多視訊專用的指令集,以最佳化引擎的視訊處理能力。

要實現用於H.264主規格的處理器尤其困難。H.264主規格採用了位元串流無損熵編碼中基於上下文的自適應二進制算術編碼(CABAC)方法。要從CABAC位元串流中解碼每個二進制元素(稱為bin)必須仰賴前一bin的完全解碼結果,每個bin都對解碼器的狀態有很大影響。有兩種嵌入式處理器能嚴格用軟體實現即時CABAC解碼:NXP半導體的Trimedia和Tensilica的Diamond 388VDO。經過證實,全軟體CABAC解碼方法的一大優點,是在高位元率工作情況下能夠達到最高效的性能。

Tensilica能夠使用指令集擴展實現全軟體的熵解碼,製作出可處理複雜位元串流的低時脈速率、高能效視訊處理器。例如,Tensilica能以僅162MHz的時脈速率,實現對一個5Mbps位元串流的所有D1 Main profile解碼。

與此類似,H.264 Main profile支援B訊框和交錯式視訊內容,而這兩項功能會為經驗不足的視訊處理器和編解碼器開發人員帶來很大困難。解決視訊編解碼器難題最簡單的方法就是增大DRAM記憶體頻寬。這種方法在高階PC上沒有問題,但用在嵌入式系統中就不現實了。由於受功耗和成本限制,嵌入式系統無法承受這樣的DRAM頻寬浪費。

圖1所示為Tensilica Diamond 388VDO標準視訊引擎的結構圖。其中包含兩個Tensilica Xtensa可配置處理器和一個DMA控制器,可大幅發揮視訊壓縮解壓演算法固有的平行性。Diamond 388VDO核心中的串流處理器和畫素處理器共同分擔視訊壓縮任務,DMA控制器則負責在處理器核心內外和兩個處理器之間傳送壓縮前後的影像。Diamond 388VDO視訊引擎中的每個處理器都有自己的指令集和數據RAM。

圖1:Tensilica的 Diamond388VDO視訊引擎結構圖。
圖1:Tensilica的 Diamond388VDO視訊引擎結構圖。

Diamond視訊引擎核心中的這兩個處理器都採用了Tensilica的可配置Xtensa處理器架構。串流處理器透過增加額外指令集來完成位元串流解析和熵編碼。這些新指令中一部份基於Tensilica的FLIX(可變長度指令擴展),並採用每條指令執行兩次獨立作業的VLIW指令格式。畫素處理器中也增加了可同時作業多個畫素的SIMD(單指令多數據)指令。

串流處理器和畫素處理器中添加的指令使Diamond視訊引擎能夠在時脈速率低於200MHz時以標準顯示解析度(SD或D1)和30訊框/秒的速度編碼MPEG-4 ASP(Advanced Simple Profile)位元串流或解碼H.264/AVC MP(Main Profile)、MPEG-4 ASP、MPEG-2 MP、和VC-1/WMV 9 MP視訊位元串流。低時脈速率通常意味著低功耗,該引擎之所以選擇200MHz的時脈速率,是因為該引擎可以採用普通的低成本130nm製程。

圖2所示為Diamond視訊引擎在解碼H.264/AVC視訊數據串流時內部的任務分配情況。串流處理器用於完成位元串流解析(包括分離網路抽象層、影像層和片層)和熵解碼。畫素處理器則用於完成反向量化、反向轉換編碼、訊框內預測、運動補償和影像解區塊處理。串流處理器也可輔助畫素處理器進行運動補償。

圖2:Diamond 388VDO視訊引擎在進行H.264/AVC解碼時的內部任務分配情況。
圖2:Diamond 388VDO視訊引擎在進行H.264/AVC解碼時的內部任務分配情況。

需要注意的是,在單一處理器上執行所有這些解碼任務其實是可能的,但這需要高得多的時脈速率,而時脈速率高意味著需要採用更加昂貴的製程技術。為了盡可能減少電池供電的可攜式視訊產品功耗,Diamond 388VDO視訊引擎即使在解碼標準解析度的視訊時都保持很低的時脈速率,大幅減少了功耗。

在處理器外完成視訊解碼

在評估不同的視訊處理器性能時,很重要的一點就是檢查並確保系統主CPU的處理器核心無需負責任何視訊解碼任務,包括所有位元串流解析任務。傳統視訊處理器,如Hantro的處理器,只將運動估計之類的畫素處理功能挪至主CPU外完成,為系統控制器留下了極大運算量的一部份任務。這些開銷可能要求SoC設計師採用更加龐大也更耗電的系統控制器,這在可攜式設備的設計中是需要付出昂貴代價的。

研究一下業界領先的家用和手持嵌入式視訊設備,我們會發現,最好的視訊處理器是那些以高位元率和低記憶體頻寬處理娛樂類數據的處理器。只有深刻瞭解各種視訊規格,並清楚哪些規格需要利用下一代設備來實現,SoC架構師們才能正確評估不同IP廠商提供的產品。

作者:Jonah Probell

技術行銷經理

行動多媒體產品部

Tensilica公司




投票數:   加入我的最愛
我來評論 - 視訊播放設備的設計需符合娛樂類規格
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首