基于FPGA与MATLAB的IIR滤波器设计与实现
来源:互联网 发布:剑三盾萝捏脸数据 编辑:程序博客网 时间:2024/04/27 14:15
系统的差分方程可以写成
IIR滤波器的两种最基本、使用最为广泛的实现结构——直接型及级联型结构。虽然级联型结构比直接型结构更准确,受参数量化影响较少,但设计起来更负责,所以本设计采用直接型结构。
1.量化直接型结构的IIR滤波器系数
MATLAB输入
[Bb
可以看到滤波器系数向量
Ba=[1 -1.79158135278860 2.53189988089812 -2.11822942034193 1.37075629439323 -0.6090389130764730.199331556962956 -0.0431047310152813 0.00580426165430880 -0.000355580604257623]
Bb=[0.00106539452359780 0.00958855071238024 0.0383542028495210 0.08949313998221560.134239709973323 0.134239709973323 0.0894931399822156 0.0383542028495210 0.009588550712380240.00106539452359780]
MATLAB输入
Qb
Qa
可以看到量化后滤波器系数向量
Qa=[512 -917 1296 -1085 702 -312 102 -22 3 0]
Qb=[1 5 20 46 69 69 46 20 5 1]
根据IIR滤波器系统函数,可以直接写出滤波器的差分方程为
4.1.直接型结构的FPGA实现
根据滤波器的差分方程可以把方程分开零点系数和极点系数两部分组成,
4.2零点系数的FPGA实现
4.3极点系数的FPGA实现
4.4顶层模块实现
4.5直接型结构的FPGA实现后的测试仿真
从图中可以明显看出,FPGA滤波后的信号几乎接近原始信号,有效地滤除了叠加信号中250hz的高频信号,还原了10hz的低频信号,说明该设计正确,达到设计要求。
六、总结
IIR滤波器因具有较高的滤波效率,十分有利于在不需要
- 基于FPGA与MATLAB的IIR滤波器设计与实现
- 基于模型设计的FPGA开发与实现:滤波器设计与实现(一)在Matlab中高效设计滤波器
- 基于模型设计的FPGA开发与实现:滤波器设计与实现(二)Matlab中滤波器的定点化
- 基于模型设计的FPGA开发与实现:滤波器设计与实现(三)Matlab中滤波器的HDL代码生成
- 基于模型设计的FPGA开发与实现:滤波器设计与实现(四)Matlab中滤波器HDL代码生成优化
- 二阶IIR滤波器结构与FPGA实现分析
- 基于Matlab的FIR滤波器设计与实现
- 基于Matlab的FIR滤波器设计与实现
- 基于Matlab的FIR滤波器设计与实现
- MATLAB与FPGA设计滤波器2-1
- MATLAB与FPGA设计滤波器2-2
- IIR滤波器设计(调用MATLAB IIR函数来实现)
- IIR滤波器设计(调用MATLAB IIR函数来实现)
- IIR滤波器设计(调用MATLAB IIR函数来实现)
- IIR滤波器设计(调用MATLAB IIR函数来实现)
- IIR滤波器设计(调用MATLAB IIR函数来实现)
- CIC滤波器的Matlab仿真与FPGA实现
- 基于DSP的IIR滤波器的设计
- UML-范
- Permutation Sequence
- mysql子查询
- 第十五周项目1程序填空
- matlab 矩阵合并、拼接
- 基于FPGA与MATLAB的IIR滤波器设计与实现
- java加密解密--RSA
- Spring MVC 入门概要 1
- c#处理3种json数据的实例
- java分布式实战
- QT Designer
- com.google.gson.stream.MalformedJsonException
- erlang对比golang,如何选择?
- 快速可靠网络传输协议 KCP