- 6
- 0
- 约3.29千字
- 约 4页
- 2021-07-08 发布于山东
- 举报
改进的分布式算法解决方案:
如果滤波器的阶数 N 过大,用前述的方法需要查找表有 2 的 N 次方个数据
供查找。也就是说,例如对于一个 10 阶的滤波器来说,建立的查找表就需要 2 的 10 次方即查找表内存储 1024 个数据。这时我们就可以利用部分表并将结果相加,我们吧 10 阶的表分成两个 5 阶的分别制作查找表,那么对于一个 5 阶的查找表只要 2 的 5 次方( 32)个数据,两个 5 阶一共只需要 64 个数据,这相对与 1024 个数据的查找表而言,节约了相当可观的硬件电路资源。 10 阶的滤波器尚且如此,那么 15 阶、 20 阶 的查找表设计就能节约更多硬件资源了。
这是一种很实用的改进方法, 下面我们就用这个方法设计一个
6 阶的
FIR 滤
波器。它的 6 阶系数分别为 -2,3,1,3,-1, 2。
仿真的结果如下:
输入激励信号为 5,-2,-1,5;经过 6 阶 FIR 滤波器后得到的结果应该是:
-10,19,1,0,3, 14, 12。也正是我们仿真得到的输出 yout。
Verilog 代码:
//顶层模块
module fir_top(clk,rst,en,xin,yout);
input clk;
input rst;
input[3:0] xin;
input en;
output[7:0] yout;
reg[3:0] xre
原创力文档

文档评论(0)