新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于 TMS320DM6446 的 H.264 編碼器的設(shè)計與優(yōu)化

基于 TMS320DM6446 的 H.264 編碼器的設(shè)計與優(yōu)化

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

2003年發(fā)布的H.264視頻壓縮編碼標(biāo)準(zhǔn)在一定程度上解決了要在盡可能低的碼率下獲得盡可能好的圖像質(zhì)量這一問題。在相同的重建圖像質(zhì)量下,H.264能夠比H.263節(jié)約50%左右的比特率,此外H.264還增強了其對網(wǎng)絡(luò)的適應(yīng)性,差錯的恢復(fù)能力,使其非常適用于數(shù)字視頻存儲、IPTV及手機電視等視頻質(zhì)量要求高而信道傳輸環(huán)境不穩(wěn)定的場合。

本文引用地址:http://m.butianyuan.cn/article/151137.htm


由于加入了多模式位移估計、基于4×4塊的整數(shù)變換等多種新的算法,使H.264算法本身的復(fù)雜度大幅增加。因此本文采用基于TI的TMS320DM6446的DAVINCI_EVM平臺作為算法的硬件平臺,提出針對達芬奇平臺對H.264編碼器進行優(yōu)化,在不降低編碼質(zhì)量的情況下提高程序運行效率,降低運算復(fù)雜度的一個實現(xiàn)方案。

H.264編碼器的算法流程
H.264編碼器結(jié)構(gòu)如圖1所示,輸入的Fn為當(dāng)前幀或場,編碼器以宏塊為單位進行處理,每個宏塊可以選擇幀內(nèi)或者幀間預(yù)測兩種編碼方式。如果采用幀內(nèi)編碼模式,其預(yù)測值PRED(圖中為P)是由本幀之前已經(jīng)經(jīng)過編碼、解碼、重建的一些樣本點生成。而如果采用幀間模式,則P由一個或者多個參考幀的運動補償預(yù)測生成。預(yù)測值P和當(dāng)前塊相減后,產(chǎn)生一個殘差塊D,經(jīng)塊變換、量化后產(chǎn)生一組量化后的變換系數(shù)X,再經(jīng)熵編碼,與解碼所需的一些信息一起組成一個壓縮后的碼流,經(jīng)NAL供傳輸和存儲用。

圖1 H.264編碼器結(jié)構(gòu)

編碼硬件平臺概況
本文采用的達芬奇數(shù)字視頻評估模塊DVEVM(Digital Video Evaluation Module)是TI提供的用來評估DaVinci技術(shù)和DM644x體系架構(gòu)的評估模塊,是強調(diào)片上能力的一個很好的參考平臺。其硬件資源包括TM320DM6446的DSP和ARM9的雙核芯片、128MB的SDRAM、16MB的NAND Flash以及豐富的外設(shè)接口。


TM320DM6446中用于編碼器具體實現(xiàn)的C64x+ DSP的時鐘頻率達到600MHz。C64x+ DSP的內(nèi)部存儲器的配置包括32KB的程序存儲器L1P、80KB的數(shù)據(jù)存儲器L1D和64KB的二級緩存L2。圖2為TM320DM6446中DSP端的核心C64x+的結(jié)構(gòu)原理圖。

編圖2 C64x+結(jié)構(gòu)原理圖

碼器在TM320DM6446上的實現(xiàn)
由于DSP平臺與PC平臺的差異性,必須對PC上開發(fā)的編碼器程序進行結(jié)構(gòu)上的調(diào)整,并進行合理的內(nèi)存分配才能在DSP平臺上正常的運行。主要實現(xiàn)步驟如下。


1 編碼器C語言結(jié)構(gòu)調(diào)整
PC平臺上用C語言實現(xiàn)的編碼器在DSP平臺上的編碼幀率(fps)非常低,平均2秒才能編完一幀,其主要原因是無法利用DSP的并行處理機制。因此針對C64x+的特點,將程序中對流水線操作影響較大的的循環(huán)拆分成若干小循環(huán)實現(xiàn)。對編碼器運行速度影響較大的模塊如sad的計算,DCT變換等采用CCS自帶的圖像庫以提高編碼效率。


上一頁 1 2 3 下一頁

關(guān)鍵詞: 編解碼器

評論


相關(guān)推薦

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

關(guān)閉