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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > H.264_AVC視頻編碼變換量化核實(shí)現(xiàn)

          H.264_AVC視頻編碼變換量化核實(shí)現(xiàn)

          作者: 時(shí)間:2012-07-23 來源:網(wǎng)絡(luò) 收藏
          格,通過查表方式便可實(shí)現(xiàn)硬件運(yùn)算,并有效地提高了運(yùn)算速度。

            

          H.264_AVC視頻編碼變換量化核實(shí)現(xiàn)

            2 4×4整數(shù)核的優(yōu)化設(shè)計(jì)

            為進(jìn)一步提高硬件運(yùn)算速度,減少硬件開銷,設(shè)計(jì)中采用了如下優(yōu)化方法:

            (1)在求取變換陣W=CXCT時(shí),根據(jù)變換的對(duì)稱性,將X的列變換(矩陣左乘)與行變換(矩陣右乘)分開實(shí)現(xiàn),把二維變換分割為兩次一維變換,并采用快速堞形算法[4]來實(shí)現(xiàn)。一維變換的快速算法實(shí)現(xiàn)如圖1所示,其中的列變換可用如下算式表示:

            

          H.264_AVC視頻編碼變換量化核實(shí)現(xiàn)

            

          H.264_AVC視頻編碼變換量化核實(shí)現(xiàn)

            對(duì)于每列變換,需要進(jìn)行8次加法和2次移位運(yùn)算,而行變換則可根據(jù)矩陣轉(zhuǎn)置的性質(zhì)ABT=(BAT)T,將經(jīng)過列變換后的結(jié)果矩陣先進(jìn)行轉(zhuǎn)置,再采用相同的變換形式運(yùn)算。這樣對(duì)4×4點(diǎn)數(shù)據(jù)做一次變換,只需通過8×8次加法和2×8次移位運(yùn)算便可完成。

          (2) 針對(duì)不同運(yùn)算的位寬需要,設(shè)計(jì)專用的加法器和乘法器。本文對(duì)整數(shù)變換中的加法器采用三級(jí)流水線加法器,實(shí)現(xiàn)9位加法,每級(jí)流水線完成三位超前進(jìn)位加法,將邏輯延遲限制在三位加法器之內(nèi)。圖2給出了9位加法器的流水線實(shí)現(xiàn)框圖。選用EPF10K10LC84-3作為適配器件,經(jīng)過Synplify Pro 7.3綜合,結(jié)果表明這種加法器具有較優(yōu)的最高工作頻率和硬件開銷。如表2所示, 常規(guī)加法器的最高工作頻率為37.0MHz,消耗資源卻為28LC,而經(jīng)過優(yōu)化的三級(jí)流水線加法器在消耗資源增加不多的情況下,其最高工作頻率相比常規(guī)加法器提高了257%,達(dá)到94.5MHz。

            

          H.264_AVC視頻編碼變換量化核實(shí)現(xiàn)



          關(guān)鍵詞: H.264_AVC 視頻編碼 變換量化

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