在做PCB设计时,为了满足某一组所有信号线的总长度满足在一个公差范围内,通常要使用蛇形走线将总长度较短的信号线绕到与组内最长的信号线长度公差范围内,这个用蛇形走线绕长信号线的处理过程,就是俗称的PCB信号等长处理。如图6-59示。
图6-59 蛇形等长
一般做等长是为了满足系统对信号组的等时,即为了满足此组内信号的时序须满足系统要求。比如对于DDR,其数据信号每8位一组,做+/-25mil处理,如果此组信号等长没有在此公差范围内,信号线长度相差太大,会导致其相对延时较长,最终导致DDR运行速率不高。但是我们做设计时有时发现DDR器件等长没有做,其成品也可正常运行,并没产生影响,原因一般是系统软件对此信号做了延时处理,软件上做了时序控制。对于带状线来说,每1ps延时对应的走线长度是6mil左右,所以一般信号组长度每相差6mil,其总延时在1ps。一般我们做设计时等长并不用控制的太小,控制到+/-10mil左右就已经很好了。+/-10mil 等长和+/-1mil 等长,在时间上的差异不超过 4ps,一般的IC信号裕量都不止4ps,所以做等长时没必要控制的过小,从而导致自己设计走线困难。差分信号等长是为了满足相位,一对差分信号相位相差180度,如果长度相差太大,会导致其相位偏移过大。一个设计上具体哪些信号需要进行蛇形等长处理,可查阅高速接口或者芯片模块的设计规范。
1)首先设置匹配长度网络组,在Router里面选中需要设置的多根网络(ctrl+鼠标左键),鼠标右键在弹出的对话框点击“建立匹配长度网络组”,如图6-70示。
图6-70 设置匹配长度网络组
2)设置等长容差参数,即等长长度差范围。在项目浏览器中,选中“网络对象-匹配长度网络组”,右键打开对话框,点击“特性”选项,在“匹配长度组特性”页设置容差值,如图6-71示。
图6-71 设置容差值
3)执行菜单命令“工具-选项”,在弹出的“选项”对话框中的“布线/调整”标签页下设置蛇形走线的参数,如图6-72示。最小间隙设置为3倍线宽,至少2倍以上,不能设置过小。
图6-72设置间距
4)设置完成后可进行等长处理,先将信号线连通,然后在需要进行等长的位置,删除一段信号线,点击“F3”点击到线头位置,拉线过程鼠标右键,然后选择“添加蛇形走线”(或者按组合快捷键“Shift+A”),如图6-73示。
图6-73 添加蛇形走线
5)等长过程中,注意设置好格点,等长布线时注意拉线控制好方向,歪了或者有DRC可能导致软件等长失败,须多操作几遍,不熟悉等长操作的或者空间不足会导致等长困难。
6)执行“添加蛇形走线”后,软件会计算蛇形等长的形状,将鼠标往布线前方移动,会自动生成蛇形线,点击选择蛇形等长的最高位置,再点击最低位置,再向前移动,软件会自动生成移动方向的蛇形线,到结束位置点击一下,右击选择“完成蛇形走线绘制”,将信号连通完成蛇形布线,如图6-74示。
图6-74 蛇形走线
7)执行“查看-电子表格”,或者点击快捷栏表格快捷按键,如图6-75示,可查看网络组各网络的布线长度。如图6-76示,选择“网络”项,可查看建立了“匹配长度的网络组”的信号长度,此表格中“已布线的长度”为真实的长度,只需要关注这个值。可根据此值或者颜色提示判断等长情况,等长时注意将上下拉的信号长度先删除,等长完了再连通,以免产生误差。
图6-75 调用电子表格
图6-76 查看网络长度
l 黄色:已完成的布线长度比等长要求长度短
l 绿色:布线长度在等长容差之内
l 红色:布线长度超过等长要求长度