【轉載】FIR 線性相位系統 最小相位系統 濾波器延遲
2.1 線性相位
2.1.1 FIR濾波器和線性相位之間有什麼關係?
大多數的FIR濾波器是線性相位濾波器. 當需要設計線性相位濾波器時, 通常使用FIR濾波器.
2.1.2 什麼是線性相位濾波器?
線性相位是指濾波器的相位響應是頻率的線性函數(在+/-180度)。因此濾波器的延時後,所有的頻率相位相同。因而濾波器不會產生相位和延遲扭曲。在某些領域,比如數字解調器,沒有相位或者延遲扭曲是FIR濾波器相對於其他IIR和模擬濾波器的一個關鍵優點
2.1.3 線性濾波器的條件是什麼?
FIR濾波器經常被設計成為線性相位的,當然不是必須要這麼做。如果濾波器的係數是關於中心係數對稱的,也就是說第一個係數和最後一個係數相同,第二個係數和倒數第二個相同,那麼FIR濾波器就是線性的。有奇數個係數的FIR濾波器,中心單獨的係數沒有對應的。
2.1.4 什麼是線性相位FIR濾波器的延時?
非常簡單的公式: 給定FIR濾波器有N個抽頭,那麼延時是(N - 1) / (2 * Fs), 這裡Fs是取樣頻率. 比如, 21抽頭的線性相位濾波器運行在1kHz, 那麼延時就是(21 - 1) / (2 * 1 kHz)=10 微秒.
2.1.4 除了線性相位,還可以選擇什麼?
當然是非線性的了。實際上,最流行的選擇是最小相位濾波器。最小相位濾波器,也叫最小延時濾波器,比線性相位濾波器具有更少的延時,當兩者的幅度響應相同時以非線性相位特性。
低通濾波器在它的衝擊響應中心有最大的係數。而最小相位濾波器的最大係數在開始部分。
2.2 頻率響應
2.2.1 什麼是FIR濾波器的Z變換r?
對於N抽頭的濾波器, 係數為h(k), 那麼輸出由:
y(n)=h(0)x(n) + h(1)x(n-1) + h(2)x(n-2) + ... h(N-1)x(n-N-1),
濾波器的z變換就是:
H(z)=h(0)z-0 + h(1)z-1 + h(2)z-2 + ... h(N-1)z-(N-1) ,
2.2.2 FIR濾波器的頻率響應公式是什麼r?
H(z)中的變數z為連續的複數變數,可以描述為 z=r·ejw,這裡r是幅度,w是z的角度。如果令r=1,H(z)就變成了濾波器頻率響應H(jw)。這也就意味著替代z為ejw,得到了濾波器頻率響應H(w)。
H(jw)=h(0)e-j0w + h(1)e-j1w + h(2)e-j2w + ... h(N-1)e-j(N-1)w , or
使用歐拉公式, e-ja=cos(a) - jsin(a), 我們可以把H(jw)寫成矩形表示:
H(jw)=h(0)[cos(0w) - jsin(0w)] + h(1)[cos(1w) - jsin(1w)] + ... h(N-1)[cos((N-1)w) - jsin((N-1)w)] ,
2.2.3 能用離散傅立葉變換(DFT)來計算FIR的頻率響應么?
可以。對於N抽頭的FIR,可以得到N evenly-spaced points of the frequency response by doing a DFT on the filter coefficients.但是,為了得到任意頻率的頻率響應,需要使用上邊的公式。
2.2.4 FIR濾波器的DC增益指的是什麼?
DC(0 Hz)輸入訊號包含每個取樣都為1.0。通過延時線後,輸出是所有係數的和。因而,在DC處濾波器的增益就是所有係數之和。
2.2.5 如何調整FIR濾波器的增益?
簡單地在係數上乘上因子.
2.3 數字性質
2.3.1 FIR濾波器是固有穩定的?
是的,因為沒有回饋,任何有限的輸入產生有限的輸出。
2.3.2 什麼使FIR濾波器的數字性質變好?
缺少回饋是關鍵。在電腦中實現FIR濾波器時,每個計算都產生數字錯誤。由於FIR濾波器沒有回饋,因此不能夠記住以前的錯誤。相反,IIR濾波器的回饋可能導致錯誤的積累。 .
這個實際的影響就是,可以用更少的bit去實現與IIR濾波器相同精度的濾波器。比如,FIR濾波器通常用16位來實現的話,IIR濾波器就通常需要32位,或者更多。
2.4 為什麼通常在多取樣率系統中採用FIR濾波器而不採用IIR濾波器?
因為只有一小部分的計算需要用減取樣或者插值濾波器來實現。
由於FIR濾波器不使用回饋,因而只有那些實際需要使用的輸出才需要計算。比如,在減取樣的時候(N個輸出中只有一個有效),那麼其他的N-1輸出就不會進行計算。類似的,對於插值濾波器(在取樣點中插入0來提高取樣率),你不必實際地用FIR濾波器乘以係數,求和得到,你只需要忽略和這些值有關的乘加(因為它們不會改變結果)。
相反,因為IIR濾波器使用回饋,每個輸入都必須使用,每個輸入必須計算,因為所有的輸入和輸出對濾波器的回饋都有影響。
2.5 有哪些特殊的FIR濾波器?
Aside from "regular" and "extra crispy" there are:
* 矩形 -矩形 FIR 濾波器是每個係數都是1.0的簡單的濾波器。因而對於N個抽頭的矩形濾波器,它的輸出僅僅是過去N個取樣之和。由於矩形FIR只能實現加法,因此當乘法器實現比較昂貴時,在硬體實現中會考慮。 * 希爾伯特變換(Hilbert Transformer) - 希爾伯特變換是把訊號相移90度。它們經常被用在,給定實數部分,產生虛數部分。
* 差分(Differentiator) -差分器的幅度響應是頻率的線性函數。現在已經不流行了,但是以前曾經在FM解調器上使用過。
* Lth-Band - 也叫做「Nyquist"濾波器,這些濾波器是在多速率應用中特殊的一類濾波器。主要的賣點是,每L個係數有一個為0,那麼就將減少乘累加操作的實現(著名的半帶濾波器就是這一種)。
* Raised-Cosine - 這是一種特殊類型的濾波器,有時會用在數字數據應用方面。(通帶上的頻率響應是被上移一個常數的cos形狀)。

