《数字信号处理中的有限字长效应》由会员分享,可在线阅读,更多相关《数字信号处理中的有限字长效应(70页珍藏版)》请在金锄头文库上搜索。
1、第九章 数字信号处理中的有限字长效应n9.1 有限字长效应及量化误差 n9.2 数字滤波器系数量化误差分析n9.3 定点运算IIR和FIR数字滤波器误差分析n9.4 浮点运算数字滤波器和FFT算法中的有 限字长效应1内容提要n量化误差 (1) A/D变换器中的量化误差。(2) 滤波器的系数量化误差。(3) 运算中的量化误差。 n研究有限字长效应目的:(1)若字长固定,进行误差分析,可知结果的可信 度,否则若可信度差,要采取改进措施。(2)用专用DSP芯片实现数字信号处理时,定点与 硬件采用字长有关。29.1有限字长效应及量化误差n9.1.1 有限字长效应n9.1.2 信号的量化误差n9.1.3
2、 A/D变换器中的量化效应39.1.1 有限字长效应n信号处理在具体实现时,字长总是有限的,因为 存储器是有限字长的,所以有限字长效应有DF 的有限字长效应、DFT(FFT)有限字长效应、 A/D变换器的量化误差。即有限字长意味着:有 限运算精度和有限动态范围。在量化和运算过程 中,由于有限字长必然产生误差,这些误差会给 数字信号处理的实现精度和滤波器稳定性带来不 良影响。n如一个线性、非移变、因果系统的差分方程为:4n输入序列x(n)、输出序列y(n)以及方程中的系数ai、bi等, 认为它们的数值是可以连续变化的,即:无限精度。n但当具体实现一个离散系统时,无论用软件方式还是硬件方 式,都是
3、以数字形式实现,因而都要对数据进行量化处理, 即用有限字长来表示。n下面从数据的量化角度来分析误差来源及其影响。n数的表示方法有定点制和浮点制。n定点制指的是数码中小数点的位置固定不变,其不足是动态 范围小,有溢出问题。而浮点制可以避免这个缺点,它的动 态范围大,可以避免溢出,不需要比例因子。n浮点制是将一个数表示成尾数和指数两部分。在浮点制运算 中,不论是相乘还是相加,尾数的位数都可能超过寄存器长 度,都要做尾数的量化处理,因而都有量化误差。9.1.1 有限字长效应59.1.1 有限字长效应数的二进制编码形式有原码、反码和补码。二进制编码长度比寄存器长度长时,要进行尾数 处理,处理的方法有舍
4、入法和截尾法。量化误差的大小及性质与数的表示方法、二进制 编码形式及具体尾数处理方法有关,更与寄存器的长 度有关。另外系统的结构不同,将会明显地影响系统 输出的量化误差。6对于一个线性系统,有限字长效应造成数字信号处理输 出的误差表现为: (一)如果被处理的是模拟信号,则需经过模/数转换器变成 某一种编码方式的二进制数序列。取样和量化是模/数转换器的两个主要过程。量化过程可以模型化为取样序列叠加上量化噪声,从而 得到量化信号。对于一个线性系统,量化后的信号经滤波后 得到的输出信号y(n)为两部分之和,一部分是输入信号x(n) 通过滤波器产生的输出:y(n)= x(n) *h(n),另一部分是量
5、化 噪声e(n)通过滤波器产生的输出:e0=e(n)*h(n),这里h(n) 为是滤波器的冲激响应。即,输入信号的量化在滤波器输出 端引起了噪声,这个噪声的大小与输入信号量化时的字长有 关系。9.1.1 有限字长效应7n(二)系统中滤波器系数的量化处理,即用有 限位二进制数来表示,则必然会引入量化误差 。n 对于某些结构类型的滤波器(例如,具有 反馈支路的递归滤波器结构)来说,其零点和 极点的位置对于滤波器系数的变化特别敏感, 因而滤波器系数由于量化误差引起的微小改变 ,都有可能对滤波器的频率响应特性产生很大 的影响,尤其是在单位圆内且非常靠近单位圆 的极点,一旦由于滤波器系数的量化误差,使
6、这些极点跑到单位圆上或圆外时,滤波器就失 去了其原有的稳定性。9.1.1 有限字长效应8n(三)采用“截尾”或“舍入”的处理方法将运算结果依据寄存 器字长的大小进行处理,这会引入截尾误差或舍入误差。有限字长效应造成的误差,与以下几个问题有关:n量化方式是截尾还是舍入;n负数用二进制数的原码表示,还是用反码或补码表示;n算术运算是用定点运算还是用浮点运算;n采用什么类型的系统结构 (例如,对于数字滤波器来说, 是采用递归结构还是非递归结构,是采用高阶直接实现的结 构还是采用由低阶节组成的级联结构或并联结构)。9.1.1 有限字长效应99.1.2 信号的量化误差在实际应用中待处理信号往往都是一些模
7、拟信号:n 声音、图像、电压、水流、气温、压力、心电图等。n 借助A/D转换将模拟信号转变成数字信号,然后再进 行后续的相关处理。如有必要再通过D/A转换,将数字 信号还原为可听、可视的模拟信号。n 在这种转换过程当中,时域采样是数字技术处理连续 信号的重要环节。采样就是指利用“采样器”从连续信号 中“抽取”信号的离散序列样值,即称之为“采样”信号。“ 采样”也称“取样”、“抽样”。采样信号在时间上离散化了 ,但它还不是数字信号,还须经过量化编码才能转变为 数字信号。即要将模拟信号抽样和量化,使之转换成一 定字长的数字序列值信号。10n数字序列值用有限长的二进制数表示例如序列值 (0.7291
8、56)10=(0.101110101010101)2,若限制用八位二进制数来表示,则为(0.10111010)2, 而(0.10111010)2=(0.7265625)10,那么,引起的误差为:0.729156-0.7265625=0.0025935,该 误差称为量化误差。 这是在二进制数的存储方面。另一方面,在定点制的乘法以及浮点制的加法和乘法在 运算结束后都会使字长增加,因而都需要再对尾数进行处理 ,其误差取决于所用的二进制的位数b、数的运算方式(定 点制或浮点制)、负数的表示法以及对尾数的处理方法。9.1.2 信号的量化误差11假设序列值用b+1位二进制数来表示, 其中用1位来表示符号,
9、用b位表示尾数,最 小码位所表示的数值称为“量化步阶”或“量 化宽度”,用来表示,则q=2-b 。如果二进制编码的尾数长于b,则必须 要进行尾数处理,且处理成b位,也即量化 。尾数处理有两种方法,即截尾法和舍入法 。9.1.2 信号的量化误差12n截尾法是将尾数的第b+1位以及后面的二进制码全部略去。n舍入法是按最接近的值取b位值,即将第b+1位按逢1进位, 逢0不进位,然后略去后面的b+1位。n显然这两种处理方法所引起的误差是不同的。n对于定点制二进制数的舍入法,原码、反码和补码的量化误 差ei是相同的,范围是:-q/2eiq/2。n对于截尾法,不同的编码其量化误差ei的范围也不相同:n定点
10、制正数原码的量化误差ei的范围为:-q ei 0;n定点负数原码的量化误差ei的范围为:0 ei q 。n定点补码的量化误差ei的范围为:-q ei 0。9.1.2 信号的量化误差131下面是定点制运算中的截尾误差和舍入误差。9.1.2 信号的量化误差(a)补码 (b)原码、反码 图9-1 截尾处理的量化特性(q=2-b)图9-2 舍入处理的量化特性14n表9-1 定点运算中的截尾和舍入误差(q=2-b)9.1.2 信号的量化误差15n2浮点制运算中的截尾误差和舍入误差。n 表9-2 浮定点运算中的相对误差9.1.2 信号的量化误差16n由以上分析可以看出,舍入和截尾都产生非线性关系。n定点补
11、码截尾法量化噪声的统计平均值为-q/2,相当于 给信号增加了一个直流分量,从而改变了信号的频谱结 构;n而舍入法的统计平均值为0,这一点比定点补码截尾法好 。为了研究量化误差对数字信号处理系统精度的影响, 必须了解舍入和截尾误差的特型,一般最方便的方法是 把这些量化误差看成随机变量,对每种误差求出概率密 度函数,并进行较为合理的假设,即量化误差在整个可 能出现的范围内是等概率的,也就是均匀分布的。对于 定点制,变量为绝对误差ET ,对于浮点制,变量为相对 误差R。9.1.2 信号的量化误差179.1.3 A/D变换器中的量化效应A/D(模/数)变换器完成的是将模拟信号转换成数字 信号的作用,即
12、将输入的模拟信号x(t)转换为b位二进制数 字信号。变换器位数有限,因此存在量化误差。分析A/D变 换器量化效应的目的在于选择合适的字长,以满足信噪比指 标。假设用e(n)表示量化误差,x(n)表示没有量化误差的抽 样序列数字信号(即无限精度),量化器对每个抽样序列 x(n)进行截尾或舍入的量化处理,用表示量化编码后的信号 ,则= x(n)+ e(n)x(n)是有用信号,e(n)呈现噪声的特点,相当于在A/D 变换器中引入一个噪声源。这样A/D变换器的输出中除了有 用信号以外,还增加了一个噪声信号。 18nA/D变换器的统计模型如图9-3所示。图中的理想 A/D变换器没有量化误差,实际中的量化
13、误差是在 输出端叠加一个等效的噪声源e(n)。n 图9-3 A/D变换器的统计模型9.1.3 A/D变换器中的量化效应19n 由于在抽样模拟信号的数字处理中,把量化噪 声看成相加性噪声序列,量化过程看成是无限精度 的信号与量化噪声的叠加,因而信噪比是一个衡量 量化效应的重要指标。9.1.3 A/D变换器中的量化效应20n一般A/D变换器采用定点制,尾数采用舍入 法。若共有b+1位,符号占1位,尾数为b位 ,量化步阶为q=2-b。为了简化分析,对该 模型做如下假设:n(1)e(n)是白噪声序列;n(2)e(n)与x(n)不相关;n(3)e(n)在自己的取值范围内呈均匀分布。 9.1.3 A/D变
14、换器中的量化效应21n图9-4给出的是舍入量化噪声概率密度函数曲线。 e(n)的统计平均值为 =0,平均功率(即均方差 )为 。A/D变换器的输出信噪比S/N用信号平均功率与舍入量化噪声的平均功率之比表示,即则信噪比的分贝数为:(9-1)9.1.3 A/D变换器中的量化效应22n上式表明:n(1)A/D变换器输出的信噪比与A/D变换器的 字长有关;(2)与输入信号的平均功率有关。n结论为:(1)A/D变换器量化字长每增加1位 ,输出信噪比约可以提高6dB。但是b受到输入 信号的信噪比的限制;(2)输入信号越大则输 出信噪比越高。但一般A/D变换器的输入都有一 定的动态范围限定,否则过大的动态范
15、围,会发 生限幅失真。实际应用中线性A/D一般要求12 位以上满足通信要求,非线性A/D一般要求8位 以上满足通信要求。9.1.3 A/D变换器中的量化效应23n 9.2.1 系数量化误差对滤波器稳定性的影响n 9.2.2 系数量化误差对滤波器零、极点位置的影 响9.2 数字滤波器系数量化误差分析24n前面讨论中,在设计理想数字滤波器时,各滤波器系数bk, ak都是无限精度的。n但实际实现系统函数时,滤波器系数都是被量化了的,所有 系数只能用有限字长的二进制数来表示。n系数的量化误差,在不同程度上使滤波器的零点和极点偏离 设计中预定的位置,从而影响到滤波器的频率特性偏离设计 的要求,在量化误差
16、严重时,如果z平面单位圆内极点偏移 到单位圆外,使滤波器性能不稳定而无法使用。n系数量化效应对滤波器性能的影响与寄存器的字长有直接的 关系,并且和滤波器结构形式也同样密切相关。选择合适的 系统结构,可以减小系数量化带来的影响,帮助我们选择合 适的字长,为滤波器的工程实现提供依据,从而设计出符合 频率响应指标要求的系统。9.2 数字滤波器系数量化误差分析25n 滤波器的稳定性取决于极点的位置,如果系 数量化误差使单位圆内的极点移到了单位圆上或 圆外,则滤波器的特性与所要求的频率响应不同 ,滤波器的稳定性就受到了破坏,显然,单位圆 内最靠近单位圆的极点最容易出现这种情况。9.2.1 系数量化误差对滤波器稳定性的影响26nFIR滤波器仅在Z=0处有高阶极点,没有其他极点 ,因而系数量化误差将主要影响零点的位置,不会 影响滤波器的稳定性。但对于IIR滤波器,一般存 在着许多极