1. 程式人生 > >關於有限脈衝響應濾波器

關於有限脈衝響應濾波器

數字濾波器通常用於修正或者改變時域或頻域中訊號的特性。最為普通的數字濾波器就是線性時不變LTI濾波器。

有限脈衝響應FIR濾波器是一種LTI濾波器。N階的FIR濾波器的輸出對應於輸入時間序列xn的關係形式如下:

hk為濾波器係數。

y0 = h0*x0

y1 = h0*x1 + h1*x0

y2 =h0*x2 + h1*x1 + h2*x0

.................................................

公式展開如上,可使用之前介紹的分散式演算法實現FIR濾波器。

FIR濾波器有多種實現形式:

等波紋

最小二乘法

窗函式等

等波紋設計法:

如上圖,FIR等波紋低通濾波器濾波器,matlab下的引數設計,通過matlab的fadtool,可以得到濾波器的係數,從而實現最終的FIR濾波器設計。

Response Type:選擇FIR濾波器的型別:低通、高通、帶通和帶阻等。在DDC/DUC模組設計中,抽取和內插需要使用Halfband Lowpass型別,而channel filter需要使用Raised-cosine型別。

Design Method:FIR濾波器設計方法有多種,最常用的是窗函式設計法(Window)、等波紋設計法(Equiripple)和最小二乘法(Least-Squares)等。其中窗函式設計法在學校課堂中是重點講解的,提到FIR濾波器肯定會想到hamming、kaiser窗,但是實際應用中卻很少使用,因為如果採用窗函式設計法,達到所期望的頻率響應,與其它方法相比往往階數會更多;而且窗函式設計法一般只參照通頻帶wp、抑制頻帶ws和理想增益來設計濾波器,但是實際應用中通頻帶和抑制帶的波紋也是需要考慮的,那在這種情況下,採用等波紋設計法就非常適用了。

Filter Order:設定濾波器的階數,這個選項直接影響濾波器的效能,階數越高,效能越好,但是相應在FPGA實現耗用的資源需要增多。在這個設定中提供2個選項:Specify order和Minimum order,Specify order是工程師自己確定濾波器的階數,Minimum order是讓工具自動確定達到期望的頻率相應所需要的最小階數,因此具體選擇哪個選項得視實際情況而定了。

density factor:這個引數控制了頻率網的密度。提高這個引數的值可以使設計出的濾波器更加接近理想的頻率響應,但這樣會增加濾波的計算量。因為濾波器設計要求頻率網上每個頻點都要滿足理想濾波器的指標規格,頻率網越密,設計出的濾波器公式越複雜。

Frequency Specification:設定頻率響應的引數,包括取樣頻率Fs、通帶頻率Fpass和阻帶頻率Fstop。

magnitude specifications:定義幅值衰減,單位是db,分貝。Apass表示通帶衰減,Astop表示阻帶衰減。Apass/Astop = 20*log10(輸出/輸入)。

用等波紋最佳逼近法設計的濾波器,其通帶和阻帶均為等波紋特性,且通帶最大衰減和阻帶最小衰減可以分別控制,所以其指標均勻分佈,沒有資源浪費,所以階數低得多。

版權所有權歸卿萃科技 杭州FPGA事業部,轉載請註明出處

作者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA極客空間 微信公眾號

掃描二維碼關注杭州卿萃科技FPGA極客空間