fir滤波器_fir滤波器设计 - CSDN
fir滤波器 订阅
FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,又称为非递归型滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。 展开全文
FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,又称为非递归型滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。
信息
外文名
Finite Impulse Response
别    称
非递归型滤波器
硬件分类
集成电路、DSP芯片、可编程
中文名
FIR滤波器
功    能
图像处理、模式识别、音频处理
属    性
滤波器
FIR滤波器工作原理
在进入FIR滤波器前,首先要将信号通过A/D器件进行模数转换,把模拟信号转化为数字信号;为了使信号处理能够不发生失真,信号的采样速度必须满足香农采样定理,一般取信号频率上限的4-5倍做为采样频率;一般可用速度较高的逐次逼进式A/D转换器,不论采用乘累加方法还是分布式算法设计FIR滤波器,滤波器输出的数据都是一串序列,要使它能直观地反应出来,还需经过数模转换,因此由FPGA构成的FIR滤波器的输出须外接D/A模块。FPGA有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好,利用FPGA乘累加的快速算法,可以设计出高速的FIR数字滤波器。
收起全文
精华内容
参与话题
  • FIR 滤波器(基础知识)

    千次阅读 2014-04-17 13:59:19
    转载: FIR 滤波器(基础知识)  2011-03-12 10:15:28| 分类: fpga | 标签:fir  滤波器的fpga实现 |举报 ...首先FIR滤波器是数字滤波器的一种,另外一种是IIR滤波器。稳定和线性相位的特

    转载:http://05240430.blog.163.com/blog/static/13335939420112101051357/

    FIR 滤波器(基础知识) 

    2011-03-12 10:15:28|  分类: fpga |  标签:fir  滤波器的fpga实现  |举报 |字号 订阅

    最近老师布置了一个任务,要用到数字滤波器,所以就开始查资料了。看了将近一周,终于懂了一点点,记录一下吧!

    首先FIR滤波器是数字滤波器的一种,另外一种是IIR滤波器。稳定和线性相位的特性是FIR滤波器的显著特点。对线性相位不是很明白,所以查了一下,下边是别人的解释:

             ( 在数字信号处理中,经常要求系统具有线性相位。比如说,在滤波器设计中,FIR滤波器的线性相位的特点使其备受青睐。

       从数学概念上讲,线性相位就是要求系统的相频特性是一条直线。而且从数学公式出发,可以很容易证明系统冲激响应如果满足对称性的条件,无论是奇对称还是偶对称,则系统必具有线性相位。如何理解呢?

        线性相位所表示的物理意义是系统对所有频率信号所产生的延迟都是一样的。对于因果可实现系统来说,最好的情况是输出仅与当前输入有关,此时延迟为零。一般的因果可实现系统都会产生延迟。

           由傅里叶分析理论可知,在满足一定的条件下,任意信号都可以分解为正弦信号的叠加。如果一个系统不具有线性相位,系统可能会对输入信号造成失真或变形。比如一个方波信号通过一个系统,如果系统具有线性相位,则通过系统后仍然是一个方波,仅仅是时间上有所延迟。这是因为所有的频率都延迟相同的时间。如果系统不具有线性相位的话,输出就不再是标准的方波了,上升沿不再那么陡峭,而是会有一个比较明显的过渡带。而且方波的顶部也会有一些波纹。这从一个侧面也可了解线性相位的重要性。

           同样由傅里叶分析理论,我们知道,频域上的一个点表示了时域的一个正弦信号。比如在频域,在f=0.1fs处有一个值,我们知道,在时域上必有一个频率为0.1fs的正弦信号,为方便描述,用复信号表示:exp(j*2*pi*0.1*n)。由互易性原理可知,时域的一个点表示了频域的一个正弦信号。比如在时域,n=n0处有一个值,在频域必对应一个正弦信号:exp(-j*w*n0),此处w表示数字频率。这点通过DFT的时延性质也很好理解。这也即是说,如果系统冲激响应h(n)时域n=n0有值的话,会造成输入信号n0*Ts时间的延迟。同理,如果h(n)在n=n2也有一个值,并且值的大小与h(n0)相同的话,其造成的延时为n2,如果n0与n2关于n1对称的话,则延迟时间要取n0与n2的平均,也即是这两个点造成的系统延时是n1。同理,如果h(n)序列中的其它点都关于n1对称的话,则每个关于n1对称的点合力作用的结果都是使输入信号延迟n1*Ts秒。那么系统总的延时也就是n1*Ts秒了,从互易性原理出发,我们可以很方便地理解对称性与线性相位的关系,也可以很方便地计算出系统的延迟时间。)

    FIR滤波器具有线性相位的条件:单位脉冲响应h(n)(系数),必须是实数,而且应该是奇对称或者偶对称的。

    1、FIR滤波器原理

    FIR 滤波器(基础知识) - 蓝天白云 - 乖乖女
    上图中Z的-1次方实际上说的就是一个延迟,旁边标h(i)实际上就是乘以一个h(i)。上面的图完全是和上面的式子是对应的。fir滤波器的fpga实现实际上就是实现上面所写出的那个式子。
    什么是有限脉冲响应呢?在fir中体现在什么地方呢?
    所谓的有限脉冲响应也就是说它的脉冲响应h(n)是有限个,而不是无限个。我们从fir滤波器的系统函数:
    FIR 滤波器(基础知识) - 蓝天白云 - 乖乖女
    可以看出h(n)只有在n为0到N-1的时不为0,在其他情况下均为0。所以我们说fir是有限脉冲响应的滤波器。
    那么iir滤波器为什么是无限脉冲响应呢?
    首先iir滤波器的系统函数为:
    FIR 滤波器(基础知识) - 蓝天白云 - 乖乖女
    从上式可以看出iir滤波器的输出不仅和输入有关,而且还和以前的输出有关,也就是说它是一个含有反馈支路的滤波器。其单位脉冲响应h(n)是无限的。y(n)=h(n)*x(n)(其中*表示卷积,也就是对应位相乘再相加)从上面系统函数中解出的h(n)是关于n的一个函数,所以就是无限的。
    2、实现方法
           运用fpga来实现FIR滤波器的结构多种多样,但是主要有以下几类:串行结构、并行结构、转置型结构、基于FFT算法结构、分布式结构。
    写的有点混乱啊,先这样吧,下篇再具体写每种实现方法吧!

     

    展开全文
  • FIR滤波器

    千次阅读 多人点赞 2018-12-24 11:01:17
    FIR滤波器是非递归型滤波器的简称,又叫有限长单位冲激响应滤波器。带有常系数的FIR滤波器是一种LTI(线性时不变)数字滤波器。冲激响应是有限的意味着在滤波器中没有发反馈。长度为N的FIR输出对应于输入时间序列x(n)...

    1.原理

    FIR滤波器是非递归型滤波器的简称,又叫有限长单位冲激响应滤波器。带有常系数的FIR滤波器是一种LTI(线性时不变)数字滤波器。冲激响应是有限的意味着在滤波器中没有发反馈。长度为N的FIR输出对应于输入时间序列x(n)的关系由一种有限卷积和的形式给出,具体形式如下:

                                                                 

    直接形式FIR滤波器图解:

                                                           

    上式表达的是一个N-1阶的FIR滤波器,它有N个抽头(系数)。因此有N个乘法器,N-1个累加器组成。每一个抽头需要消耗逻辑资源的乘法器累加器( Mac )单元。

    输入信号是有时间性的,随着时间的改变而改变,FIR滤波器最终的输出是各个时刻的输入乘以相应的权重(系数),然后进行叠加输出:

               


    FIR数字滤波器“移动平均数”为例子:

    “移动平均数”就是按我们事先设定的信号个数将输入信号加以平均。譬如,如果我们按每4个信号就做一次平均,那么这个4点的“移动平均数”滤波器就如下图所示:

                                 

    下图是经过11点和51点“移动平均数”滤波器过滤的信号图:

                                           

    “移动平均数”滤波器的频率响应如下图所示:

                                           

    如上图所示,随着点数的增加,滚降(ROLLOFF)变陡了,但对旁瓣(sidelobe,衰减部分)的高低影响不大。但是如果我们考虑对滤波器的每个系数采用不同的权重(加权),而不是像“移动平均数”滤波器那样,用相同的权重(1/4,对4点“移动平均数”滤波器来说),那么可以期待旁瓣的大小会大大的降低。

    对系数采用不同权重的滤波器,我们可以用下面的数学公式来表达:

                                  

    2.FPGA实现fir滤波器

    2.1在MATLAB中输入fdatool即可打开滤波器设计工具,如图7所示。里面可以设置滤波器的类型,采样频率,截止频率等。本设计设置的参数如图所示。

    然后将此滤波器系数导出,然后用以下命令将系数放大、取整:

    >> Num=round(Num*256)//将系数放大并取整

    num=[ 5    17    43    63    63    43    17     5]; 

    本设计用于仿真的输入波形是2个正弦波叠加而成,分别是5HZ、45HZ。

    Fs = 1000; %采样频率决定了两个正弦波点之间的间隔
    N = 256; %采样点数
    N1 = 0 : 1/Fs : N/Fs-1/Fs;
    s = cos(5*2*pi*N1) + cos(45*2*pi*N1) ;%
    fidc = fopen('mem.txt','wb');  %将结果写入mem.txt文件,便于modesim使用
    
    for x = 1 : N
        A = round(s(x)*20);%放大
       if (A >= 0)
          bin_x = dec2bin(A, 8);        % 正数的反码和补码都和原码一样,转换位8位
          fprintf(fidc,'%s\n',bin_x);
       else
          bin_x = dec2bin(2^8 + A, 8);
          fprintf(fidc,'%s\n',bin_x);
       end
    end 
    
    fclose(fidc);
    

    2.verilog

    module fir(clk,rst,din,dout,ordy);
     input clk;
     input rst;
     input [7:0] din;
     output [15:0] dout;
     output ordy;
     //matlab fir生成系数 * 256  该滤波器采样率为100Hz,截止频率为10Hz
     parameter coeff1=8'd5,coeff2=8'd17,coeff3=8'd43,coeff4=8'd63,coeff5=8'd63,coeff6=8'd43,coeff7=8'd17,coeff8=8'd5;
     //8个寄存器
     reg  signed [7:0]  sample_1;
     reg  signed [7:0]  sample_2;
     reg  signed [7:0]  sample_3;
     reg  signed [7:0]  sample_4;
     reg  signed [7:0]  sample_5;
     reg  signed [7:0]  sample_6;
     reg  signed [7:0]  sample_7;
     reg  signed [7:0]  sample_8;
     
     reg [18:0] dout;
     reg ordy;
     //输入数据,移位寄存
     always @(posedge clk )
       begin
            if(rst)
    		   begin
    		        sample_1 <= 8'd0;
    				sample_2 <= 8'd0;
    				sample_3 <= 8'd0;
    				sample_4 <= 8'd0;
    				sample_5 <= 8'd0;
    				sample_6 <= 8'd0;
    				sample_7 <= 8'd0;
    				sample_8 <= 8'd0;
    		   end
    		else
    		   begin
    		        sample_1 <= din;
    				sample_2 <= sample_1;
    				sample_3 <= sample_2;
    				sample_4 <= sample_3;
    				sample_5 <= sample_4;
    				sample_6 <= sample_5;
    				sample_7 <= sample_6;
    				sample_8 <= sample_7;//8个周期完成移位
    		   end
       end
     //调用ip,执行乘法
     wire [15:0] p[8:1];
     mult_8 u1 (
      .CLK(clk),  // input wire CLK
      .A(sample_1),      // input wire [7 : 0] A
      .B(coeff1),      // input wire [7 : 0] B
      .P(p[1])      // output wire [15 : 0] P 设置pipline stage 为3,表示3级延时
    );
     mult_8 u2 (
      .CLK(clk),  // input wire CLK
      .A(sample_2),      // input wire [7 : 0] A
      .B(coeff2),      // input wire [7 : 0] B
      .P(p[2])      // output wire [15 : 0] P
    );
     mult_8 u3 (
      .CLK(clk),  // input wire CLK
      .A(sample_3),      // input wire [7 : 0] A
      .B(coeff3),      // input wire [7 : 0] B
      .P(p[3])      // output wire [15 : 0] P
    );
     mult_8 u4 (
      .CLK(clk),  // input wire CLK
      .A(sample_4),      // input wire [7 : 0] A
      .B(coeff1),      // input wire [7 : 0] B
      .P(p[4])      // output wire [15 : 0] P
    );
     mult_8 u5 (
      .CLK(clk),  // input wire CLK
      .A(sample_5),      // input wire [7 : 0] A
      .B(coeff5),      // input wire [7 : 0] B
      .P(p[5])      // output wire [15 : 0] P
    );
     mult_8 u6 (
      .CLK(clk),  // input wire CLK
      .A(sample_6),      // input wire [7 : 0] A
      .B(coeff6),      // input wire [7 : 0] B
      .P(p[6])      // output wire [15 : 0] P
    );
     mult_8 u7 (
      .CLK(clk),  // input wire CLK
      .A(sample_7),      // input wire [7 : 0] A
      .B(coeff7),      // input wire [7 : 0] B
      .P(p[7])      // output wire [15 : 0] P
    );
     mult_8 u8 (
      .CLK(clk),  // input wire CLK
      .A(sample_8),      // input wire [7 : 0] A
      .B(coeff8),      // input wire [7 : 0] B
      .P(p[8])      // output wire [15 : 0] P
    );
     //加法第一级
     wire [16:0] s1 [4:1];//加法器的延时为2
     add_16 a1 (
      .A(p[1]),      // input wire [15 : 0] A
      .B(p[2]),      // input wire [15 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s1[1])      // output wire [16 : 0] S
    );
     add_16 a2 (
      .A(p[3]),      // input wire [15 : 0] A
      .B(p[4]),      // input wire [15 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s1[2])      // output wire [16 : 0] S
    );
     add_16 a3 (
      .A(p[5]),      // input wire [15 : 0] A
      .B(p[6]),      // input wire [15 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s1[3])      // output wire [16 : 0] S
    );
     add_16 a4 (
      .A(p[7]),      // input wire [15 : 0] A
      .B(p[8]),      // input wire [15 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s1[4])      // output wire [16 : 0] S
    );
     //加法第二级
     wire [17:0] s2 [2:1];
     add_17 a21 (
      .A(s1[1]),      // input wire [16 : 0] A
      .B(s1[2]),      // input wire [16 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s2[1])      // output wire [17 : 0] S
    );
     add_17 a22 (
      .A(s1[3]),      // input wire [16 : 0] A
      .B(s1[4]),      // input wire [16 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s2[2])      // output wire [17 : 0] S
    );
     //加法第三级
     wire [18:0] s3;
     add_18 a31 (
      .A(s2[1]),      // input wire [17 : 0] A
      .B(s2[2]),      // input wire [17 : 0] B
      .CLK(clk),  // input wire CLK
      .S(s3)      // output wire [18 : 0] S
    );
     //计数
     reg [4:0] counter;
     always @(posedge clk)
      begin
          if(rst)
    	    begin
    		   counter <= 5'd0;
    		   dout <= 19'd0;
    		   ordy <= 1'b0;
    		end
    	  else if(counter == 17)
    	    begin
    	       dout <= s3;
    		   ordy <= 1'b1;
    		end
    	  else
    	       begin
    		       dout <= 19'd0;
    			   counter <= counter + 1'b1;
    		   end
      end
    endmodule

    由于抽头系数N=8,滤波的效果不是太好,可以采用更高阶数的fir滤波器,这里只是做个演示,有何错误之处还请指教!!

    展开全文
  • 1---FIR滤波器简介

    万次阅读 2017-09-09 10:56:24
    2. FIR滤波器是怎么滤波的 信号通过一个FIR滤波器其实就是信号与FIR滤波器的系数进行卷积(即乘累加)的过程。 简单信号模型 低频信号:即在时域上变化慢的信号,如1 1 1 1 2 2 2 2,还有直流信号1 1 1 1 1 1 1 ...

    1. FIR滤波器特性

    Markdown中数学公式整理
    FIR(Finite Impulse Response)Filter:有限冲激响应滤波器,又称为非递归线性滤波器,与IIR对应。

    FIR滤波器,顾名思义,其脉冲响应由有限个采样值构成。长度(抽头数)为N、阶数为N1的FIR系统的转移函数、差分方程和单位冲激响应分别如下列三式所示。

    H(z)=n=0N1h(n)zn

    y(n)=k=0N1$h(k)x(nk)

    h(n)=h(0)δ(n)+h(1)δ(n1)+...h(N1)δ[n(N1)]

    IIR(Infinite Impulse Response)Filter:无限冲激响应滤波器,又称为递归线性滤波器。
    FIR与IIR相对的
    优点:
    • 可以具备线性相位特性
    • 易于设计

    缺点:

    • 同样指标的滤波器,FIR需要更多的参数,即实现时消耗更多的计算单元,产生更大的延迟。

    详细可参考:IIR滤波器和FIR滤波器的区别与联系
    线性相位的概念:
    如果滤波器的N个实值系数为对称或者反对称结构,该滤波器具有线性相位。

    W(n)=±W(N1n)

    特性:通过线性相位滤波器的信号的所有频率部分具有相同的延迟量。

    2. FIR滤波器是怎么滤波的

    信号通过一个FIR滤波器其实就是信号与FIR滤波器的系数进行卷积(即乘累加)的过程。
    简单信号模型
    低频信号:即在时域上变化慢的信号,如1 1 1 1 2 2 2 2,还有直流信号1 1 1 1 1 1 1
    高频信号:即在时域上变化快的信号,如1 2 1 2 1 2 1 2
    简单的滤波器模型
    低通滤波器:1 1
    高通滤波器:1 -1

    想象一下上面的信号与下面的信号做卷积的过程。

    3. FIR滤波器的设计

    可以通过下面两句话理解FIR滤波器的设计

    • FIR滤波器的设计比较简单,就是要设计一个数字滤波器去逼近一个理想的低通滤波器。通常这个理想的低通滤波器在频域上是一个矩形窗。
    • 在数字信号处理中,傅里叶变换用来求取时域信号的频率成分。因此,通过对特定频率幅度和相位的响应,求取傅里叶变换的逆变换(IDFT),就可以求出满足要求的数字滤波器。

    逼近一个理想的滤波器 —-> 获得的序列是无限长的 —-> 需要截断 —-> 加窗

    使用窗函数设计FIR滤波器

    设计FIR滤波器需要提供的参数:
    1)滤波器的类型:低通、高通、带通、带阻
    2)滤波器的采样频率
    3)滤波器的系数个数
    4)阻带衰减(dB)
    5)通带纹波(dB)
    6)过渡带带宽(Hz)

    4. FIR滤波器的实现

    作者高亚军《基于FPGA的数字信号处理》中将FIR滤波器的实现讲的非常详细
    FIR滤波器的实现很简单,根据其结构,其实就是延迟乘累加。
    实现FIR滤波器这么简单,为什么各种数字信号处理教材堆砌那么多公式、引入那么多复杂概念,让人望而却步?

    但在实现时可以对延迟乘累加结构进行变形,以获得不同的资源消耗效果。

    • 转置结构


      标准的FIR结构是先延迟,再乘累加,而转置的结构是先乘,在延迟累加。转置结构相当于改变了延时单元的位置,这就是所谓的重定时(Retiming)技术。
      转置结构的好处是:每两个加法器之间都插入了之前的延时器,缩短了关键路径,电路可以跑到更高的速度。

    • MAC实现(串行结构FIR)

      Multiply Accumulation Cell,乘累加模块
      设计思想:只用一个乘法器和一个累加器按时间顺序依次完成一次滤波运算所需的N次乘法和N-1次加法。
      关于累加器位宽的考虑,怎样保证累加运算不溢出,一般我们从乘法和加法的角度来考虑,但为了节省硬件资源,还可以从另一个角度来考虑:
      滤波运算输出的最大值为

      |y|max=2B1n=0N1|h(n)|

      所以加法器位宽只要满足|y|max的需求即可
      基于FPGA MAC FIR滤波器的实现
      优劣势:
      串行结构占用极少的资源(只用了一个乘加器),这是它的优势,而其吞吐量不会太高,这是它的不足。它正是“以速度换资源”思想的体现,在某些场合灵活使用会体现其应有的价值。如在滤波器的采样率较低时,可以采用这样结构,使用高频时钟处理,在不增加处理延时的情况下节省硬件资源。
    • DA实现

      分布式算数(Distribute Arithmetic, DA)是实现滤波器的一种方法,其基本思想是将数字滤波器内的乘法和加法运算用查找表和一个移位累加器来实现。
      DA的结构挺复杂的,但简单来讲可以说是利用了乘法运算可以使用移位相加来实现这么一个特性。

      42=8

      0b100log22=0b1000

      使用DSP资源实现乘法运算可以达到更高的运行速度,如果不是DSP不够用,现代滤波器实现应该不会再使用古老的DA实现了吧??
    展开全文
  • FIR滤波器相关解释

    万次阅读 2017-12-13 08:52:00
    LTI(Linear Time-Invariant) 线性时不变: 线性时不变系统是根据系统输入和输出是否具有线性关系来定义的。满足叠加原理的系统具有线性特性。线性满足y=kx函数。...根据系统的输入和输出关系是否具有线性来定义...

     


    LTI(Linear Time-Invariant)

    线性时不变:

    线性时不变系统是根据系统输入和输出是否具有线性关系来定义的。满足叠加原理的系统具有线性特性。线性满足y=kx函数。

    根据系统的输入和输出关系是否具有线性来定义 满足叠加原理的系统具有线性特性。即若对两个激励x1(n)和x2(n),有T[ax1(n)+bx2(n)]=aT[x1(n)]+bT[x2(n)],式中a、b为任意常数。

    时不变系统

    时不变系统:就是系统的参数不随时间而变化,即不管输入信号作用的时间先后,输出信号响应的形状均相同,仅是输入信号出现的时间不同。用数学表示为T[x(n)]=y[n]则 T[x(n-n0)]=y[n-n0],这说明序列x(n)先移位后进行变换与它先进行变换后再移位是等效的。

    线性时不变系统

    线性时不变系统:既满足叠加原理又具有时不变特性,它可以用单位脉冲响应来表示。单位脉冲响应是输入端为单位脉冲序列时的系统输出,一般表示为h(n),即h(n)=T[δ(n)]。

    任一输入序列x(n)的响应y(n)=T[x(n)]=T[ δ(n-k)];

    由于系统是线性的,所以上式可以写成y(n)=T[δ(n-k)];

    又由于系统是时不变的,即有T[δ(n-k)]=h(n-k);

    从而得y(n)=h(n-k)=x(n)*h(n);

    这个公式称为线性卷积,用“*”表示。

    齐次性

    若激励f(t)产生的响应为y(t),则激励Af(t)产生的响应即为Ay(t),此性质即为齐次性。其中A为任意常数。

    f(t)系统y(t),Af(t)系统Ay(t)

    叠加性

    若激励f1(t)与f2(t)产生的响应分别为y1(t), y2(t),则激励f1(t)+f2(t)产生的响

    应即为y1(t)+y2(t),此性质称为叠加性。

    线性

    若激励f1(t)与f2(t)产生的响应分别为y1(t), y2(t),则激励A1f1(t)+A2f2(t)产生的响应即为A1y1(t)+A2y2(t),此性质称为线性。

    时不变性

    若激励f(t)产生的响应为y(t),则激励f(t-t0)产生的响应即为y(t-t0),此性质称为不变性,也称定常性或延迟性。它说明,当激励f(t)延迟时间t0时,其响应y(t)也延迟时间t0,且波形不变。

    微分性

    若激励f(t)产生的响应为y(t),则激励f'(t)产生的响应即y’(t),此性质即为微分性。

    积分性

    若激励f(t)产生的响应为y(t),则激励f(t)的积分产生的响应即为y(t)的积分。此性质称为积分性。


    FIR滤波器结构:

    直接形式的FIR滤波器

    转置结构的FIR滤波器


    FIR滤波器特点:

      • FIR滤波器的最主要的特点是没有反馈回路,稳定性强,故不存在不稳定的问题;

      • FIR具有严格的线性相位,幅度特性随意设置的同时,保证精确的线性相位;

      • 设计方式是线性的,硬件容易实现;

      • 滤波器过度工程有有限区间;

      • FIR滤波器设计需要更多的参数,增加计算量


               版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处  

     作者:杭州卿萃科技ALIFPGA 

     原文地址:杭州卿萃科技FPGA极客空间 微信公众号


        

       扫描二维码关注杭州卿萃科技FPGA极客空间 


     

    展开全文
  • FIR滤波器(1)- 基础知识

    万次阅读 2014-05-25 09:42:52
    FIR滤波器广泛应用于数字信号处理中,主要功能就是将不感兴趣的信号滤除,留下有用信号。FIR滤波器是全零点结构,系统永远稳定;并且具有线性相位的特征,在有效频率范围内所有信号相位上不失真。在无线通信收发机中...
  • FIR滤波器和IIR滤波器的区别和选择

    万次阅读 2014-05-08 17:23:57
    1. 在相同技术指标下,IIR滤波器由于存在着输出对输入的反馈,因而可用比FIR滤波器较少的阶数来满足指标的要求,这样一来所用的存储单元少,运算次数少,较为经济。例如用频率抽样法设计阻带衰减为-20db的FIR滤波器...
  • 5.1 线性相位FIR滤波器的特性

    千次阅读 2017-06-11 20:09:14
    5.1 线性相位FIR滤波器的特性
  • FIR滤波器的Matlab实现

    万次阅读 2017-02-22 16:16:38
    FIR滤波器是全零点结构,系统永远稳定;并且具有线性相位的特征,在有效频率范围内所有信号相位上不失真。在无线通信收发机中的DDC/DUC模块,抽取和内插都需要加入滤波器以防止信号在频谱上混叠,最典型的是采用 FIR...
  • FIR高低通滤波器设计(用matlab)

    万次阅读 2017-03-13 11:46:05
    matlab的函数firceqrip,可以实现FIR高通或者低通滤波器。 需要给定的参数包括:以下四个是滤波器本身的参数: N: 滤波器的阶数 dev: the maximum deviation ,指留下的频段的部分的纹波 rip: ripple 指滤除掉的...
  • FIR滤波原理及verilog设计

    千次阅读 2018-08-28 17:29:10
    FIR(Finite Impulse Response)Filter:有限冲激响应滤波器,又称为非递归线性滤波器。...信号通过一个FIR滤波器其实就是信号与FIR滤波器的系数进行卷积(即移位相乘再累加)的过程。但是很多书上...
  • FIR数字滤波器设计——频率抽样法

    万次阅读 2016-11-27 21:07:26
    1.频率抽样法设计线性相位FIR滤波器的思想 频率抽样法是从频域出发,在频域直接设计,把给定的理想频率响应加以等间隔抽样,并以此作为实际FIR滤波器的频率响应。设所需滤波器的频率响应为。 现要求设计一个...
  • xilinx fir滤波器IP

    万次阅读 2016-08-11 17:08:45
    1、 系数由matlab中的
  • FIR滤波器中的tap系数

    千次阅读 2013-06-14 11:49:23
    在描述FIR滤波器的时候,都要提到冲激响应 - FIR滤波器的冲激响应实际上是FIR的系数。 抽头(Tap) - FIR的抽头是系数或者延时对,FIR抽头的个数(通常用N来表示)意味着。1)实现滤波器所需要的存储空间, 2) 需要计算...
  • FIR 带通滤波器设计

    万次阅读 2018-09-05 20:00:26
    %本文将针对一个含有 5Hz 、 15Hz 和 30Hz 的混和正弦波信号, 设计一个 FIR 带通滤波器, %给出利用 MATLAB 实现的三种方法: 程序设计法、 FDATool 设计法和 SPTool 设计法。 参 %数要求:采样频率 fs=100Hz ,...
  • 内插 FIR 滤波器简写为 IFIR 滤波器,英文名为:Interpolated FIR Filter 内插 FIR 滤波器和传统的 FIR 滤波器有类似的结构,唯一的区别就是将单位延迟替换为了 k -1个延迟单元,其中 k 称为 0填充因子。 下图是 N...
  • 关于FIR滤波器的系数

    万次阅读 2019-12-12 09:53:15
    频率采样实现是FIR滤波器的另一种结构方式,其中描述滤波器的参数为所求的频率响应的参数,而不是冲激响应h(n)。为了得到频率采样结构,我们通过等间隔的频率采样指定所需要的频率响应。 我们可以使用MATLAB中的...
  • [matlab]FIR滤波器增益及归一化方法

    千次阅读 2014-09-17 19:29:11
    FIR滤波器的分母为1,分子球
  • FIR和IIR的区别

    万次阅读 多人点赞 2019-04-25 08:53:52
    FIR:有限脉冲响应滤波器。有限说明其脉冲响应是有限的。与IIR相比,FIR具有线性相位、容易设计的优点。这也就说明,IIR滤波器具有相位不线性,不容易设计的缺点。而另一方面,FIR却拥有IIR所不具有的缺点,那就是...
  • FIR系统和IIR系统的区别

    万次阅读 多人点赞 2017-08-05 15:14:23
    FIR:有限脉冲响应滤波器。有限说明其脉冲响应是有限的。与IIR相比,它具有线性相位、容易设计的优点。这也就说明,IIR滤波器具有相位不线性,不容易设计的缺点。而另一方面,IIR却拥有FIR所不具有的缺点,那就是...
  • IIR滤波器和FIR滤波器的区别与联系

    万次阅读 多人点赞 2016-06-13 18:53:57
    IIR滤波器和FIR滤波器的区别与联系_jinjun_新浪博客 http://blog.sina.com.cn/s/blog_6281182601019rst.html ...对于FIR滤波器,冲激响应在有限时间内衰减为零,其输出仅取决于当前和过去的输入信号值。对于IIR
1 2 3 4 5 ... 20
收藏数 4,499
精华内容 1,799
关键字:

fir滤波器