大家在使用ADC的时候,往往最关注位数,而对ADC的线性度往往会忽略。

其实这个线性度也是ADC非常重要的指标,ADC(或DAC,其实ADC也是由DAC组成的)线性度指标有两个:

INL:翻译过来叫“积分非线性”,指的是ADC整体的非线性程度。

DNL:翻译过来叫“微分非线性”,指的是ADC局部(细节)的非线性程度。

我们通常讲的“线性度”都是指“积分非线性”,积分非线性一般以百分比给出,或者以位数给出。举个例子:AD7705(16位)的datasheet上说有0.003%的非线性。1LSB为1/65535=0.0015%,所以也可说AD7705有2LSB的非线性。“微分非线性”不常用, AD7705的datasheet上说:“16位无失码”,那就是说明它的微分非线性小于1LSB。

再举个例子:有一把10厘米的尺子,分度为1mm(分辨率,相当于ADC的1LSB),那总共有100小格(满量程为100LSB,7位ADC都不到)。

“微分非线性”指的是,每一小格长度和理想的一小格长度(定为1mm)之间的误差。就是说这把尺子有疏有密,假设这把尺子有些小格的长度分别为: 0.8mm, 0.9mm,1.0mm,1.1mm,1.3mm。那么 1.3mm的小格对应的“微分非线性”为:1.3mm–1mm = 0.3mm,0.8mm的小格对应的“微分非线性”为0.8mm–1mm = -0.2mm,取绝对值就是0.2mm。取最大的误差值0.3mm(也就是0.3LSB)定义为这把尺子的“微分非线性”。

“积分非线性”是微分非线性误差的积累,是某一长段区间(有可能在3cm处,也有可能在5cm处有最大误差)和真实长度的误差。“积分”就是对一段区间内的“微分”求代数和嘛(离散域)。

好的微分非线性并不能保证有一个好的积分非线性,因为假如微分非线性的误差很小,但都是正的,那积分非线性就会很大(假如尺子有100小格,每一小格的的微分非线性误差累加起来就很大)。但是好的积分非线性可以保证有一个好的微分非线性。

有些人会问,假如有一把尺子的每一小格都是0.9mm,这时INL和DNL为多少?这时候格子的疏密是均匀的,DNL为0mm,INL也为0%,也就是线性度非常理想(我这里把理想一小格长度定为0.9mm)。但是这样的尺子是不准确的,我们说这把尺子有一个增益误差(这里就是0.9倍)。就是说你用这把尺寸量到一个物体长度读数为10CM,需要再乘上0.9这个系数,物体的真实尺寸为10CM*0.9=9CM。我们使用一些ADC时,常常要做增益校准,做的就是这个事(用一个标准的信号源,把这个0.9的系数给算出来,存到单片机或者E2PROM里面)。

说到这里大家对ADC线性度概念应该可以明白一些了,但是如何把一个ADC芯片的线性度测量出来,那可不是容易的事。特别是高位数的ADC,比如16位,笨一点的办法,就是测65536个点,计算得到积分非线性,如果是24位的ADC,估计一两年之内都测不完。

对ADC(DAC)的线性度(INL和DNL)的一点理解相关推荐

  1. 想了解 ADC 的非线性度吗?揭开地毯看一看:)

    作者:Vinay Tucson Agarwal   德州仪器 上周,我把家里的地毯换成了木制地板.在移除客厅楼梯的地毯后,我注意到原本"一致"的楼梯台阶的进深宽度其实很不均匀.对此 ...

  2. inl和dnl matlab_matlab仿真inl dnl

    高速模数转换器ADC的INLDNL测量 美国美信公司关于ADC参数INL和DNL的测试方法介绍美国美信公司关于ADC参数INL和DNL的测试方法介绍隐藏>> Maxim > App ...

  3. ADC DAC基本概念理解(一)

    1.分辩率(Resolution) 指数字量变化一个最小量时模拟信号的变化量,定义为满刻度与 2n 的 比值.分辩率又称精度,通常以数字信号的位数来表示. 分辨率是数字量变化一个最小刻度时,模拟信号的 ...

  4. 高速ADC/DAC的测试方法

    演讲内容 大家好,我是今天做分享的任彦楠,非常荣幸能和大家交流,今天我分享的内容是within我的knowledge, 也希望将我不懂的地方向大家请教. 今天我要和大家分享的是高速ADC/DAC的测试 ...

  5. inl和dnl matlab_请问如何用matlab仿真它的性能, 比如 INL, DNL, SFDR,EOB等等。

    如果用Hspice仿真一个Pipelined ADC, 之后如何用matlab仿真它的性能, 比如 INL, DNL, SFDR,EOB等等. 这个你可能要自己编程. 小编能给个联系方式吗?我做的也是 ...

  6. ADC/DAC设计常见40问

    本文章是关于ADC/DAC设计经典问答,涵盖时钟占空比.共模电压.增益误差.微分相位误差.互调失真等常见问题. 1. 什么是小信号带宽(SSBW)? 小信号带宽(Small Signal Bandwi ...

  7. FPGA 30 综合数字ADC /DAC 信号发送采集系统设计(综合项目设计)

    FPGA 30 综合数字ADC /DAC 信号发送采集系统设计(综合项目设计) 模块名称 : 综合数字ADC /DAC 信号发送采集系统设计 主要功能 :本实验设计了一个信号发送和采集系统的设计,在整 ...

  8. 蓝桥杯 模板Template Part9:PCF8591 ADC/DAC

    九层妖塔 起于垒土 蓝桥杯 模板Template Part9:PCF8591 ADC/DAC 一.原理图 二.通过IIC对PCF8591的写操作与读操作 写操作 读操作 三.基本模板 1.`头文件` ...

  9. 4.8 51单片机-PCF8591(ADC/DAC)转换芯片

    4.8 PCF8591(ADC/DAC)转换芯片 4.8.1 原理图 当前实验板上没有PCF8591芯片,这里采用外接模块的形式使用. 图4-8-1 PCF8591模块实物图 图4-8-2 原理图 通 ...

最新文章

  1. c++结构体定义和使用_【C语言更新】结构体的定义及使用
  2. MIS开发中C/S模式与B/S模式的结合策略
  3. WCF-Discovery的协议基础:WS-Disvovery(客户端驱动探测服务)
  4. java 虚拟机的原理_java虚拟机的原理
  5. mysql update delete_MySQL中UPDATE与DELETE语句的使用教程
  6. 【转】Spring Bean单例与线程安全
  7. 将RGB转换成ToWin32值
  8. 我的世界无人维护的服务器,我的世界:如何进入9年无人管理的2B2T?全球最大战争服务器!...
  9. 一个把图片保存到SQL数据库的工具
  10. ajax 回调数据 刷新table_Ajax gt;gt;gt; 001
  11. webservice 调用错误
  12. mysql中sex数据类型_MySQL数据类型+简单操作
  13. Centos7 64位镜像下载
  14. 【细小碎的oi小知识点总结贴】不定时更新(显然也没人看qwq)
  15. php生成服务器证书pfx,使用PHP使用.pfx证书签署XML文件
  16. Tiled结合Unity做地图——Tiled2Unity
  17. “Building Gradle project”一直不成功的解决方案(常见于ARCORE项目导出时)
  18. 【遇见CUDA】CUDA算法效率提升关键点概述
  19. 123 白沙 李恒福 今見도(才+壽)人而成逆賊
  20. 手动安装ceph和使用

热门文章

  1. Simscape学习笔记
  2. 云计算模型 按需自助服务_云计算中的按需服务
  3. $\frac{dy}{dx}$ 是什么意思?
  4. Autodesk Flame2016、Flame2018、Flame2020系统要求以及安装测试
  5. 2019趣头条自媒体赚钱攻略
  6. STC89C52使用IIC驱动24C02
  7. C# OPC DA 协议同步及异步读取数据,支持局域网访问其 他OPC server
  8. R课程 第三次作业 作业:股票收益率的影响因素分析
  9. 使用tcpdump监控网络消息发送
  10. vue 日历翻拍效果_VUE实现日历组件功能