一个芯片工程师的ADC学习笔记 (二)

众所周知,ADC主要用于对模拟信号进行数字采集,以进行数据处理。我们周围的信号一般都是不断变化的模拟量,如光、温度、速度、压力、声音等。然而,我们大多数人都使用数字设备。如果我们想方便地使用和处理信息,就需要将模拟量转换为数字量,并传送到微控制器或微处理器。那么ADC转换是如何实现的呢?这是一个什么样的过程?阅读下面的笔记,你一定会对模数转换器有更全面、更系统的了解。

一个芯片工程师的ADC学习笔记 (二)_第1张图片

各位同行们,大家好啊,今天又来给大家分享ADC方面的学习笔记啦,听闻上一篇笔记大家都挺满意呢,那么这一次还是希望大家喜欢哦。

一、ADC的参数

1、分辨率

就是最小能够分辨的模拟电压值,例如12位ADC,Vref为3.3V最小分辨率即:Vref/2的12次方=0.8mv。

2、转换速度

即每秒转换的数字量,例如100kSPS,也常表示为每个数字量的转换时间如15us

3、输出接口

有串行或者并行接口

4、工作电压,基准电压(内部或者外部基准),封装。
5、DNL 微分非线性误差

一个芯片工程师的ADC学习笔记 (二)_第2张图片

6、INL积分非线性误差

一个芯片工程师的ADC学习笔记 (二)_第3张图片

这两种误差具有一定随机性,因此ADC会出现误码。

7、几种重要的交流参数

一个芯片工程师的ADC学习笔记 (二)_第4张图片

二、信噪失真比与有效位数 (ENOB)

采样是利用模拟开关将连续变化的模拟量变成离散的数字量,由于经采样后形成的数字量宽度较窄,经过保持电路可将窄脉冲展宽,形成梯形波。量化是将阶梯形模拟信号中各个电压值转化为某个最小单位的整数倍,便于用数字量来表示。编码是将量化的结果(即整数倍值)用二进制数码来表示。这个过程则实现了模数转换。

分辨率与动态范围

N, DR

ADC分辨率为用于表示模拟输入信号的位数。

为了更准确地复现模拟信号,须提高分辨率,使用较高分辨率的ADC也降低了量化误差。但成本就上去了。

动态范围(DR)定义为器件本底噪声至其规定最大输出电平之间的范围,通常用dB表示。ADC的动态范围是指ADC能够分辨的信号幅值范围;ADC的分辨率位数(N)决定ADC的动态范围,代表ADC可测量的输入信号等级范围,DR可定义为:

一个芯片工程师的ADC学习笔记 (二)_第5张图片

由于信号在给定时间视窗内的RMS幅值取决于信号幅值在该时间视窗内如何变化,因此ADC的DR变化取决于输入信号特征。对于其满量程范围(FSR)内的恒定DC输入而言,理想的N位ADC可分别测量FSR和FSR/2N的最大及最小RMS幅值。因此,ADC的DR为:

图片

对于正弦波信号输入而言,正弦波输入信号的最小可测量RMS幅值受量化误差的限制,正弦波输入信号的理想ADC的DR是:

DR=6.02N+1.76dB

假设ADC的动态范围为60dB,则其可分辨的信号幅值为x至1000x。通常动态范围非常重要,因为如果信号太大,则会造成ADC输入过量程;如果信号太小,则会被淹没在转换器的量化噪声中。

信噪比与信噪失真比

SNR, SNDR

数模转换器的信噪比(SNR)是指输入信号功率与噪声功率的比值,这里用来量化数据转换器内的噪声,SNR也能使用信号幅度和噪声幅度的RMS值来衡量,以dB为单位。

一个芯片工程师的ADC学习笔记 (二)_第6张图片

在满刻度正弦波输入的条件下,ADC的理论最高SNR从量化噪声推导而得,表达式为:

SNR=6.02N+1.76dB

这里N是理想ADC的位数,对于理想的N位数据转换器(不考虑谐波失真)的正弦波输入,整个奈奎斯特带宽上能达到的最佳SNR。

但对于实际的ADC,除了量化噪声,数据转换器的SNR也会受到自身热噪声和采样时钟相位噪声的限制。噪声来自主要有三个源头:

• 量化噪声

• ADC热噪声

• 抖动或采样不确定噪声

信号与噪声失真比(Signal to Noise And Distortion,SINAD)指输入正弦波时,RMS信号功率与总噪声功率和输出端(不含DC)的所有其他频率分量功率加上所有其他谐波分量功率的RMS和的比值。

SNDR是用于衡量数据转换器的动态性能的关键参数之一,它包含奈奎斯特带宽上的所有噪声和杂散。SNDR的表达式为:

一个芯片工程师的ADC学习笔记 (二)_第7张图片

其中,信号功率是有用信号、噪声和失真分量的平均功率。SNDR的单位是分贝(dB),SNDR将所有不良频率分量与输入频率做比较,反映的是输入信号的质量,从总体上衡量数据转换器的动态性能。SNDR越大,输入功率中的噪声和杂散比率越小。

有效位数

ENOB

有效位数 (ENOB) 是用于衡量数据转换器相对于输入信号在奈奎斯特带宽上的转换质量(以位为单位)的参数。

这里的ENOB假定转换器是拥有理论上完美性能,不发生失真,唯一产生的噪声是量化噪声,所以SNR 等于SNDR,即SNR(dBFS)= 6.02N+1.76dB。因此,ENOB也是SNDR的另一种表达方式:
一个芯片工程师的ADC学习笔记 (二)_第8张图片

然而,对于非理想数据转换器而言,SNDR和ENOB会发生劣化,包含噪声和其他缺陷,例如器件热噪声、输出代码缺失、谐波、AC/DC非线性、增益/偏移误差和孔径时钟相噪或抖动。外部偏置基准源和电源轨上的噪声也会降低ENOB。

总谐波失真(THD)测量信号的失真成分,用相对于基波的分贝(dB)表示。对于ADC,总谐波失真(THD)是所选输入信号谐波的RMS之和与基波之比。测量时,只有在奈奎斯特限值之内的谐波被包含在内。

类似于THD因非线性原因随输入频率增加而劣化,ENOB值也会随频率加大而劣化。ENOB来自于SNDR,而SNDR又与THD以及SNR相关联。要了解数据转换器的准确ENOB,需阅读数据手册中的详细规格和规定的条件。

实际中的ENOB

大部分模拟数据转换器IC厂商一般倾向于推广理想条件下的ENOB,尤其是数据手册标题所载的ENOB值。然而,大量系统工程师和采购经理仍然好奇的是,为什么测量出的ENOB值和数据手册所载的理想值不同?

实际使用中,由于ADC自身存在噪声和误差,其输出不仅有量化噪声,还有失真引起的高次谐波,因此从未能达到这一SNR值。计算ADC的有效N:ENOB=(SNR–1.76)/6.02 dB。

假设器件是一款12位ADC,ENOB可能仅为10bit。但需要注意的是这并不表示把ADC的后两位删掉就可以当成一个理想的10bit ADC来使用,这里ENOB的意思是12bit非理想ADC的SNDR与理想的10bit ADC的SNR相等。

有关ENOB的一些理解要点:

• 一般数据转换器数据手册标题显示的“位数”(12位或14位)指的是数字位或电压分辨率。这与ENOB无关。

• ENOB主要与噪声、非线性和输入频率存在函数关系。

• ENOB会因多种外部不确定性因素(例如时钟源、电源等)而劣化。

• ENOB是在整个奈奎斯特带宽上(DC到fs/2)计算的。

知识点理解:无杂散动态范围(SFDR)

移知是中国半导体线上讲座和技术交流平台;这里汇聚了众多优秀和资深的大咖,通过提供最接地气的实战课程,分享最实用的经验,为您职场学习和成长助力;关注移知,还可领取100元新人红包和免费半导体课程!

你可能感兴趣的:(IC,学习,python,单片机)