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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 認知無線電的頻譜檢測的FPGA實現(xiàn)

          認知無線電的頻譜檢測的FPGA實現(xiàn)

          作者: 時間:2015-02-06 來源:網(wǎng)絡(luò) 收藏

            初步擬定硬件方案

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

            (1)整體方案框圖

            

           

            本次設(shè)計使用8點的FFT設(shè)計,因此我們需要3級基2點的FFT運算,共有4個旋轉(zhuǎn)因子需要存儲,依據(jù)項目難點我們主要對FFT模塊的設(shè)計進行逐層細化:

            (2)一級FFT的系統(tǒng)框圖實現(xiàn)

            

           

            該框圖為一級FFT的系統(tǒng)框圖,輸入數(shù)據(jù)A對應(yīng)I信號的輸入,輸入數(shù)據(jù)B對應(yīng)Q信號的輸入,然后對其做基2點的FFT運算。

            (3)ROM的設(shè)計

            本次設(shè)計為8點FFT運算,就需要4個旋轉(zhuǎn)因子,旋轉(zhuǎn)因子的實部和虛部都采用八位二進制數(shù)來表示,因此使用一個寬度為16,深度為4的ROM存儲器存儲旋轉(zhuǎn)因子。

            

           

            (4)蝶形運算單元的實現(xiàn)

            依據(jù)蝶形運算公式:

            

           

            我們得到蝶形運算單元框圖為:

            

           

            (5)乒乓結(jié)構(gòu)的RAM示意圖

            我們在FFT模塊中開辟兩個RAM數(shù)據(jù)存儲區(qū),以此組成典型的乒乓操作模式;在FFT第一級運算中,數(shù)據(jù)從RAM1經(jīng)蝶形運算單元計算存入RAM2,在第二次中則正好相反,以此類推…….,下圖給出了乒乓結(jié)構(gòu)的RAM示意圖。

            

           

            (6)能量求和模塊

            

           

            最終輸出信號為:y=x(n)*x(n)+x(n+1)*x(n+1);

            (7)累加電路模塊

            我們將能量計算模塊計算出的能量值通入一個長度為n的FIFO結(jié)構(gòu),每當FIFO結(jié)構(gòu)中有一個數(shù)據(jù)量發(fā)生變化時,累加器都要進行計算更新,這樣就做到了實時監(jiān)測該通道的頻譜占用情況。在累加器當中,為了計算速度足夠的快,可以滿足實時性要求,我們往往設(shè)計為流水線結(jié)構(gòu)。如下圖所示:以流水線結(jié)構(gòu)實現(xiàn)的累加器

            

          fpga相關(guān)文章:fpga是什么



          上一頁 1 2 下一頁

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