天天看點

FIR濾波器和IIR濾波器的差別與聯系

1.根據沖激響應的不同,将數字濾波器分為有限沖激響應(FIR)濾波器和無限沖激響應(IIR)濾波器。對于FIR濾波器,沖激響應在有限時間内衰減為零,其輸出僅取決于目前和過去的輸入信号值。對于IIR濾波器,沖激響應理論上應會無限持續,其輸出不僅取決于目前和過去的輸入信号值,也取決于過去的信号輸出值。

2.FIR和IIR

FIR濾波器

  定義:

  FIR濾波器是有限長機關沖激響應濾波器,又稱為非遞歸型濾波器,是數字信号處理系統中最基本的元件,它可以在保證任意幅頻特性的同時具有嚴格的線性相頻特性,同時其機關抽樣響應是有限長的,因而濾波器是穩定的系統。

  特點:

  •    FIR濾波器的最主要的特點是沒有回報回路,穩定性強,故不存在不穩定的問題;
  •    FIR具有嚴格的線性相位,幅度特性随意設定的同時,保證精确的線性相位;
  •    FIR設計方式是線性的,硬體容易實作;
  •    FIR相對IIR濾波器而言,相同性能名額時,階次較高,對CPU的性能要求較高。
  • FIR濾波器和IIR濾波器的差別與聯系

IIR濾波器

  定義:

  IIR濾波器是無限脈沖響應濾波器,又稱遞歸型濾波器,即結構上帶有回報環路。

  特點:

  •    IIR數字濾波器的系統函數可以寫成封閉函數的形式,具有回報回路;
  •    IIR數字濾波器的相位非線性,相位特性不好控制,随截止頻率變化而變化,對相位要求較高時,需加相位校準網絡;
  •    IIR濾波器有曆史的輸出參與回報,同FIR相比在相同階數時取得更好的濾波效果;
  •    IIR數字濾波器采用遞歸型結構,由于運算中的舍入處理,使誤差不斷累積,有時會産生微弱的寄生振蕩。
FIR濾波器和IIR濾波器的差別與聯系

差別

  •    穩定性:由于FIR濾波器沒有回報回路,穩定性要強于IIR;
  •    相位特性:FIR 為線性相位延遲,IIR 為非線性相位延遲。

               信号處理速度:FIR的濾波輸出取決于目前輸入資料和曆史輸入資料,IIR的濾波輸出取決于目前輸入資料、曆史輸入資料和曆史輸出資料。以基于FPGA硬體的數字濾波器為例,FIR在處理信号時不需等待前一個信号的濾波輸出,隻需要考慮輸入資料便可實時濾波;IIR需要等待上一個信号的濾波輸出,存在一定的時間延遲,是以處理速度上沒有FIR快。

FIR濾波器和IIR濾波器的差別與聯系

從上面的簡單比較可以看到IIR與FIR濾波器各有所長,是以在實際應用時應該從多方面考慮來加以選擇。從使用要求上來看,在對相位要求不敏感的場合,如語言通信等,選用IIR較為合适,這樣可以充分發揮其經濟高效的特點;對于圖像信号處理,資料傳輸等以波形攜帶資訊的系統,則對線性相位要求較高,采用FIR濾波器較好。當然,在實際應用中可能還要考慮更多方面的因素。

3.例子-低通濾波器的設計

FIR的設計:

FIR濾波器的設計比較簡單,就是要設計一個數字濾波器去逼近一個理想的低通濾波器。通常這個理想的低通濾波器在頻域上是一個矩形窗。根據傅裡葉變換我們可以知道,此函數在時域上是一個采樣函數。通常此函數的表達式為: 

sa(n)=sin(n∩)/n∏,但是這個采樣序列是無限的,計算機是無法對它進行計算的。故我們需要對此采樣函數進行截斷處理,也就是加一個窗函數。也就是把這個時域采樣序列去乘一個窗函數,就把這個無限的時域采樣序列截成了有限個序列值。但是加窗後對此采樣序列的頻域也産生了影響:此時的頻域便不在是一個理想的矩形窗,而是成了一個有過渡帶,阻帶有波動的低通濾波器。通常根據所加的窗函數的不同,對采樣信号加窗後,在頻域所得的低通濾波器的阻帶衰減也不同。通常我們就是根據此阻帶衰減去選擇一個合适的窗函數。如矩形窗、漢甯窗、漢明窗、BLACKMAN窗、凱撒窗等。選擇一個具體的窗函數之後,根據所設計濾波器的參數來計算所需的階數、此窗函數的表達式。然後用這個窗函數去和采樣序列相乘,就可以得到實際濾波器的脈沖響應。

IIR的設計(雙線性變換法):

IIR的設計理念是這樣的:根據所要設計濾波器的參數去确定一個模拟濾波器的傳輸函數,然後再根據這個傳輸函數,通過雙線性變換、或脈沖響應不變法來進行數字濾波器的設計。它的設計比較複雜,複雜在于它的模拟濾波器傳輸函數H(s)的确定。這一點我們可以讓軟體來實作。然後,我們說一下它的具體實作步驟:首先你要先确定你需要一個什麼樣的濾波器,巴特沃斯型,切比雪夫型,還是其它什麼型的濾波器。當你標明一個型号後,你就可以根據設計參數和這個濾波器的計算公式來确定其階數、傳輸函數的表達式。通常這個過程中還存在預扭曲的問題(這隻是雙線性變換法所需要注意的問題,脈沖響應不變法不存在這種問題)。确定H(S)後,就可以通過雙線性變換得到其數字域的差分方程。