如何提高ADC分辨率并降低噪声
作者:管理员 来源:本站 浏览数:614 发布时间:2016/2/24 9:28:55
所有模数转换器(ADC)都有一定量的“折合到输入端噪声”,可以将其模拟为与无噪声ADC 输入串联的噪声源。折合到输入端噪声与量化噪声不同,后者仅在ADC处理交流信号时出 现。多数情况下,输入噪声越低越好,但在某些情况下,输入噪声实际上有助于实现更高 的分辨率。
什么是折合到输入端噪声?
实际的ADC在许多方面与理想的ADC有偏差。折合到输入端的噪声肯定不是理想情况下 会出现的,它对ADC整体传递函数的影响如图1所示。随着模拟输入电压提高,“理想” ADC(如图1A所示)保持恒定的输出代码,直至达到跃迁区,此时输出代码即刻跳变为下一 个值,并且保持该值,直至达到下一个跃迁区。
理论上,理想ADC的“代码跃迁”噪声为 0,跃迁区宽度也等于0。实际的ADC具有一定量的代码跃迁噪声,因此跃迁区宽度取决于 折合到输入端噪声的量(如图1B所示)。图1B显示的情况是代码跃迁噪声的宽度约为1个LSB (最低有效位)峰峰值。
图1:折合到输入端噪声及其对ADC传递函数的影响
由于电阻噪声和“kT/C”噪声,所有ADC内部电路都会产生一定量的均方根(RMS)噪声。即 使是直流输入信号,此噪声也存在,它是代码跃迁噪声存在的原因。如今通常把代码跃迁 噪声称为“折合到输入端噪声”,而不是直接使用“代码跃迁噪声”这一说法。
折合到输入端 噪声通常用ADC输入为直流值时的若干输出样本的直方图来表征。大多数高速或高分辨率 ADC的输出为一系列以直流输入标称值为中心的代码(见图2)。为了测量其值,ADC的输 入端接地或连接到一个深度去耦的电压源,然后采集大量输出样本并将其表示为直方图 (有时也称为“接地输入”直方图)。由于噪声大致呈高斯分布,因此可以计算直方图的标准 差σ,它对应于有效输入均方根噪声。
图2:折合到输入端噪声对ADC“接地输入端”直方图的影响(ADC具有少量DNL)
虽然ADC固有的微分非线性(DNL)可能会导致其噪声分布与理想的高斯分布有细微的偏差 (图2示例中显示了部分DNL),但它至少大致呈高斯分布。如果DNL比较大,则应计算多 个不同直流输入电压的σ值,然后求平均值。例如,如果代码分布具有较大且独特的峰值 和谷值,则表明ADC设计不佳,或者更有可能的是PCB布局布线错误、接地不良、电源去 耦不当(见图3)。当直流输入扫过ADC输入电压范围时,如果分布宽度急剧变化,这也表 明存在问题。
图3:设计不佳的ADC和/或布局布线、接地、去耦不当的接地输入端直方图
提高ADC分辨率并降低噪声?
折合到输入端噪声的影响可以通过数字均值方法降低。假设一个16位ADC具有15位无噪声 分辨率,采样速率为100 kSPS。对于每个输出样本,如果对两个样本进行平均,则有效采 样速率降至50 kSPS,SNR提高3 dB,无噪声位数提高到15.5位。
如果对四个样本进行平均, 则采样速率降至25 kSPS,SNR提高6 dB,无噪声位数提高到16位。 事实上,如果对16个样本进行平均,则输出采样速率降至6.25 kSPS,SNR再提高6 dB,无噪 声位数提高到17位。为了利用额外的“分辨率”,均值算法必须在较大的有效位数上执行。
均值过程还有助于消除ADC传递函数的DNL误差,这可以通过下面的简单例子来说明:假 设ADC在量化电平“k”处有一个失码,虽然代码“k”由于DNL误差较大而丢失,但两个相邻 代码k – 1和k + 1的平均值等于k。 因此,可以利用该技术来有效提高ADC的动态范围,代价是整体输出采样速率降低并且需 要额外的数字硬件。
不过应注意,均值并不能校正ADC固有的积分非线性。 现在考虑这样一种情况:ADC的折合到输入端噪声非常低,直方图总是显示一个明确的代 码,对于这种ADC,数字均值有何作用呢?答案很简单——没有作用!无论对多少样本进 行平均,答案始终相同。但只要将足够大的噪声增加到输入信号中,使得直方图中有一个 以上的代码,那么均值方法又会发挥效用。因此,少量噪声可能是好事情(至少对于均值 方法而言),但输入端存在的噪声越高,为实现相同分辨率所需的均值样本数越多。