联乐实业

工业存储产品及解决方案
返回上一页 行业资讯
DDR3 的 Fly-by 拓扑是什么?命令地址菊花链、VTT 端接与写均衡底层解析

DDR3 是所有 DDR 世代里最考验 PCB Layout 的一代,而 Fly-by 拓扑正是它区别于 DDR2 的标志性设计。搞懂 Fly-by,你就搞懂了为什么 DDR3 能跑上 1600MT/s 而不崩,也搞懂了为什么工业主板的内存"偶发训练失败"往往不是颗粒问题,而是板子走线问题。

先说背景。DDR2 用的是 T-Branch(T 型分支)拓扑:地址、命令、时钟从控制器出来后,像树枝一样分叉连到各颗 DRAM。这种结构在低速下没问题,但速度一提上去,每个分支都是一根"残桩(stub)",产生反射,信号质量急剧恶化。DDR3 要上 800MHz 以上的 I/O 时钟,T-Branch 已经走不通了。

DDR3 的解法是 Fly-by(飞越/菊花链)拓扑。地址、命令、时钟三根总线从控制器出来,依次穿过 DIMM0 → DIMM1 → DIMM2 → DIMM3……最后在链路最末端接一个 VTT(0.75V,即 VDD/2)端接电阻,把残余信号吸收掉。数据线则完全不同:每个字节组(8bit 数据 + 1bit DQS)从控制器点对点直接连到一颗颗粒,一组只服务一颗,不分支。时钟差分对单独走在颗粒一侧并包地。

13

这个结构有两个直接后果。好处是:分支几乎为零,残桩极短,反射被末端 VTT 吃掉,眼图更干净,允许更快的信号斜率——micron 的应用工程师原话是"DDR3 没有 Fly-by 根本发不出信号"。代价是:命令/地址/时钟到达每一颗颗粒的时间不一样,越靠后的颗粒延迟越大,而 DQ 数据总线到达各颗粒的时间基本相同,于是 DQ 与时钟之间产生了固有的偏斜(skew)。

这个偏斜怎么补?靠 DDR3 内存控制器内置的读写均衡(Write Leveling / Read Leveling)。写均衡时,控制器逐级调整 DQS 的延迟,一步一调整直到检测到 CK 从 0 变 1,把 DQS 与 CK 重新对齐,让 DQ 总线上的数据能被可靠采样。这是 DDR3 控制器上电初始化必经的一步,也是为什么 BIOS 里"内存训练"会花几秒甚至十几秒。

工程落地上,Fly-by 对 Layout 的要求可以浓缩成这几条:一是颗粒按 DIMM 顺序排列,控制器到第一颗颗粒的"树干"尽量短;二是 VTT 端接电阻紧贴最末端那颗颗粒,缩短末端残桩;三是数据线按字节组点对点,组内等长 ±5mil,DQS 差分对必须与它对应的数据组同参考面;四是 Vref 走线短而粗,每颗颗粒单独 RC 滤波;五是 VTT 平面要专门铺或走粗线,绝对不能被信号线分割变窄,否则瞬态电流一大,VTT 波动,地址线就会冒毛刺、触发 ECC 报错;六是每层信号都要有相邻完整参考面,换层处必须补伴随地孔。

一个真实踩坑复盘很能说明问题。某 6 层板的 DDR3 项目,4 颗颗粒挂同一控制器,数据率 800Mbps,1.5V 供电。打样后上电,内存训练偶发失败,概率约三成,重新上电有时能过、有时卡死。抓眼图发现部分数据线眼图不对称、裕量为负。查走线才发现:有几条数据线在颗粒之间从 L1 换到了 L6,但换层处没打伴随地孔,回流路径在换层点被切断,形成不连续回路。整改方案是把数据组统一走 L1 参考 L2,必须换层的位置成对打过孔并在两侧补地孔,整改后反复上下电 50 次,训练全部一次通过,眼图裕量转正。另一个案例是地址线毛刺导致偶发位翻转:示波器测 VTT 发现有周期性毛刺超出 0.75V±5%,追查发现一条地址线横穿了 VTT 平面把它分割成两段、局部变窄,Fly-by 末端瞬态电流突变时窄平面电感大、产生电压波动。改线绕开缺口并补 10μF 储能电容后,压力测试 24 小时无 ECC 报错。

对工业客户而言,Fly-by 还有一个隐含价值:它的信号完整性余量决定了内存在宽温、振动、老化后的稳定性上限。一颗工业级 DDR3 颗粒如果配了一块 Fly-by 走线烂的主板,一样会训练失败;反过来,好板子配一颗筛选不良的颗粒,也会在高温下掉训练。两者必须一起验收。

深圳联乐实业在这类问题上的做法很"工业":联乐不但卖条子,还自建高低温、振动、满载老化实验室。给工业主板厂配套时,联乐可以把 Agrade 睿达工业 DDR3/DDR3L 内存条连同客户的主板一起进温箱跑 -40℃↔85℃ 循环,抓 BIOS training log,看是否有 Training Error。这种"内存+主板"联合调优,比单纯提供一颗料要实用得多,也正是联乐服务大族激光、比亚迪、中兴、深圳地铁这类客户的日常方式。

相关推荐