在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 9107|回复: 11

[求助] IIR滤波器FPGA设计的输出截位问题

[复制链接]
发表于 2010-8-13 23:53:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
最近赶着用FPGA实现一个IIR低通滤波器。我选择的是椭圆滤波器,我用matlab里设计出的系数,进行了2^14倍的放大,然后输入数据是16位,系数也是16位宽输入,三个二阶级的级联方式设计,对于单级的二阶级结构调用的乘法器是16x16输入,32位输出,然后进行5个乘积累加(b0*x(n)+b1*x(n-1)+b2*x(n-2)+a1*y(n-1)+a2*y(n-2)),累加后是32位,最后截取累加和的[29:14]位。想请问一下各位这样截位问题是在哪里?又应该怎样安排输入输出的位数?我已经被困了好几天了,一直都滤不出正确的波形出来。

还有如果有哪位兄台做过IIR或者有IIR的Verilog源码例子的话可否给我邮件一份,让我参考参考。我看很多网上的程序和教材上的一些代码都是直接写乘号的,根本没法用。在此先谢谢了
PS:我的邮箱2006mizi@163.com
发表于 2011-3-9 10:39:27 | 显示全部楼层
你好,我想问一下你说的这个问题解决了没有。你是怎么解决的呢?我现在也遇到了这样的问题,能不能指导一下。谢谢!
发表于 2011-3-9 15:03:11 | 显示全部楼层
iir是带反馈的滤波器,所以如果想让硬件滤波的波形跟算法matlab或者c完全一致,需要在中间结果就截位,当然算法也要做相应处理。最后结果还要考虑溢出的情况。
发表于 2011-3-9 16:44:20 | 显示全部楼层
先对你的IIR优化,然后看看有几个加法,有几个成法。 这样就会知道出来的总位数。

在对output的数据,取舍。 这个要根据的你的snr dft 才考虑的

这个是我想的!
发表于 2011-12-16 17:38:44 | 显示全部楼层
目前也在糾結中,請指點
发表于 2014-4-12 16:31:32 | 显示全部楼层
我也是啊,截位问题困扰中啊,求指点
发表于 2014-4-14 21:36:43 | 显示全部楼层
放大之后位数没有扩展的关系,建议每一次计算后根据增益大小相应移位,可能会舍弃精度,但是幅度不要舍弃
发表于 2014-12-27 23:05:37 | 显示全部楼层
遇到同样的问题!!!
发表于 2014-12-27 23:06:28 | 显示全部楼层
仔细看了帖子,是2010年的!!!
发表于 2015-4-19 20:11:23 | 显示全部楼层
回复 1# WEN_AMY


    楼主不知道你搞定了没有,我现在也遇到这样的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-7-18 22:21 , Processed in 0.037904 second(s), 11 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表