做过数据采集或者模拟电路的同学很可能知道下面这个关于ADC信噪比的著名公式:& S# e' e: K* ~
2vd5unxhvep6402688723.png
& c" n# _0 t1 B6 }8 o; S
其中N是ADC的位数,比如对于一个10bit的ADC,N=10,当ADC采集一个满量程的正弦波时,那么信噪比SNR=6.02*10+1.76=61.96dB,那么这个公式是怎么来的呢?
0 K9 n# I; A8 E6 q/ mADC量化噪声( L( }7 b, @& q" }! B* [
下图是理想ADC的量化噪声示意图,从下图可以看到,对于一个线性输入的模拟信号,ADC会产生台阶式的输出,这个输入和输出的误差波形近似于一个峰峰值q=1LSB的锯齿波,它的有效值RMS计算过程见公式(2)(q=1LSB),LSB计算过程见公式(3),其中FS是ADC的输入电压范围,。9 g |- n/ L+ N. ^1 z
d2tb3zkzeib6402688823.png
. n2 k$ _& P5 g6 D7 n. u0 d
, z0 x1 O- t$ c# N
pofhjmojyvd6402688923.png
' A2 g1 k! |9 L& K
SNR
- Z" o' h& A2 A' F+ V4 M8 D以前的文章介绍过SNR计算过程,信噪比是信号的有效值(RMS)除以噪声的有效值(RMS),9 h& k) Y$ J+ V0 w3 }
idcx1rpmi5r6402689024.png
: E; o8 r# n( `. z
; [ @) m# H, K对于一个满量程输入的正弦信号见公式(5),根据公式(5)可以求得公式(6),3 b- }( F# }! |: ?3 ~/ H' T
tdoripoh3bg6402689124.png
6 ^0 @8 C+ J: D2 ]3 h
对于满量程ADC而言,其输入范围是0-FS,那么输入的正弦信号的幅度范围就是0-Fs/2,见下图示意图,因此公式(5)中的分母是2
x8 H5 [: s- f1 z' n& G( T
0lkadc1gs136402689224.png
% q2 l3 J8 v% ?: kADC信噪比SNR与位数N: G) ~! [6 L2 s9 B& o
那么到目前为止,我们知道了信号的有效值(RMS),即公式(6),也知道了ADC量化噪声的有效值(RMS),即公式(2)。把公式(6)和公式(2)带入公式(4)得到公式(7):
: w+ ^0 m- S% @0 Z. D
v3livwure3b6402689324.png
5 x5 Z; n# C& S) P o+ J& ^6 t. Y公式(7)不够简化,我们继续化简(高中学的指数运算规则),可以得到公式(8),* e' Z: l5 U4 E6 t
3d3md1xnb4a6402689424.png
4 P9 `5 V* d( Y+ c. B3 ]5 u* e由此我们就推导出了ADC位数N与信噪比SNR的关系,是不是和公式(1)一模一样?
3 |- E+ i3 g7 l: C I( @多说几句5 ?& i: a1 U" b/ C6 r
上式的成立条件是信号带宽比较高。0 m& F f* J- Z
如果信号带宽(或者说频率)很低,低于奈奎斯特采样频率fs/2,那么这会导致信号带宽范围内的噪声减小,进而使得SNR增加。, w/ ]5 L6 a0 q, s# ?
这就是常说的过采样,详细内容后面后机会在介绍。 u& R0 }/ I3 \9 d( m3 b
另一点值得说明的是,在评估噪声时,常用到频谱分析,频谱的本底噪声值与采样点数量有关。
8 e. C4 n! u) P. u+ t+ J如果采样点多,那么本底噪声就会低,如果采样点数量减小,那么本底噪声就会增加,这被称为FFT增益。- _* }: X7 j" K% M* m
因此在噪声分析时,最好要自始至终使用相同数量的采样点进行分析,避免被不正确的评估方法误导。 |