双极性 ADC 和差分 ADC 中的失调误差和增益误差

出处:维库电子市场网 发布于:2023-04-04 17:26:32

在上一篇文章中,我们讨论了失调误差如何影响单极性 ADC 的传递函数。考虑到这一点,单极性 ADC 的输入只能接受正电压。相反,双极性 ADC 的输入可以处理正电压和负电压。在本文中,我们将探讨双极性和差分 ADC 中的偏移和增益误差规范;并了解失调误差的单点校准。


传递函数——双极性 ADC 理想特性曲线

具有偏移二进制输出编码方案的理想三位 ADC 的传递函数如图 1 所示。


具有偏移二进制输出编码的理想 3 位 ADC 的传递函数,

图 1. 具有偏移二进制输出编码的理想三位 ADC 的传递函数,


作为复习,使用偏移二进制系统,中间刻度代码的中心(在我们的示例中为 100)对应于 0 V 输入。低于 100 的代码表示负输入电压,高于 100 的数字值对应正模拟输入。但是,请注意,垂直轴上的代码顺序与单极性 ADC 的顺序完全相同。通过台阶中点的直线为我们提供了 ADC 阶梯响应的线性模型。

另一件需要注意的事情是,上述特性曲线也可以代表具有差分输入的单极性 ADC。由于低于 100 的输出代码表示负值,因此绘制上述传递函数很有帮助,如图 2 所示。


传递函数显示低于 100 的输出代码。

图 2. 显示低于 100 的输出代码的传递函数。


双极性 ADC 失调误差

对于采用偏移二进制编码方案的 ADC,可以通过比较从 100…00 到 100…01 的实际中量程转换与理想 ADC 中的相应转换来发现偏移误差。如图 2 所示,这种转换理想情况下应发生在 +0.5 LSB。图 3 显示了一个偏移值为 -1 LSB 的三位双极性 ADC。

请注意,从 100 到 101 的中值转换发生在 +1.5 LSB 而不是 +0.5 LSB。


偏移值为 -1 LSB 的三位双极性 ADC 的传递函数。

图 3.偏移值为 -1 LSB 的三位双极性 ADC 的传递函数。


图 4 显示了一个具有正偏移的三位双极性 ADC。


具有正偏移的三位双极性 ADC。 

图 4. 具有正偏移的三位双极性 ADC。 


在这种情况下,正输入的次转换发生在从 110 到 111 的 +1 LSB 处。对于理想的 ADC,此转换应发生在 +2.5 LSB 处。因此,实际传递函数具有 +1.5 LSB 的偏移量。您还可以通过检查图 4 中橙色直线所示的实际传输曲线的线性模型来获得相同的结果。


双极性 ADC 增益误差

与单极性 ADC 类似,双极性 ADC 的增益误差可以定义为在消除偏移误差后实际转换与理想转换的偏差。增益误差也可以定义为实际线性模型的斜率与理想直线模型的斜率的偏差。

例如,考虑图 5 中所示的特性曲线。


特性曲线示例

图 5. 特性曲线示例


在本例中,点 A 和 C 分别比理想响应和实际响应的转换高 0.5 LSB。类似地,B 点和 D 点分别选择在理想和实际传输曲线上接近负满量程(010 到 001 过渡以下 0.5 LSB)的位置。穿过 A 和 B 的线是理想响应,而穿过 C 和 D 的线是系统的实际响应。可以将实际斜率与理想斜率进行比较以确定增益误差。

在上面的示例中,理想斜率由下式给出:


坡度_ _ _ _i = C o d e A ? C o d e B V i n , A ? V i n , B= 3 - ( - 3 ) 3 L S B - ( - 3 L S B )= 1计数L S B _ _ _ _Slopei=CodeA?CodeBVin,A?Vin,B=3?(?3)3LSB?(?3LSB)=1CountLSB


在这个等式中,使用了输出代码的十进制等效值。另外,请注意代码的符号。正如预期的那样,理想的斜率是 1。可以用类似的方式找到测量的斜率:


Slopem=CodeC?CodeDVin,C?Vin,D=3?(?3)2.5LSB?(?2.5LSB)=65CountLSB" role="presentation" style="box-sizing: inherit; border: 0px; display: inline-block; line-height: 0; font-size: 18.08px; word-wrap: normal; word-spacing: normal; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; margin: 0px; padding: 1px 0px; position: relative;">Slopem=CodeC?CodeDVin,C?Vin,D=3?(?3)2.5LSB?(?2.5LSB)=65CountLSB


增益误差可由下式定义:


GainError=Slopem?SlopeiSlopei=65?11=0.2" role="presentation" style="box-sizing: inherit; border: 0px; display: inline-block; line-height: 0; font-size: 18.08px; word-wrap: normal; word-spacing: normal; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; margin: 0px; padding: 1px 0px; position: relative;">GainError=Slopem?SlopeiSlopei=65?11=0.2


这意味着测得的响应有 20% 的增益误差。对于高性能 ADC,增益误差可能小到可以用 ppm 表示。

请记住,在实践中,我们选择用于查找响应斜率的点不一定是传递函数的端点。根据系统中可用的测试信号和系统线性的输入范围,我们可以选择适当的点来确定传递函数的斜率。例如,在确定具有 3 V 满量程值的 ADC 的斜率时,系统中已经可用的准确 1.5 V 输入可能被认为足够接近正满量程值。


偏移和增益误差导致未使用的输入和输出值

对于单极性和双极性 ADC,偏移误差会导致未使用的输入范围和未使用的输出代码。图 6 显示负偏移如何将输入范围的下限限制为高于 -FS 的值。对于负偏移,也可能不会使用低于标称代码的输出代码范围。


显示负偏移量如何将输入范围的下限限制为高于 -FS 的值的图表。

图 6. 显示负偏移如何将输入范围的下限限制为高于 -FS 的值的图表。


正如您可能想象的那样,偏移误差将以类似的方式影响单极 ADC 的范围。例如,考虑一个具有 2.5 V 满量程电压且偏移为 -8 mV 的单极性 12 位 ADC。这对应于大约 -13 LSB 的偏移量。理想的直线响应向下移动 13 LSB。因此,如图 7 所示,输入模拟范围减少了 13 LSB(或 8 mV),并且未使用 13 个输出代码。


显示输入模拟范围减少 13 LSB 的图表。

图 7. 显示输入模拟范围减少 13 LSB 的图表。


重要的是要记住,更高分辨率 ADC 中的相同偏移电压会导致更大的未使用代码范围。例如,FS = 2.5 V 的 16 位 ADC 中相同的 -8 mV 偏移对应于大约 -210 LSB。在这种情况下,不使用的 210 个输出代码。图 8 显示了正偏移对 ADC 输入和输出范围的影响。


图 8. 正偏移对 ADC 输入和输出范围的影响。


在这种情况下,不使用输出代码范围下端的许多代码,并且在小于 +FS 的输入电平下达到 ADC 输出。正增益误差会限制两端的输入范围,如图 9 所示。


显示正增益误差如何限制两端输入范围的图表。

图 9. 显示正增益误差如何限制两端输入范围的图表。


同样,负增益误差会导致标称范围两端出现未使用的输出代码(图 10)。


负增益误差如何导致标称范围两端未使用的输出代码。

图 10. 负增益误差如何导致标称范围两端未使用的输出代码。


现在我们已经熟悉了 ADC 中的偏移和增益误差概念,我们可以深入讨论这两个误差项的校准。


ADC 增益和失调校准

可以在数字域中轻松校准偏移和增益误差。为此,应将准确的模拟输入应用于 ADC 以确定实际响应。在已知实际响应的情况下,可以在数字域中校正 ADC 输出代码以匹配理想响应的代码。

由于给定的 ADC 代码不对应于单个模拟输入值,因此只能通过测量代码转换来确定实际的 ADC 响应。这需要一个可以产生不同电压电平的精密电源图 11 显示了可用于确定代码转换的测试设置。


图 11. 确定代码转换的示例测试设置 图片由Analog Devices提供。


在这种情况下,高分辨率数模转换器 (DAC)用于在 ADC 输入端生成不同的电压电平。DAC 应提供明显高于被测 ADC 的精度。此外,DAC 输出端的电压表可准确测量发生代码转换时的电压电平。电压表和 ADC 的输出经过处理以确定偏移和增益误差,以及 ADC 的非线性度。这种基于 PC 的方法可以使用数字信号处理 (DSP)技术,例如信号平均,以减少 ADC 噪声对测量的影响。

传感器测量系统等许多应用中,无法使用上述设置来测量代码转换。在这些情况下,系统中可能只有一个或两个精密电压电平可用,从而实现单点或两点测量。这些测试只能近似实际响应,不能完全消除偏移和增益误差。然而,它们仍然是可以显着降低偏移和增益误差的有效方法。


偏置校准——单点校准

单点校准测量传递函数上单点的 ADC 响应,并使用结果来减少偏移误差。地电位是用于单点校准的准确、常用的测试输入,因为它已在系统中可用。作为应用此方法的示例,请考虑图 3 中所示的响应,为方便起见,下面将其重复为图 12。


图 3 的重复显示了偏移值为 -1 LSB 的三位双极性 ADC 的传递函数。

图 12. 图 3 的重复显示了偏移值为 -1 LSB 的三位双极性 ADC 的传递函数。


如果我们对该 ADC 施加零伏电压,则输出为 011。将其与理想值 100 进行比较,我们可以确定该 ADC 的偏移为 -1 LSB。下面的图 13 显示了另一个示例。


示例显示在对 ADC 施加零伏后 -1 LSB 的 ADC 偏移。

图 13. 示例显示在对 ADC 施加零伏后 -1 LSB 的 ADC 偏移。


在这种情况下,从 010 到 011 的转换恰好发生在零伏以下。再次将输入短接至地产生 011。基于此单点测量,ADC 偏移为 -1 LSB。然而,考虑到代码转换,我们观察到实际偏移量为 -1.5 LSB。如您所见,通过单点测量,确定偏移量的误差可能高达 ±0.5 LSB。尽管如此,这个错误在大多数应用中是可以接受的,特别是考虑到这种方法具有的成本和复杂性。单点测量无法确定增益误差。

一旦确定了偏移量,我们就可以通过从每个 ADC 读数中减去偏移量来对其进行补偿。通过接地电位的单点校准只能用于双极性或差分输入 ADC。对于单极性 ADC,负偏移会导致在标称输入范围的下端出现未使用的输入值。下面描述的示例(图 14)进一步阐明了这个问题。


显示负偏移的示例导致标称输入范围下限的未使用输入值。 

图 14. 显示负偏移的示例导致标称输入范围下限的未使用输入值。 


在这种情况下,ADC 的偏移量为 -13 LSB。但是,将零伏施加到输入会产生全零输出代码,从而导致错误的零伏偏移测量。这就是为什么对于单极性 ADC,我们需要 ADC 可用输入范围内的精密电压来测量和校准偏移误差。 

 

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

相关技术资料
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!