通信IC -- IIR滤波器设计

IIR滤波器

IIR滤波器通常不用于音频信号处理、部分低端视频信号处理、数字中频的频带选择器中,典型的应用例子是现在手机中都用到的FM数字立体声收音芯片(FM / BT / WiFI三合一芯片)。

        典型的IIR滤波器直接型实现结构如图  3-29 所示。

IIR滤波器可以认为是由两个FIR滤波器组合而成,一个是针对输入x(n)的FIR滤波器,一个是针对输出y(n)的FIR滤波器,只是该滤波器的所有计算结果将会反馈累积到y(n)上面。

IIR滤波器的硬件实现方案

        对于IIR滤波器,通常看到的表达式如下:

H(z) = \frac{(\displaystyle z-z_{0})(z-z_{1})\cdots (z-z_{n})}{\displaystyle(z-p_{0})(z-p_{1})\cdots (z-p_{m})}

将上述表达式转换为如下形式:

   y(n) = \sum_{i=0}^{n}b_{i}x(n-i) + \sum_{i=0}^{m}a_{i}y(m-i)     

在实现IIR滤波器时,可以将分子、分母两个表达式拆分为两个FIR滤波器设计。第一个是y_{0}(n) = \sum_{i=0}^{n}b_{i}x(n-i),第二个FIR是y_{1}(n) = \sum_{i=0}^{m}a_{i}y(m-i)。将这两个滤波器的输出合并累加:

y(n) =y_{0}(n) + y_{1}(n)

        合并后的输出即为IIR滤波器输出。由于IIR滤波器的基本硬件实现与FIR滤波器非常相似,所以此处只给出几个基本实现模式,不再详细描述IIR滤波器硬件实现。

IIR滤波器的直接型实现结构

如图 3-30 与 3-31 所示

IIR滤波器Verilog举例

所实现IIR滤波器框图如  3-33 所示

`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date: 2024/10/06 22:52:19
// Design Name: 
// Module Name: IIR
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//


module IIR #( parameter  BIT_WIDTH = 16 ) (
    input clk,
    input syn_rst,
    input signed [BIT_WIDTH-1:0] filter_in,
    output signed [BIT_WIDTH-1:0] filter_out
    );

    localparam SUM_WIDTH = BIT_WIDTH + 2 ;
    reg signed [SUM_WIDTH-1:0] filter_d1;
    reg signed [SUM_WIDTH-1:0] filter_d2;
    reg signed [SUM_WIDTH-1:0]  filter_reg;
    wire signed [SUM_WIDTH-1:0]  sum_result;

    always @(posedge clk ) begin
        if (syn_rst)
            begin
                filter_d1 <= 0;
                filter_d2 <= 0;
                filter_reg <= 0; 
            end
        else
            begin
                filter_reg <= {  {2{filter_in[BIT_WIDTH]}} , filter_in} ;
                filter_d1 <= filter_reg ;
                filter_d2 <= filter_d1 ;
            end
    end

    assign sum_result = filter_reg - (filter_d2>>3) + filter_d1 - (filter_d1>>2);
    assign filter_out = sum_result[BIT_WIDTH-1:0] ;
endmodule

IIR滤波器的几个关键问题

IIR滤波器的优点

(1)高效率(结构简单、系数小、乘法操作较少,幅频特性精度很高)。

(2)可以解析控制,强制系统在指定位置为零点,从而保证该位置附近的频率响应非常低。

(3)有明确的模拟滤波器对应关系。

IIR滤波器的缺点

(1)由于输出反馈可能会破坏系统的稳定性,因此IIR滤波器设计需要考虑如何使系统保持稳定。

(2)由于IIR滤波器是非线性相位的,不同频率分量的信号经过FIR滤波器后延迟时间不一致。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值