PCB 编辑器中的 Home | Design Rules按钮会打开 PCB Rules and Constraints Editor dialog,其中包含可用于管理当前 PCB 文档已定义设计规则的控件。

设计规则共同构成一套供 PCB 编辑器遵循的指令集。每条规则都代表设计中的一项要求,且许多规则(例如间距与线宽约束)可在你使用 Design Rule Checker 对话框工作时被监控。某些规则会在使用软件的其他功能时被监控,例如使用 Situs Autorouter 进行布线时,会监控基于布线的规则。
设计规则面向特定对象,并以分层方式应用。同一类型的规则可以设置多条。可能会出现某个设计对象被多条同类型且作用范围相同的规则覆盖的情况。在这种情况下会产生冲突,通过优先级设置来解决。系统会按从高到低的优先级遍历规则,并选择第一条其作用范围(scope)与正在检查的对象匹配的规则。
通过一套定义良好的设计规则,你可以成功完成具有不同且往往严苛设计要求的板级设计。由于 PCB 编辑器是规则驱动的,在设计流程开始时花时间设置规则,将使你能够更高效地开展设计工作,并确信规则系统正在努力确保设计成功。
PCB 规则系统基础
PCB 编辑器内置的规则系统具有若干基本特性。
- Rules are separate from the objects - 规则不是作为对象的属性添加的,而是添加到整体规则集中,然后限定作用范围以应用到该对象。这使规则可以应用于多个对象,并可被修改或应用到不同对象;否则如果必须在单个对象层面更改规则属性,将会非常繁琐。
- Rules are targeted (scoped) by writing a query - 不使用一组固定、预定义的规则作用范围,而是使用灵活的查询系统来定义规则所应用的对象。这为每一条设计规则的目标提供了精确控制。
- Rules for any design situation - 可定义同一类型的多条规则,并将其指向不同的对象集合,从而对板级约束的定义实现完全控制。例如,可以定义不同的线宽规则,以便在不同层上以不同线宽对网络进行布线。
- Each rule has a priority - 任何设计对象都可能被同一类型的多条规则所针对。为解决规则冲突,使用规则优先级。系统会按从高到低的优先级遍历规则,并选择第一条其作用范围表达式与正在检查的对象匹配的规则。
- There are two types of rules - 一元规则(定义对象所需行为的规则)与二元规则(定义两个对象之间交互的规则)。
PCB Rules and Constraints Editor Dialog
该对话框允许你浏览并管理当前 PCB 文档的设计规则。

在左侧的文件夹树窗格中,所有受支持的设计规则类别都列在 Design Rules 文件夹下。
- 单击根文件夹可访问汇总列表,其中列出跨所有类别、所有设计规则类型已定义的全部具体规则。
- 单击某个类别文件夹可访问汇总列表,其中列出该类别下所有相关设计规则类型已定义的全部具体规则。
- 单击某个规则类型文件夹可访问汇总列表,其中列出该类型已定义的全部具体规则。
- 单击某条具体规则的条目,或在汇总列表中双击其条目,可访问用于管理其定义的控件。
Right-click Menu
左侧窗格的右键菜单提供以下命令。
- New Rule - 用于创建当前所选规则类型的新规则。新规则将被添加到文件夹树中,并同时出现在该规则类型的汇总列表中。规则名称将以粗体显示,以区别其为新建且尚未“应用”的规则。

要访问新规则的作用范围与约束属性,可在文件夹树窗格中单击该规则条目,或在汇总列表中双击其条目。对话框的主编辑窗口将切换,以便访问用于定义该规则作用范围与约束属性的控件。

添加新规则时,系统会先根据具体规则类型为其赋予默认名称。例如,如果添加一条新的 Clearance 规则,默认名称将为 Clearance。如果不更改该默认命名,再添加同类型的新规则将得到相同的规则名,并带有递增的数字后缀(即 Clearance_1、Clearance_2 等)。
当为某个规则类型创建新规则时,它会自动被赋予优先级 1(最高优先级)。如果该类型已存在其他规则,它们的优先级将相应整体下移(降低)1。随后这些规则会被视为已修改,即使你并未在作用范围/约束层面明确修改它们。因此,该类型所有既有规则都会以“已修改”状态显示(粗体并带星号)。
- Duplicate Rule - 用于快速创建当前所选现有规则的完全相同副本。复制规则的命名将与原规则相同,并附加一个后缀(例如 _1)以作区分。其定义(作用范围、约束等)将与原规则完全一致。
在优先级方面,复制规则将被赋予比原规则低一级的下一个优先级。例如,如果原规则优先级为 1,则复制规则将被赋予优先级 2。
- Delete Rule - 用于删除文件夹树中当前选中的规则。规则名称将以粗体并带删除线高亮显示,以区别其为尚未“应用”的删除操作。
许多规则类型在创建新的 PCB 文档时会生成默认规则。类似地,如果删除了其中某个规则类型的所有具体规则,默认规则将自动重新添加。
- Report - 用于生成当前已定义设计规则的报告。根据文件夹树中所选条目,报告可以覆盖所有规则类别、某个特定规则类别或某个特定规则类型。Report Preview dialog 将打开,并预先加载相应报告。使用该对话框可通过各种页面/缩放控件检查报告,最终可导出到文件或打印。
- Export Rules - 用于将你常用的规则定义导出到文件。将打开 Choose Design Rule Type 对话框(described below)。
- Import Rules - 用于从先前保存的 PCB 规则文件导入规则定义。将打开 Choose Design Rule Type 对话框(described below)。
导入时,如果所选类型的规则已存在,系统会提供在导入前清除现有规则的选项。单击 Yes 会删除该类型的所有现有规则,并随后用 .rul 文件中的规则替换。单击 No 将保留现有规则。不过,如果现有规则与导入规则同名,导入规则将覆盖现有规则。
Main Editing Region
该区域会根据左侧窗格当前所选内容而变化,并提供两种不同视图。
- Summary Listing - 如果左侧窗格中选择了 Design Rules 文件夹或其任一子规则类别/类型文件夹,该区域将显示所有已定义规则的汇总列表,或所选类别/类型的所有规则汇总列表。汇总列表还提供以下按钮。

- New Rule - 单击以创建对话框文件夹树窗格中当前所选类型的新规则。
- Delete Rule(s) - 单击以删除列表中当前选中的一条或多条具体规则。被删除规则的名称将以粗体并带删除线高亮显示,以区别其为尚未应用的删除操作。
可使用标准多选方式(Ctrl+click、Shift+click)在列表中选择多条规则。
- Duplicate Rule - 单击以快速创建列表中当前所选现有规则的完全相同副本。
- Report - 单击以生成包含当前显示列表中所有设计规则的报告。Report Preview dialog 将打开,并预先加载报告。使用该对话框可通过各种页面/缩放控件检查报告,最终可导出到文件或打印。
该区域的右键上下文菜单中也提供生成报告的命令。
- Rule Definition - 当左侧窗格中选择了某条具体规则时,该区域将显示用于定义该规则的控件。

- Rule Scoping Controls - 提供用于确定规则作用范围的控件,即规则适用于哪些对象或对象之间。有关如何使用该区域控件的详细信息,请参见 Rule Scoping Controls 部分。
- Constraints - 显示适用于正在编辑的规则类型的约束。使用各类控件按需配置这些约束。
如果规则的某项约束无效,规则名称将在文件夹树与汇总列表中均以红色显示。如果你尝试关闭该对话框,也会出现警告消息。
对现有规则定义所做的更改会在文件夹树窗格与相应汇总列表中高亮显示。这些条目会通过规则名称变为粗体并在名称右侧显示星号来加以区分。
Rule Scoping Controls

在定义设计规则的作用域时,本质上是在定义受该规则约束的成员对象。请使用可用选项按需设置作用域。根据规则是单目(unary)还是双目(binary),你需要定义一个或两个作用域。
对于单目设计规则,将提供用于定义单一规则作用域的控件。请使用 Where The First Object Matches 区域中的可用选项。对于双目设计规则,还会提供用于定义第二个规则作用域的控件。请使用 Where The Second Object Matches 区域中的可用选项。
无论定义一个还是两个规则作用域,控件都是相同的,相关说明见以下各节。
- Where The Object Matches - 选择所需的作用域选项。
- Top drop-down field - 当使用 Net(或 Net and Layer)或 Layer 选项时,此字段的下拉列表将填充设计中已定义的所有网络(nets)或设计中当前启用的所有层。请据此选择所需目标。
- Bottom drop-down field - 当使用 Net and Layer 选项时,此字段的下拉列表将填充设计中当前启用的所有层。请据此选择所需层。
- Priorities - 单击以打开 Edit Rule Priorities 对话框 (如下所述) ,你可以在其中管理同一规则类型的多条规则的优先级。
可以设置同一类型的多条规则。可能会出现某个设计对象被多个具有相同作用域的规则覆盖的情况。此时会产生冲突,并通过优先级设置来解决。系统会按从高到低的优先级遍历规则,并选择第一条其作用域与正在检查的对象匹配的规则。
选择设计规则类型对话框
该对话框用于从电路板当前已定义的设计规则集合中,指定要导入到或导出自 .Rul 文件的一种或多种规则类型。

选择所需的规则类型(导出/导入时可选择多个类型),然后单击 OK。
导出所选规则类型时,单击 OK 将打开 Export Rules to File 对话框,你可以在其中定义生成的规则文件(*.Rul)保存的位置及名称。导入所选规则类型时,单击 OK 将访问 Import File 对话框,你可以在其中浏览并打开所需的规则文件(*.Rul)。
编辑规则优先级对话框
该对话框提供控件,用于管理所选规则类别内各规则的优先级。规则优先级定义了在执行(例如)设计规则检查时,同一类型的多条规则的应用顺序。规则优先级简化了规则定义与管理流程:先定义覆盖广泛需求的通用规则,再在特定情况下用更具体的规则进行覆盖。 在 PCB Editor 中,通过单击 PCB Rules and Constraints Editor 对话框底部的 Priorities 按钮可访问该对话框。

可能会出现某个设计对象被多个具有相同作用域的规则覆盖的情况。此时会产生冲突。所有冲突都通过优先级设置来解决。系统会按从高到低的优先级遍历规则,并选择第一条其作用域表达式与正在检查的对象匹配的规则。
Options/Controls
- Rule Type - 使用下拉列表选择要管理其已定义规则优先级的具体规则类型。注意:无论某种规则类型是否实际存在规则实例,所有规则类型都会列出。
初始时,对话框将列出 PCB Rules and Constraints Editor 对话框中当前所选规则类型的所有规则实例。
- Priority Listing - 该区域显示所选类型下当前定义的所有规则列表。规则按优先级排序,最高优先级(1)位于列表顶部。对于每条规则,会列出只读信息。
- Increase/Decrease Priority - 单击以提高/降低所选设计规则的优先级(如适用)。
适用的单目/双目规则对话框
这些对话框包含控件,可快速查看设计空间中所选对象适用哪些单目/双目设计规则。单目规则适用于一个对象。双目规则适用于两个对象,或适用于第一组中的某个对象与第二组中任意对象之间。因此,双目设计规则具有两个规则作用域。

在设计空间中对任意已放置的设计对象右键单击,然后在上下文菜单中单击 Applicable Unary Rules 或 Applicable Binary Rules。如果选择 Applicable Binary Rules,系统会提示你在设计中选择两个对象。将光标依次移到每个对象上,然后单击或按 Enter。
如果所选两个对象没有任何双目规则应用于它们,则该对话框不会打开。
Options/Controls
- Unary/Binary Rules List - 该区域确认正在“查询”的所选设计对象,并按规则类型列出所有可能应用于该对象的已定义设计规则,同时显示每条规则的具体约束。每条规则旁会显示 绿色 对勾或 红色 X。对勾表示:在同类型的所有适用规则中,该规则优先级最高,并且当前正在应用。相同类型的低优先级规则旁会显示 X ,表示它们适用,但由于不是最高优先级规则,因此当前不应用。任何本应适用于对象但当前被禁用的规则旁也会显示 X,并以删除线高亮显示。
- Design Rules - 当在主列表中选中某条规则条目时,此按钮可用。单击它以打开 PCB Rules and Constraints Editor 对话框(如上所述)。
如果你不想查看两个对象之间适用哪些规则,而是希望选择一条规则并查看该规则适用于哪些对象,请使用
PCB Rules And Violations panel。当你在面板的
Rules 区域中单击某条具体规则时,将以该规则作为过滤器的作用域来应用过滤。只有落在该规则作用域内的设计对象会被过滤;其在主设计空间中的可视化效果由启用的高亮选项(
Mask/Dim/Normal、
Select、
Zoom)决定。
设计规则类别
电气规则
Clearance
Rule classification: 双目
该规则定义铜层上任意两个基本对象(primitive objects)之间允许的最小间距(clearance)。可以为间距指定单一数值,或通过专用的 Minimum Clearance Matrix 为不同对象配对指定不同间距。后者与规则作用域结合,可灵活构建简洁且有针对性的间距规则集合,以满足最严格的间距需求。
Constraints

- Connective Checking – 规则相对于设计中网络(nets)的作用域。可设置为以下之一:
Different Nets Only – 约束应用于属于不同网络的任意两个基本对象之间(例如,两条分别属于两个不同网络的走线)。
Same Net Only – 约束应用于属于同一网络的任意两个基本对象之间(例如,同一网络上的过孔与焊盘之间)。
Any Net – 约束应用于设计中任意网络的任意两个基本对象之间。这是最全面的选项,涵盖对象可能属于同一网络或不同网络的情况。
- Different Differential Pair - 约束应用于属于不同差分对(differential pairs)的不同网络的任意两个基本对象之间(例如,TX_P 中的一条走线与 RX_P 中的一条走线)。
- Same Differential Pair - 约束应用于属于同一差分对的不同网络的任意两个基本对象之间(例如,TX_P 中的一条走线与 TX_N 中的一条走线)。
- Minimum Clearance – 所需最小间距的数值。在此输入的数值会复制到最小间距矩阵(Minimum Clearance Matrix)的所有单元格中。反之,当在矩阵中为一个或多个对象配对输入不同的间距值时,Minimum Clearance 约束将变为 N/A,以反映并非对所有情况都应用单一间距值。
- Minimum Clearance Matrix – 提供对设计中各种对象-对象间距组合进行精细调整的能力。
新建 PCB 文档的默认 Clearance 规则将默认对所有对象-对象间距组合使用 10mil。当随后创建新的间距规则时,矩阵将填充当前最低优先级 Clearance 规则中已定义的数值。
Working with the Clearance Matrix
可通过以下方式在矩阵中定义间距值:
- 单单元格编辑——用于更改特定对象配对的最小间距。单击某个单元格以选中并编辑。
- 多单元格编辑——用于更改多个对象配对的最小间距:
- 使用 Ctrl+click、Shift+click 和 click&drag 选择同一列中的多个单元格。
- 使用 Shift+click 和 click&drag 选择同一行中多个连续的单元格。
- 使用 click&drag 选择跨多行多列的多个连续单元格
- 单击行标题可快速选中该行的所有单元格。
- 单击列标题可快速选中该列的所有单元格。
要为所有可能的对象配对设置单一间距值,请为 Minimum Clearance 约束设置所需数值。单击 Enter 后,该数值将复制到矩阵中所有适用的单元格。或者,单击矩阵左上角的空白灰色单元格,或使用 Ctrl+A 快捷键。这将选中矩阵中的所有单元格,以便输入新的数值。
在完成所需选择(单个单元格或多个单元格)后,要更改当前值,只需键入所需的新值即可。要提交新输入的值,可以单击到另一个单元格,或按下 Enter。所选范围内的所有单元格都会更新为新值。
How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
Rule Application
在线 DRC、批量 DRC、交互式布线、自动布线,以及在铺放多边形时。
Tips
- 在为该规则定义约束时,Connective Checking 选项通常会设置为
Different Nets Only。Same Net Only 或 Any Net 的一个使用示例是:测试过孔是否与同一网络或其他网络上的焊盘或其他过孔放置得过近。
- 无论指定了哪种连通性检查方法(Different Nets Only、Same Net Only、Any Net),最小间距矩阵都会生效。如果同一网络内对象之间所需的间距与不同网络对象之间定义的间距不同,请务必按需定义单独的间距规则以适配。
Short-Circuit
Rule classification: 二元
此规则用于测试铜层(信号层与平面层)上的基本对象之间是否存在短路。当两个对象相互接触且它们的网络名不同,就存在短路。
Constraints

Allow Short Circuit 用于定义:落在该规则两个作用范围(完整查询)之下的目标网络是否允许短接。如果你需要将两个不同的网络短接在一起(例如在设计中连接两套接地系统),请确保启用此选项。
How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
Rule Application
在线 DRC、批量 DRC,以及在自动布线期间。
Un-routed Net
Rule classification: 一元
此规则用于测试落在该规则作用范围(完整查询)内的每个网络的完成状态。如果某个网络未完成,则会列出每个已完成的部分(子网络)以及布线完成度。布线完成度定义为:
(connections complete / total number of connections) x 100
Constraints

How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
Rule Application
批量 DRC。
Tips
某些分割平面(split plane)的 DRC 检查需要将 Un-Routed Net 规则启用为批量检查才能工作。
Un-Connected Pin
Rule classification: 一元
此规则用于检测未分配网络且没有连接走线的引脚。
Constraints
无。
How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
Rule Application
在线 DRC 和批量 DRC。
Modified Polygon
Rule classification: 一元
此规则用于检测仍处于搁置(shelved)状态和/或已被修改但尚未重新铺铜的多边形。
Constraints

当启用 Allow unpoured 时,所有当前已修改但尚未铺铜的多边形将不会被标记为违规。
How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
布线规则
Width
Rule classification: 一元
此规则定义在铜(信号)层上放置的走线宽度。
Constraints

- Min Width – 指定在布线时允许使用的最小走线宽度。
- Preferred Width – 指定在布线时优先使用的走线宽度。
- Max Width – 指定在布线时允许使用的最大走线宽度。
为 Min Width、Preferred Width 和 Max Width 指定的值将适用于所有信号层。
- Check Tracks/Arcs Min/Max Width Individually – 检查单段走线与圆弧的宽度是否落在最小与最大范围内。
- Check Min/Max Width for Physically Connected – 检查由走线、圆弧、填充、焊盘和过孔组合形成的已布铜皮宽度是否落在最小与最大范围内。
- Layer Attributes Table – 显示所有信号层。会显示最小、最大与首选布线宽度,以及其他与层相关的信息。布线宽度字段既可通过在单个宽度约束字段中定义一个值来全局设置,也可通过直接在表格中键入宽度值来逐层单独设置。
在定义最小、最大与首选布线宽度的数值时,Layer Attributes Table 会用红色文本高亮任何无效输入。例如,当你指定的最小约束值大于最大约束值时就会发生这种情况。错误的规则定义还会通过规则名称变红来进一步提示:在文件夹树窗格以及相应的汇总列表中都会显示为红色。
How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
Rule Application
自动布线器会遵循 Preferred Width 设置。
在线 DRC 与批量 DRC 会遵循 Min Width 和 Max Width 设置。它们还决定了交互式布线期间可使用的允许取值范围(布线时按 Tab 键可在定义范围内更改线宽)。如果输入的值超出该范围,将弹出对话框提醒你。系统会提示你选择继续(此时该值会被自动裁剪到范围内)或取消并手动更改该值。
Tip
系统内置了默认、硬编码的阻抗方程,用于计算 Microstrip 与 Stripline 的阻抗,以及为满足该阻抗在布线时所需的走线宽度。
Microstrip
- Calculated Impedance - 默认公式为:
(60/SQRT(Er*(1-EXP(-1.55*(0.00002+TraceToPlaneDistance)/TraceToPlaneDistance))))*LN(5.98*TraceToPlaneDistance/(0.8*TraceWidth+TraceHeight))
- Calculated Trace Width - 默认公式为:
((5.98*TraceToPlaneDistance)/EXP(CharacteristicImpedance/(60/SQRT(Er*(1-EXP(-1.55*(0.00002+TraceToPlaneDistance)/TraceToPlaneDistance)))))-TraceHeight)/0.8
请注意,如果平面层不与信号层相邻,则计算时将使用最近的平面层。
Stripline
- Calculated Trace Width - 默认公式为:
((1.9*(2*TraceToPlaneDistance+TraceHeight))/(EXP((CharacteristicImpedance/(80/SQRT(Er)))/(1-(TraceToPlaneDistance/(4*(PlaneToPlaneDistance-TraceHeight-TraceToPlaneDistance))))))-TraceHeight)/0.8
请注意,如果平面层不与信号层相邻,则计算时将使用最近的平面层。另请注意,不支持偏移带状线(offset stripline)配置。
Routing Topology
Rule classification: 一元
此规则指定在电路板上对网络进行布线时所采用的拓扑。网络的拓扑是指引脚到引脚连接的排列或模式。默认情况下,每个网络的引脚到引脚连接会被安排为总体连接长度最短。应用拓扑的原因多种多样:例如在高速设计中,为了将信号反射降到最低,可将网络安排为菊链(daisy chain)拓扑;或者对地网络可应用星形(star)拓扑,以确保所有走线回到同一个公共点。
Constraints

- Topology – 定义对该规则作用范围(完整查询)所指向的网络应使用的拓扑。可应用以下拓扑:
Shortest – 该拓扑连接网络中的所有节点,以获得最短的总体连接长度。
Horizontal – 该拓扑连接所有节点,并以 5:1 的比例更偏好水平方向的短于垂直方向的短。使用此方法可强制优先进行水平布线。
Vertical – 该拓扑连接所有节点,并以 5:1 的比例更偏好垂直方向的短于水平方向的短。使用此方法可强制优先进行垂直布线。
Daisy-Simple – 该拓扑将所有节点依次串接成链。串接顺序会被计算为总体长度最短。如果指定了源焊盘与终端焊盘,则所有其他焊盘会被串接在它们之间以获得尽可能短的长度。编辑焊盘可将其设置为源或终端。如果指定了多个源(或终端),它们会在两端分别串接在一起。
Daisy-MidDriven – 该拓扑将源节点置于菊链中心,将负载平均分配,并从源节点两侧分别串接出去。需要两个终端,分别位于两端。多个源节点会在中心串接在一起。如果终端数量不恰好为两个,则使用 Daisy-Simple 拓扑。
Daisy-Balanced – 该拓扑将所有负载分成等长链;链的总数等于终端数量。然后这些链以星形方式连接到源。多个源节点会被串接在一起。
Starburst – 该拓扑将每个节点直接连接到源节点。如果存在终端,则它们会在每个负载节点之后连接。多个源节点会像 Daisy-Balanced 拓扑那样串接在一起。
How Duplicate Rule Contentions are Resolved
所有规则都由优先级设置来裁决。系统会按从高到低的优先级遍历规则,并选择第一个其作用范围与被检查对象相匹配的规则。
Rule Application
在自动布线期间。
使用自动布线器时,若使用 Shortest 以外的拓扑,布线完成时间可能会更长。
Routing Priority
Rule classification: 一元
此规则为该规则所指向的网络分配布线优先级。自动布线器使用分配的优先级值来衡量设计中各网络的布线重要性,从而决定应先布哪些网络。
Constraints

Routing Priority 是分配给该规则作用域(完整查询)所命中的网络(net)的优先级值。请输入一个介于0与100之间的数值;数值越大,在布线时优先级越高。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来裁决。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与正在检查的对象匹配的规则。
Rule Application
在自动布线期间。
Routing Layers
Rule classification: 一元
此规则用于指定允许用于布线的层。
Constraints

Enabled Layers会列出当前为该设计定义的所有信号层(由层叠结构 layer stackup 定义)。根据需要使用关联的Allow Routing选项启用/禁用某一层的布线。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来裁决。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与正在检查的对象匹配的规则。
Rule Application
在交互式布线和自动布线期间。
该规则也会被在线 DRC 和批量 DRC 遵循。
Tip
使用 Autorouter 时,设计中每个已启用信号层的布线方向会作为 Situs Autorouter 设置的一部分来定义。方向在Layer Directions dialog中指定,可通过在Situs Routing Strategies dialog中点击Edit Layer Directions按钮进入。
将某层的布线方向设置为Any可能会影响自动布线性能。选择特定的布线方向可能更高效地利用板面积。
Routing Corners
Rule classification: 一元
此规则指定自动布线时使用的拐角样式。
Constraints

- Style – 指定使用哪种布线拐角样式。
- Setback – 这两个字段允许你在使用
45 Degrees与Rounded拐角样式时定义 setback 的最小值与最大值。setback 是从“真实”拐角位置(即使用90 Degrees样式时会存在的拐角位置)到 Autorouter 开始倒角或圆角处理的起始点之间的距离;本质上用于控制斜接尺寸或拐角半径。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来裁决。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与正在检查的对象匹配的规则。
Rule Application
此规则 предназначена 供将 45° 布线作为后处理流程实现的第三方 Autorouter 使用。Situs Autorouter 不遵循该规则,因为它将 45° 布线作为原生流程实现。
Routing Via Style
Rule classification: 一元
此规则指定布线过孔的直径与孔径。
Constraints

- Via Diameter– 指定在布线板时所放置过孔的外径必须遵循的约束范围值。
- Via Hole Size– 指定在布线板时所放置过孔的孔径必须遵循的约束范围值。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来裁决。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与正在检查的对象匹配的规则。
Rule Application
Preferred过孔属性由 Autorouter 使用。Minimum与Maximum过孔属性会被在线 DRC 和批量 DRC 遵循。它们还决定了交互式布线期间可使用的允许取值范围:当你按*快捷键切换布线信号层,或按/ 快捷键连接到平面层时同样适用。布线时按Tab键可在已定义范围内更改数值。如果输入的数值超出范围,将弹出对话框提示。系统会提示你选择继续(此时数值会被自动裁剪到范围内)或取消并自行修改数值。
Fanout Control
Rule classification: 一元
此规则指定在对设计中连接到信号和/或电源平面网络的贴片器件焊盘进行扇出(fanout)时所使用的扇出选项。从布线角度看,扇出通过添加过孔与连接走线,将 SMT 焊盘“转换”为通孔焊盘。这会显著提高成功布通电路板的概率,因为信号不再只在顶层或底层可用,而是可在所有布线层上使用。这在高密度设计中尤为必要,因为布线空间非常紧张。
Constraints

- Fanout Style – 指定扇出过孔相对于 SMT 器件的放置方式。可用选项如下:
Auto – 选择最适合器件工艺、并能获得最佳布线空间效果的样式。
Inline Rows – 扇出过孔放置在两排对齐的行内。
Staggered Rows – 扇出过孔放置在两排交错的行内。
BGA – 扇出按指定的 BGA Options 执行。
Under Pads – 扇出过孔直接放置在 SMT 器件焊盘正下方。
- Fanout Direction – 指定扇出方向。可用选项如下:
Disable – 不允许对该规则所命中的 SMT 器件进行扇出。
In Only – 仅向内扇出。所有扇出过孔与连接走线都将放置在器件外形边界矩形内。
Out Only – 仅向外扇出。所有扇出过孔与连接走线都将放置在器件外形边界矩形外。
In Then Out – 先将所有器件焊盘尽可能向内扇出。无法按该方向扇出的焊盘(如可能)再向外扇出。
Out Then In – 先将所有器件焊盘尽可能向外扇出。无法按该方向扇出的焊盘(如可能)再向内扇出。
Alternating In and Out – 尽可能以交替方式对所有器件焊盘扇出,先向内再向外。
- Direction From Pad – 指定扇出方向。当对 BGA 器件进行扇出时,其焊盘会被划分为四个象限,并对每个象限内的焊盘同时应用扇出。可用选项如下:
Away From Center – 每个象限内焊盘的扇出沿远离器件中心的 45° 方向进行。
North-East – 每个象限内所有焊盘均向东北方向扇出(相对水平线逆时针 45°)。
South-East – 每个象限内所有焊盘均向东南方向扇出(相对水平线顺时针 45°)。
South-West – 每个象限内所有焊盘均向西南方向扇出(相对水平线顺时针 135°)。
North-West – 每个象限内所有焊盘均向西北方向扇出(相对水平线逆时针 135°)。
Towards Center – 每个象限内焊盘的扇出沿朝向器件中心的 45° 方向进行。在大多数情况下,由于所需扇出空间可能已被其他焊盘的扇出过孔占用,方向无法保持一致。此时,扇出将按下一个可用方向进行(东北、东南、西南、西北)。
- Via Placement Mode – 指定扇出过孔相对于 BGA 器件焊盘的放置方式。可用选项如下:
Close To Pad (Follow Rules) – 在不违反已定义间距规则的前提下,扇出过孔将尽可能靠近其对应的 SMT 器件焊盘放置。
Centered Between Pads – 扇出过孔将居中放置在 SMT 器件焊盘之间。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来裁决。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与正在检查的对象匹配的规则。
Rule Application
在交互式布线和自动布线期间。
Tips
- 系统会自动创建以下默认的 Fanout Control 设计规则,覆盖常见的器件封装类型(按优先级从高到低列出)。这些规则可编辑,或可根据你的具体设计需求定义其他规则。
- Fanout_BGA
- Fanout_LCC
- Fanout_SOIC
- Fanout_Small
- Fanout_Default – 其作用域为
All。
- 扇出过孔所使用的样式将遵循适用的 Routing Via Style 设计规则。扇出过程中从焊盘到过孔所铺设的附加走线将遵循适用的 Routing Width 设计规则。
Differential Pairs Routing
Rule classification: 一元
此规则定义差分对中每条网络的布线线宽,以及该对网络之间的间距(或间隙)。差分对通常以特定的“线宽-间隙”设置进行布线,以满足该网络对所需的单端与差分阻抗。
Constraints

- Min Width - 指定布线差分对时走线允许使用的最小线宽。
- Min Gap - 指定同一差分对内、不同网络的图元之间允许的最小间距。
- Preferred Width - 指定布线差分对时走线的首选线宽。
- Preferred Gap - 指定同一差分对内、不同网络的图元之间的首选间距。
- Max Width - 指定布线差分对时走线允许使用的最大线宽。
- Max Gap - 指定同一差分对内、不同网络的图元之间允许的最大间距。
- Max Uncoupled Length - 指定差分对内正、负网络之间允许的最大非耦合长度值。
- Layer Attributes Table - 显示所有信号层,或仅显示层叠中定义的信号层。会显示最小、最大与首选的线宽与间隙约束,以及其他与层相关的信息。线宽与间隙字段既可通过图形右侧的控件为所有层全局设置,也可通过在表格中直接输入线宽与间隙值来逐层单独设置。
在为最小、最大以及首选的线宽和/或间距定义数值时, Layer Attributes Table 会用红色文字高亮任何无效输入。例如,当你指定的最小约束值大于最大约束值,或将首选约束值设置得低于最小值或高于最大约束值时,就会发生这种情况。错误的规则定义还会通过规则名称变红来进一步提示——在文件夹树窗格以及相应的汇总列表中都会显示为红色。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域表达式与被检查对象匹配的规则。
Rule Application
在线 DRC、批量 DRC、交互式布线(及重新布线)、自动布线、交互式长度调谐(会应用 Min Gap),以及在交互式修改差分对时(例如滑动差分对中某一网络的一段走线)。
Tips
- 虽然差分对中每条网络的线宽由适用的 Differential Pairs Routing 规则监控(而不是由 Width 规则监控),但该差分对内部两条网络之间的间距检查仍由适用的 Clearance 设计规则控制。换句话说,必须定义一条以差分对为目标(在需要的特定层上)的 Clearance 规则,并将其连通性检查模式设置为 Same Differential Pair,同时将其间距值设置为等于或小于该层在适用的 Differential Pairs Routing 规则中定义的 Min Gap 约束值。
- 差分对中的某条网络与任何不属于该差分对的其他电气对象之间的间距,由适用的 Clearance 规则监控。
- 尽管在电路板的大部分区域可能都能实现最佳的线宽-间距设置,但通常会有一些区域(例如 BGA 器件下方)必须使用更小、更紧的线宽-间距设置。除了交互式切换 Width-Gap 设置外,也可以通过定义多条差分对布线规则来实现这一需求——一条较低优先级的规则用于在全板范围内约束该差分对,另一条较高优先级的规则用于在特定区域内约束该差分对。然后,你可以通过定义 Room Definition 规则来圈定特定区域,并在差分对布线规则的作用域中使用该 room,从而将差分对定位到该特定区域。
阻焊/助焊规则
Solder Mask Expansion
Rule classification: Unary
在每个焊盘和过孔位置,阻焊层上生成的形状,是将焊盘或过孔的形状按本规则指定的数值进行径向扩展或收缩后的结果。
Constraints

Expansion 是应用于初始焊盘/过孔形状以获得阻焊层最终形状的数值。输入正值会扩展初始焊盘/过孔形状;输入负值会收缩它。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与被检查对象匹配的规则。
Rule Application
在输出生成期间。
Tip
通过为 Expansion 约束定义合适的数值,可以实现焊盘和过孔的部分或完全盖油(tented)。
- 要对焊盘/过孔进行部分盖油(仅覆盖焊盘环形铜面 land 区域),将 Expansion 设为负值,使阻焊开窗收缩到紧贴焊盘/过孔孔边。
- 要对焊盘/过孔进行完全盖油(覆盖 land 和孔),将 Expansion 设为一个负值,且其绝对值等于或大于焊盘/过孔半径。
- 要对单层上的所有焊盘/过孔进行盖油,设置合适的 Expansion 数值,并确保规则作用域指向所需层上的全部焊盘/过孔。
- 要在焊盘/过孔尺寸各不相同的设计中对所有焊盘/过孔实现完全盖油,将 Expansion 设为一个负值,且其绝对值等于或大于最大焊盘/过孔半径。
也可以在 Inspector panel 的相关模式中,针对单个焊盘和过孔分别定义阻焊扩展。
Paste Mask Expansion
Rule classification: 一元
在每个焊盘位置,钢网层(Paste Mask)上生成的形状,是将焊盘形状按本规则指定的数值进行径向扩展或收缩后的结果。
Constraints

Expansion 是应用于初始焊盘形状以获得钢网层最终形状的数值。输入正值会扩展初始焊盘形状;输入负值会收缩它。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与被检查对象匹配的规则。
Rule Application
在输出生成期间。
也可以在 Inspector panel 的相关模式中,针对单个焊盘分别定义钢网扩展。
电源平面规则
Power Plane Connect Style
Rule classification: 一元
该规则指定元件引脚到电源平面(Power Plane)的连接样式。
Constraints

- Connect Style – 定义由规则作用域所选中的元件引脚到电源平面的连接样式。提供以下三种样式:
Relief Connect – 使用热焊盘(thermal relief)方式连接。
Direct Connect – 使用实心铜(solid copper)直接连接到引脚。
No Connect – 不将元件引脚连接到电源平面。
以下约束仅在使用 Relief Connect 样式时适用:
- Conductors – 热焊盘铜连接的数量(2 或 4)。
- Expansion – 从孔边到隔离气隙边缘测得的径向宽度。
- Air-Gap – 热焊盘连接中每个气隙的宽度。
- Conductor Width – 热焊盘铜连接的线宽。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与被检查对象匹配的规则。
Rule Application
在输出生成期间。
Tip
在 PCB Editor 中,电源平面以负片方式构建,因此放置在电源平面层上的图元会在铜面中形成空洞(void)。
Power Plane Clearance
Rule classification: 一元
该规则指定对穿过但未连接到电源平面的过孔和焊盘,在其周围生成的径向间距(radial clearance)。
Constraints

Clearance 为径向间距的数值。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与被检查对象匹配的规则。
Rule Application
在输出生成期间。
Polygon Connect Style
Rule classification: 二元
该规则指定元件引脚到多边形平面(polygon plane)的连接样式。
Constraints

Connect Style – 定义由规则作用域所选中的元件引脚到多边形平面的连接样式。
以下约束仅在使用 Relief Connect 样式时适用:
- Conductors – 热焊盘铜连接的数量(2 或 4)。
- Angle – 铜连接的角度(45° 或 90°)。
- Air Gap Width – 焊盘边缘与周围多边形之间的距离。
- Conductor Width – 热焊盘铜连接的线宽。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级依次检查规则,并选择第一条其作用域与被检查对象匹配的规则。
Rule Application
在多边形铺铜(polygon pour)期间。
放置规则
Component Clearance
Rule classification: 二元
该规则指定元件彼此之间允许放置的最小距离。元件间距还包括用于定义元件本体的 3D 模型(拉伸(简单)类型)之间的间距。在没有 3D 本体的情况下,会使用丝印层和铜层上的图元(不包括 Designator 和 Comment)来定义对象的形状与尺寸,并结合元件属性中指定的高度值。
元件间距通过精确的 3D 网格划分来计算,以便通过其关联的 3D 本体对象定义元件的形状与轮廓。这些 3D 本体可能由 2D 形状拉伸而成。显然,在进行间距检查时,使用 3D 本体能获得最高精度,尤其是在垂直方向以及复杂元件形状的场景下。
Component Clearance 规则不会检查 3D 本体与板面之间的间距违规。
Constraints

- Vertical Clearance Mode – 提供两种指定垂直间距的模式:
- Infinite – 使用代表“无限大”的数值进行间距检查。这意味着任何放置在其上方或下方的元件都会构成违规。一个使用示例是:某块板上有一个必须保持可触达的调节机构。对该元件使用此规则,会使任何伸入该元件上方或下方区域的元件都产生违规。
- Specified – 使用由元件 3D 本体或封装属性定义的精确形状进行间距检查。当使用 3D 本体进行检查时,只要不违规,就允许一个元件相对另一个元件存在可接受的悬垂(overhang)。启用该模式后,将提供以下约束:
- Minimum Vertical Clearance – 设计中已放置元件之间在垂直方向允许的最小间距值。
- Minimum Horizontal Clearance – 设计中已放置元件之间在水平面内允许的最小间距值。
- Show actual violation distances – 启用 以显示元件之间违规最严重点之间的连线。该连线会显示距离,可用于计算需要移动对象多远才能消除违规。
启用 Show actual violation distances 选项可能会降低某些系统的性能。
- Do not check components without 3D body- 启用后将不检查没有 3D Body 的元件。
- Check clearance by component boundary
- 启用后将按元件边界检查间距(Clearance)。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级遍历规则,并选择第一个其作用域与被检查对象匹配的规则。
Rule Application
在线 DRC 与批量 DRC。
Tips
- 拉伸(简单)3D Body 是一种多边形形状的对象,可放置在库元件或 PCB 文档中任何已启用的机械层上。在元件封装中,它可用于在 X、Y、Z 轴上精确定义元件的物理尺寸与形状。
- 可以使用多个 3D Body 图元来定义任意复杂的形状。这在垂直方向上尤其有用,因为它允许你在元件的不同区域设置不同的高度。
Component Orientations
Rule classification: 一元
该规则用于指定允许的元件朝向。可允许多个朝向,从而使元件放置符合任一已启用的朝向。例如,当某个元件在波峰焊时只允许特定朝向;也许如果它朝向波峰进入,其焊盘在焊接时容易形成锡桥,因此可以添加此类规则,使其只能以“焊盘横跨波峰”的方式进入。另一个例子是必须严格对齐的射频对象(天线)。
Constraints

- Allowed Orientations -所选的、可供使用的朝向。提供以下基于朝向的选项:
- 0 Degrees - 允许将已放置元件旋转到 0° 朝向。
- 90 Degrees - 允许将已放置元件旋转到 90° 朝向。
- 180 Degrees - 允许将已放置元件旋转到 180° 朝向。
- 270 Degrees - 允许将已放置元件旋转到 270° 朝向。
- All Orientations - 允许将已放置元件旋转到上述四种单独朝向中的任意一种。
在每种情况下,旋转都是相对于源库中元件的朝向而言的。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级遍历规则,并选择第一个其作用域表达式与被检查对象匹配的规则。
Rule Application
当前不被 DRC 系统采纳。
Permitted Layers
Rule classification: 一元
该规则用于指定允许放置元件的层。
Constraints

- Permitted Layers - 放置元件时允许使用的层。提供以下层选项:
- Top Layer - 允许在顶层放置元件。
- Bottom Layer - 允许在底层放置元件。
How Duplicate Rule Contentions are Resolved
所有规则都通过优先级设置来解析。系统会按从高到低的优先级遍历规则,并选择第一个其作用域表达式与被检查对象匹配的规则。
Rule Application
批量 DRC。
Tip
在执行批量 DRC 时,该规则作为测试,用于确保被规则作用域查询表达式所选中的元件仅放置在允许的层上。原理图中为元件指定并已同步到 PCB 封装中的参数,可以非常有效地用于此目的。例如,为了检查不支持波峰焊的元件没有被放到底层,可以定义此类规则。假设某个元件参数 SupportsWaveSolder 已为元件定义,并作为 PCB 中封装的参数同步过来,则规则作用域可能为:
CompParameterValue('SupportsWaveSolder') <> 'Yes'
并且只允许 Top Layer 约束,同时禁用 Bottom Layer 约束。