第1章:DDJ概述与背景

1.1 到底什么是数据相关抖动?

先问个问题:你测过眼图吧?眼图闭合的时候,很多时候不是随机噪声闹的,而是数据自己在跟自己过不去。我说的就是DDJ——Data-Dependent Jitter,数据相关抖动。

DDJ说白了就是:抖动的幅度跟你发的是什么数据位有关。比如你连续发一堆“1”,跟发一串“1010”,眼图的开眼程度完全不一样。我当年第一次在示波器上看到这个现象时,还以为是仪器坏了。

一句话记忆:DDJ = 抖动 + 数据模式依赖。它不会凭空出现,只要传输通道有带宽限制或阻抗不连续,DDJ就会冒出来。

1.2 抖动的家族谱——先搞清楚分类

做信号完整性,绕不开抖动分类。咱们先把老虎老鼠分清楚。

大类 子类 来源 典型特征
随机抖动(RJ) 高斯型 热噪声、散粒噪声 无界,高斯分布,不可预测
确定性抖动(DJ) 数据相关抖动(DDJ) ISI、占空比失真、码间干扰 与数据模式绑定,有界
周期抖动(PJ) 串扰、电源噪声 固定频率正弦波或窄带信号

这里我特别想强调:DDJ是确定性抖动里最常见、最头疼的一种。你想想看,RJ你拿平均可以压一压,PJ找到频率源还能滤波,但DDJ跟你发啥数据有关,你总不能不发数据吧?

避坑指南:我曾经遇到一个项目,眼图总是差一点点,所有指标都量了,就是没找到原因。最后回头一查,是PRBS7和PRBS31下的抖动差了一倍。当时我就悟了——一定要在多个数据模式下测DDJ,否则你看到的结果可能是假的。

1.3 DDJ的物理根源——哪里来的?

DDJ的根因说白了就两条:

  • 带宽限制:通道的低通效应把信号的谐波削掉了,结果“1”的幅度还没顶上去就掉下来了。后一个“0”如果紧跟着,位置就会漂移。你想想,这不就是抖吗?
  • 阻抗不连续:过孔、连接器、走线拐弯的地方,信号反射来反射去,前一个符号的能量干扰后一个符号的判决点。这就是码间干扰(ISI),也是DDJ最主要的表现形式。

我记得有次调试一款25Gbps的背板,拐角处没做渐变,结果DDJ直接吃掉了一半的眼宽。后来换成圆弧走线,好了不少。

1.4 为什么DDJ在高速系统中特别要命?

现在速率动不动十几G、几十G,一个UI(单位间隔)只有几十皮秒。DDJ随随便便就能占掉几个皮秒,你再算上RJ、PJ,眼图很快就没口子了。

更麻烦的是:DDJ是数据率相关的。数据率越高,DDJ越严重。为啥?因为通道的带宽是固定的,信号速率越高,相对带宽越窄,ISI越厉害。这就牵扯到“双倍数据率效应”了。

核心结论:如果你在做10Gbps以上的串行链路设计,不用任何方法去分离和抑制DDJ,那你大概率会遇到眼图闭合的问题。我个人的经验是——优先处理DDJ,再去管RJ,效果最明显。

1.5 本章知识体系总览

下面这张图把DDJ在整个抖动家族中的位置、产生机理、在系统层面的影响串在了一起。方便你后面几十章学习时随时回来翻看。

DDJ知识体系框架 抖动 Jitter 随机抖动 (RJ) 确定性抖动 (DJ) 周期抖动 (PJ) 数据相关抖动 (DDJ) 其他 DJ 带宽限制 阻抗不连续 码间干扰 (ISI) 高速串行链路 · 眼图闭合 · 误码率劣化 说明:DDJ属于确定性抖动,由数据模式引起,在高数据率下桥接RJ与PJ成为主要眼图闭合因素。本课程后续章节将逐一拆解其分离与抑制方法。

1.6 关于本课程,我想说的

后面的十几章,我们会一步步把DDJ的分离方法啃下来。有基于统计的方法、基于边沿采样的方法、基于直方图的方法……我会把每种方法的适用场景、计算公式、实测波形都摆出来。你可能会觉得有些数学,别怕,我会用我做过的项目例子帮你理解。

对了,刚开始你可能觉得DDJ分离很玄学。其实不是,它是有确定数学模型的。只要掌握了双狄拉克模型和抖动传递函数的概念,后面就顺了。

个人建议:学这一章的时候,最好拿一个真实的PRBS眼图来对照着看。摸到眼图的“上眼皮”和“下眼皮”厚度不均匀——那基本就是DDJ在捣乱。

好,DDJ的基本概念就到这。记住:抖动不全是噪声,有些是你自己发信号造出来的。接下来的章节,我们就要教你怎么把这种“自己造出来的抖动”从总抖动里精准地挑出来。