AD转换芯片精度计算及校正方法

news2025/1/11 20:51:19

文章目录

  • 前言
  • 一、转换精度
  • 二、重要参数
    • 1.线性误差(INL)和差分线性误差(DNL)
    • 2.失调误差和增益误差
  • 三、转换校正
  • 总结


前言

本文对模数转换芯片的精度进行简要介绍,帮助大家正确选型,并介绍了一个基本的ADC转换结果校正方法。专业术语在不同厂家的芯片使用手册中可能不相同,若要详细了解还需要阅读产品手册~


一、转换精度

【重要参数】
FS:满量程值。
LSB:最低有效位,即ADC输出的二进制码最低位0…(n个0)1代表的电压值大小。

假设ADC的输出位数为n位,那么 L S B = [ + F S − ( − F S ) ] 2 n LSB={[+FS-(-FS)]\over2^{n}} LSB=2n[+FS(FS)]

【量化误差】
ADC输出的值是按LSB变化的,当输入电压值介于1LSB之间时,输出值会按一定规则入位或舍弃,这个过程产生的误差是量化误差,无法消除。

量化误差最大是1LSB,因此在对ADC芯片进行选型时,首先考虑芯片的输出位数,这决定了其LSB值。在满量程值不变的情况下,输出位数越高,LSB值越小,精度也就越高。

若计算得到的LSB满足设计对ADC误差的要求,那么才对芯片进行其他性能的考量。

下图是某16位输出ADC芯片的理想传递函数曲线,该芯片可以测量负输入,输出为二进制补码,且输出码的转换在LSB的中间位置(1/2LSB或3/2LSB处)。由于输出是补码形式,因此当最高位为1时表示输入为负电压,最高位是0时表示输入为正电压。
在这里插入图片描述

例如,输出100…000时,对应输入是 − F S − 1 2 L S B ∼ F S + 1 2 L S B -FS-{1\over2}LSB \thicksim FS+{1\over2}LSB FS21LSBFS+21LSB
输出为000…000时,对应输入是 0 − 1 2 L S B ∼ 0 + 1 2 L S B 0-{1\over2}LSB \thicksim 0+{1\over2}LSB 021LSB0+21LSB

经推导,输入正电压时,将输出码直接转换为十进制,与LSB相乘得到对应的电压值;输入负电压时,将输出码按位取反后转换为十进制,再取该十进制的相反数,与LSB相乘后即为对应的电压值。

二、重要参数

1.线性误差(INL)和差分线性误差(DNL)

线性误差又称积分非线性,指实际测量中每一个独立编码与一条从“0”端到“满量程”端直线之间的偏移值。其中“0”端指在第一次码变化的前1/2LSB处,“满量程”端指在最后一次码跳变的后1/2LSB处。每一个码的偏移值是从码的中间位置计算的。如下图所示:

Alt
理想状态中,输出码值与其中间位置对应的输入值满足线性关系,且为 V o u t = V i n Vout=Vin Vout=Vin(斜率为1,偏置为0)

但在实际使用中,二者的关系并非严格线性,存在线性误差,每一个码的误差不一样。

  • 若该误差的最大值在 ± 1 2 L S B ±{1\over2}LSB ±21LSB 以内,当输入模拟电压值正好是码的中间位置值时,能正确译出码值;当输入电压相对中间位置值有偏差时,可能会译为相邻码值。
  • 若该误差的最大值在±1LSB内,则译码结果为正确码值或者是相邻码值。

因此,在芯片选型时,尽量选择INL在全量程范围内的绝对值小于1/2LSB的型号,输入输出的关系更接近于线性,精度会更高。
下图为某ADC芯片的INL性能曲线,能看出每一个码的偏移值并不相同。
在这里插入图片描述
还有一个对应参数,是差分线性误差,又称差分非线性(DNL),其含义是任意两个相邻码之间所测得变化值与理想的 1 L S B 1LSB 1LSB 值之间的差异。设置该参数的目的是为了保证在输入电压增加的过程中,输出码能够没有遗漏地递增出现。

2.失调误差和增益误差

实际使用时,我们一般假设输入与输出之间满足线性关系,但是线性的斜率与偏置值并不理想(理想中斜率为1,偏置为0),这就是在校正时需要计算的值。

其中偏置值由失调误差决定,斜率由增益误差(Gain Error)决定。

【失调误差】 指码跳变时的实际电压值与理想电压值之差,是将整个传递函数偏移了相同的值,对应线性函数中的偏置,可以通过从ADC输出中减去该值来校准。

消除失调误差后,可以保证实际输出码的第一次跃迁与理想的转换一致,但不能保证其他跃迁也和理想情况在相同输入值下发生。这就引出了增益误差的概念。

【增益误差】 指消除失调误差后,理想增益点与实际增益点之差(增益点是最后一次码跳变后的1/2LSB点),对术语的解释在不同厂家的手册中可能不一样,但是本质相同。增益误差的概念如下图所示:
在这里插入图片描述
由图可知,增益误差带来的是斜率的改变。

还有一个相似的参数是满量程误差(Full Scale Calibration Error),该误差是在未进行失调误差校正的情况下,最后一次码跃迁时的实际输入与理想输入之间的差值。

三、转换校正

在使用ADC芯片时,为了修正增益误差和失调误差,提高转换精度,一般会使用硬件或软件校正。校准过程根据实际测得的输入与输出值进行计算,不依靠器件手册中提供的误差参考值。

例如,在下图中,输入电压量程为 − 10 V ∼ 10 V -10V \thicksim 10V 10V10V
实线是理论转换结果,表达式为 V o u t = V i n Vout=Vin Vout=Vin
虚线为实际转换结果,偏置是 y 0 y0 y0,斜率为 k k k,即 V o u t = k × V i n + y 0 Vout=k \times Vin+y0 Vout=k×Vin+y0,那么对Vout的修正结果即为 V c o r r e c t e d = ( V o u t − y 0 ) k Vcorrected={(Vout-y0) \over k} Vcorrected=k(Vouty0),可以在软件中利用公式完成此修正。

其中, y 0 y0 y0的值是在输入电压0V时,实际输出与输入间的偏差;

计算 k k k值时,选择量程内的两个不同输入电压 V i n 1 Vin1 Vin1 V i n 2 Vin2 Vin2,测量其对应的实际输出 y 1 y1 y1 y 2 y2 y2,则
k = ( y 2 − y 1 ) ( V i n 2 − V i n 1 ) k={(y2-y1) \over ( Vin2-Vin1)} k=(Vin2Vin1)(y2y1)

在这里插入图片描述
根据上述方法,即可完成对ADC输出值的校正。


总结

在使用ADC时,除了前期选型注意精度要求外,在实际调试时一定要根据实际转换值与输入值做校正,校正后的转换结果误差会很小。

参考链接:
ADC失调误差和增益误差

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/146094.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

postgresql13+postgis3.2安装教程

postgresql13postgis3.2安装教程 安装postgresql13 安装pg13 pg13安装包 cd /home/soft/pg tar -zxvf postgresql-13.6.tar.gz cd postgresql-13.6# yum -y install -y readline-devel./configure --prefix/usr/local/pgsqlmake -j4make install设置环境变量 vim /etc/pr…

OpenGPT的11种高效用法

1. 问答提示 2. 解释复杂的概念 3. 创作 创作需要尽可能的缩小范围,提出具体的要求,AI会给出更好的答案。 4. 准备面试 5. 教师教案 6. 编码和集成 7. 健身 8. 送礼推荐 9. 翻译 这个甚至不用去演示,openAI的翻译能力非常强大&#xff0c…

计算机专业混子应届生,如何3个月逆袭,成功上岸?

在我进入大学之前,我一直对计算机感兴趣。虽然只是考了一个一般大学,但是选专业的时候还是选了计算机专业。 本来以为自己会在大学里学到很多有用的知识,并且能够很快找到一份好工作。但是,事实并不是这样。在大学期间&#xff0c…

竞品分析:叮咚买菜

​生鲜包括了三类未加工的初级产品“果蔬(水果蔬菜)、肉类、水产品”以及两类加工产品“面包和熟食”。熟食又包括“冷藏的冷冻食品、乳制品和非冷藏的散装杂粮”。 生鲜电商就是以电子商务的形式销售以上产品。 生鲜电商有着“悠久”的历史&#xff0…

Vue组件的生命周期

一、生命周期 & 生命周期函数 1. 生命周期(Life Cycle)是指一个组件从创建 -> 运行 -> 销毁的整个阶段,强调的是一个时间段。 2. 生命周期函数:是由 vue 框架提供的内置函数,会伴随着组件的生命周期&#xf…

第四十三讲:神州防火墙混合模式的初始配置

混合模式即相当于防火墙既工作于路由模式,又工作于透明模式。在实际应用环境中,此类防火墙应用一般也比较广泛。混合模式分为两种: 一,ISP分配外网地址,内网为私网地址,服务器区域和内部地址为同一网段。这…

智慧商圈,对接微信、支付宝、云闪付实现自动积分

线下交易 商城下的门店使用本公司内部的pos机以及会员管理系统,通过pos收银时,根据管理系统配置的积分规则,可以自行给会员积分。但是当商城内部的部分门店不是使用内部的pos机进行收银时,则无法给给该批用户进行积分。以前有拍照…

吉他谱软件guitar pro2023吉他和弦、六线谱、BASS四线谱绘制

Guitar Pro由法国Arobas Music出品,主要用于管弦乐器的学习,通过建立不同的音轨,可完成不同乐器乐谱的编排制作。Guitar Pro发布23余年来,其强大的功能被广泛应用于专业乐队的创作和排练,其独创的gtp文档格式在专业领域…

「数据密集型系统搭建」原理篇|夯实基础,灵活设计

正所谓“完事开头难”,在设计技术方案时候,除了前期要做好背景调查、需求调研,开工动手的第一步就是做“数据建模”,也就是存储数据的结构设计,大部分时间是围绕关系型数据库进行的,少部分是在Redis上做K-V…

「技术直播」分布式数据库订阅功能的原理及实现

数据订阅是一种数据查询方式,其特点为:客户端执行一个查询语句后,可以增量形式,不断收到新到达服务端的、符合查询条件的数据。相比普通查询,订阅能够持续地、低延迟地将新写入的数据返回客户端。什么时候需要数据订阅…

40 行 Python 代码,写一个 CPU!

目录 一、引言 二、CPU 的组成 三、工作原理 四、CPU 指令工作详细剖析 五、 Python 实现 CPU 各组成部分 六、集成 CPU 七、为CPU编程,体会上古程序员 工作流程 八、总结 一、引言 CPU 如何工作?是困扰初级用户一个迷雾般的难题。我们可能知道诸…

HTML1

HTML是一门语言,所有的网页都是用HTML这门语言编写出来的 HTML(Hyper Text Markup Language):超文本标记语言 超文本:超越文本的限制,除了文字信息,还可以定义图片、音频、视频等内容 标记语言:由标签构…

联合证券|北京宣布:全域禁放!新能源大爆发,有港股盘中暴涨超40%

周五A股商场和港股商场进一步走强,连续近期连续涨势,其间上证指数盘中再创近期反弹以来新高,新能源赛道股团体大涨,成为商场新的领涨主力。 北向资金也持续大举净买入,继昨天净买入超越百亿元之后,今天上午…

续集来了丨UI自动化测试(二):带视频,实在RPA高效进行web项目UI自动化测试

一、什么是web项目ui自动化测试? 通过测试工具模拟人为操控浏览器,使软件按照测试人员的预定计划自动执行测试的一种方式,可以完成许多手工测试无法完成或者不易实现的繁琐工作。 正确使用自动化测试,可以更全面的对软件进行测试…

让 APISpace 告诉你什么场景使用什么API(3)

Q:跨境电商平台,需要在界面上展示跨境包裹的物流信息,需要使用的是什么API? 需要 跨境国际快递物流查询API~ 跨境国际快递物流查询服务,支持900物流商,提供实时查询和单号订阅API接口。稳定高效&#xff…

160链表-相交链表

题目 链接:160. 相交链表 - 力扣(LeetCode) 思路 是指针相同,先求出两个链表的长度以及差值,让curA移动到和curB末尾对齐的位置,然后就可以遍历比较是否相同 代码: /*** Definition for sing…

【阶段二】Python数据分析数据可视化工具使用04篇:核密度估计图

本篇的思维导图: 核密度估计图 核密度估计图(kernel density plot)用于显示数据在X轴连续数据段内的分布状况。这种图表是直方图的变种,使用平滑曲线来绘制数值水平,从而得出更平滑的分布。核密度估计图比统计直方图优胜的一个地方,在于它们不受所使用分组数量的…

一文学会Linux IPC通信

目录 概览 单工、半双工、双工 各种IPC通信方式优缺点 1. 管道 2. 消息队列 3. 共享内存 4. 信号量 5. 信号 6. Socket套接字 精筛优秀博客 原本想详细写下,后发现有很多人总结过,那我就直接战在巨人的肩膀上不再重复造轮子了。 概览 单工、半…

PowerCLi 创建esxi登陆用户

官网PowerCLI参数配置参考 New-VMHostAccount 创建用户参考New-VIRole 创建权限组参考Get-VIPrivilege 查询所有角色层配置信息

由浅入深读透vue源码:diff算法

导语 | 开发者工作中,研究代码逻辑常需要思考这个问题:数组变更后,具体变更了哪一些元素?变更的位置如何?本文作者陈碧松解析并覆写了针对数组变化的diff算法逻辑。希望本文对你有帮助。diff方法的运行规则和前提方法为…