关于FIR滤波器的问题
时间:10-02
整理:3721RD
点击:
大家好,最近我在用FPGA来实现32阶的FIR滤波器的。现在遇到了以下一个问题,希望大家能够给点建议或者方法,谢谢了。
此处我在实现32阶FIR时,采用的是DA算法,并自己编写代码实现的。当然实现DA算法对应的查找表LUT有很多种方法,此处我希望能够通过三态门和超前进位加法器来实现(看了一下有关文献,说是这种方法还是挺好的)。其中实现的基本结构图为图片所示:
[attach]395968[/attach]
现在的问题是不知道怎样用Verilog语言实现结构图中的三态门和超前进位加法器的。 (其中,假设x[x=0],x[x=1].........均为一位二进制数,而c0,c1,c2,c3均为8位二进制数)
具体超前进位加法器需要自己代码实现还是有相应的QuarusII自带宏功能啊,应该怎样实现这个结构啊。
希望大家给点建议,或者实现代码之类的。谢谢大家了
此处我在实现32阶FIR时,采用的是DA算法,并自己编写代码实现的。当然实现DA算法对应的查找表LUT有很多种方法,此处我希望能够通过三态门和超前进位加法器来实现(看了一下有关文献,说是这种方法还是挺好的)。其中实现的基本结构图为图片所示:
[attach]395968[/attach]
现在的问题是不知道怎样用Verilog语言实现结构图中的三态门和超前进位加法器的。 (其中,假设x[x=0],x[x=1].........均为一位二进制数,而c0,c1,c2,c3均为8位二进制数)
具体超前进位加法器需要自己代码实现还是有相应的QuarusII自带宏功能啊,应该怎样实现这个结构啊。
希望大家给点建议,或者实现代码之类的。谢谢大家了
assign out=(enb)?c0:1'bz这就是实现三态。
三态门的使用是有严格限制的。
谢谢您的回复,
这个三态门的实现是很简单的,不过,这个三态门的输出可以直接加到后面的超前进位加法器作为输入吗?
当这个三态门输出为高阻态时,相对于后面的超前进位加法器应该怎样计算,取舍啊?
还有这个超前进位加法器怎样实现啊,是需要通过代码自己在重新编写一个,还是有现成的宏模块的?
谢谢了!
自己顶一下
assign out=(enb)?c0:1'bz这就是实现三态?
