目标:
- 设计一个FIR低通滤波器。
- 定点量化滤波器系数和输入数据。
- 对比matlab和fpga仿真数值差距。
- 分析FPGA中间计算过程,如果涉及到round off / truncation,对最后结果的影响。
1. FIR滤波器参数分解。
滤波器采用matlab中的fdatool进行设计。采用归一化进行表示。
fpass: 0.1; fstop : 0.4; 其余参数默认。
注意频率归一化后,1对应的是Fs/2。所以,通带为0.1 * Fs/2,而阻带为0.4 * Fs/2。
最后得到的滤波器系数为16阶,滤波器长度为17。
2. Matlab仿真
首先用matlab进行double精度的仿真。输入信号由两个正弦波组成,其中一个在通带,一个在阻带。可以用matlab中自带的sound函数,从听觉上直观的感受滤波前后的不同。