抖动定义与分类

咱们做高速数字通信的,最怕什么?怕信号“抖”。

说白了,抖动就是信号边沿偏离理想时间位置的那点偏差。你想想看,要是每个时钟沿都忽前忽后,接收端就搞不清楚该在哪儿采样了。误码率蹭蹭往上涨。

我刚开始搞BERT测试那会儿,碰到一个案子,眼图明明张得挺开,误码率就是下不去。后来抓抖动分离一看,原来是电源噪声引起的周期性抖动。怎么说呢——不懂抖动分类,连问题在哪儿都找不到。

抖动的两大阵营:确定性 vs. 随机

抖动的学术分类很简单:确定性抖动(Deterministic Jitter, Dj)和随机抖动(Random Jitter, Rj)。咱们做工程,先得有这个概念。

抖动类型来源特征能否消除
确定性抖动 Dj电源噪声、串扰、码间干扰、占空比失真有界、可预测、峰值可测能(设计优化)
随机抖动 Rj热噪声、闪烁噪声、散粒噪声无界、高斯分布、RMS固定不可消除(只能降噪)

这里要注意——确定性抖动是有边界的,你测到多大峰值,最大也就那么大。但随机抖动是高斯分布,理论上尾巴能拖到无穷远。所以你在BERT上设置误码率门槛时,得把这层“尾巴”算进去。

确定性抖动里还分三种

我习惯把Dj再往下拆成三兄弟:

  • 占空比失真抖动(Duty Cycle Distortion, DCD)
    原因是上升沿和下降沿的转换时间不对称。举个例子,你发一串1010,结果高电平持续40ps,低电平60ps。占空比不等于50%,就会产生DCD。我在调试某个25Gbps项目时,发现驱动器的上下拉电流不匹配,DCD一下子占了Dj的40%。
  • 数据相关抖动(Data Dependent Jitter, DDJ)
    或叫码间干扰(ISI)。发送的比特流特性影响信道响应,前一个码元没完全衰减完,后一个就来了。说白了,传输线就像个低通滤波器,高频成分衰减大,低频成分过冲大。你的码型切换越剧烈,DDJ越严重。
  • 周期性抖动(Periodic Jitter, PJ)
    来源多为开关电源的纹波、时钟分频谐波或者EMI耦合。我遇到过一个小把戏:某个测试板,眼图开合度老是周期性地变窄,后来拿着近场探头一扫,发现是DC-DC的2MHz纹波耦合到了输出缓冲器上。换上低纹波LDO,PJ直接减半。

四个关键缩写:Tj、Dj、Rj、Pj

做BERT测试,这几个字母天天见。我列个表,方便你对照记忆。

缩写全称怎么理解常用单位
TjTotal Jitter总抖动,由Dj和Rj合成得到ps(峰峰)
DjDeterministic Jitter确定性抖动的峰值ps
RjRandom Jitter随机抖动的RMS值ps(RMS)
PjPeriodic Jitter周期性抖动的振幅(峰峰)ps

关键公式

在BERT测试中,总抖动Tj通常用双狄拉克模型估算:

Tj = Dj + 2 × α × Rj

其中α取决于目标误码率(BER)。常见对应:

BERα值含义
1e-127.0314.06 × Rj + Dj
1e-157.9415.88 × Rj + Dj

说白点,Rj每增加1ps RMS,Tj的恶化程度会随BER精度指数级放大。所以很多高速接口标准会先规定BER(比如PCIe Gen5要求1e-12),你再反推允许的最大Tj。

一张图理清所有关系

下面这张关系图是我自己画来给团队新同事用的。你们直接拿去:“抖动家族谱”。

抖动分类关系图 抖动 Jitter 确定性抖动 Dj 随机抖动 Rj DCD DDJ(ISI) PJ 周期性抖动 总抖动 Tj 注意 Tj = Dj + 2 × α × Rj α 取决于目标 BER 虚线表示线性叠加关系 实线表示分类包含关系

再补充一个我自己的理解:书上说Tj= Dj + 2αRj,但实际测试时,Dj和Rj是通过测量统计分离出来的,不是直接代数相加。各大厂商的BERT算法各有小窍门。嗯,这个我们放到后面实操章节再细聊。

避坑指南:容易被忽略的“Pj”

我曾经踩过一个坑:

某个40Gbps的QSFP+模块,眼图闭合度只有15%,但是Dj分离出来只有2ps,Rj才0.3ps RMS。当时算Tj不到5ps,理论上眼图不该那么差。后来用频谱仪看抖动谱,发现1.5MHz处有个明显的尖峰——Pj!

为什么以前没抓到?因为我的BERT抖动分离算法默认把周期成分当成数据相关抖动吞掉了。切换成“谱分析模式”,Pj的振幅竟有4ps峰峰。加上这4ps,Tj瞬间蹦到9ps,眼图闭合就解释通了。

教训:观察抖动时别只看总抖,一定做频谱分解。Pj最好单独列出来看,特别是当你的电源设计是开关电源时。

小结几个实用要点

  1. 测试时先测Dj(峰峰值)、Rj(RMS),然后按目标BER算Tj。如果实际眼图闭合比Tj推算值还大,大概率有额外的Pj没分离出来。
  2. Dj的组成占比很重要。如果DCD占大头,就去盯着驱动器的上升/下降时间对称性;如果DDJ占大头,就去优化通道的频响和均衡;如果PJ冒出来,查电源纹波或时钟杂散。
  3. Rj是白噪声,没办法完全消除。但在布局布线时做好电源滤波、差分线等长匹配,能压到很低。我见过一个极端优化过的10Gbps链路,Rj只有0.15ps RMS。
  4. 不同BERT设备对抖动的分离算法可能不一样。像Keysight的BERT采用双狄拉克(Double Dirac)模型,而Tektronix的BERT有时用Gaussian Tail拟合。同一根线缆换台设备测,Dj、Rj可能差10%。最好固定一台设备做参考。

好,抖动的定义和分类我们就说到这儿。你拿到一台BERT设备,第一步就得搞清楚——你测到的总抖动里,有多少是能修的Dj,有多少是随机的Rj。心里有数了,后面的眼图测试才有方向。