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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的卷積碼編譯碼器

          基于FPGA的卷積碼編譯碼器

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

          摘要:基于的編譯碼原理,使用VHDL語言和芯片設(shè)計并實現(xiàn)了(2,1,3)。其中譯碼器設(shè)計采用“截尾”的Vite-rbi譯碼算法,在支路量度計算、路徑量度和譯碼路徑的更新與存儲以及判決與輸出等環(huán)節(jié)的實現(xiàn)中采取了若干有效措施,節(jié)省了存儲空間,提高了設(shè)計性能。最后通過仿真驗證了設(shè)計的正確性與合理性。
          關(guān)鍵詞:;;;Viterbi譯碼器:VHDL

          由于卷積碼具有較好的糾錯性能,因而在通信系統(tǒng)中被廣泛使用。采用硬件描述語言VerilogHDL或VHDL和(Field Programmable Gate Array——現(xiàn)場可編程門陣列)進(jìn)行數(shù)字通信系統(tǒng)設(shè)計,可在集成度、可靠性和靈活性等方面達(dá)到比較滿意的效果。
          文獻(xiàn)以生成矩陣G=[101,111]的(2,1,3)卷積碼為例,介紹了卷積碼編碼器的原理和VerilogHDL語言的描述方式;文獻(xiàn)采用VerilogHDL語言,對(2,1,7)卷積碼的Viterbi硬判決譯碼進(jìn)行了FPGA設(shè)計。本文基于卷積碼編/譯碼的基本原理,使用VHDL語言和FPGA芯片設(shè)計并實現(xiàn)了(2,1,3)卷積碼編碼器及其相應(yīng)的Viterbi譯碼器,通過仿真驗證了設(shè)計的正確性。

          1 (2,1,3)卷積碼編碼器的設(shè)計
          1.1 (2,1,3)卷積碼編碼器的原理
          卷積碼編碼器通常記作(n,k,N),對應(yīng)于每段k個比特的輸入序列,輸出n個比特;這n個輸出比特不僅與當(dāng)前的k個輸入比特有關(guān),而且還與以前的(N-1)k個輸入比特有關(guān)。(n,k,N)卷積碼編碼器包括:一個由Ⅳ段組成的輸入移位寄存器,每段有k級,共Nk位;一組n個模2加法器;一個由n級組成的輸出移位寄存器。整個編碼過程可以看成是輸入序列與由移位寄存器和模2加法器連接方式所決定的另一個序列的卷積。
          對于(2,1,3)卷積碼編碼器來說,n=2,k=1,N=3,即每輸入1個信息比特時經(jīng)編碼后產(chǎn)生2個輸出比特,輸出比特不僅與當(dāng)前的1個輸入比特有關(guān).而且還與以前的2個輸入比特有關(guān)。(2,1,3)卷積編碼器框圖如圖1所示。

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


          c.JPG
          當(dāng)編碼使能start為0時不進(jìn)行編碼,并將狀態(tài)state清零;start為1時進(jìn)行編碼,此時每2個時鐘周期輸入一個新的信息比特,同時狀態(tài)信號改變,輸出2位已編碼比特,即每個時鐘周期輸出1位已編碼比特。


          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞: FPGA 卷積碼 編譯碼器

          評論


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