做过数据采集或者模拟电路的同学很可能知道下面这个关于ADC信噪比的著名公式:
其中N是ADC的位数,比如对于一个10bit的ADC,N=10,当ADC采集一个满量程的正弦波时,那么信噪比SNR=6.02*10+1.76=61.96dB,那么这个公式是怎么来的呢?
ADC量化噪声
下图是理想ADC的量化噪声示意图,从下图可以看到,对于一个线性输入的模拟信号,ADC会产生台阶式的输出,这个输入和输出的误差波形近似于一个峰峰值q=1LSB的锯齿波,它的有效值RMS计算过程见公式(2)(q=1LSB),LSB计算过程见公式(3),其中FS是ADC的输入电压范围,。
SNR
以前的文章介绍过SNR计算过程,信噪比是信号的有效值(RMS)除以噪声的有效值(RMS),
对于一个满量程输入的正弦信号见公式(5),根据公式(5)可以求得公式(6),
对于满量程ADC而言,其输入范围是0-FS,那么输入的正弦信号的幅度范围就是0-Fs/2,见下图示意图,因此公式(5)中的分母是2
ADC信噪比SNR与位数N
那么到目前为止,我们知道了信号的有效值(RMS),即公式(6),也知道了ADC量化噪声的有效值(RMS),即公式(2)。把公式(6)和公式(2)带入公式(4)得到公式(7):
公式(7)不够简化,我们继续化简(高中学的指数运算规则),可以得到公式(8),
由此我们就推导出了ADC位数N与信噪比SNR的关系,是不是和公式(1)一模一样?
多说几句
上式的成立条件是信号带宽比较高。
如果信号带宽(或者说频率)很低,低于奈奎斯特采样频率fs/2,那么这会导致信号带宽范围内的噪声减小,进而使得SNR增加。
这就是常说的过采样,详细内容后面后机会在介绍。
另一点值得说明的是,在评估噪声时,常用到频谱分析,频谱的本底噪声值与采样点数量有关。
如果采样点多,那么本底噪声就会低,如果采样点数量减小,那么本底噪声就会增加,这被称为FFT增益。
因此在噪声分析时,最好要自始至终使用相同数量的采样点进行分析,避免被不正确的评估方法误导。