AD高级功能实战:PCB等长绕线+蛇形走线不踩坑

发布于 更新于
770
详情介绍
智行者IC社区持续更新技术干货、实操教程、案例分享与常见问题解答,为学习者提供实用的学习参考资料。

我测过Altium Designer 22.2版本,遭遇过等长绕线时蛇形走线报错的情况,还碰到过规则冲突导致绕线失败的情况。

第一步 设置等长规则与匹配组

先要明确你所针对的目标网络组,接着,打开PCB文件,随后,按快捷键D加上R从而进入规则管理器,然后,在左侧导航栏里找到Design Rules,再找到Routing,最后找到Matched Lengths。将鼠标右键移至Matched Lengths处点击,从中挑选New Rule,为获得的新规则赋予一个名称就如同“DDR_Data_Group”这种。在“Where the First object matches”这一栏当中,去点击“All”并将其改成“Net Class”,接着在下拉框里,选中你之前预先建好的等长网络类。针对右侧Constraints部分而言, Tolerance要填20mil,这属于推荐值,它能保证信号时序偏差处于可接受范围内。而Recommended Length需填你所参考走线的实际长度,一般的做法是取组内最长那条线的长度再加上10mil。

【新手避坑】不少人于此处把网络添入 Net Class 这一操作给遗漏了,导致规则没法起效。报错呈现的情况是,绕线工具呈灰色不可点击,又或者绕完线后长度检查未通过。解决的办法是,返回到原理图那里,针对需要等长的网络,去添加Differential Pair或者XNet属性,然后再同步到PCB,以此确保Net Class包括所有目标网络。

第二步 手动调整蛇形走线参数

挑选出你打算进行绕线操作的差分对或者单端网络,通过按下 T 键与 R 键来调出 Interactive Length Tuning 工具。将鼠标放置于走线上边,按下 Tab 键以打开属性面板。选择Style为Mitered with Lines,这样的形态,在那种运算速度比较低下来讲的DDR上,会更加具备稳定性。

【新手避坑】:出现报错情况时,最为常见的一种是“Could not achieve target length”,其原因在于, Amplitude设置得太小,或者Gap设置得太大,进而导致绕线幅度体现出不够的情况。赶快处理:退回到上的一步,将Gap降低至6mil,把Amplitude增加到15mil,在再拖动的时候配合_SHIFT_键对幅度进行细微调整。要是仍然行不通,核查布线的空间是不是足够,在必要的情况下往旁边移开其他的走线。

第三步 用Crosstalk规则控制间距

蛇形段彼此之间绕线时,如果空间间隔微小,就可能导致串扰出现。在规则管理器那儿寻觅Design Rules > Routing > Clearance,去创建一条崭新鲜明称之为Serpentine_Spacing的Clearance规则。最少净空 填着8密耳,如此这种,靠着相邻的绕线线段,其两者之间所具备的间距,就会被强制要求,不得低于8密耳。

【新手避坑】不少新手在完成绕线操作之后,才察觉到间距竟然违反了规定,在检查时呈现出一片红色的情况。其最为关键的原因在于,默认的间距规则存在不足,导致蛇形线竟然出现自我触碰的情况。迅速解决:先是在规则管理器当中将优先级调高,把Serpentine_Spacing拖动至Clearance的规则列表的最上方之处,接着按压T加上M来运行一回Design Rule Check,查看具体的报错位置,进行手动的微量调整。

第四步 差分对内等长微调

面临差分对,需对其内部误差提出更为严格的要求,挑选出差分对导线,依照 T + R 进入调谐工具,在属性面板当中让 Target Length 直接选取参考线长度,将 Tolerance 设置为 5mil,在绕线时从引脚端着手拖动,维持鼠标以匀速移动,软件会自行进行匹配。

要避开这样的坑,那就是在进行差分对绕线的时候,会常常碰到一侧过长而另一侧过短这样的情况,进而报错显现出“Length mismatch”。追究其原因在于,绕线起点没有选精准,软件是从最远端起始进行计算的。而解决办法是,先要手动去把短的那根线增添一小段直线,以此让两条线的长度差处于10mil范围以内,接着再启动调谐工具,通过快捷键 `(Tab键上方的那个键)来切换绕线方向,对波形数量做精细调整。

第五步 高频完整报错与一次解决

出现绕线完成后,运行 Tools > Design Rule Check 时,大量出现“Net Length Violation”以及“Clearance Constraint Violation”的报错现象,其核心原因是规则优先级处于混乱状态,蛇形线间距规则和长度规则呈现互斥情况。具备一次解决功能的流程是这样的,先要将规则管理器打开,接着通过按 Ctrl + A 的操作来把所有规则进行全选,随后点击Export使得规则文件能够得到备份。先将 Matched Lengths 下的重复规则删除,接着,清除 Clearance 里的重复规则,随后,仅仅保留我们新创建的 DDR_Data_Group,还有 Serpentine_Spacing。接下去依照 T 加上 M 再度运行 DRC,将报错呈现的内容截取图片,依据报错所处的坐标位置,借助 Edit 里面的 Select 项下的 Net 选择出现报错的网络环节,按下 Delete 键删除掉整段的绕线之处,并重新按照第二步以及第三步的操作要求进行绕线操作。最后再跑一次DRC,直到0 error。

这种方法不适用于高速信号超出2GHz的场合,像DDR4 – 3200以上的情况,由于手动绕线控制精度存在局限性,,所以建议采用Sitop等仿真工具进行自动推线。另有替代办法,先运用 Route > Interactive Length Tuning 来生成初步的绕线,接着将其导入 HyperLynx 去跑一回时域反射分析,随后修正关键的参数。

常见问题(FAQ)

等长规则的容差一般设多少?
Tolerance填20mil,Recommended Length取组内最长那条线的长度再加10mil,能保证信号时序偏差处于可接受范围内。
绕线时提示无法达到目标长度怎么办?
通常是Amplitude太小或Gap太大。把Gap降到6mil、Amplitude增加到15mil,拖动时配合Shift键微调幅度,并确认布线空间足够。
差分对内部等长微调的容差怎么设?
在调谐工具的属性面板里把Target Length选为参考线长度,Tolerance设为5mil,从引脚端开始匀速拖动,软件会自动匹配。
0 / 600
0 讨论
热门最新
总结
暂无总结