ActiveRoute
电路板设计最耗时的阶段之一是网络布线。尽管规则系统可以用于设计约束,诸如宽度、过孔尺寸、间距等,但设计人员仍要布设电路板完全布线所需的成千上万条导线。
自动布线器可以缓解这个麻烦,但这通常并不够,因为:
- 它们无法正确考虑无数细微的设计限制,而设计人员却能在布线时本能地应用。
- 完全配置耗时过长,交互式电路板布线通常效率更高。
- 线路清理过程费时且困难,交互式电路板布线通常效率更高。
PCB布线的必杀技是,在设计人员的控制下,快速生成满足设计规则的高品质结果。这也是ActiveRoute希望实现的挑战。
什么是ActiveRoute?
ActiveRoute是一种交互式自动布线技术,它提供高效的多网络布线算法,应用于设计师选择的特定网络或飞线。ActiveRoute也帮助设计师交互式定义布线路径或布线导向,从而为布线定义走向。
相较于结合使用常规交互式布线和自动布线,ActiveRoute的优点包括:
- 自动优化管脚/过孔阵列的逸出式布线 - 人工布线时最耗时的操作
- 高性能 - 信号网络布线 < 1秒/1个网络。
- 按照优先级,遵从网络和网络类的宽度、间距、板层、拓扑和Room设计规则。
- 在多个电路板层同时布线,并跨越这些板层分布线路。
- 设计人员可使用直观的布线导向来引导布线路径。
- 使用河流式布线法实现较高的完成率,无需过孔。
- 能穿过多边形铺铜平面进行布线,并对其重新铺铜(如果启用了重新铺铜选项)。
- 支持单端和差分对网络。
- 使用强大的修线工具整理线路,进一步减少转角数量,改善布线总体外观。
设置ActiveRoute
- 创建网络类。ActiveRoute要求选定网络,当有大量网络需要ActiveRoute布线时,网络类可极大地帮助选择过程。
- 暂时搁置现有的多边形铺铜。
- 配置设计规则和网络拓扑:
- 间距 - ActiveRoute遵循适用的间距设计规则,并按优先级应用。
- 布线宽度 - 采用适用宽度规则的首选设置。就交互式布线而言,要改变一个区域的布线宽度,诸如穿过BGA封装进行布线,可以定义一个Room,在其中应用更窄的宽度设计规则。如果无法按照首选宽度进行人工布线,则ActiveRoute也无法实现。
- 差分对 - ActiveRoute可进行差分对布线。确保差分对定义正确(在PCB面板的Differential Pairs Editor模式中检查),并确认差分对布线规则是否正确配置(使用首选值)。
- 焊盘入口 - ActiveRoute采用符合宽度和间距规则的最直路径进出焊盘,不形成锐角。目前它并不遵循SMT to Corner或SMT Pad Entry设计规则。它包含针对差分对焊盘的特殊算法,在保持布线整洁的同时,专注于差分对耦合。
- 网络拓扑 - ActiveRoute遵循飞线样式。如有一组网络需要特定拓扑,如DDR3/4 fly-by,则可使用xSignals定义起止顺序。xSignal向导(Design » xSignals » Run xSignals Wizard)可为设计创建xSignals,包括DDR3/4和USB 3.0 类型信号。
- 设计扇出。ActiveRoute不放置过孔,因此,为BGA、连接器和使用SMT管脚的分立元件进行扇出至关重要(外层布线管脚除外)。
- 电源和接地布线。ActiveRoute用于信号网络,并忽略为电源层分配的网络,以及包含超过20个管脚的网络(这些网络被假定为电源网络)。如希望在以前完成的设计中使用ActiveRoute,则要删除信号走线,但要保留电源和地走线以及扇出。
- 在PCB ActiveRoute面板上启用需要使用的布线板层。
限制
ActiveRoute为交互式布线提供了新方法,并仍在积极开发中。目前,尚不支持以下功能:
- 圆弧 - ActiveRoute不支持圆弧走线。
- 微型过孔 - ActiveRoute需要扇出过孔来连接内层飞线。此时,要在BGA中使用微型过孔,在使用ActiveRoute布线前,您需要手动扇出微型过孔到信号层。
- 长度匹配 - 目前ActiveRoute不自动调整线路长度,该功能将在以后的更新中考虑。长度调整可在ActiveRoute之后进行。
执行ActiveRoute
使用Alt+单击和拖动,以及Shift+Alt+单击和拖动快捷方式,快速选择需要的飞线。
- 选择要布线的飞线。
- 在PCB ActiveRoute面板上,选择想要在其中走线的电路板层。这是ActiveRoute可用的电路板层,ActiveRoute将决定每层布线的网络。
- 如果需要,使用布线导向功能来定义走线路径。ActiveRoute将把布线导向视为围栏路径,任何不适合该导向的飞线均不会布线。
- 通过以下方式运行ActiveRoute:
- 选择Route » ActiveRoute命令。
- 单击ActiveRoute工具栏按钮。
- 在PCB ActiveRoute面板上,单击ActiveRoute按钮。
- 使用Shift+A快捷键。
这些步骤的详细说明见下文。
PCB ActiveRoute面板
在PCB ActiveRoute面板上,可以选择期望布线的电路板层、创建布线导向和启动ActiveRoute。
选择将要执行ActiveRoute的飞线
ActiveRoute在选定飞线上运行。飞线可直接选择,或通过布线对象选择,诸如管脚、导线、过孔或元器件。
大多数网络都是双管脚网络,在此情况下,选择飞线等同于选择网络。如果网络有两个以上管脚,则会有多条飞线。您可以针对一条、部分或全部的飞线进行布线。
飞线选择方法
- 按住Alt键,区域选择(拖拽一个矩形)可仅选择飞线。
- Alt+Area Select(从左到右),选择完全包含在矩形内的飞线。
- Alt+Area Select(从右到左),选择所有触及到矩形的飞线。
- 在按键操作中同时按下Shift,可以在现有选择中添加新的选择项。
- Alt+Click directly on a connection to select it. Alt+Shift+单击,添加至现有选择项中。
- Alt+Shift+click to add to the current selection.
- 对于选中的飞线,按下Tab键将选择范围从该飞线扩展至对应网络的所有飞线(适用于一个网络,或在多个网络中选择的多条飞线)。
- ActiveRoute只对选中的飞线进行布线。如果一个网络有多条飞线,则使用之前所述的选择方法,选择网络中的所有飞线。
配置布线层
- 可在PCB ActiveRoute面板上选择用于走线的电路板层。ActiveRoute将在启用的板层中对选中的飞线进行布线,并在这些板层中分配飞线。
- 如未选择任何电路板层,则在当前活动板层布线,也就是PCB编辑器主窗口底部选中的选项卡。
使用布线导向
要设置走线的导向路径,您可以定义布线导向(Route Guide)。您可以将布线导向想象成一根管道,而走线必须包含在其内部。布线导向能够引导走线位置,并指示导线如何在导向区域内填充。
放置布线导向
要放置布线导向:
- 选择需要沿导向路径布线的飞线。
- 单击PCB ActiveRoute面板上的Route Guide按钮。
- 光标将保持抓取所有选中的飞线,表明该组飞线必须遵循布线导向。移动光标至合适的起始位置,也就是您希望定义的导向路径的任一端。
- 单击来定义布线导向的起始位置,为飞线留下足够的空间,以便进入布线导向的弯曲端。
- 布线导向就像是一条非常宽的走线,移动光标至布线导向的第一个转角位置,之后单击来定义转角。
- 继续此路径定义过程,在接近飞线终点的地方停止。
- 按向上箭头加宽布线导向,按向下箭头收窄布线导向。
- 按Backspace键,去除最后一个布线导向转角。
- 单击右键,退出布线导向放置模式。
一个简单的动画显示了布线导向如何放置,以及放置时如何交互改变宽度。
布线导向宽度
默认宽度为所选飞线的适用宽度+间距设计规则之和,除以电路板层数,再乘以1.3。
- 布线导向宽度= ((W+C)/层数)*1.3)
- 布线导向以默认值的1.3倍扩展,确保走线合适,并使走线绕过路径中的障碍物,诸如过孔。宽度是走线的硬性边界,如果导向不合适,则不予放置。
- 在布线导向放置过程中,可通过键盘上的向上/向下箭头增加/减少宽度。最小尺寸为1.0的倍数,最大尺寸为2.0的倍数。
编辑布线导向
布线导向是放置在机械层上的一组走线。
- 导线默认锁定。解锁之后,可使用标准走线拖动方法重设布线导向。
- 若要移除布线导向,单击选择任何一段,然后按下删除键。
备注
- 状态栏会显示ActiveRoute进度。
- 信息面板中会报告完成率。
- 如果使用布线导向,并发现完成率较低,可能是路径沿线的障碍物过多,布线导向需要加宽。
- ActiveRoute完成时,会自动进行修线(Route » Gloss Selected)。修线命令可用于平滑走线,并改善焊盘入口的走线,而不仅仅是执行ActiveRoute。尤其需要注意的是,要确保差分对的高品质焊盘入口。另外还要注意,在使用布线导向后,不再进行修线,因为修线操作会试图减少线路总长,导致路径不符合布线导向定义的路径。
- ActiveRoute不使用圆弧或任意角度走线。
- 如果ActiveRoute不运行,这通常是因为规则未正确配置。检查规则是否合适,例如,在新PCB文档中的默认规则对于高密度BGA设计而言间距过大。
- ActiveRoute遵从为电路板层、Room以及类配置的宽度、间距、差分对间距设计规则。