医学数字信号处理7章有限字长效应(6)

2019-08-31 12:53

频率为零的振荡。对于滤波器系数为-0.625的情形,可以进行类似的讨论,它的极点位臵由z=-0.625变为z=-1。

振荡幅度用A表示,它的大小与量化字长和滤波器系数的数值有关,下面就来推导这一关系。

一般情况下的1阶IIR滤波器的差分方程为

y(n)??y(n?1)?x(n)

现用b位字长(不包含符号位)的定点运算来实现该系统,乘积

?y(n?1)运算结果先经过舍入处理,然后才与x(n)相加。舍入误差

的数值范围是

qQR[?w(n?1)]??w(n?1)?

2其中,q是量化间隔,q?2。进入极限环振荡后,有

?bQR[?w(n?1)]?w(n?1)代入上式得

qw(n?1)??w(n?1)?2qw(n?1)1???

2所以

q2w(n?1)??2(1??)1???b?1

式中,w(n?1)就是震荡幅值A。可以看出,在字长b一定的条件下,

?越小,A就越小;而在α一定的条件下,字长b越长,A就越小。

如上例A≤2-4/(1-0.625)=1/6,比1/6还小的3位定点小数的量化值是1/8。这与上例是一致的。

极限环振荡的产生是有条件的。对于1阶IIR滤波器来说,由式

q2w(n?1)??2(1??)1???b?b?1

看出,如果振幅的数值小于一个量化间隔q?2,那么,用b位定点小数来表示的振幅将是零。这就意味着,滤波器的输出衰减为零,即不会出现极限环振荡现象。因此,1阶IIR滤波器不产生极限环振荡的条件是

qw(n?1)??q 2(1??)1?(1??) 2由此得出 ??1 2这意味着,只要滤波器系数的绝对值不超过0.5,一阶IIR滤波器无论用多短的字长来实现都不会产生极限环振荡。

二.死带效应

死带效应是与极限环振荡密切相关的一种现象。设有一个IIR数字滤波器,它的系统函数为

N(z)H(z)??D(z)?bzkk?0Nk?1M?k1???kz?kM

该滤波器的直接型结构按以下差分方程来实现

y(n)???ky(n?k)??bkx(n?k)

k?1k?0N设H(z)的全部极点都在单位园内,因此该滤波器是稳定的。假设所有系数和信号都能无限精确地表示,所有运算也是无限精确的,那么,在输入x(n)=c(常数)时,滤波器的输出y(n)将收敛于常数d。在这种情况下,式y(n)???Nk?1ky(n?k)??bkx(n?k)变成

Mk?0d?d??k?c?bkk?1k?0NM

由此得出

d?c?bk1???kk?1k?0NM?cH(1)

以上是理论上的计算。实际上,所有系数ak、bk和输入信号都是用b+1位定点二进制数表示的,所有定点乘法运算后都要进行舍入处理,也可以将所有全精度乘积累加并与c?bk求和之后再进行舍入

k?0M处理。假设采用后一种运算方法。具体来说,计算过程用下式来表示:

y1(n)???ky2(n?k)?c?bkk?1k?0NM

关于该式的来源可做如下说明:两个b位二进制数(不含符号位)ak与

y2(n?k)相乘,得到全精度(字长2b位)乘积,对应于不同k值的这些全精度乘积累加后,与另一个全精度积c?bk求和后得到字长2b

k?0M位的输出,用y1(n)表示。对y1(n)进行舍入处理,使之从2b位变成b位,舍入处理结果y2(n)被存储器起来,它是滤波器的有效输出,同时也是下次迭代运算的已知数据。

按式y1(n)???ky2(n?k)?c?bk进行工程计算时,由于有限字长效

k?1k?0NM应,滤波器的输出会产生误差,但假设滤波器的稳定性仍然没有遭到破坏。就是说,随着迭代运算的进行,滤波器存储的输出值y2(n)逐渐趋近某个稳定值y2,它与理想的稳定输出d之间存在着误差e,即

y2?d?e

y2是b位字长的量化值,即y2一定是q?2的倍数。

当存储的滤波器输出为稳定值y2时,根据式y1(n)???ky2(n?k)?c?bkk?1k?0NM?b可算出双精度输出y1(n)为

y1(n)???ky2(n?k)?c?bk???k(d?e)?c?bk?d??k?e?ak?c?bkk?1k?0k?1k?0k?1k?1k?0NMNMNNM

根据d?d??k?c?bk可以看出,上式右端第一和第三项之和就是

k?1k?0NM滤波器的理想输出d。因此,上式变成

y1(n)?d??k?c?bk?e?ak?d?e?ak

k?1k?0k?1k?1

NMNN

对上式右端同时加减e,并利用y2?d?e。得到

y1(n)?d?e?e?e?ak?y2?e(1??ak)?y2?eD(1)

k?1NNNk?1其中 D(1)?1???k

k?1qq如果 ??eD(1)<

22那么,从式y1(n)?y2?eD(1)可以看出,y1(n)将舍入为y2。当

qqD(z)的全部根均在单位园内时,D(1)为正值,故??eD(1)<可

22qq?e?写成?,由y2?d?e可得

2D(1)2D(1)qqd??y2?d?2D(1)2D(1)

且存储的连续N个输出都为y2时,则存储的输出y2(n)将一直保持为恒定值y2。上式所表示的区间称为死带。死带的宽度与D(1)成反比。对于窄带低通滤波器,由于它的极点聚集在z=1附近,D(1)的值非常小,且滤波器的阶越高,D(1)的值越小,因此,高阶窄带低通滤波器的死带很宽,往往为量化间隔q的若干倍。所以,对于2阶以上的IIR数字滤波器,通常应避免采用直接型结构来实现。

qq?y2?d?式d?2D(1)2D(1)说明,滤波器的理论输出值d位

于死带内,滤波器的实际输出值y2在死带内不再改变。

下面的例子将进一步说明,滤波器的实际输出值在死带内取什么具体数值,是由迭代运算中y2(n)的初始值y2(0)来决定的。


医学数字信号处理7章有限字长效应(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:大学语文考前辅导

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: