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

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > 基于Matlab和FPGA的FIR數(shù)字濾波器設計及實現(xiàn)

          基于Matlab和FPGA的FIR數(shù)字濾波器設計及實現(xiàn)

          作者: 時間:2009-03-31 來源:網(wǎng)絡 收藏

          摘要:基于濾波器的原理和層次化、模塊化設計思想,結(jié)合Altera公司的CycloneII系列芯片,提出了濾波器的實現(xiàn)硬件方案,給出了采用、QuartusⅡ設計及實現(xiàn)32階低通濾波器的方法步驟,仿真及實際測試結(jié)果驗證了設計方案的正確性,與傳統(tǒng)的濾波器相比,本文設計的FIR數(shù)字濾波器具有更好的實時性、靈活性和實用性。
          關(guān)鍵詞:FIR數(shù)字濾波器;;Verilog HDL;

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


          1 引 言
          FIR數(shù)字濾波器以其良好的線性特性被廣泛應用于現(xiàn)代電子通信系統(tǒng)中,是數(shù)字信號處理的重要內(nèi)容之一。在實際信號處理中,往往要求系統(tǒng)兼具實時性和靈活性,而已有的一些軟件或硬件實現(xiàn)方案(如DSP)則難以同時達到這兩方面的要求。使用具有并行處理特性的來實現(xiàn)FIR濾波器,既有很強的實時性,又兼顧了靈活性,為數(shù)字信號處理提供了一種很好的解決方案。FIR濾波器系數(shù)計算較為繁瑣,在設計時借助工具箱,選擇合適的窗函數(shù),可以方便地計算濾波器系數(shù),并分析其幅頻、相頻特性。
          本文在用FPGA設計FIR濾波器時,采用了層次化、模塊化的設計思想,將整個濾波器劃分為若干功能模塊,運用Verilog HDL語言和原理圖兩種設計輸入方式,各個模塊先獨立設計,驗證無誤后再互聯(lián)綜合,完成了FIR數(shù)字濾波器的系統(tǒng)設計及仿真測試。


          2 FIR濾波器基本原理及結(jié)構(gòu)
          FIR數(shù)字濾波器的沖擊響應h(n)為實序列時,頻率響應:

          若要求線性相位,則需:


          因而h(n)如果滿足對稱或反對稱的條件,就具有線性相位特性,即:


          數(shù)字濾波器結(jié)構(gòu)有很多種,偶對稱FIR濾波器的直接型結(jié)構(gòu)如圖1所示。

          其中x(n),y(n)分別為輸入輸出時間序列。容易得到32階偶對稱FIR濾波器的輸入輸出關(guān)系,如式(4)所示:


          根據(jù)以上分析,可以把對稱結(jié)構(gòu)的FIR數(shù)字濾波器分成“移位相加單元、乘法器、輸出相加及截位輸出”四塊,如圖2所示。

          對于長度為2M的濾波器,其運算次數(shù)只有M量級,減少了乘法次數(shù),也提高了運算速度。在用FPGA實現(xiàn)時可以節(jié)約不少資源。


          3 用Matlab設計FIR數(shù)宇濾波器
          具有對稱結(jié)構(gòu)的直接型FIR濾波器結(jié)構(gòu)如圖1所示,用加窗的設計方法,經(jīng)比較后窗函數(shù)選用海明窗。根據(jù)實際指標要求在Matlab的“Filter Design”工具里設置各參數(shù),然后算得系數(shù)h(n),如圖3所示,得到的系數(shù)是用十進制表示的,需要將其轉(zhuǎn)換成系統(tǒng)要求精度(如18位)的定點二進制小數(shù)。把所有系數(shù)乘以218后再四舍五入即可,最終數(shù)據(jù)如表1所示。

          4 濾波器的FPGA實現(xiàn)及仿真測試
          按照圖l、圖2和濾波器系數(shù)表1,用Verilog HDL分別實現(xiàn)濾波器的各個模塊,仿真無誤后生成單元模塊圖,然后在QuartusⅡ里調(diào)用該模塊,互聯(lián)后綜合得到系統(tǒng)電路圖,各功能模塊的設計方法如下。
          4.1 移位及首尾相加單元
          把輸入數(shù)據(jù)存儲到移位寄存器,利用FIR濾波器的對稱性,把移位后的數(shù)據(jù)首尾相加即可。加法器輸出端要加個寄存器模塊,以去除毛刺。另外為防止相加后數(shù)據(jù)溢出,要把數(shù)據(jù)位數(shù)擴寬到14+1位。其中D_in[13..O]是二進制補碼輸入,D out XX[14..O]是移位相加后數(shù)據(jù)輸出。Vexrilog HDL程序關(guān)鍵語句為:


          移位相加單元模塊圖如圖4所示。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: Matlab FPGA FIR 數(shù)字

          評論


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