理解ADC误差对系统性能的影响

理解ADC误差对系统性能的影响,第1张

摘要:许多工程师会在设计中遇到一些很微妙的问题:ADC的规格常常低于系统要求的指标。本文介绍了如何根据系统需求合理选择ADC,列举了ADC测量中可能遇到的各种误差源。

采用12位分辨率的模数转换器(ADC)未必意味着你的系统将具有12位的精度。很多时候,令工程师们吃惊和不解的是:数据采集系统所表现出的性能往往远低于期望值。如果这个问题直到样机运行时才被发现,只好慌慌张张地改用更高性能的ADC,大量的时间被花费在重新更改设计上,同时,试投产的日程在迅速临近。问题出在哪里? 最初的分析中有那些因素发生了改变? 对于ADC的性能指标有一个深入的了解,将有助于发现一些经常导致性能指标不尽人意的细节所在。对于ADC指标的理解还有助于为你的设计选择正确的ADC。

我们从建立整个系统的性能需求入手,系统中的每个元器件都有相应的误差,我们的目标是将整体误差限定在一定的范围内。ADC是信号通道的关键部件,必须谨慎选择适当的器件。在我们开始评估整体性能之前,假设ADC的转换效率、接口、供电电源、功耗、输入范围以及通道数均满足系统要求。ADC的精度与几项关键规格有关,其中包括:积分非线性(INL)、失调和增益误差、电压基准的精度、温度效应、交流特性等。最好从直流特性入手评估ADC的性能,因为ADC的交流参数测试存在多种非标准方法,基于直流特性比较容易对两个IC进行比较。直流特性通常比交流特性更能反映器件的问题。

系统要求

确定系统整体误差的常见方法有两种:均方根和(RSS)、最差工作条件下的测试。采用RSS时,对每项误差取平均,然后求和并计算开方值。RSS误差由下式计算:

理解ADC误差对系统性能的影响,第2张

其中EN代表某个特定电路元件或参数的误差项。当所有误差不相干时这种方法最准确(实际情况可能如此,也可能不同)。利用最差条件分析法,所有误差项相加。这种方法能够确保误差植不会超出规定范围,它给出了最差条件下的误差限制,实际误差始终小于该值(通常会低出若干倍)。

多数情况下,测量误差介于两种方法测试数值之间,更接近于RSS法提供的数值。可以根据误差预算选择使用典型误差和最差工作条件下的误差。具体选择时取决于许多因素,包括:测量值的标准方差、特定参数的重要性、误差之间的相互影响程度等。由此可见,很难找到简捷的、必需遵循的规则。在我们的分析中,我们选择最差条件测试法。

在本例中,假定我们需要0.1%或者说10位的精度(1/210),这样,只有选择一个具有更高分辨率的转换器才有意义。如果是一个12位的转换器,我们可能会想当然地以为精度已足够高;但是在没有仔细检查其规格书之前,我们并没有把握得到12位的性能(实际情况可能更好或更糟)。举例来说,一个具有4LSB积分非线性误差的12位ADC,最多只能提供10位的精度(假设失调和增益误差已得到修正)。一个具有0.5LSB INL的器件则可提供0.0122%的误差或13位的精度(消除了增益及失调误差以后)。要计算最佳精度,可用最大INL误差除以2N,其中N是转换器位数。在我们的举例中,若采用0.075%误差(或11位)的ADC,则留给其余电路的误差余量只有0.025%,这其中包括传感器、前端信号调理电路(运放、多路复用器等等),或许还有数模转换器DAC)、PWM信号或信号通路上的其它模拟电路

我们假设整体系统的总计误差预算基于信号通道各个电路元件的误差项目总和,另外我们还假设,将要测量的是一个缓慢变化的直流、双极性输入信号,具有1kHz的带宽,工作温度范围为0°C到70°C,并在0°C至50°C范围内保证性能。

直流性能

微分非线性

虽说不被作为一项关键性的ADC参数,微分非线性(DNL)误差还是进入我们视野的第一项指标。DNL揭示了一个输出码与其相邻码之间的间隔。这个间隔通过测量输入电压的幅度变化,然后转换为以LSB为单位后得到(图1)。值得注意的是INL是DNL的积分,这就是为什么DNL没有被我们看作关键参数的原因所在。一个性能优良的ADC常常声称“无丢码”。这就是说当输入电压扫过输入范围时,所有输出码组合都会依次出现在转换器输出端。当DNL误差小于±1LSB时就能够保证没有丢码(图1a)。图1b、图1c和图1d分别显示了三种DNL误差值。DNL为-0.5LSB时(图1b),器件保证没有丢码。若该误差值等于-1LSB (图1c),器件就不能保证没有丢码,值得注意的是10码丢失。然而,当最大DNL误差值为±1时,大多数ADC都会特别声明是否有丢码。由于制造时的测试界限实际上要比规格书中所规定的更为严格,因此这种情况下通常都能够保证没有丢码。对于一个大于-1LSB (图1d中为-1.5LSB)的DNL,器件就会有丢码。

理解ADC误差对系统性能的影响,第3张

图1a. DNL误差:没有丢码。

理解ADC误差对系统性能的影响,第4张

图1b. DNL误差:没有丢码。

理解ADC误差对系统性能的影响,第5张

图1c. DNL误差:丢失10码。

理解ADC误差对系统性能的影响,第6张

图1d. DNL误差:AIN*数字输入是三种可能数值之一,扫描到输入电压时,10码将会丢失。

随着DNL误差值的偏移(也就是说-1LSB,+2LSB),ADC转换函数会发生变化。偏移了的DNL值理论上仍然可以没有丢码。关键是要以-1LSB作为底限。值得注意的是DNL在一个方向上进行测量,通常是沿着转换函数向上走。将造成码[N]跳变所需的输入电压值和码[N+1]时相比较。如果相差为1LSB,DNL误差就为零。如果大于1LSB,则DNL误差为正值;如果小于1LSB,DNL误差则为负值。

有丢码并非一定是坏事。如果你只需要13位分辨率,同时你有两种选择,一个是DNL指标≤ ±4LSB的16位ADC (相当于无丢码的14位),价格为5美元,另一个是DNL ≤ ±1LSB的16位ADC,价格为15美元,这时候,购买一个低等级的ADC将大幅度地节省你的元件成本,同时又满足了你的系统要求。

积分非线性

积分非线性(INL)定义为DNL误差的积分,因此较好的INL指标意味着较好的DNL。INL误差告诉设计者转换器测量结果距离理想转换函数值有多远。继续我们的举例,对于一个12位系统来讲,±2LSB的INL误差相当于2/4096或0.05%的最大非线性误差(这已占去ADC误差预算的2/3)。因此,有必要选用一个1LSB (或更好)的器件。对于±1LSB的INL误差,等效精度为0.0244%,占ADC误差预算的32.5%。对于0.5LSB的指标,精度为0.012%,仅占ADC误差预算的16% (0.0125%/0.075%)。需要注意的是,无论是INL或DNL带来的误差,都不太容易校准或修正。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2536488.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-05
下一篇 2022-08-05

发表评论

登录后才能评论

评论列表(0条)

保存