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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 一種基于FPGA高性能H.264變換量化結(jié)構(gòu)設(shè)計(jì)

          一種基于FPGA高性能H.264變換量化結(jié)構(gòu)設(shè)計(jì)

          作者: 時(shí)間:2009-07-03 來源:網(wǎng)絡(luò) 收藏

          摘 要:H.作為最新的視頻編碼標(biāo)準(zhǔn)具有很高的壓縮,對(duì)它的研究具有重要的意義。根據(jù)H.量化算法設(shè)計(jì)一種基于的高量化處理結(jié)構(gòu),該結(jié)構(gòu)采用流水線操作和分時(shí)復(fù)用技術(shù)。結(jié)果顯示,該設(shè)計(jì)既節(jié)省了資源,又保證了效率;能夠同時(shí)處理整個(gè)4× 4塊的全部16個(gè)殘差輸入數(shù)據(jù),并在236個(gè)時(shí)鐘內(nèi)完成對(duì)1個(gè)宏塊的殘差數(shù)據(jù)從輸入到反輸出重建值的完整變換量化過程。它的處理速度和大大提高,可用于硬件加速。
          關(guān)鍵詞:H.;變換;量化;

          本文引用地址:http://www.ex-cimer.com/article/192007.htm


          0 引 言
          H.264高效的編碼效率是以其高復(fù)雜性為代價(jià)的,因此制約了它在高分辨率、實(shí)時(shí)處理等方面的應(yīng)用。而器件采用流水控制策略和并行處理方式,可為H.264復(fù)雜的編碼模塊提供硬件加速引擎。變換量化模塊在H.264編碼算法中被頻繁調(diào)用。因此研究在盡量合理控制其資源消耗的前提下,提高變換量化模塊的工作頻率及處理數(shù)據(jù)的吞吐量,并完成變換量化一系列完整功能的變換量化結(jié)構(gòu)具有重要的實(shí)際意義,也成為當(dāng)前研究的首要問題。H.264.變換是基于DCT的,其全部采用整數(shù)DCT變換,這樣就避免了正變換和反變換的失配問題,既不丟失解碼精度,也適合于FPGA硬件實(shí)現(xiàn)。

          1 算法原理及分析
          1.1 變換算法及分析
          H.264變換是整數(shù)DCT變換,該算法實(shí)現(xiàn)了編碼端和解碼端反變換之間的零匹配,從而減少了解碼精度的丟失。通常H.264變換編碼以4×4塊為單位,核心變換矩陣如下:


          當(dāng)核心變換矩陣中a=1時(shí),為DCT正向變換矩陣Cf,;若將DCT正向變換矩陣Cf,中所有的2變?yōu)?,并保持所有符號(hào)不變,則變成Hadamard變換矩陣Hi;若將以上矩陣中所有的2變?yōu)?,并使a=1/2,保持所有符號(hào)不變,則為DCT反向變換矩陣CTi。
          1.2 量化算法及分析
          H.264的分級(jí)標(biāo)量量化器支持多達(dá)52個(gè)量化步長Qstep,用量化參數(shù)QP進(jìn)行索引。范圍廣闊的量化步長能夠靈活準(zhǔn)確地控制比特速率和質(zhì)量之間的平衡。
          在整數(shù)算法中,量化過程可以用以下運(yùn)算來實(shí)現(xiàn):


          式中:W為殘差系數(shù);>>表示二進(jìn)制右移;幀內(nèi)塊和幀間塊f分別為2qbits/3,2qbits/6;MF為乘法因子,其值可根據(jù)W(i,j)在矩陣中不同的位置和量化參數(shù)QP的不同,查乘法因子表得到。
          系數(shù)z的反量化方式如下:


          式中:尺度因子V可根據(jù)Z(i,j)在矩陣中不同的位置和量化參數(shù)QP的不同,查尺度因子表得到。

          2 FPGA硬件設(shè)計(jì)及實(shí)現(xiàn)
          2.1 變換量化硬件整體結(jié)構(gòu)
          在H.264編碼器中經(jīng)過預(yù)測后得到的殘差數(shù)據(jù)經(jīng)過變換T、量化Q后的數(shù)據(jù)分為兩路:一路經(jīng)過重排序Recoder后用于熵編碼;另一路為重建通路,經(jīng)過反量化Q-1、反變換T-1后與預(yù)測值P相加得到重建值,用于后面的宏塊的預(yù)測編碼。
          H.264編碼標(biāo)準(zhǔn)中,在幀內(nèi)預(yù)測方式下,首先對(duì)16×16宏塊(亮度分量)的16個(gè)4×4塊進(jìn)行DCT變換,然后提取出DC系數(shù)組成一個(gè)4×4 DC塊;對(duì)于這個(gè)4×4 Dc塊要先進(jìn)行Hadamard變換,然后量化。在重建通路中需要注意:對(duì)于4×4 DC塊,要先進(jìn)行反Hadamard變換,再進(jìn)行反量化,目的是使反變換的動(dòng)態(tài)范圍最大;再依據(jù)這個(gè)4×4 DC塊中16個(gè)數(shù)值對(duì)反量化后的16×16宏塊進(jìn)行反DCT變換。對(duì)于色度分量的DC系數(shù)也是一樣需要經(jīng)過進(jìn)一步變換。H.264變換量化整體結(jié)構(gòu)主要分為4大模塊,其框圖如圖1所示。

          結(jié)構(gòu)框圖中DC_reg是一組用于存儲(chǔ)所有的DC系數(shù)值的寄存器,使用兩個(gè)同步FIFO存儲(chǔ)反量化后的AC系數(shù),等待DC系數(shù)反變換反量化完畢以后,再一起送人最后的反DCT變換模塊中進(jìn)行處理。兩個(gè)同步FIFO在時(shí)鐘控制下先后進(jìn)行寫操作,其中一個(gè)存儲(chǔ)4×4塊反量化輸出的其中兩行數(shù)據(jù),另一個(gè)在下一時(shí)鐘存儲(chǔ)這個(gè)4×4塊反量化輸出的另兩行數(shù)據(jù)。讀取時(shí),則同時(shí)對(duì)兩個(gè)FIFO進(jìn)行讀操作,即一個(gè)時(shí)鐘內(nèi)這個(gè)4×4塊的反量化后的全部16個(gè)數(shù)值同時(shí)出現(xiàn)在反變換模塊的輸入端。


          上一頁 1 2 下一頁

          關(guān)鍵詞: FPGA 264 性能 變換

          評(píng)論


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