新聞中心

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

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

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

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

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


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

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

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

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


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

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

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


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


上一頁(yè) 1 2 3 下一頁(yè)

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

評(píng)論


相關(guān)推薦

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

關(guān)閉