定义、确定范围和管理 PCB 设计规则
Altium Essentials: PCB Design Rules Creation
This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.
概览
- 了解 Altium Designer 如何应用 PCB 设计规则,包括适用范围、查询、规则类型和优先级处理。
- 了解在 PCB 规则与约束编辑器对话框中管理约束与在约束管理器中管理约束的区别。
- 熟悉 PCB 规则与约束编辑器对话框的布局和主要功能,以便更高效地查找和管理规则。
在 Altium Designer 中,设计要求通过一种简洁的 target these objects and apply those requirements 方式来应用。它利用规则或约束的概念来定义设计要求。 这些规则或约束统称为设计规则或设计约束,共同构成 PCB 编辑器需要遵循的 instruction set。设计约束涵盖设计的各个方面,包括布线宽度、间距、电源平面连接方式、布线过孔样式等。
其中许多设计要求都可以通过在线 Design Rule Checker(DRC)进行实时监控,您也可以随时运行批量检查,以生成 DRC 报告。
PCB 规则系统基础
软件的 PCB 编辑器内置的规则系统具有以下几项基本特性,使其有别于大多数其他 PCB 编辑环境采用的设计规则系统:
-
Rules are separate from the objects – 规则并非作为对象的属性添加,而是通过 scoped 来指定其作用的对象。这样,规则就可以应用于多个对象,也可以轻松修改、复制或应用于不同的对象。
-
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 编辑器都会查询规则系统,以确定适用于该对象的约束,例如对象应有多宽、与相邻对象必须保持多大距离等。在底层,这些要求被定义为设计规则(或约束),而不是对象的属性。
Altium Designer 支持两种定义设计约束的方式:直接在 PCB Rule and Constraints Editor 对话框中处理各条设计规则,或在以对象为中心的 Constraint Manager 中配置约束。
-
PCB Rule and Constraints Editor 方式的优势在于它以规则为中心:先关注要求,再确定希望将这些要求应用于哪些对象。请注意,设计规则必须在 PCB 编辑器中定义,在原理图绘制阶段定义规则的支持有限。 PCB Rule and Constraints Editor 方式的另一个优势是支持可复用的规则集。您可以创建、复制、启用或禁用、重命名、删除、导入和导出规则集,从而更轻松地管理针对特定接口、制造要求或特殊设计约束的规则。规则集将在本页后文中介绍。
-
Constraint Manager 方式具有两方面的优势。首先,它支持在类似电子表格的编辑器中采用以对象为中心的方式,即针对这一组网络,应用这些要求。其次,由于设计约束存储在 PCB 文件之外,Constraint Manager 支持您从开始绘制原理图时就定义设计要求。
本页重点介绍底层 PCB 编辑器规则系统,以及如何定义设计规则、设置其作用范围并进行管理。即使您计划使用 Constraint Manager 来定义和管理设计要求,了解底层规则系统的工作原理仍然很重要,因为您在 Constraint Manager 中配置的约束最终会先转换为设计规则,然后再由底层 PCB 编辑器规则系统解析。
PCB 规则与约束编辑器
从主菜单中选择 Design » Rules 命令,即可打开 PCB Rules and Constraints Editor 对话框。该对话框包含两个主要区域,如以下幻灯片所示:
PCB 规则与约束编辑器 |
|
| Tree on left of the dialog | 与 Windows 文件资源管理器类似,左侧的树形视图按类型和类别展示规则的组织结构。双击可逐级展开树形结构。单击结构中的图标可显示该层级的内容,如上方幻灯片所述。 |
Right side of the dialog – list of rules (幻灯片 1 至 4) |
在对话框右侧的规则列表中,包含以下列:
|
Right side of the dialog – selected rule (幻灯片 5 和 6) |
在左侧树形视图中选中特定规则(或在汇总列表中双击其条目)后,对话框右侧将显示该规则的设置,其中包含以下选项:
|
| Search | 对话框左上角的 Search 字段可搜索用户定义的规则Name和Comment字段,以及对话框中各个规则设置的文本。输入多个词时,搜索将执行“或”运算。 |
| Switch to Document View | 单击此按钮可切换为以文档式视图显示规则。此功能已弃用,不再继续开发。 |
| Rule Wizard | 规则向导可引导您完成新建设计规则的过程。如果对现有规则所做的修改尚未保存,此按钮将不可用。了解有关规则向导的更多信息。 |
| Priority | 定义了多条相同类型的规则(例如多条宽度规则)时,每条规则都会被分配一个优先级。添加 new 规则时,该规则会自动获得最高优先级;对现有规则执行 duplicated 操作时,生成的规则会获得仅次于源规则的优先级。只有当多条规则同时适用于其作用范围所指定的对象时,才会使用优先级。了解有关配置规则优先级的更多信息。 |
| Create Default Rules | PCB 编辑器要求某些规则必须存在,才能执行设计规则检查;每项规则定义都会说明是否需要该类型的默认规则。此按钮可用于恢复意外删除的必需规则。如果某条默认规则已被修改,单击此按钮不会将其重置或替换。 |
| Units displayed in the dialog | 按 Ctrl+Q 快捷键可在英制和公制之间切换对话框的单位。请注意,这不会更改电路板单位的当前设置。 |
创建新规则
要在 PCB Rules and Constraints Editor 对话框中添加新的设计规则,请在左侧树形视图中找到所需的规则集,再找到并选择所需的规则类型,然后单击规则汇总列表下方的
按钮;也可以右键单击所需的规则类型,然后从右键菜单中选择 Add Rule。
新规则将添加到文件夹树中,同时也会显示在该规则类型的汇总列表中。规则名称将以粗体显示,以表明它是新建且尚未“应用”的规则。
创建新规则 |
|
| Default rules | 新建 PCB 文档时,其中会包含多条默认规则,设计规则检查系统必须依赖这些规则才能正常运行。如果删除了默认规则,关闭 PCB Rules and Constraints Editor 时会自动重新创建该规则。如果某些设计规则是您不想使用的,正确的管理方式是将其禁用。 |
| Default units | 默认规则值在内部以 mil 为单位定义,这些值可能不适合您的设计。要使用您自己的默认规则和值,可以: |
| Disabling a default rule | 要禁用某条规则,请在 PCB Rules and Constraints Editor 对话框右侧的某个汇总列表中,切换该规则对应的 Enabled 选项。禁用的规则将显示为灰色。了解更多关于禁用设计规则的信息。 |
| Name of the new rule | 添加新规则时,系统最初会根据具体规则类型为其指定默认名称。例如,添加一条新的间距规则时,默认名称为 Clearance。如果不更改此默认名称,再添加同一类型的新规则时,规则名称将相同,但会附加递增的数字后缀(即 Clearance_1、 Clearance_2 等)。为了便于规则管理,建议根据规则适用的对象为其命名,例如 Clearance-DiffPairs。 |
| Priority of the new rule | 为某种规则类型创建新规则时,系统会自动将其优先级设为 1(最高优先级)。如果已存在该类型的其他规则,这些规则的优先级会相应下调一级。随后,这些规则会被视为已修改,即使其各自的作用范围或约束并未被直接修改。因此,该类型的所有现有规则都将显示为已修改状态(加粗并带有星号)。了解更多关于规则优先级的信息。 |
| To edit the rule settings | 要访问规则的作用范围和约束属性,请单击文件夹树窗格中的规则条目,或双击汇总列表中的相应条目。对话框的主编辑区域将随之变化,显示用于定义该规则作用范围和约束属性的控件( )。 |
| Use the Rule Wizard | 使用 Design » Rule Wizard 命令,或单击 PCB Rules and Constraints Editor 对话框底部的 Rule Wizard 按钮来启动向导。 通过向导页面执行以下操作(
|
| Duplicate an Existing Rule | 要复制现有规则(
复制出的规则将使用与原规则相同的名称,并附加后缀(例如 |
| Creating a rule from the PCB Filter panel | 提高查询编写能力的一个绝佳方法是使用 PCB Filter 面板,该面板专门用于定位设计空间中的对象。在面板中编写好所需的查询后,可以单击 Create Rule 按钮( |
| Is the rule ready? |
|
设置设计规则的作用范围
设计规则针对设计中的特定对象。为了让 PCB 规则系统知道某条规则适用于哪些对象,需要明确该规则的作用范围,即 the extent of its application。
Scoping,也就是指定规则的目标对象,在 PCB Rules and Constraints Editor 对话框中完成。

设置设计规则的作用范围,以定义其适用的设计对象——此规则针对底层上属于 VBAT 网络的所有对象。
设置规则的作用范围 |
|
| Targeting the rule | Scoping,也就是指定规则的目标对象,是指定义该规则所适用的对象集合的过程。这通过配置 Where The Object Matches 设置来完成。新建设计规则的默认作用范围为 All,表示它将应用于 PCB 上的 all objects。使用下拉列表可以快速配置简单的规则作用范围,每个选项都会提供更多下拉列表,以精确定位所需对象( )。使用简单的作用范围选项设置规则作用范围时,系统仍会创建查询。通过在下拉列表中切换到 Custom Query,可以查看这些选项背后的查询。 |
| Using a custom query | 要输入自定义查询,请将第一个 Where The Object Matches 下拉列表设为 |
| Writing the query | 查询本质上是向软件发出的指令,用于定义要定位的设计对象集合。查询使用查询关键字编写,例如(
如果将此查询用作宽度规则的作用范围,那么在为 VBAT 网络布线并切换到底层时,走线宽度会自动变为该规则的 Constraints 中指定的宽度。此外,运行设计规则检查时,底层上属于 VBAT 网络的所有走线都必须具有指定宽度,否则将被标记为违规。 了解更多关于编写查询的信息。 |
| Unary or Binary rule | 一元规则应用于 to 规则作用域所针对的对象,二元规则应用于 between 规则作用域所针对的对象。 根据规则是一元规则还是二元规则,您需要分别定义一个或两个作用域。 对于一元设计规则,系统会提供用于定义单个规则作用域的控件。使用 Where The Object Matches 区域中的选项来辅助构建查询表达式,表达式将显示在其右侧区域中。对于二元设计规则,系统会提供 Where The First Object Matches 和 Where The Second Object Matches 控件,用于定义两个规则作用域。使用各自的下拉列表来辅助构建查询表达式。 无论定义一个还是两个规则作用域,所用的控件都相同。 |
| Changing the name of the object that a rule applies to | 当 PCB 元件位号或多边形覆铜名称发生 更改时,使用自定义查询的设计规则中的引用会自动更新。当通过重新标注、ECO 更新或在电路板上手动编辑(
|
| The impact of a Query syntax error | 如果查询存在语法错误,该规则将被视为无效,并在 PCB Rules and Constraints Editor 对话框左侧的规则树以及该规则所在的任何汇总视图(规则类别或规则类型)中以红色高亮显示。如果您尝试关闭该对话框,还会出现警告消息。存在语法错误的规则作用域可能会大幅降低在线和批量 DRC 分析的速度。请务必修正规则作用域中的所有语法错误。了解有关管理设计规则的更多信息。 |
编写自定义查询
Custom Query 选项允许您编写自己的查询,这些查询可能更复杂,但也更精确。您可以直接在右侧的查询区域中输入针对规则作用域的特定查询。此外,还有两项功能可帮助您创建逻辑查询表达式,分别是查询构建器和查询助手(概述如下)。当您不确定查询语法或可用关键字时,这些功能会很有帮助。

使用 Custom Query 选项构建更复杂的查询表达式。
编写自定义查询 |
|
| Writing a query | 如果您熟悉查询语言,可以直接在查询区域中输入查询表达式。 您也可以将查询表达式从常用编辑器直接粘贴到该区域中,或将查询表达式复制到外部编辑器中,甚至可以将查询粘贴到二元规则的第二个作用域中。当两个作用域都很复杂且仅有细微差异时,这尤其有用。 |
| The PCB Filter panel | 提高查询编写能力的一个好方法是使用 PCB Filter 面板,该面板专为定位设计空间中的对象而设计。您可以使用复选框选项来指定对象和层,勾选这些选项时会相应地构建查询。然后,您可以根据需要编辑此查询,过滤掉所有不需要的对象,仅返回感兴趣的对象。该面板还提供查询助手、查询构建器、查询历史记录以及当前收藏夹的访问入口。当前的 Filter panel 查询也可用于定义新设计规则的作用域。 |
| Query Builder | Query Builder 提供一种引导式查询构建方法,使用与上下文相关的条件类型和值,确保您只能使用相关的“构建块”进行构建。单击 Query Builder 按钮后,将打开 Building Query from Board 对话框,您可以在其中通过构建一系列条件语句( 每个条件均由 Condition Type 和 Condition Value 组成。相应的下拉字段会分别列出与构建当前规则类型的作用域相关的条目,以及所选条件类型的值。 定义条件时,对话框右侧区域会显示当前已构建查询的预览。条件之间可以使用 AND 和/或 OR 连接,也可以通过括号或缩进设置优先级,以进一步限定目标对象集。按要求定义好查询表达式后,单击 OK 即可将该表达式载入 PCB Rules and Constraints Editor 对话框的查询区域。 了解有关查询构建器的更多信息。 |
| Query Helper | 若要使用完整的关键字规范和运算符语法进行高级查询构建,请单击 Query Helper 按钮,打开 Query Helper 对话框(
了解有关查询助手的更多信息。 |
| Query history | 在 PCB Filter 面板中编写并应用的所有查询,都会记录在 Expression Manager 对话框的 History 选项卡中。这些查询可随时重复使用,也可保存为收藏项 。 |
| Favorite queries | 查询历史记录中的任何查询都可以保存为收藏项,这是保留和重复使用常用查询的理想方式 。 |
| Query Expression Operator Precedence | 括号的优先级最高。如果查询有可能被错误解析,建议使用括号。括号不仅能消除 歧义,还能使查询 更易于阅读。 优先级顺序 (从高到低)与 Pascal 类语言中的顺序类似。遇到歧义时,按从左到右的顺序解析。括号按从内到外的顺序求值,同一级别则按从左到右的顺序求值。 |
| Create a query from a search | 在原理图或 PCB 编辑器中,要查找与当前所查看对象相似的对象,一种便捷的方法是右键单击该对象,然后从上下文菜单中选择 Find Similar Objects。 “查找相似对象”功能以目标对象的属性为参考,根据 Find Similar Objects 对话框中的配置,查找所有其他具有相似特征的对象。此过程会在后台创建一个查询来查找这些对象。如果在对话框中启用了 Create Expression 选项, 该查询就会加载到 PCB Filter 面板中,您可以将其保存为收藏项, 或在设计规则中使用它 。 了解有关 查找相似对象工具的更多信息。 |
了解有关使用查询语言的更多信息。
规则优先级
为了简化规则的定义和管理,应先定义涵盖广泛要求的通用规则,再针对特定情况使用特定规则覆盖这些通用规则。 当一个对象同时成为多个同类型规则的目标时,就会产生冲突。所有冲突都通过优先级设置来解决。系统按优先级从高到低遍历规则,并选取作用范围表达式与被检查对象匹配的第一条规则。
要管理这一过程,您需要设置规则的优先级,以便在一个对象同时成为多个同类型规则的目标时,指明应使用哪条规则。

在 Edit Rule Priorities 对话框中更改规则优先级。
设置规则优先级 |
|
| Priority of rules | 优先级数值越小,优先级越高。优先级仅在同一种规则类型内生效 (跨所有规则集)。例如,检查差分对布线优先级时,不会考虑布线宽度的优先级。请注意,all rule sets 中所有布线宽度规则的优先级都会统一排序。了解有关规则集的更多信息。 |
| Approach to prioritizing | 通常,规则的作用范围越广(例如 All),其所需的优先级就越低。然后,可以添加另一条类型相同但优先级更高的规则,针对特定网络(或网络类)覆盖该规则。优先级数值不能由用户直接指定,而是通过单击 PCB Rules and Constraint Editor 中的 Priorities 按钮(如上图所示),然后在 Edit Rule Priorities 对话框中提高或降低所选规则的优先级来配置。 |
| What happens when you click the Priorities button | 优先级在 Edit Rule Priorities 对话框中管理,如上图所示。该对话框会自动加载当前规则类型的所有规则。如果单击 Priorities 按钮时,左侧树中选中的是规则类别或规则集,软件会自动选择其下方的下一个规则类型。 |
| Priority of a new rule | 向已包含一条或多条规则的规则类型中添加新规则时,新规则的优先级将设为 1(即赋予新规则 最高优先级)。 复制某条特定规则时,副本的优先级会紧随源规则之后。 |
| Checking the priorities | 在 PCB Rules and Constraint Editor 的左侧,当在树中选中特定规则类型时,该类型的规则始终按优先级顺序列出 。在对话框右侧,当列表显示特定规则类型时,可单击 Priority 列标题,按该列对列表排序 。 |
| Examining the priority in the design space | 执行与规则相关的任务时,设计规则系统会自动选择适用且优先级最高的规则。例如,右键单击某个对象并从上下文菜单中选择 Applicable Binary Rule 时,对话框会显示适用且优先级最高的规则 。 |
管理规则
规则在 PCB Rules and Constraint Editor 中管理,既可以使用右键上下文菜单,也可以直接编辑对话框中的字段。
系统标记无效设计规则的示例,此处为作用范围查询表达式错误。
管理设计规则 |
|
| Modifying an existing rule | 要最终得到一套可用的规则,通常需要对一些关键细节进行调整—— 一般是调整作用范围, 以确保规则能够“选中”目标设计对象。要在 PCB Rules and Constraints Editor 对话框中编辑现有规则,请单击左侧树中的规则名称,或双击右侧网格视图中的规则, 然后根据需要更改其作用范围和约束。 对现有规则定义所做的更改,会在文件夹树窗格和相应的汇总列表中高亮显示。这些条目的规则名称会变为粗体,并在名称右侧显示星号 ( 。星号表示这是一条已修改的现有规则,而不是新建规则(新建规则以粗体显示,但不带星号)。 |
| Flagging Invalid Rules | 如果系统检测到某条规则无效,例如其适用范围查询表达式存在问题 ,或某个约束的值不被允许,则会将其标记为无效。在 PCB Rules and Constraints Editor 对话框中,此类规则 将在左侧规则树以及包含该规则的任何汇总视图(规则类别 或规则类型)中以红色突出显示 ,如上图所示。此外,左侧规则树中的规则类型和规则类别文本也会以红色显示 。因此,即使您折叠了规则树中包含无效规则的区域,仍可在更高层级看到相应提示 。如果尝试关闭该对话框,还会出现一条警告消息( |
| Disabling Rules | 在软件 PCB 编辑器的规则驱动环境中,为了有效约束电路板设计,建立一套庞大而全面的规则并不罕见。出于某些原因,您可能希望禁用部分规则; 例如,它们不适用于当前电路板 ,或者需要暂时禁用以减轻设计规则检查器的负担。禁用是一种保留这些规则的好方法 ,以备将来再次使用( 要禁用某条规则,请在 PCB Rules and Constraints Editor 对话框右侧的相关汇总列表中,切换该规则对应的 Enabled 选项 。禁用的规则还会显示为灰色。 |
| Deleting a Rule | 要在 PCB Rules and Constraints Editor 对话框中删除单条设计规则:
|
导出和导入规则
可以从 PCB Rules and Constraints Editor 对话框中导出设计规则 ,也可以将设计规则导入该对话框 。这样,您就可以保存常用的规则定义,并将其加载到不同的设计中。
设计规则报告
可以在 PCB Rules and Constraints Editor 对话框中生成当前已定义的设计规则报告。根据文件夹树中所选的条目,报告可以涵盖所有规则类别、特定规则类别或特定规则类型。
右键单击并在上下文菜单中选择 Report 以生成报告。 随后将打开 Report Preview 对话框,并加载相应报告。使用对话框中的各种页面/缩放控件查看报告,然后将其打印或导出为文件。
报告预览对话框的选项和控件
| Preview Window | 此对话框的主区域显示所生成报告的预览。可以使用窗口下方及右键菜单中的各种控件操作报告。也可以使用标准 Windows 快捷键组合缩放和平移报告。 |
| Page x of x | 第一个 x 是当前查看的页码;第二个 x 是报告的总页数。 |
| All | 单击此按钮可调整页面大小,使其适合可用的预览窗口。调整对话框(以及预览窗口)的大小时,页面也会随之调整,以保持完整显示。 |
| Width | 单击此按钮可调整页面大小,使其宽度适合可用的预览窗口。调整对话框(以及预览窗口)的大小时,页面也会随之调整,以保持整个页面宽度完整显示。 |
| 100% | 单击此按钮可将页面设置为原始大小(100%)。 |
| % | 使用此字段放大或缩小, 原始大小为 100%。也可以使用 Ctrl+mouse wheel 进行缩放,或分别使用 Page Up 和 Page Down 键放大和缩小。 按住鼠标右键并拖动文档,即可在缩放后的视图中平移。使用 Shift+mouse wheel 水平滚动,使用 mouse wheel 垂直滚动。 |
| Page Navigation Controls | 这组控件提供了另一种浏览报告页面的方式。各控件分别用于跳转到文档的第一页、上一页、下一页和最后一页。也可以直接在文本框中输入页码,然后按 Enter。 |
| Export | 单击可打开 Export Report From Project 对话框,在其中指定报告的保存位置、名称和导出格式。 支持以下格式:
|
| 单击此按钮可打印报告。将显示标准的 Print 对话框,您可以在其中指定页面范围和打印份数。 | |
| Open Report | 单击此按钮可在 Export 中指定的应用程序中打开生成的报告。只有单击 Export 按钮后,此按钮才可用。 |
| Right-Click Commands | 这些命令也可以从右键菜单中使用。 |
将规则分组为规则集
规则集可以高效地对一组设计规则进行分组和重用,例如针对特定接口或制造商的规则。您可以快速执行以下操作:
-
查看和管理规则集中的规则,并可在规则集之间移动规则。
-
在应用的规则集之间切换,即根据需要启用/禁用规则集。
-
导出/导入规则集,实现最佳可移植性。了解有关导出和导入设计规则的更多信息。

用户定义的 DDR4 规则集示例,其中汇集了与 DDR4 接口相关的设计规则。
使用规则集 |
|
| Default Rule Set | PCB 文档包含一个 Default Rule Set。它无法被重命名、禁用或删除。在 PCB Rules and Constraints Editor 对话框左侧的树中,Default Rule Set 以 |
| Create a new Rule Set | 要创建新的规则集,请单击 PCB Rules and Constraints Editor 对话框左侧树底部的 + Add Rule Set 控件,或右键单击树顶部的 All Rules 条目,然后从上下文菜单中选择 Add Rule Set 命令( |
| Rename a Rule Set | 要重命名用户定义的规则集,请右键单击 PCB Rules and Constraints Editor 对话框左侧树中的相应条目,然后从上下文菜单中选择 Rename。在打开的 Rename 对话框的 New Name 字段中为规则集输入新名称,然后单击 重命名后的规则集在文件夹树窗格中以粗体名称显示,并在名称右侧显示星号。星号表示该规则集是经过修改的现有规则集,而非新建的规则集(新建规则集以粗体显示,但不带星号)。 |
| Duplicate an existing Rule Set | 要创建现有规则集的完全相同的副本,请右键单击该规则集,然后选择 Duplicate Rule Set( 规则集副本将包含与原始规则集相同的设计规则。副本中的每条设计规则 都将沿用原始规则的名称,并添加后缀(例如 |
| Move rules between Rule Sets | 要在规则集之间移动现有规则:
|
| Disable a Rule Set | 要在 DRC 中排除某个用户定义规则集中的设计规则,请右键单击其条目,然后从上下文菜单中选择 Disable Rule Set。已禁用规则集的条目将在树中灰显,其右侧将显示 Disabled 文本。已禁用规则集的所有规则类别、规则类型和各个设计规则的条目也将在树中灰显,同时,设计规则条目将在 PCB Rules and Constraints Editor 对话框右侧的相关汇总列表中灰显( |
| Delete a Rule Set | 要删除用户定义的规则集(及其设计规则),请右键单击左侧树中所需的规则集,然后从上下文菜单中选择 Delete Rule Set。 规则集名称及其各个设计规则的名称将以粗体加删除线显示,表示它们已标记为删除,但尚未“应用”( |
| Priority across Rule Sets | 每种类型的设计规则都具有跨所有规则集的全局优先级。这意味着,如果 PCB 文档中的某个对象受多条规则约束,则将应用优先级最高的规则,而不论该规则属于哪个规则集。有关管理规则优先级的更多信息,请参阅上文的 规则优先级部分。请注意,如果需要,可以在批量 DRC 期间强制检查特定规则集中的设计规则。有关更多信息,请参阅 设置和运行 DRC 页面。 |
在原理图中定义规则
对于使用设计规则(而非 Constraint Manager)的项目,可以将规则作为参数添加到原理图中。对于包含参数的原理图对象(例如元件),规则以参数形式添加。对于其他对象,则必须使用参数集对象来添加规则。
在原理图中定义规则 |
|
| Schematic objects that include parameters | 对于包含参数的原理图对象(例如元件),规则以参数形式添加,如上方幻灯片中的第一张所示。 |
| Schematic objects that do not include parameters | 对于不包含参数的对象,规则添加到参数集对象中,如上方幻灯片中的第二张所示。这类对象包括导线、总线、线束、网络标签等。了解有关与 PCB 相关的原理图设计指令的更多信息。 |
| Scope of the PCB rule | 所创建 PCB 规则的作用范围由其所附加对象的标识决定。
|
检查规则的应用情况
根据电路板设计的不同,其中定义的设计规则的作用范围可能非常简单,也可能非常复杂。最好检查所定义的规则是否确实作用于预期对象。在规则定义阶段多加留意,可以避免因规则作用范围不正确而产生违规,进而浪费时间和精力进行排查。
验证规则作用范围主要有两种方法:一是选择设计对象,查看当前适用于这些对象的规则;二是在软件的不同位置选取某条规则,查看哪些对象属于其作用范围。
从对象的角度检查
对于当前设计中已放置的任何对象,都可以快速查看适用于该对象的设计规则信息。将光标置于对象上,单击鼠标右键,然后选择 Applicable Unary Rules 或 Applicable Binary Rules。
适用于所选对象的所有已定义设计规则都会列在 Applicable Unary Rules 或 Applicable Binary Rules 对话框中。
哪些规则适用于此对象? |
|
| Applicable Unary Rule | 选择此命令时,执行右键操作时光标下方的对象将作为目标对象,Applicable Unary Rules 对话框将显示适用于to this object的所有设计规则。请先将光标定位好,再选择此命令。 |
| Applicable Binary Rule | 选择此命令时,状态栏会提示您 Choose first object,完成后再提示 Choose second object。Applicable Binary Rules 对话框将显示适用于您单击的between the two objects的所有设计规则。 |
| Understanding the dialog | 对话框中列出的每条规则旁边都会显示勾号 或叉号 。勾号表示该规则在所有适用的同类型规则中具有最高优先级, 即当前实际应用的规则。同类型中优先级较低的规则旁边则会显示叉号,表示这些规则虽然适用,但由于优先级不是最高,因此当前并未应用。 |
从规则的角度检查
PCB 编辑器提供了两种从规则角度检查其目标对象的方式:使用 PCB Rules and Violations 面板,或在 PCB Rules and Constraint Editor 对话框中进行检查。
通过 PCB Rules And Violations 面板检查
PCB Rules And Violations 面板列出了当前为设计定义的所有规则。在面板顶部配置导航选项,然后单击,即可浏览任意一条当前已定义设计规则所针对的对象。

使用 PCB Rules And Violations 面板检查所选规则适用于哪些对象的示例。
在 PCB Rules and Violations 面板中操作 |
|
| Rule Classes section | 单击一次可仅显示所选类别的规则,或单击 [All Rules] 重置显示,在 Rules 区域中列出当前所有设计规则。 |
| Rules section | 对于为此电路板定义的规则,该区域会列出 [所有规则],或当前所选 Rule Class 的规则。 |
| Violations section | 运行 DRC 后,如果当前所选规则类别或规则存在违规,面板的第三个区域中将列出这些违规。
了解有关 检查和解决设计违规的更多信息。 |
| Controlling the response | 使用面板顶部的控件,定义单击列表中的规则时显示区域的响应方式。
|
通过“PCB 规则和约束编辑器”对话框进行检查
PCB Rules and Constraints Editor 对话框提供了查询测试功能,可让您快速查看某条规则适用于哪些对象。对于要测试的规则,单击对话框右上角的
按钮。随后将显示 Test Queries Result 对话框。
“测试查询结果”对话框 |
|
| Expression result | 表达式作用域内的对象数量。 |
| Objects applicable to rule | 根据表达式和当前规则类型确定的适用对象数量。 |
| Expression and rule priority (仅适用于一元规则) |
根据表达式、当前规则的类型和优先级确定的对象数量(即存在优先级更高的规则时,该规则作用域内的对象不会计入此值)。 |
| Rules with highest priorities(仅适用于一元规则) | 如果存在优先级更高的规则,对话框中将列出这些规则及其适用的对象数量(即其 Expression and rule priority 值)。 |
| Working in the dialog | 单击对话框右侧的链接,即可直接在设计空间中筛选出各情况下的适用对象。 使用 Mask 下拉列表,根据您希望在 PCB 文档中高亮显示受影响对象的方式,选择 Normal、Mask, 或 Dim 。 如果选中 Zoom ,PCB 文档还会缩放至受影响的元件。 |










)。
):
):
),选择要将规则添加到的规则集,选择规则类型,然后在 PCB Rules and Constraint Editor 中 Add 新规则。最后一步是为规则命名并配置优先级。
)。使用简单的作用范围选项设置规则作用范围时,系统仍会创建查询。通过在下拉列表中切换到
):
)来更改位号时,设计规则中引用 PCB 元件位号的查询也会随之更新。


)
)
)
)
)
)
)。
)。

)。在随后打开的 Export Rules to File 对话框中,您可以为
)。
)中单击
)中,为每个规则集选择上述选项之一。

)。在打开的 Add Rule Set dialog 中,在 New Rule Set Name 字段中为新规则集输入唯一名称,然后单击
)。
)。 在打开的 Duplicate 对话框的 New Rule Set Name 字段中为规则集副本输入名称,然后单击
)。
)。 要启用先前禁用的规则集,请右键单击其条目,然后从上下文菜单中选择 Enable Rule Set。
)。单击 PCB Rules and Constraint Editor 中的 Apply 按钮以应用更改。


)
)