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

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > 線性調(diào)頻信號基于FPGA IP核的脈沖壓縮設計

          線性調(diào)頻信號基于FPGA IP核的脈沖壓縮設計

          作者: 時間:2011-06-28 來源:網(wǎng)絡 收藏

          2.2.1 FFT運算
          對于長度為N的時域序列X(n)的離散傅里葉變換為X(k):
          i.JPG
          FFT算法主要是利用旋轉因子exp(-j2πnk/N)的周期性和對稱性的特點進行改進的算法,可以有效地減小運算量。Xilinx公司的FFT核利用Cooley-Tukey算法實現(xiàn)FFT/IFFT運算,最高支持216點長度的運算,可以實現(xiàn)流水線型、基4、基2三種結構,蝶形運算后可選擇對數(shù)據(jù)順序輸出還是倒序輸出,對進行不同的配置,可以實現(xiàn)資源和運算速度的最優(yōu)化。在此選用基4蝶形運算,對于1 024點數(shù)據(jù),需要5級蝶形運算。
          Xilinx公司的FFT核的參數(shù)通過GUI界面(見圖5)進行設置,可設置的參數(shù)包括FFT點數(shù),運算實施方法,輸入數(shù)據(jù)位數(shù)等,設置完畢后點擊Generate可即時生成代碼。

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

          f.JPG


          硬件描述語言采用VHDL,使用時程序中要對器件初始化并進行定義,F(xiàn)FT核的器件定義語句見圖6。

          g.JPG


          2.2.2 匹配濾波系數(shù)產(chǎn)生
          根據(jù)匹配濾波理論,對于一個確定的輸入信號,匹配濾波系數(shù)就是這個輸入信號的頻譜的復共軛,系數(shù)可以通過Matlab預先計算出來并以二進制的文件格式進行存儲。此處計算時可以進行加權處理,在系數(shù)中乘以窗函數(shù)即可。
          通過Xilinx公司的單口Block Memory核,可以把Matlab產(chǎn)生的存儲文件加載進去。當程序運行時,根據(jù)使能控制信號,把匹配濾波系數(shù)數(shù)據(jù)(1 024點)依次讀取出來,送入乘法器進行后續(xù)運算。BlockMemory核的參數(shù)設置通過GUI界面進行,可即使生成代碼。
          2.2.3 乘法運算
          乘法運算部分完成FFT后數(shù)據(jù)與匹配濾波系數(shù)數(shù)據(jù)的復數(shù)乘法運算。根據(jù)復數(shù)的乘法規(guī)則。
          (A+aj)(B+bj)=(AB-ab)+(Ab+aB)j
          兩個復數(shù)的乘法運算實際上包括了4個實數(shù)的乘法運算,因此,此部分的設計用到了4個乘法器核。Xilinx公司的乘法器核支持補碼運算,可輸入A,B兩路數(shù)據(jù),每路的輸入數(shù)據(jù)長度可達64 b。乘法器核的參數(shù)設置也是通過GUI界面進行,可即使生成代碼。



          評論


          相關推薦

          技術專區(qū)

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