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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > H.264視頻解碼芯片中與濾波相關(guān)的存儲(chǔ)器的設(shè)計(jì)

          H.264視頻解碼芯片中與濾波相關(guān)的存儲(chǔ)器的設(shè)計(jì)

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

            4 SRAM 的規(guī)劃與設(shè)計(jì)

            在H.264 解碼過程中,數(shù)據(jù)由熵解碼經(jīng)過運(yùn)動(dòng)補(bǔ)償后再通過環(huán)路最終送到中,之后顯示解碼芯片從中不斷的提取數(shù)據(jù)送到顯示器上,最終完成數(shù)據(jù)的解碼,如圖3 所示。在的過程中,宏塊中的數(shù)據(jù)頻繁地被調(diào)用。而SRAM 的讀寫速度快的特點(diǎn)能很好地適用這一要求。因?yàn)樵贖.264 中最小的單元為block,運(yùn)動(dòng)矢量等都是以block 為單位來進(jìn)行傳遞。因此以block 為單位來進(jìn)行數(shù)據(jù)的存取會(huì)帶來很大的方便。本設(shè)計(jì)中各個(gè)SRAM 每一個(gè)地址存放一個(gè)block 單元的數(shù)據(jù)(16 個(gè)像素點(diǎn)),即采用128bit 的SRAM。

          DRAM 與其它模塊之間的數(shù)據(jù)交互

          圖3 DRAM 與其它模塊之間的數(shù)據(jù)交互

            在H.264 中運(yùn)動(dòng)補(bǔ)償結(jié)束后的數(shù)據(jù)交由環(huán)路運(yùn)算后寫入DRAM, 我們把寫入DRAM 的這一過程稱為Store 過程,由Store 模塊負(fù)責(zé)。由圖3 可以看出MC 與Deblock 是一個(gè)串聯(lián)的關(guān)系。為了提高解碼的速度,我們將運(yùn)動(dòng)補(bǔ)償與環(huán)路濾波并行執(zhí)行,即當(dāng)前解碼的結(jié)束并不以環(huán)路濾波的結(jié)束為標(biāo)志,而當(dāng)前宏塊的運(yùn)動(dòng)補(bǔ)償一結(jié)束我們就可以開始下一個(gè)宏塊的解碼。經(jīng)過大量的實(shí)驗(yàn)發(fā)現(xiàn):MC 的時(shí)間遠(yuǎn)比block的時(shí)間大很多,當(dāng)后一個(gè)模塊要進(jìn)行濾波時(shí)濾波模塊早已準(zhǔn)備完畢。最后對存儲(chǔ)模塊我們也同樣的用并行的思想來加快解碼的速度。結(jié)果當(dāng)作MBx 的MC 時(shí),做MB(x-1)的濾波,同時(shí)MB(x-2)存儲(chǔ)。此時(shí)需要注意MB(x-1)的濾波和MB(x-2)的存儲(chǔ)并不是同時(shí)開始。因?yàn)樽鯩B(x-1)的濾波時(shí)也會(huì)影響到MB(x-2)中的數(shù)據(jù)。

            因此我們要等MB(x-1)的第一條垂直邊濾波結(jié)束后才開始MB(x-2)的存儲(chǔ)。具體的時(shí)間關(guān)系如圖4 所示。

           各個(gè)模塊之間的時(shí)序關(guān)系圖

          圖4 各個(gè)模塊之間的時(shí)序關(guān)系圖

           ?。?)濾波前數(shù)據(jù)的存儲(chǔ)及濾波結(jié)束后數(shù)據(jù)的存儲(chǔ)

            由于設(shè)計(jì)中采用此種流程,我們需要3 片SRAM來存儲(chǔ)MC 的運(yùn)算結(jié)果。這3 片SRAM 交替地進(jìn)行MC、Deblock 和Store。我們稱這3 片SRAM 為SRAM_M(jìn)B,濾波結(jié)束后的數(shù)據(jù)也存儲(chǔ)在此SRAM 中,在經(jīng)Store 模塊將此數(shù)據(jù)存儲(chǔ)到DRAM 中去。因?yàn)闉V波結(jié)束時(shí),恰好原來SRAM_M(jìn)B 中的數(shù)據(jù)也已經(jīng)成為無效數(shù)據(jù)。這里需要注意,由于有幀場自適應(yīng)的情況存在,濾波結(jié)束后的數(shù)據(jù)如果幀場情況不一樣,我們還需要根據(jù)數(shù)據(jù)不同的情況進(jìn)行適當(dāng)?shù)膸瑘鲛D(zhuǎn)化,之后再將數(shù)據(jù)存入DRAM。

           ?。?)垂直濾波后的數(shù)據(jù)的存儲(chǔ)

            我們都知道濾波過程是一個(gè)先垂直后水平的過程,因此我們需要有一片SRAM 來存儲(chǔ)水平濾波的結(jié)果。這片SRAM 就叫SRAM_BUFFER。因?yàn)樗綖V波時(shí)正在從SRAM_M(jìn)B 中讀取數(shù)據(jù),同一時(shí)間不能同時(shí)向SRAM 中讀取、寫入數(shù)據(jù)。因此我們用SRAM_BUFFER 來暫存垂直濾波結(jié)束后的數(shù)據(jù)。水平濾波時(shí)則從SRAM_BUFFER 中讀取數(shù)據(jù), 濾波后存儲(chǔ)到SRAM_M(jìn)B 中。

            5 總結(jié)

            本文對H.264 解碼芯片中的濾波、存儲(chǔ)模塊作了深入的分析。并根據(jù)各個(gè)時(shí)間數(shù)據(jù)的特點(diǎn)作相應(yīng)的的設(shè)計(jì), 這種設(shè)計(jì)方法經(jīng)過驗(yàn)證能很好地處理H.264 中濾波及存儲(chǔ)時(shí)的數(shù)據(jù)的調(diào)度。整個(gè)濾波過程約52 個(gè)周期就可以完成。在MBAFF 情況時(shí)各種數(shù)據(jù)的轉(zhuǎn)化時(shí)鐘周期控制在70 個(gè)以內(nèi)。這種設(shè)計(jì)符合要求,并在FPGA 上驗(yàn)證后能夠正常的運(yùn)行,運(yùn)行時(shí)鐘達(dá)到60MHz,能實(shí)時(shí)地完成對高清圖像的解碼。


          上一頁 1 2 3 下一頁

          評論


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