国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

IIR數字濾波器的FPGA實現

發布時間:2010-6-9 16:06    發布者:vinda
關鍵詞: FPGA , IIR , 數字濾波器
IIR數字濾波器的結構  

任意階的IIR濾波器可通過數學分解,表示為:
  

  
其中為如下的二階形式:
  

  
這樣就可以將任意階的IIR濾波器通過若干二階網絡(也稱為濾波器的二階基本節)級聯起來構成,其結構如圖1所示。其中,代表第i級的二階網絡。
  

  
對于每一個二階基本節,可以轉置直接II型結構加以實現,如圖2所示。


  
采用這種級聯結構實現IIR濾波器的優點是每一個基本節只是關系到濾波器的某一對極點和一對零點,調整系數a0i、a1i、a2i,只單獨地調整了濾波器第i對零點而不影響其他任何零、極點。同樣,調整b1i、b2i系數、也只單獨調整了第i對極點。因此,這種結構便于準確地實現濾波器的零、極點,也便于調整濾波器的頻率響應性能。這種結構的另一個優點是存儲單元需要較少,在硬件實現時,可以用一個二階節進行時分復用,從而降低對FPGA硬件資源的要求。

IIR數字濾波器的設計
  
利用MATLAB信號處理工具箱中的濾波器設計和分析工具(FDATool)可以很方便地設計出符合應用要求的未經量化的IIR濾波器。需要將MATLAB設計出的IIR濾波器進一步分解和量化,從而獲得可用FPGA實現的濾波器系數。

由于采用了級聯結構,因此如何將濾波器的每一個極點和零點相組合,從而使得數字濾波器輸出所含的噪聲最小是個十分關鍵的問題。為了產生最優的量化后的IIR數字濾波器,采用如下步驟進行設計。
  
(1)首先計算整體傳遞函數的零極點;
  
(2)選取具有最大幅度的極點以及距離它最近的零點,使用它們組成一個二階基本節的傳遞函數;
  
(3)對于剩下的極點和零點采用與(2)相類似的步驟,直至形成所有的二階基本節。

通過上面三步法進行的設計可以保證IIR數字濾波器中N位乘法器產生的量化舍入誤差最小。

為了設計出可用FPGA實現的數字濾波器,需要對上一步分解獲得的二階基本節的濾波器系數進行量化,即用一個固定的字長加以表示。量化過程中由于存在不同程度的量化誤差,由此會導致濾波器的頻率響應出現偏差,嚴重時會使IIR濾波器的極點移到單位圓之外,系統因而失去穩定性。為了獲得最優的濾波器系數,采用以下步驟進行量化。

(1)計算每個系數的絕對值;
(2)查找出每個系數絕對值中的最大值;
(3)計算比此絕對值大的最小整數;
(4)對(3)的結果取反獲得負整數;
(5)計算需要表示此整數的最小位數;
(6)計算用于表示系數值分數部分的余下位數。

除了系數存在量化誤差,數字濾波器運算過程中有限字長效應也會造成誤差,因此對濾波器中乘法器、加法器及寄存器的數據寬度要也進行合理的設計,以防止產生極限環現象和溢出振蕩。

IIR數字濾波器的VHDL描述
  
由上一節設計出來的IIR數字濾波器可以進一步用VHDL語言加以描述,通過編譯、功能仿真、綜合和時序仿真之后就可以在FPGA上實現了。由于采用了級聯結構,每一個二階基本節的VHDL描述都是類似的,只是濾波器的系數有所不同,下面著重討論二階基本節的VHDL描述。

采用VHDL描述的二階基本節的頂層結構如圖3所示。數據在執行單元內進行處理。執行單元內部包含算術和邏輯單元以及一些寄存器;算術和邏輯單元主要由串行乘法器和累加器組成;存儲器包括工作RAM和系數ROM兩部分,分別用于存放計算的中間結果和濾波器的系數;存儲器和執行單元通過內部總線相連接;控制模塊包括程序ROM和程序控制單元,程序ROM中存放有濾波算法的程序,程序控制單元用于解釋指令并為數據處理模塊產生控制信號。


  
此結構既可以接收串行輸入的數據,也可以接收并行輸入的數據,通過SEL進行設置。外部CPU可以通過READ信號來訪問濾波器的計算結果,另外,外部CPU也可以通過地址總線A[3:0]對內部的存儲器進行訪問,用WRITE信號對濾波器系數進行寫操作,這樣外部CPU就可以根據自己的需要對濾波器進行配置,靈活地實現各種功能。

各信號的含義如下。
  CLK:系統時鐘;
  RES:異步全局復位信號,低有效;
  SDATA:串行輸入數據;
  PDATA:并行輸入數據;
  SEL:設置輸入數據為并行還是串行;
  READ:讀信號,低有效;
  WRITE:寫信號,低有效;
  SRES:同步復位信號,高有效;
  CLKI:外部CPU時鐘;
  A[3:0]:外部CPU訪問內部寄存器的地址總線;
  OUT:輸出數據。

內部算術與邏輯單元是整個濾波器的核心,它的結構如圖4所示。計算過程是,X、Y為輸入數據,通過選擇器進入乘法器,算術與邏輯單元從系數ROM中讀取濾波器的系數用以輸入數據相乘,相乘的結果與前一步的結果相加進入累加器,累加器讀取上一步計算的中間結果A并計算,最后將此步計算的結果M存入到RAM中去。



結語
  
本文介紹了一種采用級聯結構在FPGA上實現IIR數字濾波器的方法。在實際使用中,可以根據不同精度要求,方便地對該IIR濾波器進行修改以滿足不同的指標要求,靈活地組成任意階不同類型的濾波器。同時,在系統運行中,外部CPU可以靈活修改濾波器系數,改變濾波器的頻率響應,滿足特定的應用要求。
本文地址:http://m.qingdxww.cn/thread-12486-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 了解一下Microchip強大的PIC18-Q24 MCU系列
  • 5分鐘詳解定時器/計數器E和波形擴展!
  • 為何選擇集成電平轉換?
  • 想要避免發生災難,就用MPLAB® SiC電源仿真器!
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 黄页视频在线观看免费 | 国产福利在线高清导航大全 | 一区二区国产在线观看 | 亚洲天堂免费在线 | 99精品国产高清一区二区麻豆 | 日日夜夜爱爱 | 国产免费av片在线观看 | 亚洲欧美自拍一区 | 91精品久久久久久久久中文字幕 | 四虎精品成人免费视频 | 国产黄色片网站 | 九九视频在线 | 97在线观看 | 日韩一区二区不卡 | 麻豆久久精品 | 青青久久国产成人免费网站 | 国产网站免费 | 欧美大片日韩精品四虎影视 | 日韩成人免费在线视频 | 夜色321| 欧美成人免费 | 91热久久免费频精品动漫99 | 亚洲欧美第一页 | 狠狠操网| 一级aaaaaa片毛片在线播放 | 亚洲欧美一区二区久久香蕉 | 国产特黄a级在线视频 | 成人在线看片 | 永久免费看黄在线播放 | 色综合合久久天天综合绕视看 | 国产自线一二三四2021 | 亚洲福利视频一区二区三区 | 久久精品亚洲一区二区三区浴池 | 国产精品免费观看 | 亚洲精品国产三级在线观看 | 在线免费观看黄页 | 91大神在线观看精品一区 | 精品在线观看免费 | 成年美女黄网站色大片图片 | 日本视频免费在线 | 麻豆传煤入口麻豆公司传媒 |