基於FPGA的巴特沃茲IIR數字帶通濾波器設計

2021-01-15 電子產品世界

1.引言

本文引用地址:http://www.eepw.com.cn/article/247779.htm

數字濾波器在通信、自動控制、雷達、軍事、航空航天、醫療、家用電器等眾多領域得到了廣泛的應用。其中IIR數字濾波器和FIR數字濾波器是目前人們使用較多的兩種。數字濾波器通常採用計算機軟體、專用數字濾波器、DSP器件或可編程邏輯器件(如FPGA) 實現。因為,用FPGA實現數字濾波器具有實時性強、靈活性高、處理速度快以及小批量生產成本低等優點,所以得到了較為廣泛的應用。本文以巴特沃思數字帶通濾波器為例,較為詳細地介紹了其設計和實現方法。給定巴特沃茲數字帶通濾波器的抽樣頻率為500Hz,上、下邊帶截止頻率分別為150Hz和30Hz.

2.濾波器的系統模型

雙線性變換法是在低通濾波器的基礎上採用頻率變換法把低通濾波器轉換成所需要濾波器的。據此方法,我們得到如下濾波器的系統模型:

 

 

3.Matlab仿真

針對式(1)所描述的系統模型,利用Matlab軟體工具箱函數freqz(b,a,N,Fs)繪製出其幅頻特性和相頻特性,以檢驗參數的正確性。該濾波器的幅相頻率特性如圖1所示。

 

 

由圖1可見,系統的上、下邊帶分別為150Hz和30Hz,滿足系統設計要求。

4.FPGA設計

4.1 濾波器的結構

同一系統函數的IIR濾波器可以用不同的結構來實現,如直接I型、直接II型(典範型)、級聯型和並聯型。不同的結構有不同的特點,為便於硬體實現及容易確定數據位數,本文選用直接I型這一結構形式。

系統的直接I型結構如圖2所示。

 

 

4.2 FPGA主要模塊

(1)D觸發器模塊

使用D觸發器來實現圖2中所需的延時功能。每當時鐘上升沿到來時,便對輸入的數據進行鎖存。D觸發器可以利用Quartus II軟體中LPM宏模塊定製實現。

(2)乘累加模塊

由式(1)所描述的濾波器的系統模型,可得所對應的差分方程如下:

 

 

乘累加模塊承擔式(2)中乘累加的計算工作。

5.系統框圖及實驗波形圖

利用數字濾波器實現模擬信號濾波的系統結構框圖如圖3所示。

模擬輸入信號經A/D轉換器轉換為數位訊號,用FPGA數字濾波器進行濾波處理,再經D/A轉換器轉換為模擬輸出信號,完成模擬信號的濾波處理。FPGA晶片採用的是Cyclone II系列EP2C5T144C8型FPGA.A/D和D/A轉換器採用的康芯高速ADC/DAC模塊。

輸入峰峰值為5V的正弦信號,周期分別為10Hz、100Hz和200Hz,經濾波系統處理後所得輸出信號波形分別如圖4、5、6所示,輸出信號幅度分別為400mV、2.32V、1.2V.

 

 

6.結語

本方案利用FPGA實現了巴特沃茲IIR數字帶通濾波器,並給出較為詳細的方案設計過程。實驗結果證明了所設計的濾波器完全滿足預定設計要求,從而也證實了本方案的有效性、可行性。

濾波器相關文章:濾波器原理

fpga相關文章:fpga是什麼

濾波器相關文章:濾波器原理

低通濾波器相關文章:低通濾波器原理

電源濾波器相關文章:電源濾波器原理

數字濾波器相關文章:數字濾波器原理

相關焦點

  • 基於Matlab的IIR數字濾波器設計
    基於Matlab的IIR數字濾波器設計 佚名 發表於 2010-08-14 10:52:23   0 引言  數字濾波器(Digital Filter)是指輸入、輸出都是離散時間信號,通過一定運算關係改變輸入信號所含頻率成分的相對比例或者濾除某些頻率成分的器件
  • IIR數字濾波器的Matlab和FPGA實現
    摘要:提出一種通過兩個二階節級聯構成四階IIR數字橢圓濾波器的設計方法,並利用Matlab仿真軟體設計了通帶內波紋不大於0.1 dB,阻帶衰減不小於42 dB的IIR數字濾波器。論述了一種採用可編程邏輯器件,通過VHDL硬體描述語言實現該濾波器的方法。
  • 基於FPGA+MATLAB的串行多階FIR濾波器設計
    摘要 FIR濾波器的設計分為濾波器係數計算和濾波器結構的具體兩個部分。本文引用地址:http://www.eepw.com.cn/article/236081.htm關鍵詞 FPGA;FIR數字濾波器;Matlab;仿真數字濾波器是用於過濾時間離散信號的數字系統,通過對抽樣數據進行數學處理達到頻域濾波的目的。
  • 一種改進型的FIR數字濾波器設計
    1 fir數字濾波器設計的基本步驟 數字濾波器根據其衝激響應函數的時域特性,可分為2種,即無限長衝激響應(iir)濾波器和有限長衝激響應(fir)濾波器。fir系統不像iir系統那樣易取得較好的通帶和阻帶衰減特性,要取得較好的衰減特性,一般要求h(z)階次要高,也即m要大。
  • 採用FPGA實現多種類型的數位訊號處理濾波器
    另外,採用FPGA 設計的數字濾波器可以避免模擬設計中存在的某些問題,特別是組件漂移和容差(在高可靠應用中,由溫度過高、老化和輻射問題造成)。這些模擬問題會顯著降低濾波器的性能,特別是在通帶紋波等方面。本文引用地址:http://www.eepw.com.cn/article/189564.htm當然, 數字模型也有自身的缺陷。
  • matlab濾波器設計-IIR濾波器的設計與仿真
    1 引言 在現代通信系統中,由於信號中經常混有各種複雜成分,所以很多信號的處理和分析都是基於濾波器而進行的。但是,傳統的數字濾波器的設計使用繁瑣的公式計算,改變參數後需要重新計算,從而在設計濾波器尤其是高階濾波器時工作量很大。
  • 低通模擬濾波器的設計方案
    如果ADC的輸入信號超出轉換器採樣頻率的一半,則該信號的大小被可靠地轉換;但是,在其變回數字輸出時,頻率也發生改變。本文引用地址:http://www.eepw.com.cn/article/201710/367158.htm  利用TI的WEBENCH 濾波器設計器軟體,可以高效地設計出低通、高通、帶通或者帶阻濾波器。
  • ADI集成帶通濾波器的高中頻採樣接收機前端
    電路功能與優勢圖1中的電路是基於 ADL5565 超低噪聲差分放大器驅動器和 AD9642 14位、250 MSPS模數轉換器(ADC)的窄帶通接收機前端。三階巴特沃茲抗混疊濾波器基於放大器和ADC的性能和接口要求而優化。濾波器網絡和其它組件引起的總插入損耗僅有5.8 dB。
  • 基於FPGA的高效FIR濾波器設計與實現
    摘要: 給出了一種基於FPGA的數字濾波器的設計方法。該方法先通過MATLAB設計出一個具有具體指標的FIR濾波器, 再對濾波器係數進行處理, 使之便於在FPGA中實現, 然後採用基於分布式算法和CSD編碼的濾波器結構進行設計, 從而避免了乘法運算, 節約了硬體資源,其流水線的設計方式也提高了運行速度。Matlab和Modelsim仿真表明, 該設計功能正確, 能實現快速濾波。
  • 帶通濾波器設計
    帶通濾波器的原理與設計都是很簡單的,下面就和小編一起學習一下帶通濾波器的設計吧~~~~本文引用地址:http://www.eepw.com.cn/article/269403.htm  帶通濾波器(band-pass filter)是指能通過某一頻率範圍內的頻率分量、但將其他範圍的頻率分量衰減到極低水平的濾波器,比如RLC振蕩迴路就是一個模擬帶通濾波器
  • 基於Matlab的FIR數字濾波器設計方案
    本文先介紹FIR數字濾波器的相關概念,並利用MATLAB中的FDA TOOL工具箱和Simulink工具進行FIR帶通數字濾波器的設計,給出了基於Matlab的FIR數字濾波器設計方案。
  • 基於FPGA高階FIR濾波器的實現
    數字濾波器的硬體實現方法主要有:DSP、專用晶片和FPGA。用DSP實現濾波器,其程序順序執行,因此運算速度隨濾波器階數的增加迅速下降;專用晶片實現的濾波器功能相對單一,靈活性小;而FPGA具有靈活的可編程邏輯和並行處理等優點,可很好地實現信號處理的實時性,同時,開發程序的可移植性好,可以縮短開發周期,因此FPGA實現數字濾波器的設計越來越受到重視和廣泛應用,本文數字濾波器的設計就是基於FPGA硬體實現。
  • 基於DSP和FPGA的機器人聲控系統設計與實現
    本文引用地址:http://www.eepw.com.cn/article/21345.htm 本次設計採用了性價比較高的數位訊號處理晶片tms320vc5509作為語音識別處理器,具有較快的處理速度,使機器人在脫機狀態下,獨立完成複雜的語音信號處理和動作指令控制,fpga系統的開發降低了時序控制電路和邏輯電路在pcb板所佔的面積[1],使機器人的"大腦"的語音處理部分微型化、低功耗。
  • 基於模擬退火神經網絡的I型FIR數字濾波器設計
    摘要:提出一種基於模擬退火神經網絡設計FIR數字濾波器的方法,是對用神經網絡設計方法的一種改進。由於線性相位FIR數字濾波器的幅頻特性是有限項的傅立葉級數,因此構造了一個三層餘弦基神經網絡模型,並用模擬退火算法進行了優化,然後給出了高階濾波器優化設計的實例。仿真表明經優化設計後的濾波器具有更好的性能和更穩定的效果。
  • 廣播百科 帶通濾波器
    比如RLC振蕩迴路就是一個模擬帶通濾波器。帶通濾波器是指能通過某一頻率範圍內的頻率分量、但將其他範圍的頻率分量衰減到極低水平的濾波器,與帶阻濾波器的概念相對。 帶通濾波器(Band-pass filter),帶內信號通過,帶外信號濾除。帶通濾波器是指能通過某一頻率範圍內的頻率分量、但將其他範圍的頻率分量衰減到極低水平的濾波器,與帶阻濾波器的概念相對。
  • 基於Spartan-6 FPGA的Sinc3 Filter設計
    Sinc3濾波器的基本原理本文引用地址:http://www.eepw.com.cn/article/129009.htm  Σ-Δ ADC利用過採樣的方法將量化噪聲搬移到高頻段,後端再使用數字抽取濾波器將高頻噪聲濾除
  • 基於OTA的有源Gm-C複數帶通濾波器的設計
    本文設計了一個帶寬為1 MHz、30 dB阻帶起始頻率為3 MHz的橢圓函數低通濾波器,通帶波紋為0.5 dB,並且要求濾波器具有一定的增益。通過ADS(advanced design system)所提供的濾波器設計功能,得到如圖2所示的低通原型濾波器。
  • 基於FPGA的實時中值濾波器硬體實現
    文獻[7]為了提高紅外成像跟蹤器設計了大窗口的中值濾波器。文獻[3]、[4]提出了鄰域圖像幀存的存儲結構,該結構充分利用了圖像幀存的數據結構轉換特性,並行高速提供鄰域圖像數據,配以FPGA作為並行處理器,高速實時地實現了中值濾波。但是以上研究都是基於標清圖像的中值濾波器,處理的圖像大小一般為256×256、512×512的灰度圖等,很少有實現高清圖像的中值濾波器。
  • 基於MATLAB用於諧波檢測的數字低通濾波器的設計
    本文利用MATLAB中的FDAtool實現了對數字低通濾波器模型的快速設計,並採用VHDL語言在FPGA上實現。本文引用地址:http://www.eepw.com.cn/article/188321.htm1 低通濾波器的選擇 濾波器有模擬濾波器和數字濾波器兩種。
  • 基於諧波檢測中的數字低通濾波器的MATLAB設計
    而諧波及無功電流的檢測實質就是低通濾波器的設計。本文利用MATLAB中的FDAtool實現了對數字低通濾波器模型的快速設計,並採用VHDL語言在FPGA上實現。  1 低通濾波器的選擇  濾波器有模擬濾波器和數字濾波器兩種。