精华内容
下载资源
问答
  • DNL INL的计算

    2010-11-25 17:51:08
    DNL/INL的解释及距离,用直方图方法计算DNL INL 积分非线性表示了ADC器件在所有的数值点上对应的模拟值和真实值之间误差最大的那一点的误差值,也就是输出数值偏离线性最大的距离。 INLDNL误差的数学积分,即一...
  • adc 测试DNL INL Histogram Testing Determines DNL and INL Error
  • DNLINL定义详解.pdf

    2021-07-28 08:42:13
    ADC应用积分非线性与微分非线性性能
  • AD DNL&INL

    千次阅读 2011-04-14 22:59:00
    INL 积分非线性(Integral nonlinearity,INL) 积分非线性表示了ADC器件在所有的数值点上对应的模拟... INLDNL误差的数学积分,即一个具有良好INL的ADC保证有良好的DNL。 总之,非线性微分和积分是指代码转换与

    INL

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

     

     

    说精度之前,首先要说分辨率。最近已经有贴子热门讨论了这个问题,结论是分辨率决不等同于精度。比如一块精度0.2%(或常说的准确度0.2级)的四位半万用表,测得A点电压1.0000V,B电压1.0005V,可以分辨出B比A高0.0005V,但A点电压的真实值可能在0.9980~1.0020之间不确定。

       那么,既然数字万用表存在着精度和分辨率两个指标,那么,对于ADC和DAC,除了分辨率以外,也存在精度的指标。
       模数器件的精度指标是用积分非线性度(Interger NonLiner)即INL值来表示。也有的器件手册用 Linearity error 来表示。他表示了ADC器件在所有的数值点上对应的模拟值,和真实值之间误差最大的那一点的误差值。也就是,输出数值偏离线性最大的距离。单位是LSB(即最低位所表示的量)。
       比如12位ADC:TLC2543,INL值为1LSB。那么,如果基准4.095V,测某电压得的转换结果是1000,那么,真实电压值可能分布在0.999~1.001V之间。对于DAC也是类似的。比如DAC7512,INL值为8LSB,那么,如果基准4.095V,给定数字量1000,那么输出电压可能是0.992~1.008V之间。

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


       很多分辨率相同的ADC,价格却相差很多。除了速度、温度等级等原因之外,就是INL、DNL这两个值的差异了。比如AD574,贵得很,但它的INL值就能做到0.5LSB,这在SAR型ADC中已经很不容易了。换个便宜的2543吧,速度和分辨率都一样,但INL值只有1~1.5LSB,精度下降了3倍。

       另外,工艺和原理也决定了精度。比如SAR型ADC,由于采用了R-2R或C-2C型结构,使得高权值电阻的一点点误差,将造成末位好几位的误差。在SAR型ADC的2^n点附近,比如128、1024、2048、切换权值点阻,误差是最大的。1024值对应的电压甚至可能会比1023值对应电压要小。这就是很多SAR型器件DNL值会超过1的原因。但SAR型ADC的INL值都很小,因为权值电阻的误差不会累加。
       和SAR型器件完全相反的是阶梯电阻型模数/数模器件。比如TLC5510、DAC7512等低价模数器件。比如7512,它由4095个电阻串联而成。每个点阻都会有误差,一般电阻误差5%左右,当然不会离谱到100%,更不可能出现负数。因此这类器件的DNL值都很小,保证单调。但是,每个电阻的误差,串联后会累加,因此INL值很大,线性度差。

       这里要提一下双积分ADC,它的原理就能保证线性。比如ICL7135,它在40000字的量程内,能做到0.5LSB的INL值(线性度达到1/80000 !!)和0.01LSB的DNL值.这两个指标在7135的10倍价钱内,是不容易被其他模数器件超越的。所以7135这一类双积分ADC特别适合用在数字电压表等需要线性误差非常小的场合。

       还要特别提一下基准源。基准源是测量精度的重要保证。基准的关键指标是温飘,一般用ppm/K来表示。假设某基准30ppm/K,系统在20~70度之间工作,温度跨度50度,那么,会引起基准电压30*50=1500ppm的漂移,从而带来0.15%的误差。温漂越小的基准源越贵,比如30ppm/K的431,七毛钱;20ppm/K的385,1块5;10ppm/K的MC1403,4块5;1ppm/K的LM399,14元;0.5ppm/K的LM199,130元。
       该死的教科书害了一代学生。说起来好笑的一个现象:我这边新来的学生大多第一次设计ADC电路的时候,基准直接连VCC,还理直气壮的找来N本教科书,书上的基准写了个网标:+5V。天下的书互相抄,也就所有的学校的教科书都是基准接5V。教科书把5V改成5.000V多好?学生就会知道,这个5V不是VCC。或者提一下基准需要高稳定度,也好啊! 

     

     

     

    先谈谈线性测试

    动态测试关注的是器件的传输和性能特征,即采样和重现时序变化信号的能力,相比之下,线性测试关注的则是器件内部电路的误差。对ADC来说,这些内部误差包括器件的增益、偏移、积分非线性(INL)和微分非线性(DNL)误差,这些参数说明了静止的模拟信号转换成数字信号的情况,主要关注具体电平与相应数字代码之间的关系。

    测试ADC静态性能时,要考虑两个重要因素:第一,对于给定的模拟电压,一个具体数字代码并不能告诉多少有关器件的信息,它仅仅说明这个器件功能正常,要知道器件功能到底如何还必须考虑模拟电压的范围(它会产生一个输出代码)以及代码间的转换点;第二,动态测试一般关注器件在特定输入信号情况下的输出特性,然而静态测试是一个交互性过程,要在不同输入信号下测试实际输出。

    总的来说,ADC的误差可以分为与直流(DC)和交流(AC)有关的误差。DC误差又细分为四类:量化误差、微分非线性误差、积分非线性误差、偏移与增益误差。AC误差一般与信噪及总谐波失真问题有关。

    量化误差(Quantization Error

    量化误差是基本误差,用图3所示的简单3bit ADC来说明。输入电压被数字化,以8个离散电平来划分,分别由代码000b111b去代表它们,每一代码跨越Vref/8的电压范围。代码大小一般被定义为一个最低有效位(Least Significant BitLSB)。若假定Vref8V时,每个代码之间的电压变换就代表1V。换言之,产生指定代码的实际电压与代表该码的电压两者之间存在误差。一般来说,0.5LSB偏移加入到输入端便导致在理想过渡点上有正负0.5LSB的量化误差。

     

    点击看大图

    图3 理想ADC转换特性

    偏移与增益误差(Offset Gain Error

    器件理想输出与实际输出之差定义为偏移误差,所有数字代码都存在这种误差。在实际中,偏移误差会使传递函数或模拟输入电压与对应数值输出代码间存在一个固定的偏移。通常计算偏移误差方法是测量第一个数字代码转换或“零”转换的电压,并将它与理论零点电压相比较。增益误差是预估传递函数和实际斜率的差别,增益误差通常在模数转换器最末或最后一个传输代码转换点计算。

    为了找到零点与最后一个转换代码点以计算偏移和增益误差,可以采用多种测量方式,最常用的两种是代码平均法和电压抖动法。代码平均测量就是不断增大器件的输入电压,然后检测转换输出结果。每次增大输入电压都会得到一些转换代码,用这些代码的和算出一个平均值,测量产生这些平均转换代码的输入电压,计算出器件偏移和增益。电压抖动法和代码平均法类似,不同的是它采用了一个动态反馈回路控制器件输入电压,根据转换代码和预期代码的差对输入电压进行增减调整,直到两代码之间的差值为零,当预期转换代码接近输入电压或在转换点附近变化时,测量所施加的“抖动”电压平均值,计算偏移和增益。

    微分非线性(Differential nonlinearityDNL

    理论上说,模数器件相邻两个数据之间,模拟量的差值都是一样的。就好比疏密均匀的尺子。但实际上,相邻两刻度之间的间距不可能都是相等的。所以,ADC相邻两刻度之间最大的差异就叫微分非线性DNL,也称为差分非线性。同样举例来说明,如果对于12bitADC,其INL8LSBDNL3LSB,在基准电压为4.095V时,测得A电压对应读数为1000b,测得B电压对应读数为1200b。那么就可以判断出,B点电压值比A点高出197mV203mV,而不是准确的200mV

     

    点击看大图

    4 DNL误差特性

    4中,001b010b码制过渡过程的DNL0LSB,因为刚好为1LSB。但是000b001b过渡就有个0.2LSBDNL,因为此时有1.2LSB的代码宽度。应当注意:如果在ADC或者DACdatasheet中没有清楚说明DNL参数的话,可视该转换器没有漏码,即暗示它有优于正负1LSBDNL

    积分非线性(Integral nonlinearityINL

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

    INL是DNL误差的数学积分,即一个具有良好INL的ADC保证有良好的DNL

     

    点击看大图

    5 INL误差特性

    总之,非线性微分和积分是指代码转换与理想状态之间的差异。非线性微分(DNL)主要是代码步距与理论步距之差,而非线性积分 (INL)则关注所有代码非线性误差的累计效应。对一个ADC来说,一段范围的输入电压产生一个给定输出代码,非线性微分误差为正时输入电压范围比理想的大,非线性微分误差为负时输入电压范围比理想的要小。从整个输出代码来看,每个输入电压代码步距差异累积起来以后和理想值相比会产生一个总差异,这个差异就是非线性积分误差。

    6 INLDNL

    与增益和偏移一样,计算非线性微分与积分误差也有很多种方法,代码平均和电压抖动两种方法都可以使用,但是由于存在重复搜索,当器件位数较多时这两种方法执行起来很费时。一个更加有效计算INLDNL的方法是直方图法,采用线性或正弦直方图。图7说明了线性斜升技术的应用,首先使输入电压线性增加,同时对输出以固定间隔连续采样,电压逐步增加时连续几次采样都会得到同样输出代码,这些采样次数称为“点击数”。

     

    点击看大图

    7 计算直方图

    从统计上讲,每个代码的点击数量直接与该代码的相应输入电压范围成正比,点击数越多表明该代码的输入电压范围越大,非线性微分误差也就越大;同样,代码点击数越少表明该代码输入电压范围越小,非线性微分误差也就越小。用数学方法计算,如果某个代码点击数为9,而“理想”情况下是8,则该器件的非线性微分误差就是(9-8)/80.125。非线性积分是所有代码非线性微分的累计值,对于斜升直方图,它就是每个非线性微分误差的和。从数学观点来看,非线性积分误差等于在代码X-1的非线性微分误差加上代码X和代码X-1的非线性微分误差平均值。

    展开全文
  • 经典测量高速ADC的INLDNL(转)

    千次阅读 2011-04-14 22:45:00
    AD DNL INL

    摘要:尽管积分非线性和微分非线性不是高速、高动态性能数据转换器最重要的参数,但在高分辨率成像应用中却具有重要意义。本文简要回顾了这两个参数的定义,并给出了两种不同但常用的测量高速模数转换器(ADC)的INL/DNL的方法。

      近期,许多厂商推出了具有出色的静态和动态特性的高性能模数转换器(ADC)。你或许会问,“他们是如何测量这些性能的,采用什么设备?”。下面的讨论将聚焦于有关ADC两个重要的精度参数的测量技术:积分非线性(INL)和微分非线性(DNL)。

      尽管INL和DNL对于应用在通信和高速数据采集系统的高性能数据转换器来讲不算是最重要的电气特性参数,但它们在高分辨率成像应用中却具有重要意义。除非经常接触ADC,否则你会很容易忘记这些参数的确切定义和重要性。因此,下一节给出了这些定义的简要回顾。

      INL和DNL的定义

      DNL误差定义为实际量化台阶与对应于1LSB的理想值之间的差异(见图1a)。对于一个理想ADC,其微分非线性为DNL = 0LSB,也就是说每个模拟量化台阶等于1LSB (1LSB = VFSR/2N,其中VFSR为满量程电压,N是ADC的分辨率),跳变值之间的间隔为精确的1LSB。若DNL误差指标≤ 1LSB,就意味着传输函数具有保证的单调性,没有丢码。当一个ADC的数字量输出随着模拟输入信号的增加而增加时(或保持不变),就称其具有单调性,相应传输函数曲线的斜率没有变号。DNL指标是在消除了静态增益误差的影响后得到的。具体定义如下:

      DNL = |[(VD+1- VD)/VLSB-IDEAL - 1] |,其中0 < D < 2N - 2

      VD是对应于数字输出代码D的输入模拟量,N是ADC分辨率,VLSB-IDEAL是两个相邻代码的理想间隔。较高数值的DNL增加了量化结果中的噪声和寄生成分,限制了ADC的性能,表现为有限的信号-噪声比指标(SNR)和无杂散动态范围指标(SFDR)。

     

      图1a. 要保证没有丢码和单调的转移函数,ADC的DNL必须小于1LSB。

      INL误差表示实际传输函数背离直线的程度,以LSB或满量程的百分比(FSR)来度量。这样,INL误差直接依赖于与之相比较的直线的选取。至少有两个定义是常用的:“最佳直线INL”和“端点INL” (见图1b):

      最佳直线INL定义中包含了关于失调(截距)和增益(斜率)误差的信息,以及传输函数的位置(在后面讨论)。它定义了一条最接近ADC实际传输函数的直线。没有明确定义直线的精确位置,但这种方法却具有最好的可重复性,能够真正描述器件的线性特征。

      端点INL所采用的直线经过转换器传输函数的两个端点,因而也就确定了直线的精确位置。这样,对于一个N位ADC来讲,这条直线就由其零点(全0)和其满度(全1)点确定。

      最佳直线方法通常被作为首选,因为它能产生比较好的结果。INL是在扣除了静态失调和增益误差后的测量结果,可用下式表示:

      INL = | [(VD - VZERO)/VLSB-IDEAL] - D |,其中0 < D < 2N-1

      VD是数字输出码D对应的模拟输入,N是ADC的分辨率,VZERO是对应于全零输出码的最低模拟输入,VLSB-IDEAL是两个相邻代码的理想间隔。

     

      图1b. 最佳直线法和端点法是定义ADC线性特性的两种可行办法

      转移函数

      理想ADC的转移函数是阶梯状的,其中每一个台阶对应于某个特定的数字输出代码,而每一次阶跃代表两个相邻代码间的转变。必须确定这些阶跃所对应的输入电压,以便对ADC的许多特性参数进行规范。这项任务会极为复杂,尤其是对于高速转换器中充满噪声的过渡状态,以及那些接近于最终结果、并变化缓慢的数字量。

      过渡状态没有在图1b中显著标出,而是作为一种概率函数表达,更为接近实际。当慢慢增加的输入电压经过过渡点时,ADC将一个接一个地输出相邻代码。按照定义,在过渡点对应的输入电压下,ADC输出相邻两个代码的几率相等。

      正确的过渡

      过渡电压是指输出数码在两个相邻代码间发生跳变时输入电压。名义模拟值,对应于两个相邻过渡电压之间的某输入电压所产生的数字输出码,定义为此范围的中点(50%点)。如果过渡间隔的边界已知,该50%点很容易算出。过渡点的确定可以通过测量某一个区间,然后将该区间除以其间出现过的相邻代码的次数后得到。

      测试静态INL和DNL的一般装置

      INL和DNL可以利用准直流的斜坡电压或低频正弦波作为输入来进行测量。一个简单的直流(斜坡)测试可能需要一个逻辑分析仪,一个高精度DAC (可选),一个可以扫描待测器件(DUT)输入范围的高精密直流源,和一个可连接PC或X-Y绘图仪的控制接口

      如果设备中包含有高精度DAC (精度比待测器件高得多),逻辑分析仪能直接处理ADC的输出数据来监测失调和增益误差。精密信号源产生一个测试电压供给待测器件,并使测试电压从零刻度到满刻度缓慢扫过ADC的输入范围。经由DAC重构后,从ADC输入测试电压中减去对应的DAC输出电平,就产生一个小的电压差(VDIFF),这个电压可以用X-Y绘图仪显示出来,并且和INL、DNL误差联系起来。量化电平的改变反映了微分非线性,而VDIFF与零的偏移代表积分非线性。

      积分型模拟伺服环

      另一种办法也可以用来测试ADC的静态线性参数,与前面的办法相似但更复杂一些,这就是使用积分型模拟伺服环。这种方法通常是用于要求高精度测量、而对测量速度没有要求的测试设备。

      典型的模拟伺服环(见图2)包含一个积分器和两个电流源,连接于ADC输入端。其中一个电流源向积分器注入电流,另一个则吸出电流。数值比较器连接于ADC输出并对两个电流源进行控制。数值比较器的另一输入由PC控制,后者可以对N位转换器的2N - 1个测试码进行扫描。

     

      图2. 模拟积分伺服环的电路配置

      如果环路反馈的极性正确的话,数值比较器就会驱使电流源“伺服”模拟输入跟随给定的代码跳变。理想情况下,这将在模拟输入端产生一个小的三角波。数值比较器控制斜坡信号的方向和速度。在跟随一次跳变时积分器的斜率必须快,而在采用精密数字电压表(DVM)进行测量时,为了降低叠加的三角波过冲峰值,又要求积分器足够慢。

      在MAX108的INL/DNL测试中,伺服板通过两个连接器连接到*估板(见图3)。第一个连接器建立起MAX108的主(或副)输出端口和数值比较器的锁存输入口(P)的连接。第二个连接器将伺服环(数值比较器的Q端口)和用于生成参照码的计算机连接起来。

     

      图3. 借助MAX108EVKIT和模拟积分伺服环,该测试装置可以确定MAX108的INL和DNL特性。

      数值比较器的判决结果解码后通过P > QOUT输出端输出并送往积分器单元。每一次的比较结果都独立地控制开关的逻辑输入,驱动积分电路产生出满足需要的斜坡电压,供给待测器件的两路输入。这种方法具有其优越性,但也有一些不足之处:

      为了降低噪声,三角斜坡应该具有低的dV/dt。这有利于产生可重复的数码,但要获得精确测量它需要很长的积分时间。

      正、负斜坡的斜率必须匹配方可达到50%点,并且必须对低电平三角波取平均后才可获得所需要的直流电平。

      在设计积分器时常常要求仔细选择充电电容。为了尽量减小由于电容的“存储效应”而造成的潜在误差,应选择具有低介质吸收的积分电容。

      测量精度正比于积分时间而反比于建立时间。

      将一个数字电压表连接到模拟积分伺服环中,就可测出INL/DNL误差与输出量的关系(图4a和图4b)。值得注意的是,INL与输出码关系曲线中的抛物线形或弓形曲线表明偶次谐波占主导地位,若曲线呈“S状”,则说明奇次谐波占主导地位。

     

      图4a. 该曲线给出了MAX108 ADC的典型积分非线性特性,由模拟积分伺服环测得。

     

      图4b. 该曲线给出了MAX108 ADC的典型微分非线性特性,由模拟积分伺服环测得。

      为了消除上述方法的缺陷,可以对伺服环中的积分单元加以改进,代之以一个L位的逐次逼近寄存器(SAR) (用于捕获待测器件的输出码)、一个L位DAC、以及一个简单的平均值电路。再结合一个数值比较器,该电路就组成了一个逐次逼近型转换器结构(见图5和后续的“SAR转换器”部分),其中,由数值比较器对DAC进行控制、读取其输出、并完成逐次逼近。同时,DAC提供一个高分辨率的直流电平给被测N位ADC的输入。在这个实例中,采用一个16位DAC将ADC校准至1/8LSB精度,同时获得最可信转移曲线。

     

      图5. 用逐次逼近寄存器和DAC结构取代模拟伺服环中的积分器单元

      当接近终值时,由于受到噪声的影响,数值比较器会来回跳动而变得不稳定,此时,平均值电路的优势就突显出来了。平均值电路包含两个除法计数器。“参考”计数器具有2M个时钟的周期,其中M是一个可编程的整数,用来控制计数周期(同时也决定了测量时间)。“数据”计数器仅在数值比较器输出为高时递增,其周期等于前者的一半,即2M-1个时钟。

      参考计数器和数据计数器共同工作的效果是对高、低电平的数量进行了平均,结果被保存于一个触发器,并进而传送到SAR寄存器。这个过程重复16次(在本例中)后便产生了完整的输出码。和前面的方法一样,它也有优点和不足之处:

      测试装置的输入电压由数字量定义,这样可以简便地修改求取平均值的测式样点。

      逐次逼近方式提供给待测器件模拟输入的是一个直流电平,而非斜坡电压。

      不足之处在于,反馈环中的DAC限制了输入电压的分辨率。

      SAR转换器

      SAR转换器的工作类似于旧时药剂师的天平。一边是未知的输入采样,另一边是由SAR/DAC结构产生的首个砝码(最高有效位,等于满量程输出的一半)。如果未知重量大于1/2FSR,则保留首个砝码并再增加1/4FSR。否则,用1/4FSR砝码代之。

      将这个步骤重复N次,从MSB到LSB,SAR转换器就可得到所需要的输出代码。N是SAR结构中DAC的分辨率,每个砝码代表1个二进位。

      INL和DNL的动态测试

      要测定ADC的动态非线性,可以对其施加一个满度正弦输入,然后在其全功率输入带宽内测量转换器的信噪比(SNR)。对于一个理想的N位转换器,理论SNR (仅考虑量化噪声,无失真)如下:

      SNR (单位为dB) = N×6.02 +1.76

      这个公式包含了瞬变、积分非线性和采样时间的不确定性等效应的影响。除此之外的非线性成分可以通过测量恒频输入时的SNR来获得,并可得到一个随输入信号幅度的变化关系。例如,使信号幅度扫过整个输入范围,从零到满量程或者反之,当输入幅度逼近转换器满量程时,转换输出将与信号源发生较大偏移。要确定产生这种偏移,排除失真和时钟不稳定性因素的原因,可采用频谱分析仪分析量化噪声与频率的关系。

      还有很多其他方法也可以用来测试各种高速和低速数据转换器的静态和动态INL、DNL。本文意在使读者更好地理解典型工作特性(TOC)的产生,所使用的工具和技术很简单,但极为巧妙和精确。

     

    展开全文
  • 采用MATLAB计算分析ADC的直流特性,包括DNLINL
  • ADC和DAC的DNLINL

    千次阅读 2015-04-24 13:38:24
    在讨论7135的时候,提到了INLDNL等几个参数,可是似乎知道这几个参数意义的朋友 并不多。  说起来都是教科书害人。几乎所有的教科书、参考书、文献选编都只关心模数器件的 分辨率和速度,而忽略了器件的...

    在讨论7135的时候,提到了INLDNL等几个参数,可是似乎知道这几个参数意义的朋友

    并不多。

       说起来都是教科书害人。几乎所有的教科书、参考书、文献选编都只关心模数器件的

    分辨率和速度,而忽略了器件的精度。而关系到器件精度的两个非常重要的参数就是INL

    值和DNL值。小弟觉得非常有必要专门写一篇贴子来普及一下模数器件精度这个重要的概

    念。

     

       说精度之前,首先要说分辨率。最近已经有贴子热门讨论了这个问题,结论是分辨率

    决不等同于精度。比如一块精度0.2%(或常说的准确度0.2级)的四位半万用表,测得A

    点电压1.0000VB电压1.0005V,可以分辨出BA0.0005V,但A点电压的真实值可能在

    0.9980~1.0020之间不确定。

     

       那么,既然数字万用表存在着精度和分辨率两个指标,那么,对于ADCDAC,除了分辨

    率以外,也存在精度的指标。

       模数器件的精度指标是用积分非线性度(Interger NonLiner)即INL值来表示。也有

    的器件手册用 Linearity error 来表示。他表示了ADC器件在所有的数值点上对应的模

    拟值,和真实值之间误差最大的那一点的误差值。也就是,输出数值偏离线性最大的距

    离。单位是LSB(即最低位所表示的量)。

       比如12ADCTLC2543INL值为1LSB。那么,如果基准4.095V,测某电压得的转换

    结果是1000,那么,真实电压值可能分布在0.999~1.001V之间。对于DAC也是类似的。比

    DAC7512,INL值为8LSB,那么,如果基准4.095V,给定数字量1000,那么输出电压可能

    0.992~1.008V之间。

     

       下面再说DNL值。理论上说,模数器件相邻量个数据之间,模拟量的差值都是一样

    的。就相一把疏密均匀的尺子。但实际并不如此。一把分辨率1毫米的尺子,相邻两刻度

    之间也不可能都是1毫米整。那么,ADC相邻两刻度之间最大的差异就叫差分非线性值

    Differencial NonLiner)。DNL值如果大于1,那么这个ADC甚至不能保证是单调的,

    输入电压增大,在某个点数值反而会减小。这种现象在SAR(逐位比较)型ADC中很常

    见。

       举个例子,某12ADCINL=8LSBDNL=3LSB(性能比较差),基准4.095V,测A电压

    读数1000,测B电压度数1200。那么,可判断B点电压比A点高197~203mV。而不是准确的

    200mV。对于DAC也是一样的,某DACDNL3LSB。那么,如果数字量增加200,实际电压

    增加量可能在197~203mV之间。

     

     

       很多分辨率相同的ADC,价格却相差很多。除了速度、温度等级等原因之外,就是

    INLDNL这两个值的差异了。比如AD574,贵得很,但它的INL值就能做到0.5LSB,这在

    SARADC中已经很不容易了。换个便宜的2543吧,速度和分辨率都一样,但INL值只有

    1~1.5LSB,精度下降了3倍。

     

       另外,工艺和原理也决定了精度。比如SARADC,由于采用了R-2RC-2C型结构,使

    得高权值电阻的一点点误差,将造成末位好几位的误差。在SARADC2^n点附近,比如

    12810242048、切换权值点阻,误差是最大的。1024值对应的电压甚至可能会比1023

    值对应电压要小。这就是很多SAR型器件DNL值会超过1的原因。但SARADCINL值都很

    小,因为权值电阻的误差不会累加。

       SAR型器件完全相反的是阶梯电阻型模数/数模器件。比如TLC5510DAC7512等低价

    模数器件。比如7512,它由4095个电阻串联而成。每个点阻都会有误差,一般电阻误差

    5%左右,当然不会离谱到100%,更不可能出现负数。因此这类器件的DNL值都很小,保证

    单调。但是,每个电阻的误差,串联后会累加,因此INL值很大,线性度差。

     

       这里要提一下双积分ADC,它的原理就能保证线性。比如ICL7135,它在40000字的量

    程内,能做到0.5LSBINL值(线性度达到1/80000 !!)和0.01LSBDNL.这两个指标

    713510倍价钱内,是不容易被其他模数器件超越的。所以7135这一类双积分ADC特别

    适合用在数字电压表等需要线性误差非常小的场合。

     

       还要特别提一下基准源。基准源是测量精度的重要保证。基准的关键指标是温飘,一

    般用ppm/K来表示。假设某基准30ppm/K,系统在20~70度之间工作,温度跨度50度,那

    么,会引起基准电压30*50=1500ppm的漂移,从而带来0.15%的误差。温漂越小的基准源

    越贵,比如30ppm/K431,七毛钱;20ppm/K3851510ppm/KMC140345

    1ppm/KLM399,14元;0.5ppm/KLM199130元。

       该死的教科书害了一代学生。说起来好笑的一个现象:我这边新来的学生大多第一次

    设计ADC电路的时候,基准直接连VCC,还理直气壮的找来N本教科书,书上的基准写了个

    网标:+5V。天下的书互相抄,也就所有的学校的教科书都是基准接5V。教科书把5V改成

    5.000V多好?学生就会知道,这个5V不是VCC。或者提一下基准需要高稳定度,也好

    啊!  

     

       最后说一下Sigma-DeltaADC,它比较特殊,对于精度,一般用直接用线性度表示,

    比如0.0015%.不说差分非线性值,而直接用有效分辨率来表示。此外,Sigma-Delta

    ADC还存许多怪脾气,难伺候。我准备专门开一个贴子介绍Sigma-DeltaADC应用中被忽

    略的重要问题

    展开全文
  • 本文将聚焦于有关ADC两个重要的精度参数的测量技术:积分非线性(INL)和微分非线性(DNL)。对应用于通信和高速数据采集的高性能数据转换器来讲,尽管INLDNL还不算是最重要的电特性参数,但在高分辨率成像应用中...
  • ADC标准 INL&DNL(1)

    2019-09-12 15:33:33
    积分非线性(Integral nonlinearity,INL)编辑 单位是LSB。...INLDNL误差的数学积分,即一个具有良好INL的ADC保证有良好的DNL。 总之,非线性微分和积分是指代码转换与理想状态之间的差异。非线...

    做adc 的IP验证,在datasheet 中的性能参数:
    在这里插入图片描述
    ADC的标准输出曲线,理想状态是线性的,斜率是0.
    在这里插入图片描述
    积分非线性(Integral nonlinearity,INL)单位是LSB。adc 的分辨率就是以bit来表示的,比如上面这个adc 的分辨率是12bit ,他的INL是1LSB, 如果参考电压refs 接3v,他的电压分辨率也就是3v/4096,也就是1bit 代表的电压值,这个同时也是这个adc的误差绝对值,如果现在输出的adc 的值换算完显示是1v ,他的真实输入应该是1v正负3v/4096。
    INL 标识表示的是一段区间内部的偏差的和,如果定义0~3v 的区间,会把所有点的偏差,例如标准两伏输入,adc 2.5v输出这个点的偏差也就是0.5v ,偏差的LSB是3v/4096 ,这个点的DNL就是0.5v/(3v/4096)=662LSB .
    下图的黑线是标准输出,蓝线是实测的输出曲线。每个点的实际输出和标准输出的偏差值,也就是相同的模拟输入的数字输出值和verf/12bit 这个的偏差,和的累积加载一起就是INL了。

    在这里插入图片描述
    DNL (Differential Nonlinear),差分非线性值,表示的是每个点的AD转化差异,比如输入2v 参考电压是3v ,他的输出应该是2v/3v*4096=2731,但是转换中的逐次逼近过程中的电阻电容器件之间的差压,转换输出不可能正好是理论值,输出有可能是2740,这样的偏差就是2740-2731=9 ,他的DNL就是9LSB了。就是下面这张图的中的同一输入电压,蓝色线是实测的输出线,黑色线是标准输出曲线,图中的同一输入电压输出的电压数字量1和2,1和2 的差值就是DNL 的值了。
    在这里插入图片描述

    总结下来,DNL是微分误差,也就是单点的误差,INL是积分误差,是整个区间的误差和,

    展开全文
  • 形象举例说明ADC和DAC的积分非线性INL和微分非线性DNL参数。
  • AD转换参数_----INL_DNL

    2012-08-15 15:19:52
    AD转换参数_----INL_DNL介绍
  • ADC指标——INLDNL

    2021-04-13 10:35:46
    INL(Interger NonLinear,Linearity error)精度。理解为单值数据误差,对应该点模拟数据由于元器件及结构造成的不能精确测量产生的误差。 DNL(Differential NonLinear)差分非线性值。理解为刻度间的差值,即对每个...
  • ADC标准 INL&DNL(2)

    2019-09-15 10:45:20
    自己用的INLDNL计算程序,因为使用过的并口输出的,前面一个while 是并转串的计算, 然后确定adc 的传输曲线,也就是标准的输入输出关系。 最后通过实测的输入输出关系逐点的计算偏差,单点最大的偏差就是DNL,...
  • 本文简要回顾了这两个参数的定义,并给出了两种不同但常用的测量高速模数转换器(ADC)的INL/DNL的方法。  近期,许多厂商推出了具有出色的静态和动态特性的高性能模数转换器(ADC)。你或许会问,“他们是如何测量...
  • ADC inl&dnl 测试程序

    2013-08-13 13:49:32
    ADC动态测试参数计算,基于MATLAB
  • 陈新军; 李军求, 电子产品可靠性与环境试验 发表时间:2019-08-20 期刊
  • ADC的INLDNL

    千次阅读 2014-09-04 16:56:19
    同样举例来说明,如果对于12bit的ADC,其INL=8LSB,DNL=3LSB,在基准电压为4.095V时,测得A电压对应读数为1000b,测得B电压对应读数为1200b。那么就可以判断出,B点电压值比A点高出197mV到203mV,而不是准确的200...
  • 关于ADC的INLDNL

    2021-02-04 08:49:43
    所以,ADC相邻两刻度之间最大的差异就叫微分非线性DNL,也称为差分非线性。 2、积分非线性表示了ADC器件在所有的数值点上对应的模拟值和真实值之间误差最大的那一点的误差值,也就是输出数值偏离线性最大的距离。...
  • AD转换参数INLDNL

    2015-12-23 09:15:00
    1、INL精度(Interger Nonliner,Linearity error),积分线性度:ADC在所有的数值点上对应的模拟值和真实值之间误差最大的那一点的误差值。即输出偏离线性的最大距离,单位LSB。 说明:理解为单值数据误差,对应该点...
  • 本文简要回顾了这两个参数的定义,并给出了两种不同但常用的测量高速模数转换器(ADC)的INL/DNL的方法。 近期,许多厂商推出了具有出色的静态和动态特性的高性能模数转换器(ADC)。你或许会问,“他们是如何测量...
  • 我们通常讲的“线性度”都是指“积分非线性”,积分非线性一般以百分比给出,或者以位数给出。举个例子:AD7705(16位)的datasheet上说有0.003%的非线性。1LSB为1/65535=0.0015%,所以也可说AD7705有2LSB的非线性。...
  • AD参数微分非线性(DNL)与积分非线性(INL) 此博文包含图片 (2012-06-06 16:04:33)转载▼ 标签: 杂谈 关于DNLINL 微分非线性(DNL) 在理想的A/D转换器传递函数中,每一个代码都有一个相同的宽度。也就是说...
  •  举个例子,某12位ADC,INL=8LSB,DNL=3LSB(性能比较差),基准4.095V,测A电压读数1000,测B电压度数1200。那么,可判断B点电压比A点高197~203mV。而不是准确的200mV。对于DAC也是一样的,某DAC的DNL值3LSB。那么...
  • 模数器件的精度指标是用积分非线性度(Interger NonLiner)即INL值来表示。也有的器件手册用 Linearity error 来表示。他表示了ADC器件在所有的数值点上对应的模拟值,和真实值之间误差最大的那一点的误差值。也就是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,396
精华内容 558
关键字:

dnl、inl