资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,7,章数字信号处理中的有效字长效应,前言,数字信号处理的实质:一组数值运算。,从设计的角度来讨论:认为数字是无限精度的。,从实现的角度考虑:数字的精度就是有限的,数字系统中的每一个数总是用有限字长的二进制数码表示,运算过程中需要的数字信号的值、系统的系数和运算过程中的结果都是存储在有限字长的存储单元中的,此时数字的精度就是有限的。,从设计时的无限精度到实现时的有限精度,会产生相对于原设计系统的误差,严重时会导致系统崩溃。,在数字系统中三种因有限字长的影响而引起误差的因素,A/D,变换的量化效应,系数的量化效应,数字运算过程中的有限字长效应,7.1,二进制数的表示与量化误差,1、定点数的表示,所有数据小数点的位置是固定不变的,2、浮点数的表示,浮点数的小数点位置是不固定的,它随每个数的大小而变化,M,是数的尾数部分,,R,是数的基数,,P,是阶,基数确定后,浮点数就完全由尾数和阶决定,7.1.1,二进制数的表示,一个浮点数可以表示如下:,:阶,P,的符号位; :阶码,阶,P,的绝对值部分,:尾数,M或,浮点数,N,的符号位,尾符或数符;,:尾数的绝对值部分,尾码。,3、IEEE,浮点数,规格化浮点数的小数点在数符,Sm,的后面,且小数点前有一个隐含“,1,”。其阶码连同阶符统一编码,浮点数的基数为,2,。,IEEE,浮点数格式分单精度和双精度两种,单精度数为,32,位,双精度数是,64,位。,单精度浮点数格式:,双精度浮点数格式:,带符号数的表示,设任意数,x,的,(b,十,1),位码的形式为,a,0,a,1,a,2,a,3,a,b,a0,表示符号位,1、原码:,a0,是符号位,,a,1,a,b,是小数的绝对值,表达式(a,0,a,1,a,2,a,3,a,b),表示的十进制数,x,为,(2),反码,正数的反码表示与其原码相同,即,x,反,x(x0),负数的反码由其绝对值按位求反后得到,x,反,2-x,原,表达式(a,0,a,1,a,2,a,3,a,b),表示的十进制数,x,为,(3),补码,正数的补码表示与其原码相同,即,x,补,x,(,x0,),负数的补码由它的绝对值求反加,1,后得到:,表达式(a,0,a,1,a,2,a,3,a,b),表示的十进制数,x,为,7.1.2,量化误差,一、,定点运算中的截尾误差和舍入误差,1、,截尾误差,对于正小数,x0:,原码、反码、补码的表示法相同,因而量化影响也相同。,截尾前,x,有,b1,位,有,截尾后,x,有,b,位,记做 ,有,以,E,T,表示截尾误差,则有,正小数截尾后数值变小,故截尾误差总是负的。当被截位,a,i,(i,b,1,到,i,b1),均为,l,时,为最大截尾误差,令,量化间距或量化步阶,因此下式成立,对于负小数,x0,,由于,a,0,0,不同码制x的,表示法各不相同,因而产生的量化误差也不相同。,i,)原码:截尾后负小数的绝对值变小,截尾误差为正:,ii,)对于补码,,iii,)对于反码:,结论:,原码与反码的截尾误差与数的正负有关:,正数时误差为负,当,x0时,,q,E,T,0,负数时误差为正,当,x0时,0E,T,q,补码的截尾误差皆为负数,对所有的,x,,,q,E,T,0。,定点制截尾处理的量化特性(,q,2,b,),(a),补码,(b),原码、反码,2、舍入误差,舍入误差总是处在,q,/2之间,,用 表示对,x,作舍入处理,,E,R,表示舍入误差,有:,定点制舍入处理的量化特性,定点运算中的截尾和舍入误差(,q,2,b,),截尾误差,舍入误差,正数,q,E,T,0,q,/2E,R,q,/2,负数,原码,0E,T,q,反码,0E,T,q,补码,q,0,时,,a,0,0,,三种码制的截尾误差均为,q,E,T,0,2、浮点截尾,当,x0,时,,a,0,1,原码和反码的截尾误差为0E,T,q,对于补码,截尾误差为,q,E,T,0,相应的,可得,浮点运算中的相对误差(,q,2,b,),截尾,舍入,正数,q,E,T,0,负数,原码,反码,补码,7.2 A/D,转换器中的量化误差,A/D,转换器,将输入的模拟信号,x,a,(t),转换为,b,位二进制数字信号的器件。,b,的数值可以是,8,,,12,或高至,20,。,A/D变换器前一般都加一个前置模拟低通滤波器,滤除高于折叠频率(抽样频率之半)的频率,,模拟输入信号必须乘一个比例因子,A/D变换器总是定点制的,必须使信号不超过A/D变换的动态范围,A/D,转换器包括,抽样,产生抽样序列,x(n),x,a,(t)|,t=nT,x,a,(nT),,,x(n):,可看成是一个无限精度的数字信号,在满足抽样定理的前提下,模拟信号时间离散化的过程是可逆的。,量化,对抽样序列进行幅度上的离散化之后,用某种格式的数字代码来表示。,量化过程是不可逆的,必定要引入量化误差或量化噪声。,量化噪声的大小决定了,A/D,转换器的动态范围,是恒量,A/D,转换器性能的一个最重要指标。,7.2.1,量化误差的统计分析,设量化器的输入信号为随机序列,x(n),,其量化误差也为随机序列,e(n):,e(n)=Qx(n)-x(n),假设,e(n),具有下列特性:,e(n),是一个平稳随机序列,e(n),与信号也不相关,e(n),本身的任意两个值之间不相关,,具有白噪声性质,e(n),在其误差范围内均匀等概分布。,A/D,转换原理,图,A/D,转换的统计模型,e(n),的两个最重要的统计参数,均值,m,e,:,代表噪声的直流分量,:代表了除去直流分量后量化噪声的平均功率,其中,:E,表示取数字期望,p(e),是误差值,e(n),的概率密度,三种误差范围的概率密度函数,1、舍入处理,舍入误差:,q,/2e(n),q,/2,e(n)的概率分布密度为1/,q,可得,均值,m,e,及方差,2、,截尾处理,对于,x0,的三种码制和,x0,的补码,:,e(n),的误差为,q,e(n)0,概率分布密度为1/,q,可得,均值,m,e,及方差,对于,x0,的原码和反码:,e(n),的误差为,0E,T,q,概率分布密度为1/,q,可得,均值,m,e,及方差,结论:,各种情况的方差 均为 ,,不同的只是均值,m,e,,分别为 。,另:由于截尾噪声具有直流分量,将影响信号的频谱结构,因此一般采用舍入处理。,量化噪声的方差 与量化间隔的平方 成正比,,:量化间隔,,信号处理时选用的字长,b,1,越长,量化噪声的方差越小。,7.2.2,量化信噪比与所需字长的关系,量化的信噪比,信号的平均功率 与量化噪声的平均功率 之比,信噪比用对数表示时记作,SNR,,单位,dB,信号功率 越大,信噪比越高;,随着字长,b,的增加,信噪比也增大,字长,b,每增加一位,则信噪比增加约,6dB,。,字长越长,A/D变换的信噪比越高,为了使信号不超过定点制运算所允许的动态范围,用一个小于,1,的正数,A,(,0,A,1,去乘,x(n),信号的平均功率 与量化噪声的平均功率 之比,选择,A,值:使,若需得到信噪比大于,70dB,,至少需要满足,b,12bit,字长过长也无必要:,输入信号,x,a,(t),本身也有一定的信噪比,字长长到,A/D,变换器的量化噪声比,x,a,(t),的噪声电平更低则没有意义,为提高信噪比,,可以增大输入信号,但这受到,A/D,变换器动态范围的限制,,还可以增加字长,b,,但这又受到输入信号,x,a,(t),信噪比的限制,7.2.3,量化噪声通过线性非时变系统,量化噪声通过线性系统,设,e(n),是定点补码舍入误差,,e(n),的均值为,m,e,、方差为,则系统量化噪声的输出 的均值,m,f,和方差 计算如下:,根据,Parseval,定理, 也可以用下式表示:,或者在单位圆上计算,如果,e(n),是补码截尾白噪声:,输出噪声的方差 不变,输出的均值,m,f,如下:,7.3,系数量化对数字滤波器的影响,7.3.1,极点位置灵敏度,每个极点位置对各系数偏差的敏感程度,决定系统的稳定性,对系统性能的影响亦较大,理想数字滤波器的系统函数为,其中 是系数,a,i,、,b,i,的量化结果:,对系数,a,i,、,b,i,量化后,其实际传递函数为:,下面讨论系数量化误差对极点的影响:,系数量化后的极点为:,原系统函数,H(z),的分母多项式为,令,A(z),0,,得到,H(z),的极点:,:极点位置的偏差量,由各个系数偏差 引起的,因此,结论:,就是极点 对系数 变化的灵敏度,越大, 对,的影响也越大,越小, 对 的影响就越小,下面根据,A(z),来求这个极点位置灵敏度 的表达式:,而:,得极点位置灵敏度为:,分母中的每一个因子 代表着某一极点 指向当前极点 的矢量,而整个分母正是所有极点指向当前极点 的矢量积,高阶直接型结构滤波器对系数量化误差的敏感性高于低阶直接型结构滤波器,并联型结构及级联型结构每对极点只受与之有关的两个系数的影响,且每个子系统的极点密集度要稀疏得多,因而极点位置受系数量化的影响比直接型结构要小得多,极点位置灵敏度与极点间距离成反比,例,1,设一低通滤波器的传递函数如下,分析计算系数量化对极点位置的影响。,解,经计算求得 的极点分别是,于是:,研究当 时,仅仅由一个系数 的量化所引起的极点 的变化,若字长为,8,位,由量化引起的误差,q,/2可达大约,0.002,,求得 ,于是,极点远远超出单位圆,这样的变化显然是太大了。,再研究 ,即将极点移到单位圆上需要的字长,二进制数中为,2,-14, ,2,-13,,字长至少要,14,位。,如果 ,2.945,的量化误差等于 ,就会使量化后系统的极点移到单位圆上,可见一个三阶系统对字长的要求已经非常严格了,如果阶数再高对量化误差的要求将更加苛刻。,考察用三个一阶的环节级联或并联组成这个系统。,每一个环节中极点从,0.99,变到,1.00,,允许变化,0.01,而且这个环节的稳定性并不受另一环节影响,所以其所需字长为,7,位,结论:,系数量化对零、极点位置的影响与零、极点位置的分布以及滤波器的结构均有密切的关系,高阶滤波器:避免采用直接型的结构,而应分解为最低阶的级联结构或并联结构,对于极点灵敏度很高的场合,可以来用双精度的系数,以便有效的达到精度的要求。,7.3.2,系数量化对二阶子系统极点位置的影响,高阶系统,级联型和并联型优于直接型。,级联型和并联型的基本子系统是二阶节,一个具有共轭极点的二阶系统有各种不同的结构,不同结构对于系数量化的敏感度也不同,二阶,IIR,系统的系统函数为,具有一对共轭对称的复极点,有,得到,共轭对称极点对组成的基本二阶网络的,直接型实现,说明:,对于二阶网络,其极点的半径 完全由系数 决定,极点在实轴上的坐标值 取决于系数 。,如果 、 用三位字长表示,,b,3(,不算符号位,),,,只能表达,8,种半径 值和 之间的,15,种实轴坐标值,三位二进码,1,2,3,所表达的,的值,|a,1,|,极点横坐标,a,2,三位二进码,所表达的,a,2,的值,极点半径,0.00,0.00,0.000,0.000,0.000,0.000,0.01,0.25,0.125,0.001,0.125,0.354,0.10,0.50,0.250,0.010,0.250,0.500,0.11,0.75,0.375,0.011,0.375,0.612,1.00,1.00,0.500,0.100,0.500,0.707,1.01,1.25,0.625,0.101,0.625,0.789,1.10,1.50,0.750,0.110,0.750,0.865,1.00,1.75,0.875,0.111,0.875,0.935,极点位置如下,图,中的网眼节点,如果所需要的极点位置不在这些网眼节点上时,就只能以最靠近的一个节点来代替这一极点位置,这样就引入了极点位置误差,系数量化使零极点位置的取值范围由一个连续域变为一个离散的平面点阵,从而造成零极点的漂移,导致系统特性的改变。,在平面上量化位置的分布密度是不均匀的,在实轴附近分布得稀,在虚轴附近分布得密;,半径小的地方分布得稀,半径大的地方分布得密。,这祥就会使实轴附近的极点,(,例加低通、高通滤波器,),量化误差较大、而对虚轴附近的极点,(,例如带通滤波器,),量化误差较小,这种分布只是二阶直接型结构的情况,不同结构的滤波器,系数对零极点位置的影响是不一样的,结论:,该网络的系统函数为,:,当系数量化时,是对 及 进行量化,因而所得到的网格点子在,z,平面是均匀分布的,这里系数量化后对,z,平面的所有区域,所产生的误差是相同的。,基本二阶网络的另一种实现,具有共轭极点对的二阶数字网络耦合形式实现情况下,系数量化为三比特时极点的可能位置,7.3.3,频率响应偏差的统计分析,1,、,IIR,数字滤波器系数量化的统计分析,N,阶,IIR,直接型结构为例,其理想精度的系统函数为,其中 是系数,a,i,、,b,i,的量化结果:,对系数,a,i,、,b,i,量化后,其实际传递函数为:,故系数量化后,实际的系统函数为,得到系统函数的偏差为,式中,系数量化造成的系统频率响应的偏差,系数量化的统计分析模型,可以用频响的均方偏差来描述,系数量化所引起的频率特性偏差,均方偏差 也是一个随机变量它的均值即为频响偏差,2,、,FIR,数字滤波器系数量化的统计分析,设,FIR,滤波器的系统函数为,对各系数 进行量化成为,有:,令 , ,则,所以,FIR,系数量化时,系统函数产生的误差不会超过,所以,当作定点舍入处理时,因为,7.4,数字滤波器的运算量化效应,为了便于用统计方法分析这些量化误差的平均效应,我们假定,所有这些噪声都是平稳的白噪声序列;,所有噪声都与信号不相关,并且各噪声之间也互不相关,每个误差噪声都在其误差范围内呈均匀等概率分布,7.4.1 IIR,滤波器定点运算舍入误差的统计,分析,a,理想相乘,b,实际相乘的非线性流图,c,统计模型的线性流图,定点相乘运算的流图表示,采用统计分析方法后,实际的输出可以表示为,7.4.1 IIR,滤波器定点运算舍入误差的统计,分析,a,理想相乘,b,实际相乘的非线性流图,c,统计模型的线性流图,定点相乘运算的流图表示,采用统计分析方法后,实际的输出可以表示为,方差,而每一个噪声源 所造成的输出噪声方差及均值:,最后将所有的输出噪声线性叠加就得到总的输出噪声,重要结论:有限字长效应与滤波器的结构型式有密切关系。,。,例,2,已知一个,IIR,滤波器的系统函数如下,用定点制算法,尾数舍入,分别求出直接型、级联型和并联型实现系统时量化误差的方差 。,、,1,、直接型结构,a,相乘引入的舍入噪声,b,三个舍入噪声,通过相同的传输网络,直接型的舍入噪声,:系数,0.2,、,1.7,以及,0.72,相乘后的舍入噪声,它们均经过相同的传输网络,输出噪声的方差是,2、级联型:可以有几种排列形式,先令 ,并把0.2置于第一级,即,、 通过网络 、 通过网络,输出噪声的方差是,第一级有两个误差源,第二级有一个误差源,故有,所以,再令 ,并把,0.2,置于第二级,有,、 通过网络 、 通过网络,输出噪声的方差,第一级有两个误差源,第二级有一个误差源,故有,所以,结论:系数,b,i,和,A,(,k,)的排列不同,输出误差也有所不同。,距单位圆远的极点和系数,b,i,置于较后级的误差会小些。,3、并联型,并联型结构需要,4,个系数,因此共有四个舍入噪声,、 通过网络,、 通过网络,因此输出的方差为,则第一级、第二级都有两个误差源,故有,所以,由此得出结论:对,IIR,滤波器,从有限字长效应来看,不论是哪一种型式的直接型结构都是最差的,运算误差最大,特别在高阶时应避免采用。级联型结构较好,而并联型结构具有最小的运算误差。,7.4.2 IIR,滤波器定点加法运算的溢出问题,所有的相加运算,均可能产生溢出,应避免,使每个相加点的输入端都引入比例因子,A,加以限制,使相加点的数值绝对值保持小于,1,。,为使第k个相加节点上的输出信号,y,k,(n),不发生溢出,需要在输入端引入比例因子,A,k,。,要使,y,k,(n),不发生溢出,则需使,| y,k,(n) |,1,,所以,若 表示输入信号的最大幅度,因此,选择其中最小的比例因子作为系统比例因子的最终选择,即,令,A,K,=1,,得到保证第,k,个节点上不出现溢出时的最大输入值上限,7.4.3,极限环振荡,IIR,滤波器在无限精度的情况下,当它的所有极点均位于单位圆内时,系统肯定是稳定的。,当去掉输入信号后随着,n,的增加,系统输出逐渐衰减趋向于零。,在有限字长情况下,由于量化过程的非线性作用,系统输出将不随,n,的增加而趋于零,零输入极限环振荡:系统输出不随,n,的增加而趋于零,而是衰减到某一非零的范围幅度后呈现振荡特性,以舍入处理的一阶IIR滤波器为例来说明这一现象,设一阶,IIR,系统的系统函数为,在定点运算中,每次乘法运算以后均要对尾数进行舍入处理。因此,实际的非线性差分方程可表示为,在无限精度运算下,其差分方程为,一阶,IIR,网络的非线性流图,在无限精度情况下,如果输入信号,只要,|a|1,,系统稳定,,y(n),将逐渐衰减为零。,输出,有限精度运算时,系数,a=0.5=0.100b,的情况,n,0,0.111,0.000,0.000000,0.000,0.875,1,0.000,0.111,0.011100,0.100,0.500,2,0.000,0.100,0.010000,0.010,0.250,3,0.000,0.010,0.001000,0.001,0.125,4,0.000,0.001,0.000100,0.001,0.125,以下也称为“死带”区域,零输入极限环振荡,下面分析振荡幅度和字长的关系,由于舍入误差的绝对值在 以内,因此,可得,或者,表明:极限环幅度与量化间隔成正比,,增加字长,(,减小量化间隔,),将使极限环振荡减弱,如,b=3,,故有 , ,有,一阶,IIR,网络的死带范围,与表,7-4-1,结果一致,7.4.4,定点运算的溢出振荡,溢出可能产生比之更大的误差,并在输出的最大幅度界限内振荡,称为,溢出极限环振荡,溢出极限环振荡产生的原因:定点加法运算存在着溢出,补码加法运算的非线性,以定点补码运算的二阶,IIR,滤波器为例进行讨论,此二阶滤波器的差分方程为,系统函数为,首先考虑系统的稳定性,稳定的条件是 的两个极点 、 在单位圆内,可得 、 的值域为,图,示的大三角形,即 、 落于大三角形之内才能满足,其次,为了保证不溢出,即要满足,如上图,中,的阴影部分,由此式求出 、 的关系,若,必定期足,系统不产生溢出极限环振荡的充要条件,由于溢出极限环的振荡幅度为,1,,数字滤波器无法对数据进行滤波,可以通过饱和型加法运算的办法加以消除。,饱和加法器的特点是,当相加器的输入之和大于,1,或小于,1,时,就分别以,1,和,1,代表相加结果,其特性如,图,所示,这样就能克服溢出振荡,补码饱和加法器特性,7.4.5,浮点运算中的有限字长效应,乘法和加法之后都需要进行尾数量化。,流图中乘法支路之后或加法节点处都将叠加个量化噪声,舍入或截尾处理只影响尾数的字长,不影响阶码,但所产生的误差值却与阶码值有关。,分析中用相对误差比用绝对误差更适合,系统的输出误差大小与系统的结构有关,本节上一部分系统结构对输出误差影响的结论同样成立,取相同的尾数字长时,浮点运算的误差要比定点运算的误差小。,浮点制中可以充分利用尾数的字长,使每一个数不论其数值大小,都能保持同样的相对精度,浮点制系统的字长一定时,其输出的信噪比为一常数;,定点制系统中,输出噪声的方差与信号无关,因此信号越大,输出的信噪比越大,7.5 FFT,算法的有限字长效应,从运算的角度分析,,FFT,与数字滤波器一样都是系统,因此,二者的有限字长效应分析方法基本上是相同的,不同的是,FFT,中的运算是一个复数运算,因此误差源是一个复数,同时,FFT,运算有多个输入端及多个输出端,各误差源对不同的输出端的影响是不同的。,以时间抽取,DIT,为例进行有限字长效应分析,并且针对的是舍入情况,其他,FFT,算法及截尾运算结果是相似的,7.5.1,蝶形运算的统计模型,定点制运算中只有乘法引入量化误差,加法运算不引入误差,蝶形运算中只在乘系数 时引入一个误差源,是复数相乘,所产生误差 就是一个复数,一个复数相乘要由四个实数相乘来构成、每个实数相乘都将引入一个相应的误差。因而共有四个误差,假设是舍入量化,则,复数 的方差 为,分析乘以 后的方差影响,通过所有后级蝶形时,其方差保持不变,每一个输出端都与,N,1,个蝶形相连,,即有,N,1,个量化噪声源对每个输出端有贡献,在终端,在离散傅里叶变换,上叠加的输出噪声的均方值为,和,FIR,滤波器的直接型实现一样,,输出噪声的总方差正比于,N,7.5.2,防止溢出和,FFT,输出的信噪比,分析蝶形运算,同样,所以,蝶形运算的输出最大值不超过输入端最大值的两倍。,从前一级到后一级,最大模值是逐级非减的,只要最后一级不出现溢出,则前一级计算一定不会溢出。,三种防止溢出的办法,1、输入端次衰减法,由蝶形公式可以证明,为使 不溢出,即 ,,所以输入 应满足条件,输出信噪比为,若 在 内等概率分布,则 的方差为,由于 ,输出信号的方差为,信噪比与,N,2,成反比,,N,增加一倍,,SNR,下降,4,倍,若保持运算精度不变,每增加一级运算,字长也需相应增加一位。这种防止溢出的办法,使得输入幅度被限制得过小,造成输出信号噪声比值过小,2、逐级衰减法,对每个蝶形结的两个输入支路都乘上个比例因子,每输入信号均乘以,1/2,,因此每个蝶形有二个乘法运算,即有二个误差源 、 。若每个误差源的方差为,则蝶形运算总的误差方差为,由于系数,1/2,存在,各误差源到输出端的传输系数不再是,1,或 的连乘积,,而是 或 的连乘积,连乘次数与蝶形位置有关。,因此第,m,级蝶形的误差源在输出端的误差方差 为,总的输出方差为,输出信噪比为,与,输入端一次衰减法,相比,信噪比有了很大的提高,为保证运算精度不变,,N,增加,4,倍,字长只需增加一位,3、成组浮点运算,保证 ,,将原始数据用成组浮点制表示为,为某个整数,称为共阶数,对,作定点,FFT,,当某个蝶形结出现溢出,则将整个这一级的序列,(,运算过的,未运算的,),全部左移一位,(,即乘,1,2,因子,),,并在阶码,p,上加,1,,然后运算从发生溢出的蝶形继续下去。,当以后某级蝶形运算又出现溢出时,再对该级的输入乘上,1/2,衰减因子,并在阶码,p,上加,1,继续运算,直到,L,级计算完为止,如果在整个变换过程中,一次溢出也没有发生,输出信号方差最大,当输入为白噪声型信号时,其值为,输出信噪比为,最坏的情况是各级都产生了衰减,这相当于第二种方法。所以成组浮点法快速傅立叶变换的信噪比的变化范围为,7.5.3,浮点,FFT,算法中的量化效应,采用的分析方法基本相同,对输入信号和舍入噪声做同样的假设,对任一输出节点,考虑与其相连的那些蝶形,与定点FFT算法误差分析不同之处有,浮点加法和浮点乘法之后都需做尾数处理,都会引入噪声源,因此模型设计与定点FFT系统有所不同,模型中的绝对误差换需算成相对误差,再进行分析,浮点制FFT系统任一输出节点处的输出信噪比为,
展开阅读全文