我测过DDR4 3200Mbps以及10Gbps SerDes走线,遭遇过信号反射、串扰还有时序余量不足的情况,新手依照步骤一步步去操作, 就能轻易避开这类常见问题。
阻抗连续性是高速电路的第一命门
当高速信号于PCB上进行传播时,只要存在任何阻抗突变的情况,便必然会引发反射现象, 进而直接侵蚀掉眼图裕量。我曾经对一块四层板展开过调试工作呀,其中DDR数据线在进行换层操作的时候, 并没有添加回流地孔,最终的测试结果是,所呈现出的眼图闭合状况极其严重呢。
实测步骤:DDR走线阻抗控制
步骤1:叠层设计与阻抗计算
选用Polar Si9000软件去设置,将目标阻抗设定为50Ω±10%, 四层板存在推荐的厚度设定,顶层信号层的铜厚是0.2oz且为35μm,次外层PP片的厚度应当是0.2mm也就是像2116半固化片那样,内层参考层进行了完整覆铜,有关键参数线宽为5mil、介质厚度为4mil、介电常数是4.2,计算得出的结果理论上是50.3Ω。
【新手避坑】
常常出现的报错情况为,实际打样归来时显示阻抗偏低,具体是实测为45Ω。出现错误的原因在于,厂家在进行压合操作的时候, PP片出现了流胶现象,进而导致介质厚度变薄。解决这一问题的办法是,把线宽收窄0.5mil,并且在板边添加耦合线用于进行TDR测试。
步骤2:参考层连续性与回流路径
对于所有高速信号线而言,其下方务必确保存在完整不变的参考平面。当DDR地址线进行换层出层操作时, 在距离过孔旁边0.5mm范围以内,要打出至少2个接地过孔。给出的推荐参数是:过孔的内径为10mil,过孔的直径为22mil这一数值。
【新手避坑】
呈现的情况是, DDR 进行读写操作时的时序处于不稳定状态,并且偶尔会出现丢失数据的情况。原因在于, 当进行换层操作时, 信号以及回流电流所走过的路径并不相同,进而形成了较大的环路电感。而解决的办法是,在信号过孔的旁边直接添加上地过孔,且其间距要小于信号孔自身的直径。
如何用等长控制让DDR走线一次通过
DDR时序对地址、控制组以及时钟的走线有等长要求, 其误差需要被控制在±10mil范围以内。我曾见到过人采用直线绕线的方式,最终等长制作出来的结果,误差竟达到了50mil。
实测步骤:Allegro手动等长绕线
步骤3:设置Pin-Pair约束规则
将Electrical Constraint Set在Allegro CM中开展打开操作,进行新建Match Group的行为。把DDR0_DQ从0到7的这些部分,以及DDR0_DQS0、DDR0_DQM0添加到同一组里面。将DDR0_CK_P指定作为时钟的基准。目标长度设定为3000mil,容差范围是正负10mil。
【新手避坑】
错误提示出现:在绕线完成之后, Match Group呈现出目标长度未对齐的状况。原因在于: 要么是基准线没有挑选正确,要么是Net自身存在额外的过孔。解决方式为: 先去测量基准线的实际长度,接着再对其他的线调整。绕线的形状采用“U形”而不是“S形”,以此来减少寄生电容。
步骤4:手动绕线与实时检查
运用Route实施手动绕线,在信号线密集的区域优先去绕较短的线,绕线的间距维持3W原则(若线宽是5mil那么间距为15mil),实时查看CM界面里长度的变化,绕至目标值正负5mil便停止。
【新手避坑】
出现的状况是,绕线时软件出现卡死的情况,或者绕出呈锐角的形状。导致该情况产生的原因是,绕线的间距设置得太过小,软件进行计算时出现自激现象。针对此情况的解决方式为,把绕线的最小间距设置成8mil,转角采用135度,防止出现45度的锐角。在绕完之后运行一下DFF检查。
两种方案取舍:DDR走T形拓扑还是Fly-by拓扑
T形拓扑适宜双片DDR颗粒,走线是从CPU分岔到两个颗粒那儿, 等长易于做到然分支短桩效应难以消除掉。我所使用的四层板采用T形, 500ps信号完整性问题出现振铃现象。更换成Fly-by拓扑之后,信号从CPU统一串联至各颗粒, 末端添加终结电阻50Ω上拉到VTT,信号质量显著改善。取舍逻辑如下:多于4颗DDR颗粒肯定得用Fly-by;2颗的时候T形简便但要留意分支长度不超过200mil。
高频报错:SerDes眼图测试失败
有这样一种现象,在10Gbps速率的情况下,呈现出眼图眼高小于200mV,并且眼宽小于0.3UI。关于报错有一连串流程,先第一步,要运用示波器去测量TX端的差分对信号, 其峰峰值应当达到800mV±10%;接着第二步,需要检查RX端的接收灵敏度,查看芯片手册所要求的一般是100mV这一数值;然后第三步, 通过TDR去测量走线阻抗,结果发现差分阻抗仅仅只有85Ω(目标为100Ω)。而核心的原因在于,差分走线的间距过大,最终导致耦合变弱。处理方式为,把差分对线的间距,从十二密耳缩减至八密耳,同时线的宽度,由五密耳变更为六密耳,再进行打样之后,眼图恢复到正常状态。
本方法的不适用场景
针对标准FR4板材以及常规走线长度,也就是DDR走线小于6英寸的情况,采用以上方法。要是使用高速板材, 像Megtron6,或者走线超过12英寸,那就需要引入前仿真IBIS模型, 并且还要进行S参数后仿真。有一种简易替代方案,即在走线过长的时候, 直接加入中继器芯片,不过这样做的代价是会增加成本以及功耗。










