1、1第九章第九章 数字信号处理中的有限字长效应数字信号处理中的有限字长效应n9.1 9.1 有限字长效应及量化误差有限字长效应及量化误差 n9.2 9.2 数字滤波器系数量化误差分析数字滤波器系数量化误差分析n9.3 9.3 定点运算定点运算IIRIIR和和FIRFIR数字滤波器误差分析数字滤波器误差分析n9.4 9.4 浮点运算数字滤波器和浮点运算数字滤波器和FFTFFT算法中的有限算法中的有限字长效应字长效应2022-12-12内容提要内容提要n量化误差量化误差 (1)A/D(1)A/D变换器中的量化误差。变换器中的量化误差。(2)(2)滤波器的系数量化误差。滤波器的系数量化误差。(3)(3
2、)运算中的量化误差。运算中的量化误差。n研究研究有限字长效应目的有限字长效应目的:(1 1)若字长固定,进行误差分析,可知结果的可信)若字长固定,进行误差分析,可知结果的可信度,否则若可信度差,要采取改进措施。度,否则若可信度差,要采取改进措施。(2 2)用专用)用专用DSPDSP芯片实现数字信号处理时,定点与芯片实现数字信号处理时,定点与硬件采用字长有关。硬件采用字长有关。2022-12-139.19.1有限字长效应及量化误差有限字长效应及量化误差n9.1.1 9.1.1 有限字长效应有限字长效应n9.1.2 9.1.2 信号的量化误差信号的量化误差n9.1.3 A/D9.1.3 A/D变换
3、器中的量化效应变换器中的量化效应2022-12-149.1.1 有限字长效应有限字长效应n信号处理在具体实现时,信号处理在具体实现时,字长总是有限的字长总是有限的,因为,因为存储器是有限字长的,所以有限字长效应有存储器是有限字长的,所以有限字长效应有DFDF的有限字长效应、的有限字长效应、DFTDFT(FFTFFT)有限字长效应、)有限字长效应、A/DA/D变换器的变换器的量化误差量化误差。即有限字长意味着:有。即有限字长意味着:有限运算精度和有限动态范围。在量化和运算过程限运算精度和有限动态范围。在量化和运算过程中,由于有限字长必然产生误差,这些误差会给中,由于有限字长必然产生误差,这些误差
4、会给数字信号处理的实现精度和滤波器稳定性带来不数字信号处理的实现精度和滤波器稳定性带来不良影响。良影响。n如一个线性、非移变、因果系统的差分方程为:如一个线性、非移变、因果系统的差分方程为:)()()(inybinxanyNiiMii102022-12-15n输入序列输入序列x x(n n)、输出序列、输出序列y y(n n)以及方程中的系数以及方程中的系数a ai i、b bi i等,等,认为它们的数值是可以连续变化的,即:无限精度。认为它们的数值是可以连续变化的,即:无限精度。n但当具体实现一个离散系统时,无论用软件方式还是硬件方但当具体实现一个离散系统时,无论用软件方式还是硬件方式,都是
5、以数字形式实现,因而都要对数据进行量化处理,式,都是以数字形式实现,因而都要对数据进行量化处理,即用有限字长来表示。即用有限字长来表示。n下面从数据的量化角度来分析误差来源及其影响。下面从数据的量化角度来分析误差来源及其影响。n数的表示方法有数的表示方法有定点制定点制和和浮点制浮点制。n定点制指的是数码中小数点的位置固定不变,其不足是动态定点制指的是数码中小数点的位置固定不变,其不足是动态范围小,有溢出问题。而浮点制可以避免这个缺点,它的动范围小,有溢出问题。而浮点制可以避免这个缺点,它的动态范围大,可以避免溢出,不需要比例因子。态范围大,可以避免溢出,不需要比例因子。n浮点制是将一个数表示成
6、尾数和指数两部分。在浮点制运算浮点制是将一个数表示成尾数和指数两部分。在浮点制运算中,不论是相乘还是相加,尾数的位数都可能超过寄存器长中,不论是相乘还是相加,尾数的位数都可能超过寄存器长度,都要做尾数的量化处理,因而都有量化误差。度,都要做尾数的量化处理,因而都有量化误差。9.1.1 有限字长效应有限字长效应2022-12-169.1.1 有限字长效应有限字长效应 数的二进制编码形式有数的二进制编码形式有原码、反码和补码原码、反码和补码。二进制编码长度比寄存器长度长时,要进行尾数二进制编码长度比寄存器长度长时,要进行尾数处理,处理的方法有处理,处理的方法有舍入法舍入法和和截尾法截尾法。量化误差
7、的大小及性质与数的表示方法、二进制量化误差的大小及性质与数的表示方法、二进制编码形式及具体尾数处理方法有关,更与寄存器的长编码形式及具体尾数处理方法有关,更与寄存器的长度有关。另外系统的结构不同,将会明显地影响系统度有关。另外系统的结构不同,将会明显地影响系统输出的量化误差。输出的量化误差。2022-12-17 对于一个线性系统,有限字长效应造成数字信号处理输对于一个线性系统,有限字长效应造成数字信号处理输出的误差表现为:出的误差表现为:(一)如果被处理的是模拟信号(一)如果被处理的是模拟信号,则需经过模则需经过模/数转换器变成数转换器变成某一种编码方式的二进制数序列。某一种编码方式的二进制数
8、序列。取样取样和和量化量化是模是模/数转换器的两个主要过程。数转换器的两个主要过程。量化过程可以模型化为取样序列叠加上量化噪声,从而量化过程可以模型化为取样序列叠加上量化噪声,从而得到量化信号。对于一个线性系统,量化后的信号经滤波后得到量化信号。对于一个线性系统,量化后的信号经滤波后得到的输出信号得到的输出信号y y(n n)为两部分之和,一部分是输入信号为两部分之和,一部分是输入信号x x(n n)通过滤波器产生的输出通过滤波器产生的输出:y y(n)=(n)=x x(n n)*h h(n n),),另一部分是量化噪另一部分是量化噪声声e e(n n)通过滤波器产生的输出通过滤波器产生的输出
9、:e e0=0=e e(n n)*h h(n n),),这里这里h h(n n)为是为是滤波器的冲激响应。即,输入信号的量化在滤波器输出端引滤波器的冲激响应。即,输入信号的量化在滤波器输出端引起了噪声,这个噪声的大小与输入信号量化时的字长有关系。起了噪声,这个噪声的大小与输入信号量化时的字长有关系。9.1.1 有限字长效应有限字长效应2022-12-18n(二)二)系统中滤波器系数的量化处理,即用有系统中滤波器系数的量化处理,即用有限位二进制数来表示,则必然会引入量化误差。限位二进制数来表示,则必然会引入量化误差。n 对于某些结构类型的滤波器(例如,具有对于某些结构类型的滤波器(例如,具有反馈
10、支路的递归滤波器结构)来说,其反馈支路的递归滤波器结构)来说,其零点零点和和极点极点的位置对于滤波器系数的变化特别敏感,的位置对于滤波器系数的变化特别敏感,因而滤波器系数由于量化误差引起的微小改变,因而滤波器系数由于量化误差引起的微小改变,都有可能对滤波器的频率响应特性产生很大的都有可能对滤波器的频率响应特性产生很大的影响,尤其是在单位圆内且非常靠近单位圆的影响,尤其是在单位圆内且非常靠近单位圆的极点,一旦由于滤波器系数的量化误差,使这极点,一旦由于滤波器系数的量化误差,使这些极点跑到单位圆上或圆外时,滤波器就失去些极点跑到单位圆上或圆外时,滤波器就失去了其原有的稳定性。了其原有的稳定性。9.
11、1.1 有限字长效应有限字长效应2022-12-19n(三)(三)采用采用“截尾截尾”或或“舍入舍入”的处理方法将运算结果依据的处理方法将运算结果依据寄存器字长的大小进行处理,这会引入截尾误差或舍入误差。寄存器字长的大小进行处理,这会引入截尾误差或舍入误差。有限字长效应造成的误差,与以下几个问题有关:有限字长效应造成的误差,与以下几个问题有关:n量化方式是截尾还是舍入;量化方式是截尾还是舍入;n负数用二进制数的原码表示,还是用反码或补码表示;负数用二进制数的原码表示,还是用反码或补码表示;n算术运算是用定点运算还是用浮点运算;算术运算是用定点运算还是用浮点运算;n采用什么类型的系统结构采用什么
12、类型的系统结构 (例如,对于数字滤波器来说,例如,对于数字滤波器来说,是采用递归结构还是非递归结构,是采用高阶直接实现的结是采用递归结构还是非递归结构,是采用高阶直接实现的结构还是采用由低阶节组成的级联结构或并联结构构还是采用由低阶节组成的级联结构或并联结构)。9.1.1 有限字长效应有限字长效应2022-12-1109.1.2 9.1.2 信号的量化误差信号的量化误差在实际应用中待处理信号往往都是一些模拟信号:在实际应用中待处理信号往往都是一些模拟信号:n 声音、图像、电压、水流、气温、压力、心电图等。声音、图像、电压、水流、气温、压力、心电图等。n 借助借助A/DA/D转换转换将模拟信号转
13、变成数字信号,然后再进将模拟信号转变成数字信号,然后再进行后续的相关处理。如有必要再通过行后续的相关处理。如有必要再通过D/AD/A转换转换,将数字,将数字信号还原为可听、可视的模拟信号。信号还原为可听、可视的模拟信号。n 在这种转换过程当中,时域采样是数字技术处理连续在这种转换过程当中,时域采样是数字技术处理连续信号的重要环节。信号的重要环节。采样采样就是指利用就是指利用“采样器采样器”从连续信从连续信号中号中“抽取抽取”信号的离散序列样值,即称之为信号的离散序列样值,即称之为“采样采样”信号。信号。“采样采样”也称也称“取样取样”、“抽样抽样”。采样信号在。采样信号在时间上离散化了,但它还
14、不是数字信号,还须经过量化时间上离散化了,但它还不是数字信号,还须经过量化编码才能转变为数字信号。即要将模拟信号编码才能转变为数字信号。即要将模拟信号抽样和量化抽样和量化,使之转换成一定字长的数字序列值信号。使之转换成一定字长的数字序列值信号。2022-12-111n数字序列值用有限长的二进制数表示数字序列值用有限长的二进制数表示 例如序列值例如序列值(0.729156)(0.729156)1010=(0.101110101010101)=(0.101110101010101)2 2,若限制用八位二进制数来表示,则为(若限制用八位二进制数来表示,则为(0.101110100.10111010)
15、2 2,而,而(0.101110100.10111010)2 2=(0.72656250.7265625)1010,那么,那么,引起的误差为:引起的误差为:0.729156-0.7265625=0.00259350.729156-0.7265625=0.0025935,该误差,该误差称为称为量化误差。量化误差。这是在二进制数的存储方面。这是在二进制数的存储方面。另一方面,在定点制的乘法以及浮点制的加法和乘法在另一方面,在定点制的乘法以及浮点制的加法和乘法在运算结束后都会使字长增加,因而都需要再对运算结束后都会使字长增加,因而都需要再对尾数进行处理尾数进行处理,其误差取决于所用的二进制的位数其误
16、差取决于所用的二进制的位数b b、数的运算方式(定点、数的运算方式(定点制或浮点制)、负数的表示法以及对尾数的处理方法。制或浮点制)、负数的表示法以及对尾数的处理方法。9.1.2 9.1.2 信号的量化误差信号的量化误差2022-12-112 假设序列值用假设序列值用b b+1+1位二进制数来表示,其位二进制数来表示,其中用中用1 1位来表示符号,用位来表示符号,用b b位表示尾数,最小位表示尾数,最小码位所表示的数值称为码位所表示的数值称为“量化步阶量化步阶”或或“量量化宽度化宽度”,用来表示,则,用来表示,则q q=2=2-b-b 。如果二进制编码的尾数长于如果二进制编码的尾数长于b b,
17、则必须,则必须要进行尾数处理,且处理成要进行尾数处理,且处理成b b位,也即量化。位,也即量化。尾数处理有两种方法,即尾数处理有两种方法,即截尾法截尾法和和舍入法舍入法。9.1.2 9.1.2 信号的量化误差信号的量化误差2022-12-113n截尾法截尾法是将尾数的第是将尾数的第b b+1+1位以及后面的二进制码全部略去。位以及后面的二进制码全部略去。n舍入法舍入法是按最接近的值取是按最接近的值取b b位值,即将第位值,即将第b b+1+1位按逢位按逢1 1进位,进位,逢逢0 0不进位,然后略去后面的不进位,然后略去后面的b b+1+1位。位。n显然这两种处理方法所引起的误差是不同的显然这两
18、种处理方法所引起的误差是不同的。n对于定点制二进制数的对于定点制二进制数的舍入法舍入法,原码、反码和补码的量化误,原码、反码和补码的量化误差差e ei i是相同的,范围是:是相同的,范围是:-q q/2/2e ei i q q/2/2。n对于对于截尾法截尾法,不同的编码其量化误差,不同的编码其量化误差e ei i的范围也不相同:的范围也不相同:n定点制正数原码的量化误差定点制正数原码的量化误差e ei i的范围为:的范围为:-q q e ei i 00;n定点负数原码的量化误差定点负数原码的量化误差e ei i的范围为:的范围为:0 0 e ei i q q 。n定点补码的量化误差定点补码的量
19、化误差e ei i的范围为:的范围为:-q q e ei i 00。9.1.2 9.1.2 信号的量化误差信号的量化误差2022-12-1141 1下面是定点制运算中的下面是定点制运算中的截尾误差截尾误差和和舍入误差舍入误差。9.1.2 9.1.2 信号的量化误差信号的量化误差 (a a)补码)补码 (b b)原码、反码)原码、反码图图9-1 9-1 截尾处理的量化特性(截尾处理的量化特性(q q=2=2-b b)图图9-2 9-2 舍入处理的量化特性舍入处理的量化特性2022-12-115n表表9-1 9-1 定点运算中的截尾和舍入误差(定点运算中的截尾和舍入误差(q q=2=2-b b)9
20、.1.2 9.1.2 信号的量化误差信号的量化误差2022-12-116n2 2浮点制运算中的截尾误差和舍入误差。浮点制运算中的截尾误差和舍入误差。n 表表9-2 9-2 浮定点运算中的相对误差浮定点运算中的相对误差9.1.2 9.1.2 信号的量化误差信号的量化误差2022-12-117n由以上分析可以看出,舍入和截尾都产生非线性关系。由以上分析可以看出,舍入和截尾都产生非线性关系。n定点补码截尾法量化噪声的统计平均值为定点补码截尾法量化噪声的统计平均值为-q q/2/2,相当于,相当于给信号增加了一个直流分量,从而改变了信号的频谱结给信号增加了一个直流分量,从而改变了信号的频谱结构;构;n
21、而舍入法的统计平均值为而舍入法的统计平均值为0 0,这一点比定点补码截尾法好。,这一点比定点补码截尾法好。为了研究量化误差对数字信号处理系统精度的影响,必为了研究量化误差对数字信号处理系统精度的影响,必须了解舍入和截尾误差的特型,一般最方便的方法是把须了解舍入和截尾误差的特型,一般最方便的方法是把这些量化误差看成随机变量,对每种误差求出概率密度这些量化误差看成随机变量,对每种误差求出概率密度函数,并进行较为合理的假设,即量化误差在整个可能函数,并进行较为合理的假设,即量化误差在整个可能出现的范围内是等概率的,也就是均匀分布的。对于定出现的范围内是等概率的,也就是均匀分布的。对于定点制,变量为绝
22、对误差点制,变量为绝对误差E ET T,对于浮点制,变量为相对误,对于浮点制,变量为相对误差差 R R。9.1.2 9.1.2 信号的量化误差信号的量化误差2022-12-1189.1.3 A/D9.1.3 A/D变换器中的量化效应变换器中的量化效应 A/D A/D(模(模/数)变换器完成的是将模拟信号转换成数字信数)变换器完成的是将模拟信号转换成数字信号的作用,即将输入的模拟信号号的作用,即将输入的模拟信号x x(t t)转换为转换为b b位二进制数字信位二进制数字信号。变换器号。变换器位数有限位数有限,因此存在量化误差。分析,因此存在量化误差。分析A/DA/D变换器变换器 量化效应的目的量
23、化效应的目的在于选择合适的字长,以满足信噪比指在于选择合适的字长,以满足信噪比指标。标。假设用假设用e e(n n)表示量化误差,表示量化误差,x x(n n)表示没有量化误差的抽表示没有量化误差的抽样序列数字信号(即无限精度),量化器对每个抽样序列样序列数字信号(即无限精度),量化器对每个抽样序列x x(n n)进行截尾或舍入的量化处理,用表示量化编码后的信号,进行截尾或舍入的量化处理,用表示量化编码后的信号,则则 =x x(n n)+)+e e(n)(n)x x(n n)是有用信号,是有用信号,e e(n n)呈现噪声的特点,相当于在呈现噪声的特点,相当于在A/DA/D变变换器中引入一个噪
24、声源。这样换器中引入一个噪声源。这样A/DA/D变换器的输出中除了有用变换器的输出中除了有用信号以外,还增加了一个噪声信号。信号以外,还增加了一个噪声信号。)(nx 2022-12-119nA/DA/D变换器的统计模型如图变换器的统计模型如图9-39-3所示。图中的理想所示。图中的理想A/DA/D变换器没有量化误差,实际中的量化误差是在变换器没有量化误差,实际中的量化误差是在输出端叠加一个等效的噪声源输出端叠加一个等效的噪声源e e(n n)。n 图图9-3 A/D9-3 A/D变换器的统计模型变换器的统计模型9.1.3 A/D9.1.3 A/D变换器中的量化效应变换器中的量化效应2022-1
25、2-120n 由于在抽样模拟信号的数字处理中,把量化噪由于在抽样模拟信号的数字处理中,把量化噪声看成相加性噪声序列,量化过程看成是无限精度声看成相加性噪声序列,量化过程看成是无限精度的信号与量化噪声的叠加,因而的信号与量化噪声的叠加,因而信噪比信噪比是一个衡量是一个衡量量化效应的重要指标。量化效应的重要指标。9.1.3 A/D9.1.3 A/D变换器中的量化效应变换器中的量化效应2022-12-121n一般一般A/DA/D变换器采用定点制,尾数采用舍入变换器采用定点制,尾数采用舍入法。若共有法。若共有b b+1+1位,符号占位,符号占1 1位,尾数为位,尾数为b b位,位,量化步阶为量化步阶为
26、q q=2=2-b-b。为了简化分析,对该模。为了简化分析,对该模型做如下假设:型做如下假设:n(1 1)e e(n n)是白噪声序列;是白噪声序列;n(2 2)e e(n n)与与x x(n n)不相关;不相关;n(3 3)e e(n n)在自己的取值范围在自己的取值范围 内呈均匀分布。内呈均匀分布。9.1.3 A/D9.1.3 A/D变换器中的量化效应变换器中的量化效应2022-12-122n图图9-49-4给出的是舍入量化噪声概率密度函数曲线。给出的是舍入量化噪声概率密度函数曲线。e e(n n)的统计平均值为的统计平均值为 =0=0,平均功率(即均方差),平均功率(即均方差)为为 。A
27、/DA/D变换器的输出变换器的输出信噪比信噪比S S/N N 用信号平均功率与舍入量化噪声的平均功率之比用信号平均功率与舍入量化噪声的平均功率之比 表示,即表示,即 则信噪比的分贝数为:则信噪比的分贝数为:(9-19-1)9.1.3 A/D9.1.3 A/D变换器中的量化效应变换器中的量化效应em1222qe122222qNSxexbNSxex02679101010222.lglg2022-12-123n上式表明上式表明:n(1 1)A/DA/D变换器输出的信噪比与变换器输出的信噪比与A/DA/D变换器的变换器的字长有关;(字长有关;(2 2)与输入信号的平均功率有关。)与输入信号的平均功率有
28、关。n结论为结论为:(:(1 1)A/DA/D变换器量化字长每增加变换器量化字长每增加1 1位,位,输出信噪比约可以提高输出信噪比约可以提高6dB6dB。但是。但是b b受到输入信受到输入信号的信噪比的限制;(号的信噪比的限制;(2 2)输入信号越大则输出)输入信号越大则输出信噪比越高。但一般信噪比越高。但一般A/DA/D变换器的输入都有一定变换器的输入都有一定的动态范围限定,否则过大的动态范围,会发生的动态范围限定,否则过大的动态范围,会发生限幅失真。实际应用中线性限幅失真。实际应用中线性A/DA/D一般要求一般要求1212位以位以上满足通信要求,非线性上满足通信要求,非线性A/DA/D一般
29、要求一般要求8 8位以上位以上满足通信要求。满足通信要求。9.1.3 A/D9.1.3 A/D变换器中的量化效应变换器中的量化效应2022-12-124n 9.2.1 9.2.1 系数量化误差对滤波器稳定性的影响系数量化误差对滤波器稳定性的影响n 9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响9.2 9.2 数字滤波器系数量化误差分析数字滤波器系数量化误差分析2022-12-125n前面讨论中,在设计理想数字滤波器时,各滤波器系数前面讨论中,在设计理想数字滤波器时,各滤波器系数b bk k,a ak k都是无限精度的。都是无限精度的。n但实
30、际实现系统函数时,滤波器系数都是被量化了的,所有但实际实现系统函数时,滤波器系数都是被量化了的,所有系数只能用有限字长的二进制数来表示。系数只能用有限字长的二进制数来表示。n系数的量化误差系数的量化误差,在不同程度上使滤波器的,在不同程度上使滤波器的零点和极点零点和极点偏离偏离设计中预定的位置,从而影响到滤波器的频率特性偏离设计设计中预定的位置,从而影响到滤波器的频率特性偏离设计的要求,在量化误差严重时,如果的要求,在量化误差严重时,如果z z平面单位圆内极点偏移平面单位圆内极点偏移到单位圆外,使滤波器性能不稳定而无法使用。到单位圆外,使滤波器性能不稳定而无法使用。n系数量化效应对滤波器性能的
31、影响与寄存器的字长有直接的系数量化效应对滤波器性能的影响与寄存器的字长有直接的关系,并且和滤波器结构形式也同样密切相关。选择合适的关系,并且和滤波器结构形式也同样密切相关。选择合适的系统结构,可以减小系数量化带来的影响,帮助我们选择合系统结构,可以减小系数量化带来的影响,帮助我们选择合适的字长,为滤波器的工程实现提供依据,从而设计出符合适的字长,为滤波器的工程实现提供依据,从而设计出符合频率响应指标要求的系统。频率响应指标要求的系统。9.2 9.2 数字滤波器系数量化误差分析数字滤波器系数量化误差分析2022-12-126n 滤波器的滤波器的稳定性稳定性取决于极点的位置,如果系取决于极点的位置
32、,如果系数量化误差使单位圆内的极点移到了单位圆上或数量化误差使单位圆内的极点移到了单位圆上或圆外,则滤波器的特性与所要求的频率响应不同,圆外,则滤波器的特性与所要求的频率响应不同,滤波器的稳定性就受到了破坏,显然,单位圆内滤波器的稳定性就受到了破坏,显然,单位圆内最靠近单位圆的极点最容易出现这种情况。最靠近单位圆的极点最容易出现这种情况。9.2.1 9.2.1 系数量化误差对滤波器稳定性的影响系数量化误差对滤波器稳定性的影响2022-12-127nFIRFIR滤波器仅在滤波器仅在Z Z=0=0处有高阶极点,没有其他极点,处有高阶极点,没有其他极点,因而系数量化误差将主要影响零点的位置,不会影因
33、而系数量化误差将主要影响零点的位置,不会影响滤波器的稳定性。但对于响滤波器的稳定性。但对于IIRIIR滤波器,一般存在着滤波器,一般存在着许多极点,情况则不同,所以可以用系数量化引起许多极点,情况则不同,所以可以用系数量化引起极点、零点的位置误差来衡量一个网络结构对系数极点、零点的位置误差来衡量一个网络结构对系数量化灵敏度的影响。不同形式的系统结构,在相同量化灵敏度的影响。不同形式的系统结构,在相同的系数的系数“量化步距量化步距”情况下,其量化灵敏度是不同情况下,其量化灵敏度是不同的。的。9.2.1 9.2.1 系数量化误差对滤波器稳定性的影响系数量化误差对滤波器稳定性的影响)()()(zAz
34、BzazbzHNkkkMkkk101(9-29-2)2022-12-128n(9-29-2)式表示了一个无限精度的)式表示了一个无限精度的N N阶直接型结构阶直接型结构的的IIRIIR数字滤波器的系统函数,它具有窄带低通频数字滤波器的系统函数,它具有窄带低通频率特性。因此,该滤波器的极点都在单位圆内聚率特性。因此,该滤波器的极点都在单位圆内聚集在集在z z=1=1附近。系数附近。系数a ak k和和b bk k是系统直接结构所求出是系统直接结构所求出的无限精度的系数,量化造成的系数误差为的无限精度的系数,量化造成的系数误差为a ar r和和b br r,量化后的系数用,量化后的系数用 和和 表
35、示,即表示,即n (9-3)9.2.1 9.2.1 系数量化误差对滤波器稳定性的影响系数量化误差对滤波器稳定性的影响ra rbrrraaarrrbbb2022-12-129n则实际的系统函数可表示为则实际的系统函数可表示为:9.2.1 9.2.1 系数量化误差对滤波器稳定性的影响系数量化误差对滤波器稳定性的影响NkkkMkkkzazbzH101)((9-49-4)2022-12-130n从式(从式(9-49-4)可以看出,系数量化后的频率响应已不)可以看出,系数量化后的频率响应已不同于最初设计的频率响应。同于最初设计的频率响应。n当用直接型结构来实现该滤波器时,系数当用直接型结构来实现该滤波器
36、时,系数a ak k和和b bk k都将都将直接出现在信号流程图中,其中直接出现在信号流程图中,其中a ak k影响着极点的位置。影响着极点的位置。当由于系数量化误差使一个极点从单位圆内移动到当由于系数量化误差使一个极点从单位圆内移动到单位圆上或单位圆外时,滤波器的稳定性即受到破单位圆上或单位圆外时,滤波器的稳定性即受到破坏。所以,只要有一个系数由于量化产生很微小的坏。所以,只要有一个系数由于量化产生很微小的误差,就有可能使系统失去稳定。反馈支路的阶次误差,就有可能使系统失去稳定。反馈支路的阶次N N越高,使滤波器失去稳定的系数量化误差的绝对值越高,使滤波器失去稳定的系数量化误差的绝对值就越小
37、,则越容易使滤波器变得不稳定。就越小,则越容易使滤波器变得不稳定。9.2.1 9.2.1 系数量化误差对滤波器稳定性的影响系数量化误差对滤波器稳定性的影响2022-12-131n系数量化误差系数量化误差导致实际的频率响应与理论上要求的导致实际的频率响应与理论上要求的频率响应不同,或者说表现在零点和极点位置偏离频率响应不同,或者说表现在零点和极点位置偏离了理论上规定的位置。了理论上规定的位置。n引入引入极点位置灵敏度极点位置灵敏度的概念,来衡量每个极点位置的概念,来衡量每个极点位置对各系数量化偏差的敏感程度。对各系数量化偏差的敏感程度。n不同形式的系统结构,在相同的系数不同形式的系统结构,在相同
38、的系数“量化步距量化步距”的情况下,其量化灵敏度是不同的。用同样的方法的情况下,其量化灵敏度是不同的。用同样的方法可以分析零点位置灵敏度,但极点对系统的影响更可以分析零点位置灵敏度,但极点对系统的影响更大,直接影响到系统得稳定性,所以更为人们所注大,直接影响到系统得稳定性,所以更为人们所注意和研究。因此,为了得到与理想频率特性尽可能意和研究。因此,为了得到与理想频率特性尽可能接近的实际频率特性,应当选择极点和零点位置对接近的实际频率特性,应当选择极点和零点位置对系数量化误差最不敏感的那些结构形式。系数量化误差最不敏感的那些结构形式。9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响
39、系数量化误差对滤波器零、极点位置的影响2022-12-132n设滤波器的传输函数设滤波器的传输函数 由式(由式(9-49-4)给出,系数)给出,系数a ak k 和和b bk k经舍入量化后由式(经舍入量化后由式(9-39-3)给出,这里)给出,这里a ak k和和b bk k是量化误差。是量化误差。n 有有N N个极点,用个极点,用 (=1,2,=1,2,N N)表示。这样,)表示。这样,实际的滤波器的传输函数为实际的滤波器的传输函数为:9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响)(zH)(zHipNiMkkkNkkkMkkkzpip
40、izbzazbzH1101011)()((9-59-5)2022-12-133n上式中,上式中,是第是第i i个极点位置的偏移,称为个极点位置的偏移,称为极点误差极点误差,它是由它是由 系数量化误差引起的。系数量化误差引起的。与与 之间的关系之间的关系是是:9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响ipkaipkaNiaappkNkkii,11式中,式中,得大小直接影响第得大小直接影响第k k个系数偏差个系数偏差 所引起所引起的第的第i i个极点偏差个极点偏差 的大小:的大小:越大,越大,越大。越大。也即也即 是说明第是说明第i i个极
41、点的位置对分母多项式中第个极点的位置对分母多项式中第k k个系个系数的量化误差的敏感程度的一个量,称为数的量化误差的敏感程度的一个量,称为极点敏感度极点敏感度 。kiap/kiap/ipkiap/ipkiap/2022-12-134n经过推导可以得出经过推导可以得出灵敏度灵敏度和和极点极点的关系:的关系:9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响NillliNkkNikipppap11(9-69-6)2022-12-135n上式即是系数量化偏差引起的第上式即是系数量化偏差引起的第i i个极点的偏差。个极点的偏差。n说明了滤波器的第说明了
42、滤波器的第i i个极点的位置对传输函数分母多个极点的位置对传输函数分母多项式的第项式的第k k个系数的量化误差的敏感程度与极点分布个系数的量化误差的敏感程度与极点分布的关系。此式只对单阶极点有效,多阶极点可进行的关系。此式只对单阶极点有效,多阶极点可进行类似的推导。对于直接型结构,由于它的零点只取类似的推导。对于直接型结构,由于它的零点只取决于分子多项式的系数,因而对于零点可得到完全决于分子多项式的系数,因而对于零点可得到完全相似的结果。相似的结果。9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响2022-12-1么么么么方面nSds绝对是假
43、的37n具体来说,由式(具体来说,由式(9-69-6)可以得出以下)可以得出以下结论结论:n (1 1)分母多项式中,分母多项式中,是极点是极点 指向极点指向极点 的矢量,整个分母是所有极点与第的矢量,整个分母是所有极点与第i i个极点之间的矢个极点之间的矢量乘积。如果这些距离都很小即如果所有量乘积。如果这些距离都很小即如果所有N N个极点个极点都聚集在一起,那么距离的矢量乘积就很小,第都聚集在一起,那么距离的矢量乘积就很小,第i i个个极点的位置对系数量化误差就非常敏感,即极点位极点的位置对系数量化误差就非常敏感,即极点位置灵敏度高,相应的极点偏差就大。置灵敏度高,相应的极点偏差就大。9.2
44、.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响lipp lpip2022-12-138n(2 2)极点偏差与系统函数的阶数极点偏差与系统函数的阶数N N有关,阶数越有关,阶数越高,滤波器的极点位置对系数量化误差越敏感,高,滤波器的极点位置对系数量化误差越敏感,极点偏差也大。高阶直接型结构滤波器的极点数极点偏差也大。高阶直接型结构滤波器的极点数目多而密,低阶直接型结构滤波器的极点数目少目多而密,低阶直接型结构滤波器的极点数目少而稀疏,因而前者对系数量化误差要更加敏感,而稀疏,因而前者对系数量化误差要更加敏感,同理,并联型结构和级联型结构比直接型结构
45、要同理,并联型结构和级联型结构比直接型结构要好得多。因此,高阶结构时,由于各二阶节相互好得多。因此,高阶结构时,由于各二阶节相互独立级联或并联的结构来实现,而很少采用直接独立级联或并联的结构来实现,而很少采用直接型结构。型结构。9.2.2 9.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响2022-12-139n(3 3)当采用二阶节级联或并联结构时,由于各二当采用二阶节级联或并联结构时,由于各二阶节相互独立,各有一对复共轭极点,特别是对于阶节相互独立,各有一对复共轭极点,特别是对于窄带带通滤波器来说,每对复共轭极点的两极点都窄带带通滤波器来说,每对复共轭
46、极点的两极点都相距较远,因而系数量化误差对极点置的影响格外相距较远,因而系数量化误差对极点置的影响格外小。小。n 综上以上考虑综上以上考虑,为了减小系数量化误差对极点,为了减小系数量化误差对极点位置的影响,系统的结构应当避免采用高阶的直接位置的影响,系统的结构应当避免采用高阶的直接型结构,而最好采用由一阶或二阶节构成的级联或型结构,而最好采用由一阶或二阶节构成的级联或并联结构来实现。这样可避免较多的零、极点集中并联结构来实现。这样可避免较多的零、极点集中在一起。通常为了能够独立地控制各节的极点或零在一起。通常为了能够独立地控制各节的极点或零点,多选用级联结构。点,多选用级联结构。9.2.2 9
47、.2.2 系数量化误差对滤波器零、极点位置的影响系数量化误差对滤波器零、极点位置的影响2022-12-1409.39.3定点运算定点运算IIRIIR和和FIRFIR数字滤波器误差分析数字滤波器误差分析n9.3.1 9.3.1 有限字长定点运算有限字长定点运算IIRIIR滤波器的误差分析滤波器的误差分析n9.3.2 9.3.2 定点定点FIRFIR滤波器的有限字长效应滤波器的有限字长效应2022-12-1419.3 9.3 定点运算定点运算IIRIIR和和FIRFIR数字滤波器误差分析数字滤波器误差分析n 通过前面的讨论我们知道,系统的系数量化对通过前面的讨论我们知道,系统的系数量化对零、极点位
48、置的改变,将导致系统频响特性的改变。零、极点位置的改变,将导致系统频响特性的改变。利用零、极点位置敏感度无法直接得到频响特性的利用零、极点位置敏感度无法直接得到频响特性的偏差,尤其当系统为高阶的情况,其系数多且量化偏差,尤其当系统为高阶的情况,其系数多且量化误差具有随机特点,所以可以将系数量化误差等效误差具有随机特点,所以可以将系数量化误差等效为随机变量,通过采用统计方法估计高阶系统的性为随机变量,通过采用统计方法估计高阶系统的性能偏差。能偏差。2022-12-142n实现数字滤波器所包含的基本运算有实现数字滤波器所包含的基本运算有延时延时、乘乘系数系数和和相加相加三种。三种。n延时运算由寄存
49、器来完成,并不造成字长的变延时运算由寄存器来完成,并不造成字长的变化,而通常信号和滤波器的系数用有限字长定化,而通常信号和滤波器的系数用有限字长定点二进制小数表示,因此,滤波器主要涉及乘点二进制小数表示,因此,滤波器主要涉及乘系数和相加乘法和加法运算造成的影响。系数和相加乘法和加法运算造成的影响。n定点小数相加后字长不会增加,因此无需进行定点小数相加后字长不会增加,因此无需进行截尾或舍入处理;定点小数相加的溢出问题可截尾或舍入处理;定点小数相加的溢出问题可以通过乘以适当的比例因子的办法来解决。定以通过乘以适当的比例因子的办法来解决。定点小数相乘没有溢出问题,但字长会增加,因点小数相乘没有溢出问
50、题,但字长会增加,因此必须采用截尾或舍入处理。此必须采用截尾或舍入处理。9.3 9.3 定点运算定点运算IIRIIR和和FIRFIR数字滤波器误差分析数字滤波器误差分析2022-12-143n每次进行定点小数乘法运算后,都会引入每次进行定点小数乘法运算后,都会引入截尾截尾或或舍舍入噪声入噪声,并最终在滤波器输出端反映出来。,并最终在滤波器输出端反映出来。n浮点制运算中,相加和相乘都有可能使尾数增加,浮点制运算中,相加和相乘都有可能使尾数增加,故都会有舍入或截尾,故都会有舍入或截尾,引起运算量化误差引起运算量化误差,但,但不存不存在动态范围问题在动态范围问题。n舍入或截尾的处理是非线性过程,分析