你有没有遇到过这种情况:Codec选的是高性能型号,ADC信噪比标称110dB,LDO也用了低噪声的,PCB布局也按手册做了。可实际测下来,底噪就是比数据手册高那么几个dB,动态范围也上不去。
问题可能出在时钟上。
今天聊聊时钟抖动对音频Codec的影响——这个经常被忽略的参数,可能是你音频系统性能的“隐形天花板”。
一、什么是时钟抖动?
时钟抖动,说白了就是时钟信号的边沿位置“晃来晃去”。
理想情况下,每个时钟周期应该完全相等。但实际上,由于各种噪声和干扰,时钟边沿会偏离理想位置。这个偏移量就叫抖动。
三种抖动类型的波形对比:周期抖动、相邻周期间抖动、时间间隔误差
抖动可以分成三种:
-
周期抖动:多个周期内时钟周期的变化。比如理论上周期是10ns,实测有正负几ps的波动。
-
相邻周期间抖动:相邻两个时钟周期的差值。这个最能反映采样间隔是否均匀。
-
时间间隔误差(相位抖动):时钟边沿相对于理想位置的长期偏移。
对音频Codec来说,相邻周期间抖动最要命——它直接决定每次采样的时间间隔准不准。
二、抖动怎么破坏音频信号?
codec的工作原理是“拍照”——采样时钟的每个边沿,把当时的模拟电压记录下来。如果时钟边沿在抖动,拍照的时间点就不准了。
在锁相环环路带宽内,主要噪声成份是参考时钟噪声、 分频器噪声、PFD和电荷泵噪声等;在环路带宽外,主要噪声源来自本地振荡器VCXO/VCO。
典型锁相环输出噪声分布
对于高频输入信号,这个问题尤其严重。想象一下:20kHz的正弦波,每秒变化两万次。如果每次拍照的时间点差了几纳秒,拍到的电压值自然不准。这个误差最终表现为信噪比下降和失真增加。
具体多少?有实测数据:1ns的时钟抖动,对20kHz信号的SNR损失约0.5dB。看起来不大,但如果你的系统有10ns抖动,SNR损失就超过5dB了——规格书里标110dB,实测只剩105dB不到,差的这5dB可是实打实的。
三、时钟抖动的来源
时钟器件的噪声主要来自两大部分:

这个分析告诉我们一个道理:如果你用的是带锁相环的时钟芯片(比如给Codec提供MCLK的合成器),环路带宽设置很关键。带宽设太宽,参考时钟的高频噪声会穿过去;设太窄,本地振荡器的近端噪声又压不住。
四、怎么判断时钟够不够用?
一个很实用的计算方法:均值抖动可以通过相位噪声曲线积分得到。
对于音频应用,通常关心10Hz-20kHz或10Hz-100kHz的积分抖动。如果你手头有相位噪声曲线,很多芯片厂商会在数据手册里直接给出不同积分带宽下的抖动值。找一下你用的时钟芯片的规格书,查“RMS Jitter”或“Phase Jitter”就知道了。
一般来说,音频Codec需要的MCLK抖动通常要求<100ps RMS。对于192kHz采样率的高性能应用,<50ps是更稳妥的选择。
五、PCB布局上怎么减小抖动?
PCB布局抖动原理可以倒推几点:
-
时钟走线包地:减少串扰耦合进来的噪声,避免边沿位置被干扰
-
远离高速信号:I2S的BCLK、DATA线不要和DDR、USB等强干扰源挨着走
-
用低抖动的时钟源:TCXO比普通晶振好,恒温晶振比TCXO更好
-
电源要干净:时钟芯片的电源纹波会直接调制到输出时钟上,PSRR要足够高
六、总结
时钟抖动对音频系统的影响,很多硬件工程师容易忽视——因为大家习惯看SNR、THD、PSRR这些“显性指标”,时钟抖动藏在背后。
但从今天的分析可以看出来,抖动直接影响采样精度,进而决定ADC/DAC的真实性能。选了一颗好Codec,却给了一个抖得不行的时钟,这就像买了好车却配了四个方轮子——跑不快的。 |