抖动基础:抖动的定义、单位、分类

做SerDes时钟选型,绕不开一个话题——抖动。很多新手问我:「抖动不就是信号跳变不准吗?」其实没那么简单。我个人习惯把抖动比作时钟的「心跳不齐」,它直接影响误码率和链路余量。这一节我们就把抖动的底细扒清楚。

一、抖动的定义——不是什么「噪声」

抖动的准确定义是:数字信号转换沿(上升沿或下降沿)相对于理想位置的时域偏移。说白了,就是时钟边沿该到的时候没到,或早或晚。

我在某款12Gbps SerDes项目中曾遇到过极端情况——时钟抖动超标导致眼图闭合,误码率从1e-12直接跳到1e-6。当时排查了三天,最后发现是参考时钟源的相位噪声太大。嗯,从那以后我再也不敢轻视抖动定义了。

注意区分:抖动是时域偏移,而相位噪声是频域表征。两者同源,但分析工具不同。后面章节会专门讲。

二、抖动的单位——UI、ps、ps rms 到底看哪个?

抖动量值用三种单位表示,很多规格书混着写,你得会换算。

单位 含义 适用场景 换算关系
UI 单位区间(Unit Interval),一个UI = 1个比特周期 基于数据率的相对度量 1 UI = 1 / 数据率(如10 Gbps时1 UI = 100 ps)
ps 皮秒,时间偏移 时钟抖动指标 直接时间值
ps rms 均方根值,反映抖动能量的统计分布 随机抖动(RJ)常用 峰峰值 ≈ 14× rms(常见裕度)

我建议:选参考时钟时,优先看数据手册中的周期抖动(ps rms)和长期抖动(ps)。UI值要结合数据率换算,别被数字骗了。举个例子,0.1 UI 在 10Gbps 下是 10 ps,在 25Gbps 下只有 4 ps——同样UI,压力差两倍多。

三、抖动分类——吃掉「大象」的第一步

抖动的根源五花八门,我们通常按统计特性分两大类:随机抖动(RJ)和确定性抖动(DJ),两者合起来就是总抖动(TJ)。下面这张图能帮你快速建立分类框架。

抖动分类结构 总抖动 (TJ) 随机抖动 (RJ) 确定性抖动 (DJ) 特征:高斯分布、无界、累加 来源:热噪声、闪烁噪声 指标:σ(rms) 周期性抖动 PJ 数据相关抖动 DDJ 占空比失真 DCD 来源:电源噪声、电磁干扰 特点:正弦调制,频谱为单峰 来源:信道ISI、码间干扰 特点:与数据模式相关 来源:占空比≠50% 特点:占空比失调

1. 随机抖动(RJ)——防不住的「背景噪声」

RJ 由热噪声、闪烁噪声等物理机制引起,服从高斯分布。它的特点是无界、累加——你测的时间越长,看到的峰峰值越大。所以 RJ 用 rms 值(σ)标识,换算峰峰值时通常按 14σ 或 20σ(对应 1e-12 误码率)。

我做过一个测试:同一片晶振,用 1 秒采集和 10 秒采集,RJ 峰峰值差了近 3 倍。这就是为什么规格书必须明确积分带宽(通常 12 kHz ~ 20 MHz)。

2. 确定性抖动(DJ)——有迹可循的「系统误差」

DJ 是有界的,幅度有限,而且重复出现。它又细分为三个小类:

  • 周期性抖动(PJ): 开关电源的纹波耦合到时钟线上,就会产生 PJ。我用频谱仪看过——400 kHz 电源基频处冒出一个尖峰,幅度 3 ps 的抖动,后来在 PCB 上加了去耦电容才压下去。
  • 数据相关抖动(DDJ): 在串行链路上,前一比特的电荷残留会影响后一比特的跳变沿。信道越长,DDJ 越明显。我曾经调试 28Gbps 背板,眼图下半部分塌陷——就是 DDJ 搞的鬼。
  • 占空比失真(DCD): 时钟高电平时间 ≠ 低电平时间。差分信号不对称或片内缓冲器阈值偏移都会导致 DCD。我曾经用示波器量一个 100 MHz 时钟,高电平 4.8 ns,低电平 5.2 ns——占空比只有 48%,直接导致 SerDes 接收端采样错误。

3. 总抖动(TJ)——实战中的「大箩筐」

TI = RJ + DJ,但工程上不能用简单加法。常用的是「双狄拉克(Dual Dirac)模型」:

TJ = DJ_pp + 2×Q×σ_RJ

其中 Q 是误码率对应的分位数,比如 BER=1e-12 时 Q≈7。这个模型虽然理想化,但业界沿用多年——你读到的 SerDes 眼图模板、时钟 jitter 规格表,基本都是按它算的。

工程铁律:参考时钟的 TJ 通常要求小于 SerDes 数据率对应 UI 的 0.1~0.4 UI(视协议而定)。例如 12.5 Gbps,1 UI = 80 ps,TJ 要求 ≤ 32 ps(0.4 UI)。超过这个值,眼图基本没救。

四、避坑指南——我曾经踩过的三个坑

  1. 别只看周期抖动,忽略长期抖动。 某次我选了一款号称 0.5 ps rms 的晶振,结果在 SerDes 跑 25G 时频繁丢包。分析后发现长期抖动(10 ms 内)达到了 40 ps——PLL 带宽太窄,跟不上了。切记:参考时钟的长期抖动要和 SerDes 内部 PLL 的环路带宽匹配。
  2. 别混淆峰峰值和 rms。 有些国产时钟芯片喜欢标 1 ps rms 的低抖动,但算下来峰峰值可能高达 14 ps。而 SerDes 规格书里通常写的是峰峰值要求——你得自己换算。我曾经没换算直接套用,结果流片回来眼图像个哑铃。
  3. 别忽略占空比指标。 有次我拿到一个 156.25 MHz 差分晶振,占空比 spec 写 45%~55%。实测 48% 也能用,但放到 25G SerDes 上 DCD 抖动贡献了 3 ps——把整条链路的余量吃掉了 15%。此后我选型都要求占空比在 49%~51% 以内。

五、小结:记住这三个重点

抖动的概念不复杂,但工程判断需要经验:

  • 用 UI 理解相对裕量,用 ps 判断裕量,用 rms 评估随机性。
  • 分类是诊断的第一步——RJ 查屏蔽和电源,PJ 查去耦,DDJ 查信道,DCD 查占空比。
  • 总抖动按双狄拉克模型估算是业界惯例,但实际系统中 RJ 和 DJ 会相互转化,不要死套公式。

下一段我们要面对一个更头疼的问题——相位噪声和抖动的换算。那个坑更深,但掌握了就是利器。