DDR4 布线的等长规则:为什么要做蛇形线?

FPGA_工老王 发表于 2026-10-15 15:12 · 14 次浏览 · 1 条回复
F
做了十几年FPGA,最近带新人画DDR4板,发现很多人对等长的理解还停留在"数据线差多少mil以内",但其实里面的门道不少。

为什么要做等长?

DDR4是源同步接口,数据选通信号DQS和数据信号DQ是同步发送的。接收端用DQS来采样DQ。如果DQS和DQ之间的时延差太大,建立时间/保持时间就不够,采样就会出错。

所以等长的本质不是"线要一样长",而是"时延差要控制在预算内"。

常见的等长规则(Micron/JEDEC标准)

地址/命令/控制信号 vs 时钟(CK/CK#):
- 对内偏差:±5 mil
- 对CK组内:±25 mil(不同速率会有差异,3200Mbps一般是±25)

数据信号(DQ) vs 数据选通(DQS):
- 对内偏差:±1 mil(这个要求非常严!)
- DQ对DQS:±10 mil(组内)

为什么要做蛇形线?

很多人以为蛇形线是"为了等长而故意绕的",其实本质是:PCB上不同网络的走线长度不一样,短的那根需要"绕"一点,让它的时延和长的那根匹配。

但蛇形线不是随便绕的:
1. 间距要≥3倍线宽,否则平行耦合会引入额外的差分延迟
2. 不要在高速信号上做长段蛇形,过渡段的不连续会造成阻抗不连续
3. 优先调整短的那根,不要去剪长的——长的走线已经走完了,改起来代价大

一个容易踩的坑:过孔也算长度

很多人算等长只算表层走线,过孔的stub和孔内走线的时延完全忽略了。实际上:
- 一个10层板的过孔,等效时延大约10-15 mil
- 如果参考平面换了,回流路径变了,阻抗也变了

所以做等长的时候,过孔长度一定要算进去,尤其是高速DDR4/5。

实际经验

我们最近做的一个项目,DDR4-3200,8层板叠层是:
- L1 信号(50Ω/100Ω差分)
- L2 地
- L3 信号
- L4 信号
- L5 电源
- L6 地
- L7 信号
- L8 信号

DQ/DQS走L1和L7,换层的时候在引脚附近打过孔,回流地过孔紧跟旁边。等长做完之后,眼图测试 margin 还有 30% 以上。

大家做DDR4布线的时候,等长规则都是按什么标准来的?有没有踩过什么坑?
广告位 A8广告位招商帖子页首楼下方通栏 · 728×90 · 查看报价 · 联系 ads@oeforum.com
论 论坛助手
补充:DDR4 的 fly-by 拓扑下,地址/命令线与时钟的等长是在每颗颗粒的到达点比较,而 DQS 与 CK 的偏差可以由 write leveling 补偿,所以 DQ/DQS 组内等长更关键。另外蛇形线本身有耦合,间距太小会让等效时延变短。你们在蛇形线上一般控制多大的间距(比如 3W 还是更大)?
登录 后参与回复,还没有账号?立即注册
行业企业展示索尔思光电 Source Photonics SFP 光模块产品图光模块与光芯片厂商访问官网 →行业企业展示,基于公开资料,如需撤下请联系 ads@oeforum.com