QWE4562009

ADC的积分非线性和微分非线性

0
阅读(820)

ADC的积分非线性和微分非线性


模数器件的精度指标是用积分非线性度(Interger NonLiner) 即 INL 值来表示,INL可以理解为精度;

4.095/4096=0.001V,单位INL的值,1LSB就是0.001V,一个电压转换成数字量的读数是1000,则误差会在(1000*0.001)±1LSB,也就是(1000*0.001)±0.001V之间,即 0.999~1 .001 V---------转换结果偏离理想线性的最大误差


微分非线性DNL怎么理解???





ADC的积分非线性和微分非线性

模数器件的精度指标是用积分非线性度(Interger NonLiner) 即 INL 值来表示。也有的器件手册用 Linearity error 来表示。 他表示了 ADC 器件在所有的数值点上对应的模拟值, 和真实值之间误差最大的那一点的误差值。 也就是, 输出数值偏离线性最大的距离。 单位是 LSB(即最低位所表示的量) 。比如 1 2 位 ADC: TLC2543, INL 值为 1 LSB。 那么, 如果基准 4.095V, 测某电压得的转换结果是 1 000, 那么, 真实电压值可能分布在 0.999~1 .001 V 之间。对于 DAC 也是类似的。比如 DAC751 2,INL 值为 8LSB, 那么, 如果基准 4.095V,给定数字量 1 000, 那么输出电压可能是 0.992~1 .008V 之间。4.095/4096=0.001V,单位INL的值,1LSB就是0.001V,一个电压转换成数字量的读数是1000,则误差会在(1000*0.001)±1LSB,也就是(1000*0.001)±0.001V之间,即 0.999~1 .001 V---------转换结果偏离理想线性的最大误差



下面再说 DNL 值。 理论上说, 模数器件相邻量个数据之间, 模拟量的差值都是一样的。就相一把疏密均匀的尺子。但实际并不如此。一把分辨率 1 毫米的尺子,相邻两刻度之间也不可能都是 1 毫米整。 那么, ADC 相邻两刻度之间最大的差异就叫差分非线性值(Differencial NonLiner) 。 DNL 值如果大于 1 , 那么这个ADC 甚至不能保证是单调的, 输入电压增大, 在某个点数值反而会减小。 这种现象在 SAR(逐位比较) 型 ADC 中很常见。举个例子, 某 1 2 位 ADC, INL=8LSB, DNL=3LSB(性能比较差), 基准4.095V,测 A 电压读数1 000,测B 电压度数1 200。那么,可判断B 点电压比A 点高1 97~203mV。 而不是准确的 200mV。 对于DAC 也是一样的, 某DAC 的DNL值 3LSB。那么,如果数字量增加200,实际电压增加量可能在1 97~203mV 之间。4.095/4096=0.001V,单位DNL的值,假如1LSB就是0.001V,一个电压转换成数字量的读数是1000,则误差会在(1000*0.001)±1LSB,B-A=200,200*0.001V=0.2V=200mV,DNL=3LSB=3*0.001V=3mV,所以实际的偏差在200mV±3mV之间,也就是 1 97~203mV 之

间。---------区间转换结果的最大误差




总结:

(1 )INL(Interger NonLinear,Linearity error)精度。 理解为单值数据误差,对应点模拟数据由于元器件及结构造成的不能精确测量产生的误差。

(2)DNL(Differential NonLinear)差分非线性值。 理解为刻度间的差值,即对每个模拟数据按点量化,由于量化产生的误差。


例子:

(1 )INL,精度

比如 1 2 位 ADC: 假设基准 Vref=4.095V,那么 1 LSB=Vref/2^1 2=0.001 V。如果精度为 1 LSB, 则它的单值测量误差 0.001 V*1 =0.001 V,比如测量结果心1 .000V, 实际在 1 .000+/-0.001 V 范围。如果精度为 8LSB, 则他的单值测量误差 0.001 V*8=0.008V,比如测量结果1 .000V, 实际在 1 .000+/-0.008V 范围


(2)DNL, 差分非线性值

比如 1 2 位ADC:假设基准Vref=4.095V,那么1 LSB=Vref/2^1 2=0.001 V。不考虑精度,即精度为 0LSB,没有单值误差。如果 DNL=3LSB=0.001 V*3=0.003V假设 A 实际电压为1 .001 V,B 实际电压为1 .003V。 理论上A 点读数1 .001 V/1 LSB=1 001 ,B 点读数1 .003V/1 LSB=1 003,B-A=2,B>A,但由于 DNL=3LSB=0.003V,模拟数据间的量化误差有0.003V, 那么B-A 会在-1 (2-3=-1 )到+5(2+3=5)之间的某一个数。

--------------------------

积分非线性(Integral nonlinearity,INL)

积分非线性表示了 ADC 器件在所有的数值点上对应的模拟值和真实值之间误差最大的那一点的误差值, 也就是输出数值偏离线性最大的距离。单位是 LSB。例如, 一个 1 2bit 的ADC, INL 值为1 LSB, 那么,对应基准4.095V,测某电压得到的转换结果是 1 .000V,那么,真实电压值可能分布在0.999V 到1 .001 V 之间。INL 是DNL 误差的数学积分,即一个具有良好INL 的ADC 保证有良好的

DNL。


总之, 非线性微分和积分是指代码转换与理想状态之间的差异。 非线性微分(DNL)主要是代码步距与理论步距之差, 而非线性积分(INL)则关注所有代码非线性误差的累计效应。 对一个 ADC 来说, 一段范围的输入电压产生一个给定输出代码, 非线性微分误差为正时输入电压范围比理想的大, 非线性微分误差为负时输入电压范围比理想的要小。 从整个输出代码来看, 每个输入电压代码步距差异累积起来以后和理想值相比会产生一个总差异, 这个差异就是非线性积分误差。与增益和偏移一样, 计算非线性微分与积分误差也有很多种方法, 代码平均和电压抖动两种方法都可以使用, 但是由于存在重复搜索, 当器件位数较多时这两种方法执行起来很费时。 一个更加有效计算 INL 和 DNL 的方法是直方图法,采用线性或正弦直方图。 图 7 说明了线性斜升技术的应用, 首先使输入电压线性增加, 同时对输出以固定间隔连续采样, 电压逐步增加时连续几次采样都会得到同样输出代码, 这些采样次数称为“点击数”。从统计上讲, 每个代码的点击数量直接与该代码的相应输入电压范围成正比,点击数越多表明该代码的输入电压范围越大, 非线性微分误差也就越大; 同样,代码点击数越少表明该代码输入电压范围越小, 非线性微分误差也就越小。 用数学方法计算, 如果某个代码点击数为 9, 而“理想”情况下是8, 则该器件的非线性微分误差就是(9-8)/8 或 0.1 25。 非线性积分是所有代码非线性微分的累计值,对于斜升直方图, 它就是每个非线性微分误差的和。 从数学观点来看, 非线性积分误差等于在代码 X-1 的非线性微分误差加上代码 X 和代码 X-1 的非线性微分误差平均值。 积分非线性(Integral nonlinearity,INL)


https://wenku.baidu.com/view/5e845ffbc8d376eeaeaa31b2.html?_wkts_=1679636153594