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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的視頻圖像分割技術(shù)設(shè)計(jì)與應(yīng)用

          基于FPGA的視頻圖像分割技術(shù)設(shè)計(jì)與應(yīng)用

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


          通過實(shí)驗(yàn)得到另一個(gè)結(jié)論:在內(nèi)部是用DMA來搬運(yùn)視頻數(shù)據(jù)到顯示bu仃er的相應(yīng)位置。對(duì)于數(shù)據(jù)量相對(duì)較大的“數(shù)據(jù)塊”來說,DMA所耗費(fèi)的系統(tǒng)性能是非常接近的。由此,筆者設(shè)計(jì)出第2種換面合成方式,如圖4所示。這樣做可以簡化邏輯設(shè)計(jì),節(jié)約資源,提高項(xiàng)目開發(fā)速度。

          2 系統(tǒng)設(shè)計(jì)

          2.1 硬件設(shè)計(jì)部分

          圖5是相關(guān)部分硬件框圖,可以看到,16路視頻數(shù)據(jù)由4片TW2815芯片輸入到,經(jīng)過分割合成處理后送入。由于視頻數(shù)據(jù)速度高、數(shù)據(jù)量大,所以采用兩片DDR SDRAM進(jìn)行緩存。主時(shí)鐘為133 MHz,配置電路采用從串和JTAG模式,前者用于系統(tǒng)運(yùn)行時(shí)由MCU進(jìn)行配置,后者用于系統(tǒng)調(diào)試。FPGA芯片選用Xilinx公司Spaaen3A系列

          XC3SD3400A芯片。系統(tǒng)由ATX電源供電,內(nèi)部各電平由電源芯片產(chǎn)生。內(nèi)存為兩片HY5DU561622ETP型DDR SDRAM。


          2.2 軟件功能架構(gòu)

          圖6為軟件設(shè)計(jì)功能框圖,它由多個(gè)功能模塊組成。各模塊功能如下:

          1,INPUT DEMUX:接收視頻數(shù)據(jù),根據(jù)視頻解碼芯片的工作模式將信號(hào)分解成ITU-RBT.656數(shù)據(jù)送入下級(jí)模塊。

          2,VII)IN:檢測SAV、EAV信號(hào),提取有效視頻數(shù)據(jù)(DI、CIF、QCIF),然后放入FIFO中暫存。

          3,WRITE DMA:按照設(shè)計(jì)中對(duì)內(nèi)存的劃分,將不同通道的有效數(shù)據(jù)寫入設(shè)定的內(nèi)存空間。

          4,READ DMA:按照一定的格式讀取內(nèi)存空間中的數(shù)據(jù)。

          5,MEM ARB:仲裁對(duì)內(nèi)存的讀寫操作,協(xié)調(diào)讀寫模塊工作。

          6,DDR SDRAM Controller:用Xilinx內(nèi)存接口生成器(MIG)生成,實(shí)現(xiàn)FPGA與DDR接口

          7,VID OUT:在輸出視頻數(shù)據(jù)中添加通道號(hào)等輔助信息,便于DSP識(shí)別。

          8,12C_SLAVE:模擬12c從模塊工作方式,外部MCU通過該接口對(duì)內(nèi)部寄存器進(jìn)行配置,以實(shí)現(xiàn)不同功能。


          整個(gè)系統(tǒng)基于同步邏輯設(shè)計(jì),使用Verilog HDL語言進(jìn)行代碼編寫,仿真使用ModelSim,圖7是其中典型一次寫突發(fā)過程模塊的仿真波形。



          關(guān)鍵詞: DSP FPGA 視頻編碼器

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