原创 如何在ADC性能测试场景中分析频谱泄露现象?

2025-1-14 14:15 72 0 分类: 模拟 文集: 电子指南
  在信号处理过程中,由于信号的时域截断会导致频谱扩展泄露现象。那么导致频谱泄露发生的根本原因是什么?又该采取什么样的改善方法。本文以ADC性能指标的测试场景为例,探讨了对ADC的输出结果进行非周期截断所带来的影响及问题总结。

两个点
  为了更好的分析或处理信号,实际应用时需要从频域而非时域的角度观察原信号。但物理意义上只能直接获取信号的时域信息,为了得到信号的频域信息需要利用傅里叶变换这个工具计算出原信号的频谱函数。但对于计算机来说实现这种计算需要面对两个问题:
1. 计算机只能处理数字信号而非现实生活中的模拟信号。
2. 所要获取的信号理论上都是无限长的。

对于第一点,计算机需要先把送入系统的模拟信号采样、量化转换为数字信号后,再利用离散傅里叶变换(DFT)计算原信号的频谱。FFT本质上是基于DFT的快速算法。对于第二点,考虑到运算量或实时处理系统的要求,通常会把实际采集到的信号数据截断成一帧一帧的数据块分别进行DFT分析。如果被截断的信号自身原来是周期信号,则根据截断方式的不同可以分为周期截断(也称为相干采样)和非周期截断(也称为非相干采样)两大类。

时域角度
  先从时域角度理解周期截断和非周期截断会对DFT的分析造成什么影响。直观上DFT其实是对截断的信号进行离散时间傅里叶变换后在频域采样并取主值周期得到的。对下图正弦信号周期截断进行DFT分析,反应到时域相当于把截断后的信号进行周期搬移并拼接组成新的信号,此时得到信号和原信号依旧相同。

图 1:正弦信号周期截断

  但如果进行了非周期截断,拼接后的信号和原信号不再相同。这也就意味着新生成的信号包含了与原信号频率不同的新成分,即发生了频谱泄露现象。

图 2:原信号进行时域截断


频域角度
  再从频域角度观察上述过程。对原信号进行时域截断,从频域上看等价于将原信号频谱与截断窗函数频谱进行卷积,卷积的过程自然会导致原信号频谱会发生变形。

图 3:截断操作导致信号频谱卷积窗函数频谱引发的频谱泄露现象。

  为了分析ADC性能指标,一种常见的做法是往输入端送入一个已知频率的正弦信号,然后对此时的输出结果采样并进行FFT分析。单频正弦周期信号原始频谱为如下图所示​

图 4:正弦周期信号半边谱

  如果上述采样截断的过程是非周期截断,则FFT后得到的信号频谱如下图所示,可以发现原信号频谱开始拖尾并变宽。这自然会影响后续对ADC性能指标的分析。

图 5:频谱泄露后的频谱

非周期截断等价到对ADC输出结果采样参数选择上相当于此时截取信号总时长满足:N*Ts = K * Tin
K 不为整数
Ts 是采样间隔
Tin 是输入信号周期
N 是采样点数
  假定随后也进行N点DFT(一般默认DFT的点数等于采样点数,这也是频域采样避免时域混叠所要求的最小点数),则DFT后频谱图中的频谱间隔为Fs/N,而Fin = K * Fs/N(Fin是输入信号频率,Fs是采样频率),即输入信号不在频率分辨率Fs/N的整数倍上。这也意味着在采样后的DFT频谱图中,没有一条谱线可以与原信号的频率成分完全相同。但实际上此时频谱泄露的根本原因在于时域乘积等价于频域卷积,使得原信号频谱发生变形。故上述频谱图中峰值处的频率也只是与原始信号的频率相近,但并不相同。

  在此更加深入对比区分一下DTFT和DFT。对于采样前原信号是单频点周期信号cos(w0*n),其时域采样后的频谱是下图右1中的周期冲激序列串(时域抽样对应频域周期),其被矩形窗截断后,原信号与矩形窗在时域乘积反应在频域为两信号频谱的卷积(矩形窗函数的频谱如下图右2所示)。因而原来单频输入频谱发生了频谱泄露,变为了下图右3中周期函数的叠加,这一连续频域谱也就是DTFT的结果,也就是说如果单看DTFT的频谱结果,只要进行了时域截断,就必然会导致频谱泄露现象的发生。

图 6:时域截断对应频域卷积

  而DFT的结果直观上来看是对截断后信号DTFT的结果再进行频域抽样后取主值周期得到的结果(频域抽样对应时域周期)。但经过频谱采样后,如果频域的采样点除了信号所在频带外,其他采样点恰好在Sinc函数的过零点,则最终DFT频谱图上也就观测不到Sinc函数的起伏。
  简单总结一下,DTFT后的频谱是连续谱(且以数字角频率2п为周期),但DFT后的频谱是离散谱,以数字角频率2п/N为谱线间隔,N为采样点数一般也为截断时窗函数的长度。计算机因为计算能力和存储深度受限,其无法处理连续信号(连续信号可以近似认为是点数无穷多的离散信号构成),只能处理抽样量化后的数字信号。故实际应用观察的应是DFT而非DTFT的结果。FFT本质是基于DFT的一种快速算法,帮助加快运算速度而诞生的。

接下来简单从数学公式的角度描述上述现象,cos(w0*n)的DTFT为:

上式中k为整数。矩形窗函数RN(n)=[u(n)–u(n-N)]的DTFT为:

由于无法处理无限长的信号,我们需要对信号进行截断,即将原信号与矩形窗函数相乘cos(w0*n) * RN(n),截断后信号的DTFT为:

简单起见,可以只观察其中一个单位抽样序列与矩形窗函数的卷积(k = 0),结果为:

而当


故可得

k 为整数,N 为矩形窗函数的长度,默认也为后续进行DFT时在频域的总采样点数。假定截断满足周期截断,并对截断后的结果进行N点DFT,则频谱间隔为2п/N(从数字角频率的角度),且周期截断保证了:

f0 是原信号频率,fs 是采样频率,w0 是该进行采样后对应的数字角频率,K 为整数,N 为矩形窗函数的长度。

故DFT后其自变量离散数字角频率均满足:

  其中A为整数表示DFT对DTFT中的第(A+1)个采样点。从DFT频域分量表示可以看出,其和DTFT中的过零点恰好相同,因而除了w = w0时,其余时刻DFT的幅值均为0,也即截断后信号的DTFT频谱发生了变形,但DFT是对DTFT频谱进行采样得到,其除了原来信号频谱峰值采样到外,其余采样点恰好在原信号与窗函数卷积后频谱的过零点,从而避免了在DFT的频谱结果中看到频谱泄露现象。这种区别可以直观的从下图曲线中观测到,无论是否进行了周期截断两者得到的DTFT结果都是虚线所示,但如果观测DFT的结果即下图中圆圈表示的频谱(上侧进行了周期截断,下侧是非周期截断),会发现周期截断DFT后观测不到DTFT中发生的频谱泄露现象。
 
图 7:周期截断和非周期截断对DFT在DTFT结果采样的影响


  回到之前用cadence对ADC的输出码流进行FFT分析,接着非周期截断的结果。但此时把rectangular矩形窗改用blackman窗,重新得到的FFT结果还是存在一定的偏差。如果要在DFT分析中彻底避免频谱泄露现象,回想加窗在频域对应的是原信号与窗函数频谱卷积,为了避免信号频谱卷积后发生变形需要窗函数的频谱是单位脉冲序列,这也意味着其在时域是无限长的矩形窗,这显然和所要实现的信号截断相违背。

  不同于ADC性能测试中可能更注重的是单频点的输入信号频谱是否发生频谱泄露,实际频谱分析时可能更关心的是不同频率分量之间的能量相对大小。也就意味着输入信号中需要关心多个不同频率的频谱分量,而且事先并不确定所关心的信号频率具体值,故无法通过周期截断避免频谱泄露的影响。此时除了通过加窗抑制频谱泄露外,还可以在采样时尽可能采样多的点进行FFT分析,即截取的时域序列x(n)长度N值取大一些。这样即使FFT频谱中没有对应信号的频点,但由于频谱中频率分辨率fs/N变小,也可以一定程度削弱频谱泄漏的影响。


最后对模拟信号进行频谱分析所遇到的问题作一个小结:
1. 利用DFT对信号进行频谱分析时,首先需要对原信号进行采样,时域采样对应频域周期延拓,为了避免信号发生频谱混叠,至少需要采样频率大于等于两倍信号中的最高频率(奈奎斯特采样定理)。这也就是为什么信号送入ADC之前首先需要经过抗混叠滤波器滤波。
2. 由于实际中无法处理无限长的输入信号,需要对ADC数字量化后的信号进行截断操作,在时域上也就是用窗函数乘以原信号。等价到频域也就是用窗函数的频谱卷积原信号频谱,由于卷积操作原信号频谱必然发生变形,即发生了频谱泄露现象。如果仅看DTFT的结果,这一现象是无法避免的,加窗或者增多采样点数只能缓解但不能完全消除频谱泄露。
3. DTFT看到的频谱是连续谱,为了计算机能够分析处理,还需要对DTFT的频域谱进行采样即进行DFT操作得到离散频域谱。DFT中频谱成分的频率间隔是 采样频率/采样点数,且频域采样操作对于时域周期延拓。一方面为避免时域混叠需要频域采样点数应该等于或大于原输入数字信号的总序列长度(默认DFT的点数等于时域采样点数)。
如果输入数字信号的序列长度过短会导致栅栏效应(直观上来讲由于DFT的点数等于序列长度,DFT点数太少DFT结果中频率间隔太大,不能很好的拟合DTFT的结果),解决方法是额外在原数字信号序列后添零,从而增加频域采样点数以更好拟合DTFT的结果。另一方面,如果输入信号是单频周期信号,通过合理设置参数进行周期截断,可以在DFT采样中避免观察到DTFT中所发生的频谱泄露现象。
如果你对电子教程及其相关感兴趣,欢迎关注我的网站 KUKE ELECTRONICS。

作者: TIAN301, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-4107737.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
0
关闭 站长推荐上一条 /3 下一条