基于TMS320DM6446的H.264編碼器的設(shè)計(jì)與優(yōu)化
2003年發(fā)布的H.264視頻壓縮編碼標(biāo)準(zhǔn)在一定程度上解決了要在盡可能低的碼率下獲得盡可能好的圖像質(zhì)量這一問題。在相同的重建圖像質(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://www.ex-cimer.com/article/150985.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(圖1中為P)是由本幀中之前已經(jīng)經(jīng)過編碼、解碼、重建的一些樣本點(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)概況
本設(shè)計(jì)采用的達(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的雙核芯片、128M的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為TM320DM6446中DSP端的核心C64x+的結(jié)構(gòu)原理圖。
圖2 C64x+結(jié)構(gòu)原理圖
編碼器在TM320DM6446上的實(shí)現(xiàn)
由于DSP平臺(tái)與PC平臺(tái)的差異性,必須要對(duì)PC上開發(fā)的編碼器程序進(jìn)行結(jié)構(gòu)上的調(diào)整,并進(jìn)行合理的內(nèi)存分配才能在DSP平臺(tái)上正常的運(yùn)行。主要實(shí)現(xiàn)步驟如下。
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
電度表相關(guān)文章:電度表原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評(píng)論