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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于KeyStone DSP的多核視頻處理技術(shù)

          基于KeyStone DSP的多核視頻處理技術(shù)

          作者: 時間:2011-09-15 來源:網(wǎng)絡(luò) 收藏

            2.4 多內(nèi)核間的協(xié)作與同步

            當(dāng)多個內(nèi)核處理同一視頻通道時,這些內(nèi)核之間必須相互通信,才能實現(xiàn)對輸入數(shù)據(jù)的同步、分離或共享,合并輸出數(shù)據(jù)或者在處理過程中交換數(shù)據(jù)。附錄 A - 解碼器性能依賴闡述了將功能劃分成多個內(nèi)核的幾種算法。

            并行處理法和流水線處理法是兩種常用的分區(qū)算法。并行處理的范例是兩個或兩個以上的內(nèi)核可以處理同一輸入通道。必須有一個不受競態(tài)條件影響的機制在多個內(nèi)核之間共享信息??蓪⑿盘枠?biāo)用來保護(hù)全局區(qū)域免受競態(tài)條件的干擾。硬件需要支持阻塞性和非阻塞性信號標(biāo),以有效消除競態(tài)條件,即消除兩個內(nèi)核同時占用同一地址的可能性。

            如果使用流水線算法,一個或一個以上的內(nèi)核可執(zhí)行運算的第一部分,然后再將中間結(jié)果傳遞第二組內(nèi)核繼續(xù)處理。由于負(fù)載取決于處理的內(nèi)容,因而這種傳遞機制可能面臨如下問題:

          •   如果一個以上的內(nèi)核處理流水線的第一階段,那么第 N+1 幀可能先于第 N 幀被處理好。因此該傳遞機制必須能夠?qū)敵?輸入進(jìn)行排序。
          •   即使流水線上的各內(nèi)核總體是均衡的(在處理負(fù)載方面),但個別幀未必如此。該傳遞機制必須在不同的流水線階段之間提供緩沖,以使內(nèi)核沒完成工作時不至于影響其他內(nèi)核停滯等待。
          •   如果算法要求流水線的兩個階段間能穩(wěn)固實現(xiàn)緊密的鏈接(例如,為解決依賴性的問題),則該機制就必須能夠支持緊密鏈接與松散鏈接。

            2.5 多芯片系統(tǒng)

            實時處理超級視頻 (SVGA)、4K 及更高分辨率,或處理 5 級 H.264HP可能需要不止一個芯片一起協(xié)作。要構(gòu)建一個具有超高處理能力的雙芯片系統(tǒng),擁有可連接兩個芯片的超快速總線至關(guān)重要。

            第三部分描述了可滿足上述所有要求及難題的 系列 架構(gòu)。

            3. – TI 最新多內(nèi)核處理器

            TI 架構(gòu)描述了廣泛應(yīng)用于等要求高性能和高帶寬的系列多內(nèi)核設(shè)備。圖 2 對 KeyStone 進(jìn)行了概括性描述。本章針對在第二部分中闡述的視頻處理硬件要求對 KeyStone DSP 特性進(jìn)行了介紹。

          圖 2 KeyStone DSP 方框圖

            表 1 說明 KeyStone DSP 如何滿足視頻處理要求。

            附錄A - 解碼器性能相關(guān)性

            編碼器所采用的工具和算法以及視頻內(nèi)容都會影響解碼器的性能。下列因素將影響解碼器性能:

          •   CABAC 或 CAVLC 熵解碼器的選擇
          •   跳幀的數(shù)量
          •   幀內(nèi)預(yù)測模式的復(fù)雜性
          •   預(yù)測類型—運動估算或幀內(nèi)預(yù)測。(運動補償需要消耗的解碼周期數(shù)不同于幀內(nèi)預(yù)測補償。采用運動補償還是幀內(nèi)預(yù)測取決于編碼器。)
          •   不同的運動估算工具(每個宏模塊一個運動矢量,每個宏模塊 4個運動矢量,或每個宏模塊 8 個運動矢量)能改變解碼器的復(fù)雜度和周期數(shù)。
          •   B 幀宏模塊的運動補償涉及兩個參考宏模塊,并消耗更多周期。
          •   媒體流中的運動量不僅會更改跳過宏模塊的數(shù)目,同時還會改變解碼器的處理要求。
          •   比特流在運動矢量、模塊值、標(biāo)記等各個不同值等之間的分配取決于媒體流的內(nèi)容和編碼器算法。不同的分配會相應(yīng)改變熵解碼器的周期數(shù)。

            附錄B — 運動估算和速率控制

            運動估算是 H.264 編碼中很大一部分內(nèi)容。H.264 編碼器的質(zhì)量取決于運動估算算法的質(zhì)量。運動估算所需的周期數(shù)取決于運動估算算法的功能特性及特征。以下是幾個影響運動估算周期消耗的主要因素:

          •   I 幀、P 幀和 B 幀的頻率
          •   L0(對于 P 幀和 B 幀)和 L1(對于 B 幀)中的參考幀數(shù)目
          •   搜索區(qū)域的數(shù)目
          •   搜索區(qū)的大小
          •   搜索算法

            良好的運動估算算法可能消耗總編碼周期的 40-50%,乃至更多。

            速率控制算法是影響編碼質(zhì)量的主要因素。為了最大限度地提高視頻的感知質(zhì)量,智能速率控制算法可在宏模塊和幀之間分配可用的比特。

            部分系統(tǒng)可執(zhí)行多重處理通道,以便在宏模塊之間更好的分配可用比特。多條通道雖然能提高感知質(zhì)量,但卻要求更密集的處理。

            附錄C - 外部帶寬

            由于運動估算算法的原因,編碼器通常比解碼器需要更高的內(nèi)部帶寬。編碼器的要求分兩種情況計算:低比特率 QCIF 和高比特率的 1080p。

          •   第一種情況 -- QCIF 264 BP 編碼器:

            兩個完整的 QCIF 幀能駐留在高速緩存或 L2 乒乓緩沖器中。每個幀需要的容量不到 40 KB。采用一個參考幀對某一幀進(jìn)行編碼時,系統(tǒng)應(yīng)為每次 QCIF 處理傳輸 80KB 的數(shù)據(jù),并輸出少量數(shù)據(jù)。200 個15 fps 的 QCIF 通道所需的總內(nèi)部帶寬為:

            80KB * 15 (fps) * 200(通道數(shù))+ 200(通道數(shù))* 256/8 KB(QCIF 通道的輸出比特率)= 240MB + 6.4MB = 250MB/s

          •   第二種情況 -- 1080p 60 H.264 HP:

            假定采用最差情況中的算法來執(zhí)行運動參考幀的運動估算,該參考幀可能需要從外部移至內(nèi)部存儲器多達(dá)三次。此外,也可假定采用多達(dá)四個參考幀的高級算法。因此,單個 1080p60 通道的運動估算是:

            3(復(fù)制 3 次)* 1920*1080*1(在運動估算中,每像素僅 1 個字節(jié))*60 (fps) * 4(參考通道) = 1492.992 MBps

            是否移動可進(jìn)行處理和運動補償?shù)漠?dāng)前幀由以下情況來確定:

            2(當(dāng)前幀和運動補償)* 1920 * 1080 * 1.5(字節(jié)/像素)* 60 = 373.248 MBps

            綜上所述,以上兩個匯總結(jié)果規(guī)定了輸出比特流。一個通道的總和為1866.24 MBps,即兩個 H.264 HP 1080p60 編碼器為 3732.48 MBps,這意味著約占用外部存儲器原始數(shù)據(jù)帶寬的 30%。


          上一頁 1 2 下一頁

          關(guān)鍵詞: KeyStone DSP 視頻處理 存儲器

          評論


          相關(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); })();