做过数据采集或者模拟电路的同学很可能知道下面这个关于ADC信噪比的著名公式:, b2 K' [9 e8 O9 @8 Q# @) U# }
sivks3mwibz64012800636.png
& [2 ?* F! g0 f' Y
其中N是ADC的位数,比如对于一个10bit的ADC,N=10,当ADC采集一个满量程的正弦波时,那么信噪比SNR=6.02*10+1.76=61.96dB,那么这个公式是怎么来的呢?0 @# R# [7 o( C# Q( R0 d
ADC量化噪声
9 w1 k6 ]; h0 C$ F& f( a下图是理想ADC的量化噪声示意图,从下图可以看到,对于一个线性输入的模拟信号,ADC会产生台阶式的输出,这个输入和输出的误差波形近似于一个峰峰值q=1LSB的锯齿波,它的有效值RMS计算过程见公式(2)(q=1LSB),LSB计算过程见公式(3),其中FS是ADC的输入电压范围,。4 y: L1 s; F4 G$ ] s2 i7 h6 r
04prpgsyq3s64012800736.png
9 A( R' G2 t- a$ b% M" f7 J% v' ?
" Z- [, G* @7 |" i
sk224jyo0vu64012800836.png
& d U5 b5 @0 l6 Y9 E' DSNR
! a3 I B% M9 L; v% M- x以前的文章介绍过SNR计算过程,信噪比是信号的有效值(RMS)除以噪声的有效值(RMS),
- g. x, _! p, J
oim4pw2s4kq64012800936.png
3 o+ u! ~& S( I% x; B1 u) C% m. I7 _. t; k
对于一个满量程输入的正弦信号见公式(5),根据公式(5)可以求得公式(6),
4 A7 r8 X% }8 j0 [7 n6 `( v
ijedbf2ramh64012801036.png
. ~- u2 V" n3 U j* \
对于满量程ADC而言,其输入范围是0-FS,那么输入的正弦信号的幅度范围就是0-Fs/2,见下图示意图,因此公式(5)中的分母是2- @$ g+ W3 w7 p8 K$ E7 r! s- s
rxwzhjxcyjt64012801136.png
0 Q6 M7 r! l2 p: V& Z. {5 XADC信噪比SNR与位数N9 m$ N6 F; U+ N8 j. S* ]5 F% A
那么到目前为止,我们知道了信号的有效值(RMS),即公式(6),也知道了ADC量化噪声的有效值(RMS),即公式(2)。把公式(6)和公式(2)带入公式(4)得到公式(7):; d% H" _# b& ~. i3 q+ z
bgr0f2f0clv64012801236.png
8 g- K! s: Z6 ?( B ^: S
公式(7)不够简化,我们继续化简(高中学的指数运算规则),可以得到公式(8),
* w% \" q: G% o. ^ q3 O' x) q" h
ykgkzlmyhtl64012801336.png
2 q6 b7 O9 }" U: @" T- I1 i' v由此我们就推导出了ADC位数N与信噪比SNR的关系,是不是和公式(1)一模一样?
( B1 o) H, g5 J9 O多说几句
) u% u1 t5 N/ T) M) j; T* w: K* L2 I3 N上式的成立条件是信号带宽比较高。0 V O8 [2 H) u5 F. p
如果信号带宽(或者说频率)很低,低于奈奎斯特采样频率fs/2,那么这会导致信号带宽范围内的噪声减小,进而使得SNR增加。, J! {% T. j' ]2 p
这就是常说的过采样,详细内容后面后机会在介绍。
7 V: `+ I0 z5 N# E# e& _另一点值得说明的是,在评估噪声时,常用到频谱分析,频谱的本底噪声值与采样点数量有关。
8 K9 a+ E# z+ l. M# ?3 {如果采样点多,那么本底噪声就会低,如果采样点数量减小,那么本底噪声就会增加,这被称为FFT增益。
4 c. M2 y* B) l8 x因此在噪声分析时,最好要自始至终使用相同数量的采样点进行分析,避免被不正确的评估方法误导。 |