2. DDR5信号特性
做 Eye Mask 测试,你首先得摸清 DDR5 的信号脾气。
跟我刚接触 DDR5 那会儿一样,很多人一上来就盯着示波器上的眼图看。但说实话,如果你不了解这颗内存颗粒的速率、电压域和时序关系,你看到的眼图有可能只是“看起来漂亮”,实际上问题一堆。
这一章我们把底层的信号特性说透。这些东西是 Eye Mask 测试的基础,逃不掉。
2.1 数据处理速率:从 3200 到 8000+ MT/s
DDR5 最大的变化就是快。真快。
DDR4 末期主流在 3200 MT/s 左右,DDR5 起步就是 4800 MT/s,现在 JEDEC 标准最高推到 6400 MT/s,厂商超频版本已经冲到 8000+ MT/s 了。
你想想看,一个 UI(Unit Interval)才多少时间?
| 速率 (MT/s) | UI 周期 (ps) | 上升时间 20-80% 典型值 (ps) | 眼图开度挑战 |
|---|---|---|---|
| 4800 | 208.3 | ~60 | 中等 |
| 5600 | 178.6 | ~52 | 较大 |
| 6400 | 156.3 | ~45 | 严峻 |
| 8000 (OC) | 125.0 | ~35 | 极其苛刻 |
关键点:速率越高,UI 越短,眼图在水平方向上的余量就越少。我之前有个项目,DDR5 跑 6400 MT/s,一开始眼图 Mask 测试死活过不了。后来发现是走线等长没控好,差了几个 ps,直接吃掉了一大块眼宽。
这里有个概念你得刻在脑子里:上升时间与 UI 的比值。当上升时间超过 UI 的 35% 时,信号已经趋近于“三角波”而非“方波”,这时候眼图中央的采样区域会急剧缩小。
个人习惯:我评估一个新设计时,会先算一下 UI 的 1/3 是多少。如果走线的传播延迟超过了这个值,那反射控制就必须格外小心。
2.2 电压域:VDDQ、VPP、VREFCA 与 VREFDQ
DDR5 的供电比 DDR4 复杂。不是简单的一个 1.2V 就完事了。
DDR5 引入了两个核心电压域,还有一个内部的参考电压。搞不清楚这些,你测眼图时连探头的地线该接哪儿都可能迷糊。
- VDDQ (1.1V 典型值): 数据 I/O 供电。眼图测试时主要看这个电压域的信号质量。纹波要求很严,通常在 ±3% 以内。
- VPP (1.8V): 字线升压供电。这个电压如果脏了,会影响行地址的激活稳定度,间接导致时序抖动。
- VREFCA (VDDQ/2): 命令与地址总线的参考电压。由主板产生,必须非常干净。
- VREFDQ (内部可调): 数据总线 DQ 的参考电压。由 DDR5 颗粒内部产生,可以通过 MR 寄存器调整。这对眼图测试太重要了。
避坑:我曾经遇到一个案例,眼图 Mask 测试一直在 pass 和 fail 之间随机跳。折腾了两天,最后发现是 VREFDQ 的寄存器设置错了,实际值比理想值偏了 2%。调回来之后,眼图 Margin 立刻恢复正常。记住,测 DQ 眼图前,必须确认 VREFDQ 设置正确。
2.3 时序参数:tCK、tDQSCK 与 DQ-DQS 偏斜
眼图测试不只是看电压摆幅够不够大。时序上的东西,更像是隐形的杀手。
DDR5 采用了 DQS(数据选通信号)与 DQ(数据信号)同步传输的源同步架构。你读数据时,颗粒会同时送出 DQS 和 DQ。接收端用 DQS 来采样 DQ。
这里有个核心参数叫 tDQSCK (DQS 输出相对于 CK 的延迟)。DDR5 的这个参数快得吓人,一般只有 5-8 ns。这意味着 DQS 和 CK 之间要保持极低的时钟偏斜。
3.4 DQ-DQS 偏斜 (tDQS2DQ)
眼图测试时,我们真正关心的是 DQ 相对于 DQS 的建立保持时间。这个量就叫 DQ-DQS 偏斜。
JEDEC 标准里,对于 DDR5-6400,要求 DQ 相对于 DQS 的有效窗口必须满足 ±0.1 UI 的偏斜容限。
换算一下:6400 MT/s 下,0.1 UI 就是 15.6 ps。换句话说,DQ 信号边沿和 DQS 边沿之间的时间差,不能超过 15.6 ps。你的 PCB 走线哪怕多弯了 2 mm,这个偏斜就可能超标。
我建议你在做 Eye Mask 测试之前,先把 DQS 相对于 CK 和 DQ 相对于 DQS 的时序关系测一遍。这是前置检查,不做就等于盲测。
2.5 知识体系:DDR5 信号特性全景图
下面这张图,把上面讲的几个维度串起来了。
2.6 从特性到测试:我的一个实战经验
最后分享一个真实的调试过程。
有一块服务器主板,DDR5 插满 8 条 RDIMM。运行 memtest 没问题,但 Eye Mask 测试就是 fail。眼图下半部分有个小凹坑,刚好打在 Mask 的角上。
我按照上面讲的知识点排查:
- 先看电压:VDDQ 纹波 30 mV,有点大,但还在 spec 内。接着查 VREFCA,干净。
- 再看时序:测 DQS 和 CK 的偏斜,结果发现有一条 DQS 走线比其他长了 5 mm。这个偏斜在低速时没问题,但在 5600 MT/s 下恰好被放大。
- 验证:在 PCB 上飞了一根短跳线补偿这部分延迟。再测,眼图完美通过。
你看,这就是 DDR5:速率、电压、时序,三角关系。任何一个角落出问题,最后都会在眼图上现原形。
我给你的建议:学习 DDR5 Eye Mask 测试,别只学操作。把这些物理层特性吃透。测眼图的时候你才知道自己在看什么、该调什么。否则,你就是在盲目地去碰运气。