作业帮 > 综合 > 作业

基于matlab 的fir滤波器程序

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/22 12:37:01
基于matlab 的fir滤波器程序
做毕设急用!感激不尽
我们知道设计一个fir滤波器,首先要知道它的冲击函数,或者说它的系数,如何知道它的序数呢,那就要根据要求设计啦.matab中为我们提供了很多有用的窗函数,可以直接调用;不过从最优化的角度来说remez函数是最好的.其优点是,设计指标相同时,使滤波器阶数最低;或阶数相同时,使通带最平坦,阻带最小衰减最大;通带和阻带均为等波形形式.具体用法可以参考matalb中的帮助文件.同样matlab里面的toolbox中也有一个工具filterdesign是直接可以用来设计滤波器的,你只要直接输入设计要求既可以得出序数.
设计好了滤波器,我们下一步就是如何用vhdl实现它.由于我们用matalb得到的系数是浮点数,处理起来不方便.这就要求我们将其定点化,如何定点化呢,就是将它化为整数,乘以一个倍数即可.但是为了后面处理方便,一般是乘以2的n次方.定点化后就根据滤波器输入与输出的关系式进行编程,其实就是一个相乘累加的关系.最后结果我们要再缩小.还有一个问题就是结果用什么形式的数来表示,我觉得用补码表示比较好一点,因为很多AD或DA都是补码的,计算机内也是这样的.