在 CircuitMaker 中使用 Situs 拓扑自动布线器实现自动化 PCB 布局

 

Tools | AutoRoute 区域包含与自动布线和扇出相关的命令。

Autoroutex

CircuitMaker 的自动布线器是拓扑式(topological)的,它使用一种不同的方式来映射布线空间,即不受几何约束的方法。拓扑式自动布线器不是将设计空间坐标信息作为参考框架(将其划分为网格),而是仅根据空间中障碍物的相对位置来构建地图,而不引用它们的坐标。它通过对相邻障碍物之间的空间进行三角剖分来实现这一点。随后,布线算法会使用这张三角化地图,从起始布线点到终止布线点,在障碍物对之间进行“穿梭/编织”式布线。该方法的最大优势在于:地图可独立成形(障碍物和布线路径可以是任意形状),并且可以以任意角度穿越空间。与直角扩展(rectilinear expansion)布线器不同,这些布线算法不局限于纯垂直或纯水平路径。

Autoroute 子菜单命令

Autoroute 子菜单命令允许你对整个板进行布线、在指定区域内布线,或对特定对象(如网络和元件类)的连接进行布线。

下表描述了这些子菜单命令。

Command Behavior
Setup 此命令打开 Situs Routing Strategies dialog,你可以在其中访问布线前设置报告,并配置与 Situs Autorouter 相关的布线策略及其他选项。 
All 此命令打开 Situs Routing Strategies dialog,用于配置策略、选择所需策略并运行自动布线器。
Net 此命令用于布线指定网络中的所有连接。
Net Class 此命令用于布线指定网络类中的所有连接。
Connection 使用 Main 布线策略,尝试对所选连接进行自动布线。
Area 使用 Main 布线策略,尝试对起点位于所选区域内的所有连接进行自动布线。
Component 使用 Main 布线策略,尝试对起点位于所选元件上的所有连接进行自动布线。
Component Class 此命令用于布线从指定元件类中元件焊盘发出的所有连接。
Connections On Selected Components 使用 Main 布线策略,尝试对起点位于所选元件上的所有连接进行自动布线。
Connections Between Selected Components 使用 Main 布线策略,尝试对在所选元件之间连接的所有连线进行自动布线。

Situs Routing Strategies 对话框

可通过在 Autoroute 子菜单中选择 Setup All 来访问该对话框。

关键选项如下所述。

  • Report Window - 此区域显示基于设计的布线前分析报告,汇总的信息包括:当前为该设计定义且将被自动布线器遵循的设计规则(以及每条规则影响的设计对象数量——网络、元件、焊盘)、为所有信号布线层定义的布线方向,以及钻孔层对(drill layer pair)定义。报告会列出可能影响布线器性能的潜在问题。这些警告可能包括布线方向被设置为 Any 的布线层。在可能的情况下,会提供提示以帮助更好地为自动布线准备设计。报告中列出的任何错误/警告/提示都应仔细检查,并在需要时在继续布线前调整相应的布线规则。
在启动自动布线器之前,必须解决所有与布线相关的规则违规。不仅违规会阻止在违规位置进行布线,还会使自动布线器因不断尝试对不可布线区域进行布线而显著变慢。
使用报告窗口中的 hyperlink 条目,可打开指定规则定义对应的 Edit PCB Rule dialog,以按需调整该规则的作用范围和/或约束。对于不可布线的焊盘,单击报告中相关的 hyperlink 条目会在设计空间中缩放并居中定位到问题焊盘。
  • Edit Layer Directions - 单击以打开 Layer Directions 对话框,你可以在其中按需修改信号层的布线方向。

  • Edit Rules - 单击以打开 PCB Rules and Constraints Editor dialog。或者,如果你想直接修改现有布线规则,可单击上方区域中该规则的 hyperlink
  • Save Report As - 单击以将报告保存为 HTML 文档。使用打开的 Save As 对话框按需更改名称和位置。
  • Available Routing Strategies - 列出自动布线器可用于布线该设计的所有当前可用布线策略。每个策略以其名称和描述列出。一般而言,双层板和多层板的默认布线策略适用于大多数布线场景。不过,在运行自动布线器之前,务必确保已设置好所有相关的布线设计规则。默认布线策略无法移除。
  • Add/Edit/Duplicate - 单击以打开 Situs Strategy Editor dialog,用于向列表添加新的用户自定义布线策略、修改所选策略,或复制当前所选的布线策略。
  • Lock All Pre-routes - 启用后可防止任何预先布线的网络被自动布线器删除(“rip up”)并重新布线。通常会先手动布线某些网络,然后对其余部分进行自动布线。
  • Rip-up Violations After Routing - 启用后,在自动布线器完成布线会话后,会将任何违反已定义(且适用)设计规则的走线 rip up。

Situs Strategy Editor 对话框

Situs Routing Strategies dialog 中单击 Add EditDuplicate 可访问该对话框。

该对话框允许你为 Situs 自动布线器完整定义一套布线策略,包括其组成的布线 pass(算法)。包含哪些布线 pass 以及它们的使用顺序,构成了自动布线器的“智能”。这些 pass 用于将拓扑地图中识别出的虚拟布线路径转换为板上的高质量走线。

已定义的布线策略及其组成的布线 pass 仅在对整个板进行布线时才会应用。

关键选项如下所述。

  • More/Less Vias - 使用滑块来定义自动布线器允许的过孔使用程度。这是在更高布线速度与更少过孔之间的权衡。将滑块向右移动会限制自动布线器放置更少的过孔,但布完整块板所需时间会更长;将滑块向左移动可更快完成布线,但代价是自动布线器会在 PCB 上放置更多过孔。
  • Orthogonal - 启用此选项可限制自动布线器仅布正交(90°)路径。禁用该选项则允许自动布线器按需要选择正交或非正交(45°)布线。
  • Available Routing Passes - 列出可在布线策略中使用的布线 pass(算法)。可用的 pass 如下:
    • Adjacent Memory - 这是一个连接级(connection-level)布线 pass。用于对相邻的同网络引脚进行扇出,采用简单的 U 形模式。
    • Clean Pad Entries - 这是一个连接级布线 pass。它会从每个焊盘中心沿焊盘的长轴方向重新引出走线。
对于包含 X、Y 尺寸不同焊盘的元件的设计,务必在 Memory  pass 之后加入一个 Clean Pad Entries pass。
  • Completion - 这是一个连接级布线 pass。本质上与 Main  pass 相同,但采用不同的代价(cost)计算方式,以解决冲突并完成困难连接。
  • Fan out Signal - 这是一个元件级(component-level)pass,基于 Fanout Control 定义的扇出设置。它会检查焊盘的排列模式,考虑间距、布线宽度和过孔样式,然后选择合适的扇出布局(同排、交错等)以满足设计规则中定义的要求。扇出仅到信号层。
  • Fan out to Plane - 这是一个元件级 pass,基于 Fanout Control 定义的扇出设置。它会检查焊盘的排列模式,考虑间距、布线宽度和过孔样式,然后选择合适的扇出布局(同排、交错等)以满足设计规则中定义的要求。扇出仅到内部平面层。
  • Globally Optimised Main - 这是一个连接级布线 pass。它提供最优布线,并在第一次迭代时忽略争用/违规。随后会以更高的冲突代价重新布线连接,直到不再存在违规。该 pass 与启用 Orthogonal  选项配合使用时,可生成较为美观的布线模式。向策略中添加一个 Recorner pass 可提供斜切(mitered)拐角。
  • Hug - 这是一个连接级布线 pass,它会沿现有走线以尽可能小的间距重新布线每条连接。hug pass 用于最大化可用的自由布线空间。注意该 pass 非常慢。
  • Layer Patterns - 这是一个连接级布线 pass。它只布线与层方向匹配(在一定容差内)的连接。其代价计算会倾向于贴近或跟随现有走线,以最大化自由空间。
  • Main - 这是一个连接级布线 pass。它使用拓扑地图寻找布线路径,然后使用 push and shove 布线器将建议路径转换为实际走线。
  • Memory - 这是一个连接级布线 pass。它会检查同一层上、位于不同元件上的两个引脚是否共享 X 或 Y 坐标。
  • Multilayer Main - 这是一个连接级布线(routing)pass。它类似于 Main pass,但其代价(cost)针对多层板进行了优化。
  • Recorner - 这是一个连接级布线 pass,用于对已布线拐角进行斜切(mitering)。当该策略启用 Orthogonal option 时会使用此 pass,本质上会覆盖原策略设置,并对每条走线的拐角进行斜切。如果所用策略禁用 Orthogonal option,则无需包含 Recorner pass,因为自动布线器默认会对拐角进行斜切。
  • Spread - 这是一个连接级布线 pass,会对每个连接重新布线,尝试分散布线以利用空闲空间,并在穿过固定对象(如元件焊盘)之间时实现等间距布线。注意:此 pass 非常慢。
  • Straighten - 这是一个连接级布线 pass,尝试减少拐角数量。它通过沿着走线走到一个拐角,然后从该拐角执行(水平/垂直/45up/45down)探测,搜索该网络上另一个已布线点。如果找到,则检查这条新路径是否能缩短布线长度。
一个布线策略中只应指定一个 main-type pass,即 MainMultilayer MainGlobally Optimized Main 之一。
  • Passes in this Routing Strategy - 列出该策略中包含的实际布线 pass(算法)。你可以从可用 pass 列表中添加任意你需要的 pass,并且可以在整个策略中多次添加同一 pass 的多个实例以实现特定效果。Pass 将按从上到下的顺序依次执行。可使用 Move UpMove Down 按钮修改此顺序。

其他自动布线命令

停止

用于在当前布线 pass 完成后停止自动布线器。

重置

用于重置自动布线器。

暂停

用于暂停自动布线器。如有需要可重新启动。

扇出(Fanout)

CircuitMaker 包含贴片元件扇出工具。逃逸布线引擎会尝试将每个焊盘布线到器件边缘之外一点的位置,从而使与它们的布线连接更容易。

Fanout 子菜单命令

Fanout 子菜单命令允许你根据 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置对对象进行扇出。

下表描述了这些子菜单命令。

Command                                                                                                                                                                   Behavior
All 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对所有贴片元件进行扇出。
Power Plane Nets 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对每个连接到电源平面的网络进行扇出。
Signal Nets 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对每个未连接到电源平面的网络进行扇出。
Net 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对所选网络进行扇出。
Connection 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对所选连接进行扇出。
Component 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对所选元件进行扇出。
Selected Components 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对所选元件进行扇出。
Pad 根据已启用的 Fanout Control 布线设计规则以及 Fanout Options dialog 中的设置,对所选焊盘进行扇出。

Fanout Options Dialog

点击任意 Fanout sub-menu commands 即可打开该对话框。

此对话框允许你指定扇出与逃逸布线选项。典型的扇出行为是:先对已使用的内层焊盘采用传统的“狗骨”(dog-bone,末端带过孔的短走线)进行扇出以访问另一层;然后从该过孔开始进行逃逸布线,将其布到器件边缘之外一点的位置,并在可用的布线层中逐层推进,直到所有焊盘都完成逃逸布线。最终,这会让与它们的布线连接更容易。

  • Fanout Pads Without Nets - 启用后,即使元件焊盘未分配网络,也会从该元件焊盘进行扇出。禁用此选项时,仅对已分配网络的焊盘进行扇出。
  • Fanout Outer 2 Rows of Pads - 启用此选项可对元件焊盘进行扇出,包括最外侧两排(通常较容易布线)。
对元件进行扇出时,会按需放置过孔以实现连接。如果已为层配置了钻孔对(drill-pairs),并且启用了 Update fanout using Blind Vias option,则会放置盲孔;否则将使用通孔。
  • Include escape routes after fanout completion - 启用后,会为每个扇出添加逃逸布线。逃逸布线会在扇出过孔和元件焊盘上放置走线,将它们引出到元件边缘,以便更容易进行布线连接。
BGA Escape Route Options region 中的选项仅在启用 Include escape routes after fanout completion option 时才可用。
  • Update fanout using Blind Vias (BGA escape routing only) - 启用后,会在层叠中已配置的钻孔对层之间放置盲孔。禁用此选项时,无论钻孔对层设置如何,都只会放置通孔。
如果未定义可用于盲孔的钻孔层对,则此选项将显示为 Cannot Fanout using Blind Vias (no layer pairs defined)
  • Escape differential pair pads first if possible (same layer, same side) - 启用后,会在执行其他扇出操作之前,将任何已分配的差分对网络一起进行扇出与逃逸布线,从而有效保持它们的走线在一起。扇出会将逃逸布线走线放在同一层,并尽可能相邻。
AI-LocalizedAI 翻译
如您发现任何问题,请选中相关文本/图片,并按 Ctrl + Enter 键向我们提交反馈。
Content