FPGA学习笔记-知识点2

FIR(有限冲激响应)滤波器:非递归(没有反馈通道),具有线性相位。

IIR(无限冲激响应)滤波器:递归结构(含反馈通道),非线性相位。


两者的取舍:相同阶数FIR和IIR滤波器,IIR滤波器滤波效果较好,但会产生相位失真。FIR滤波器则性能稳定,但同样幅度指标所需阶数比IIR要高5——10倍,成本很高。在DSP设计中,FIR比IIR需要更多的参数,也就是说需要增加更多的计算量,资源消耗更多的同时也需要更多计算时间,对DSP的实时性会有一定的影响。

FIR滤波器:对N个采样数据进行加权和平均(卷积)处理。

其处理过程用下列式表示:

FPGA学习笔记-知识点2_第1张图片
结构图:(图中的三角符号就是延迟的意思)

 

FPGA学习笔记-知识点2_第2张图片
IIR滤波器:包含递归部分也包含非递归部分。一个IIR滤波器可以看做由两个FIR滤波器构成。其中一个滤波器位于反馈回路中,设计IIR滤波器的关键就是确保递归部分的稳定。

 

其处理过程用下列式表示:(具有N个前馈系数和M-1个反馈系数)

FPGA学习笔记-知识点2_第3张图片

 

结构图:

FPGA学习笔记-知识点2_第4张图片

 

个人理解:FIR滤波器,可能是我在基于FPGA的数字信号处理系统需要滤波时,第一时间会想到的东西。因为它非常的方便。关于滤波器的使用,xilinx官方提供了FIR Compiler IP核进行调用。传统的设计方法为,使用matlab的FDATool工具来设计滤波器,并导出抽头文件,也就是上图中的W(0)—W(N-1)这些权值,并在vivado中调用FIR IP,配置导入抽头文件。如果是使用system generator来设计则会更方便,在Sysgen中我们可以直接把FDATool和FIR Compiler进行一个关联,不需要再手动进行抽头的导出导入就可以完成FIR滤波器的设计。

如果只是想滤除个噪声什么的,FIR滤波器完全够用了。

https://www.bilibili.com/read/cv6867532?spm_id_from=33.999.list.card_article.click

你可能感兴趣的:(fpga开发,学习)