AD 和动态范围
1、首先明确动态范围的概念:
动态范围=20*log(最大的数/最小的数
单精度浮点格式: [31] 1位符号 [30-23]8位指数 [22-00]23位小数
单精度浮点数动态范围=1667.6dB 这样大的动态范围使得我们在编程的时候几乎不必考虑乘法和累加的溢出,而如果使用定点处理器编程,对计算结果进行舍入和移位则是家常便饭,这在一定程度上会损失是精度。原因在于定点处理处理的信号的动态范围有限,
16位定点DSP 表示整数范围为1-65536,其动态范围为20*log(65536/1)=96dB
32定点DSP ,动态范围为20*log(2^32/1)=192dB,对绝大多数应用所处理的信号已经足够了。
2、对于ADC
它的转化位数决定了其动态范围,由于AD 转换器的位数限制,一般输入信号的动态范围都比较小 max125:
14位,动态范围=20*log(2^14/1)=84.29db,如果只算有效位的话,低2位不算了,那么还会降低 20*log(2^12/1)=72.25db
3、运放的动态范围
4、输入信号的动态范围
=================================================
ADC 测试参数定义、分析及策略之动态测试
◆输入信号
对于模数转换器来说,输入信号的“纯度”会影响数字输出的性能。输入信号中的耦合噪声将转换为输出信号数字噪声,如果输入信号中有太多噪声和失真,ADC 性能实际上会被测试条件所掩盖。输入信号的精度和纯度最终取决于器件的转换分辨率,一般来说测试设备的精度要比被测器件高10倍以上。另外可以考虑在输入端使用滤波器,除去输入信号之外的
噪声和失真。
◆采样与一致性
即采样频率必须是被测信号频率的两倍以上,我们可以获得正确的采样频率范围,利用采样点再现输入信号。在我们所举例子中,ADC 必须以输入频率两倍以上的频率“运行”或采样,
以便正确地数字化再现出输入信号,得到有效动态测试结果。
一致性是动态测试第二个关键的部分,当能对测试信号的生成与采样进行控制时,它可以提供很多东西。一致性采样主要是为了保证采样数据包含完整的输入周期描述信息,使得在有限的样本中收集到尽可能多输入信息。一致性采样定义了测试频率(Ft)、样本大小(M)、采
样频率(Fs)以及测试周期(N)之间的关系,如式(1)所示:
M/Ft=N/Fs 式(1)
这里的M 和N 为互质数。
另外,一致性采样还可以保证傅立叶变换将采样数据的频率成分放入离散频段中。
◆量化、假频与采样抖动
量化误差指的是从时序变化信号中可分离出的最小量值信息,以我们讨论的ADC 测试为例,量化误差就是最小步距代表的电压,或建立输入测试信号的模拟信号源最小分辨率。假频是由采样产生的,它将高频信号认作低频信号。实际上当采样频率小于信号频率两倍时,采样周期即已违反了奈奎斯特采样规定,对高频信号采用低采样率的结果就好像它是一个低频信号。抖动误差是指系统输入或采样能力与期望值之间的差异或偏离,换句话说,本来一个有一定幅度的信号预计在时间X 产生,但由于抖动误差会使信号比预期的时间提前或推迟出现;同样抖动误差也可能在采样时产生,原来规定在时间X 采集数据但实际却比预期时间提前或推迟。量化误差、抖动误差和假频都会使输入信号失真,在频谱上出现错误信息。
·信噪比(Signal to Noise Ratio,SNR )
信噪比是输入信号和噪声(不包括任何谐波以及直流) 的功率比,是定义器件内部噪声大小
的基本参数。SNR 定义的详细描述如式(2)所示:
式
(2)
理论上ADC 的信噪比范围取决于系统的位数,式(3)是理想的N bit ADC的理论S NR 计算公式:
SNR=6.02N+1.76dB 式(3)
这里N 代表位数。
系统内部噪声会使偏离或SNR 大于理论值范围,可能造成误差的原因包括:器件量化误差、器件内部噪声和驱动/采样源产生的非线性噪声(应用噪声)。量化噪声关系到转换器的分
辨率,转换器内的噪声主要是和输入比较器的完善程度有关。
附声卡中对SNR 的定义:SNR 是对声卡抑制噪音能力的一个评价。声卡处理的是对我们有用的音频信号,而噪音是指我们不希望有的音频信号,通常是一些规律且难听的声音,是背
景噪声(由机箱内电磁干扰产生)与声卡各部件在工作时产生的“杂音”的综合,声卡应该尽量屏蔽和减少这些噪音的出现与功率(音量)。在没有出现饱和与截止情况下,有用信号功率与噪音信号功率的比值就是SNR ,单位为dB 。SNR 值越高说明声卡的滤波效能越好,声音听起来也就越清晰。按照微软在PC98中的规定,声卡的SNR 值必须不低于80dB 。
·无杂散动态范围(Spurious-free Dynamic Range,SFDR )
无杂散动态范围能对系统失真进行量化,它是基本频率与杂波信号最大值的数量差。杂波通常产生于各谐波中(虽然并不总是这样) ,它表示器件输入和输出之间的非线性。偶次谐波中的杂波表示传递函数非对称失真,一个“给定”的输入信号应该产生一个“给定”的输出,但由于系统非线性,实际输出并不等于预期值,当系统接收到大小相等极性相反的信号时,得到的两个输出不相等,这里的非线性就是非对称的。奇次谐波中的杂波表示系统传递函数的对
称非线性,即给定的输入产生的输出失真对正负输入信号在数量上都是相等的。 附:在频域中,SFDR 是衡量线性特性的有效方法。如果单音正弦信号加到输入,SFDR 定义在一定频率范围内的信号与第二大频率成分的功率差。在大多通信应用中,输入是多音信号,信号由幅度、相位、和频率不同的多个信号组成。测量SFDR 时将引起一些混淆,有时更好是用称之为多音功率比(Multi-tone Power Ratio,MTPR )进行测量,MTPR 定义为单音载波与失真的功率比。我们在多个频率施加一定数量的等幅但相位不同的信号。在某点测量该点的输出和该点失真的功率。注意这有几个参数影响MTPR ,例如单音幅度、挑选的单音频率、单音数量。在不同情况下,得出的MTPR 也不同。当单音数量增加,将形成一个高的峰值。高峰值可能使放大器饱和并使DAC 超出范围。我们用峰值/平均值比(P AR )或峰值因子,测量输入信号的峰值与有效值功率,对单音正弦信号PAR =A2/(A/sqrt(2))2=2。有时PAR 也定义为均方根功率比。如果输入单音幅度相等,单音数量和相位决
定PAR 。多个信号输出的SFDR 见式(4):
SFDR =6.02×N+4.77-10×log(PAR) 式(4)
高速DAC 根据奈奎斯特采样定理,如果采样时钟为fs ,信号带宽为fn=fs/2,但SF DR 可能比较差。提高SFDR 的一个有效途径是采用比奈奎斯特频率小的带宽,当信号带宽
为fB ,定义过采样率OSR =fs/fB。单个信号输出的SFDR 如式(5)所示:
SFDR=6.02×N+1.76+10×log(OSR) 式(5)
·总谐波失真(Total Harmonic Distortion,THD )
总谐波失真是输入信号与系统所有谐波的总功率比,它可提供系统对称和非对称非线性产生
的总失真大小,用以表达其对信号的谐波含量的作用或者影响。
式(6)
·信号与噪声失真比(Signal to Noise And Distortion,SINAD )
信号与噪声失真比SINAD 是输入信号和所有输出信号失真功率(包括谐波成分,不包括直流)比,它测量的是输出信号所有传递函数非线性加上系统所有噪声(量化、抖动和假频)
的累积效果。其定义如下:
式(7)
在完美的转换器中,SINAD 和SNR 是相同的。SNR 是转换器所能达到的理想状态,SIN
AD 是反映转换器实际性能参数的指标,当然,我们希望SINAD 越接近SNR 越好。
·有效位数(Effective Number of Bits,ENOB )
有效位数ENOB 是在ADC 器件信噪比基础上计算出来的,它将传输信号质量转换为等效比特分辨率。实际上系统噪声使输出信号失真,失真大小就反映在信噪比上。ADC 的比特分辨率可以用来计算给定器件的理论信噪比,反过来也成立,所以器件的信噪比测量值也可用来计算有效器件比特分辨率。所有噪声源和器件的不精确性合在一起,可以转化为量化误差
与有效器件分辨率。
让我们再次重新温习一下在ADC 中的两个重要的概念:
SINAD 表示ADC 的信噪失真比,指ADC 满量程单频理想正弦波输入信号的有效值与AD C 输出信号的奈奎斯特带宽内的全部其它频率分量(包括谐波分量,不包括直流分量)的总
有效值之比。
SNR 表示ADC 的信噪比,指ADC 满量程单频理想正弦波输入信号的有效值与ADC 输出信号的奈奎斯特带宽内的全部其它频率分量(不包括直流和谐波分量)的总有效值之比。由上文的分析知,一个理想的N 位ADC 模块的信噪比可以由SNR 的电压形式推导得到,即:SNR =6.02×N+1.76dB 。通过使用快速傅立叶变换(FFT )算法来计算离散傅立叶变换(DFT ),制造商可以测量ADC 模块的SINAD ,并用其来计算有效位数(ENOB ),
这是更真实表征ADC 模块总体性能的规格参数,即:
ENOB=[SINAD(dB)-1.76dB]/6.02dB 式(8)由此可知,当ADC 的总谐波失真THD 一定时,有效位数ENOB 取决于SNR ;ADC 的SNR 越高,其有效位数ENOB 就越高。
AD 和动态范围
1、首先明确动态范围的概念:
动态范围=20*log(最大的数/最小的数
单精度浮点格式: [31] 1位符号 [30-23]8位指数 [22-00]23位小数
单精度浮点数动态范围=1667.6dB 这样大的动态范围使得我们在编程的时候几乎不必考虑乘法和累加的溢出,而如果使用定点处理器编程,对计算结果进行舍入和移位则是家常便饭,这在一定程度上会损失是精度。原因在于定点处理处理的信号的动态范围有限,
16位定点DSP 表示整数范围为1-65536,其动态范围为20*log(65536/1)=96dB
32定点DSP ,动态范围为20*log(2^32/1)=192dB,对绝大多数应用所处理的信号已经足够了。
2、对于ADC
它的转化位数决定了其动态范围,由于AD 转换器的位数限制,一般输入信号的动态范围都比较小 max125:
14位,动态范围=20*log(2^14/1)=84.29db,如果只算有效位的话,低2位不算了,那么还会降低 20*log(2^12/1)=72.25db
3、运放的动态范围
4、输入信号的动态范围
=================================================
ADC 测试参数定义、分析及策略之动态测试
◆输入信号
对于模数转换器来说,输入信号的“纯度”会影响数字输出的性能。输入信号中的耦合噪声将转换为输出信号数字噪声,如果输入信号中有太多噪声和失真,ADC 性能实际上会被测试条件所掩盖。输入信号的精度和纯度最终取决于器件的转换分辨率,一般来说测试设备的精度要比被测器件高10倍以上。另外可以考虑在输入端使用滤波器,除去输入信号之外的
噪声和失真。
◆采样与一致性
即采样频率必须是被测信号频率的两倍以上,我们可以获得正确的采样频率范围,利用采样点再现输入信号。在我们所举例子中,ADC 必须以输入频率两倍以上的频率“运行”或采样,
以便正确地数字化再现出输入信号,得到有效动态测试结果。
一致性是动态测试第二个关键的部分,当能对测试信号的生成与采样进行控制时,它可以提供很多东西。一致性采样主要是为了保证采样数据包含完整的输入周期描述信息,使得在有限的样本中收集到尽可能多输入信息。一致性采样定义了测试频率(Ft)、样本大小(M)、采
样频率(Fs)以及测试周期(N)之间的关系,如式(1)所示:
M/Ft=N/Fs 式(1)
这里的M 和N 为互质数。
另外,一致性采样还可以保证傅立叶变换将采样数据的频率成分放入离散频段中。
◆量化、假频与采样抖动
量化误差指的是从时序变化信号中可分离出的最小量值信息,以我们讨论的ADC 测试为例,量化误差就是最小步距代表的电压,或建立输入测试信号的模拟信号源最小分辨率。假频是由采样产生的,它将高频信号认作低频信号。实际上当采样频率小于信号频率两倍时,采样周期即已违反了奈奎斯特采样规定,对高频信号采用低采样率的结果就好像它是一个低频信号。抖动误差是指系统输入或采样能力与期望值之间的差异或偏离,换句话说,本来一个有一定幅度的信号预计在时间X 产生,但由于抖动误差会使信号比预期的时间提前或推迟出现;同样抖动误差也可能在采样时产生,原来规定在时间X 采集数据但实际却比预期时间提前或推迟。量化误差、抖动误差和假频都会使输入信号失真,在频谱上出现错误信息。
·信噪比(Signal to Noise Ratio,SNR )
信噪比是输入信号和噪声(不包括任何谐波以及直流) 的功率比,是定义器件内部噪声大小
的基本参数。SNR 定义的详细描述如式(2)所示:
式
(2)
理论上ADC 的信噪比范围取决于系统的位数,式(3)是理想的N bit ADC的理论S NR 计算公式:
SNR=6.02N+1.76dB 式(3)
这里N 代表位数。
系统内部噪声会使偏离或SNR 大于理论值范围,可能造成误差的原因包括:器件量化误差、器件内部噪声和驱动/采样源产生的非线性噪声(应用噪声)。量化噪声关系到转换器的分
辨率,转换器内的噪声主要是和输入比较器的完善程度有关。
附声卡中对SNR 的定义:SNR 是对声卡抑制噪音能力的一个评价。声卡处理的是对我们有用的音频信号,而噪音是指我们不希望有的音频信号,通常是一些规律且难听的声音,是背
景噪声(由机箱内电磁干扰产生)与声卡各部件在工作时产生的“杂音”的综合,声卡应该尽量屏蔽和减少这些噪音的出现与功率(音量)。在没有出现饱和与截止情况下,有用信号功率与噪音信号功率的比值就是SNR ,单位为dB 。SNR 值越高说明声卡的滤波效能越好,声音听起来也就越清晰。按照微软在PC98中的规定,声卡的SNR 值必须不低于80dB 。
·无杂散动态范围(Spurious-free Dynamic Range,SFDR )
无杂散动态范围能对系统失真进行量化,它是基本频率与杂波信号最大值的数量差。杂波通常产生于各谐波中(虽然并不总是这样) ,它表示器件输入和输出之间的非线性。偶次谐波中的杂波表示传递函数非对称失真,一个“给定”的输入信号应该产生一个“给定”的输出,但由于系统非线性,实际输出并不等于预期值,当系统接收到大小相等极性相反的信号时,得到的两个输出不相等,这里的非线性就是非对称的。奇次谐波中的杂波表示系统传递函数的对
称非线性,即给定的输入产生的输出失真对正负输入信号在数量上都是相等的。 附:在频域中,SFDR 是衡量线性特性的有效方法。如果单音正弦信号加到输入,SFDR 定义在一定频率范围内的信号与第二大频率成分的功率差。在大多通信应用中,输入是多音信号,信号由幅度、相位、和频率不同的多个信号组成。测量SFDR 时将引起一些混淆,有时更好是用称之为多音功率比(Multi-tone Power Ratio,MTPR )进行测量,MTPR 定义为单音载波与失真的功率比。我们在多个频率施加一定数量的等幅但相位不同的信号。在某点测量该点的输出和该点失真的功率。注意这有几个参数影响MTPR ,例如单音幅度、挑选的单音频率、单音数量。在不同情况下,得出的MTPR 也不同。当单音数量增加,将形成一个高的峰值。高峰值可能使放大器饱和并使DAC 超出范围。我们用峰值/平均值比(P AR )或峰值因子,测量输入信号的峰值与有效值功率,对单音正弦信号PAR =A2/(A/sqrt(2))2=2。有时PAR 也定义为均方根功率比。如果输入单音幅度相等,单音数量和相位决
定PAR 。多个信号输出的SFDR 见式(4):
SFDR =6.02×N+4.77-10×log(PAR) 式(4)
高速DAC 根据奈奎斯特采样定理,如果采样时钟为fs ,信号带宽为fn=fs/2,但SF DR 可能比较差。提高SFDR 的一个有效途径是采用比奈奎斯特频率小的带宽,当信号带宽
为fB ,定义过采样率OSR =fs/fB。单个信号输出的SFDR 如式(5)所示:
SFDR=6.02×N+1.76+10×log(OSR) 式(5)
·总谐波失真(Total Harmonic Distortion,THD )
总谐波失真是输入信号与系统所有谐波的总功率比,它可提供系统对称和非对称非线性产生
的总失真大小,用以表达其对信号的谐波含量的作用或者影响。
式(6)
·信号与噪声失真比(Signal to Noise And Distortion,SINAD )
信号与噪声失真比SINAD 是输入信号和所有输出信号失真功率(包括谐波成分,不包括直流)比,它测量的是输出信号所有传递函数非线性加上系统所有噪声(量化、抖动和假频)
的累积效果。其定义如下:
式(7)
在完美的转换器中,SINAD 和SNR 是相同的。SNR 是转换器所能达到的理想状态,SIN
AD 是反映转换器实际性能参数的指标,当然,我们希望SINAD 越接近SNR 越好。
·有效位数(Effective Number of Bits,ENOB )
有效位数ENOB 是在ADC 器件信噪比基础上计算出来的,它将传输信号质量转换为等效比特分辨率。实际上系统噪声使输出信号失真,失真大小就反映在信噪比上。ADC 的比特分辨率可以用来计算给定器件的理论信噪比,反过来也成立,所以器件的信噪比测量值也可用来计算有效器件比特分辨率。所有噪声源和器件的不精确性合在一起,可以转化为量化误差
与有效器件分辨率。
让我们再次重新温习一下在ADC 中的两个重要的概念:
SINAD 表示ADC 的信噪失真比,指ADC 满量程单频理想正弦波输入信号的有效值与AD C 输出信号的奈奎斯特带宽内的全部其它频率分量(包括谐波分量,不包括直流分量)的总
有效值之比。
SNR 表示ADC 的信噪比,指ADC 满量程单频理想正弦波输入信号的有效值与ADC 输出信号的奈奎斯特带宽内的全部其它频率分量(不包括直流和谐波分量)的总有效值之比。由上文的分析知,一个理想的N 位ADC 模块的信噪比可以由SNR 的电压形式推导得到,即:SNR =6.02×N+1.76dB 。通过使用快速傅立叶变换(FFT )算法来计算离散傅立叶变换(DFT ),制造商可以测量ADC 模块的SINAD ,并用其来计算有效位数(ENOB ),
这是更真实表征ADC 模块总体性能的规格参数,即:
ENOB=[SINAD(dB)-1.76dB]/6.02dB 式(8)由此可知,当ADC 的总谐波失真THD 一定时,有效位数ENOB 取决于SNR ;ADC 的SNR 越高,其有效位数ENOB 就越高。