使用 Constraint Manager 定义设计要求
Altium Essentials: Schematic Updating
This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.
概览
- 您将了解如何检查项目是否可以使用约束管理器,以及项目仍在使用旧版规则管理方式意味着什么。
- 您将了解约束管理器的组织方式、各视图中可定义的约束类型,以及如何从原理图或 PCB 编辑器中访问约束管理器。
- 您将掌握日常工作中的关键操作,包括保存更改和刷新数据、查看默认值与自定义值,以及在矩阵中定义间距。
约束管理器是一个基于文档、类似电子表格的用户界面,可用于查看、创建和管理 PCB 设计中使用的设计约束。
使用约束管理器具有以下优势,尤其适用于包含大量网络、类等对象的复杂设计:
-
在项目级别提供功能,使原理图设计和 PCB 设计环境能够以类似的方式访问设计约束管理功能。
-
将基于查询的规则作用范围定义改为按适用对象类型匹配,简化了约束规则的创建。
-
使用约束集加快约束定义过程。
-
根据设计对象的自然层级自动确定规则优先级。
-
使用基于文档的展示界面而非对话框,使原理图编辑器、PCB 编辑器及其相关功能保持可用且可访问。
访问约束管理器
在原理图编辑器或 PCB 编辑器的主菜单中选择 Design » Constraint Manager 命令,即可访问约束管理器。

从原理图编辑器访问约束管理器

从 PCB 编辑器访问约束管理器
约束类型
使用约束管理器左上角的按钮,可以切换视图以定义不同类型的约束。
使用约束管理器时的注意事项:
-
使用 Properties 面板中的 Units 选项(或主菜单中 Tools » Measurement Units 子菜单内的相应选项;快捷键:
Ctrl+Q),可切换约束管理器表格区域中数值的显示单位(mm 或 mils)。 -
使用 Properties 面板中的 Show Default Values 选项(或 View 主菜单中的相应选项,或表格区域右键菜单中 View Options 子菜单内的相应选项),可切换约束管理器中默认值(例如从网络类或差分对继承的值)的显示状态。显示默认值时,这些值在约束管理器表格区域中以灰色显示。自定义值则以白色显示。
-
在 Physical 或 Electrical 视图中,使用 Properties 面板中的 Show Only Object Custom Values 选项(或 View 主菜单中的相应选项,或表格区域右键菜单中 View Options 子菜单内的相应选项),可切换使用默认值的对象条目的显示状态(启用该选项时,实际上会过滤掉使用默认值的条目)。
-
支持从单元格复制数值以及向单元格粘贴数值——可使用右键菜单中 Copy/Paste Values 子菜单内的命令,或使用
Ctrl+C和Ctrl+V快捷键。 -
在约束管理器右上角的Search字段中输入搜索字符串,可筛选对象列表。单击Search栏右侧的
图标,可清除当前定义的搜索字符串。
-
选中某个约束/规则的单元格后,可使用约束管理器底部的 Comment 字段为该约束/规则添加注释, 例如,对其用途进行有意义的描述 。 当约束管理器下半部分允许为不同规则定义约束时,可以使用 Rule 下拉列表切换当前规则,为各个规则分别定义注释 。
-
必须在约束管理器中执行保存操作, 更改才会反映到设计中。为此,请使用约束管理器主菜单中的 File » Save(从原理图访问约束管理器时)或 File » Save to PCB (从 PCB 访问约束管理器时)命令,或使用
Ctrl+S快捷键。 -
从原理图端访问约束管理器并首次保存时,原理图约束文档 (
Constraints.xml) 会添加到项目中,并可通过 Projects 面板访问(位于 Settings/Constraints 子文件夹中 –
)。此外,从已连接的工作区更新项目后,文档中的约束数据会重新加载/刷新。
-
如果原理图设计或 PCB 层叠发生任何更改 (更改涉及层和/或阻抗配置),请单击约束管理器顶部的
按钮(从相应编辑器访问),以将这些更改反映到 约束管理器中。单击此按钮还可以将原理图中的指令导入约束管理器 – 了解更多。 如果约束管理器中存在尚未保存的更改,则会显示一个对话框,警告这些更改将丢失,并要求确认。
-
从原理图或 PCB 访问约束管理器时,可在 Clearances 和 Physical 视图的 Properties 面板的 Clearances Settings 区域中使用以下全局选项:
-
Ignore Pad to Pad clearances within a footprint – 使用此选项可将设置应用到所有已定义的间距规则。此选项允许您 指定是否忽略同一元件封装内焊盘之间的间距。
-
Apply zero Keepout clearance – 启用此选项时,会在禁止区域与设计中的所有其他图元之间应用默认间距规则,间距为“0”。请注意,此规则在约束管理器的任何视图中均不可见,因此无法修改。如果 已禁用,则遵循常规间距矩阵中的值。
-
-
您可以使用设计空间左上角的
或主菜单中的 Edit » Undo/Redo 快速撤销或重做在约束管理器中所做的更改。此功能适用于大多数区域,包括规则、作用范围和约束集。与软件的其他区域一样,只有在执行过操作(用于撤销)或撤销操作(用于重做)后,相应图标/命令才可用。
使用间距矩阵
默认情况下,约束管理器 Clearances 视图中的间距矩阵仅包含一个 All Net Classes 到 All Net Classes 条目,可用它定义设计中任意网络之间的默认间距值。使用矩阵左上角的 Add 控件(或右键单击间距矩阵中的任意单元格,并 使用上下文菜单中的 Add 命令),可显示一个弹出窗口,其中列出了当前定义的网络类和差分对类。选择一个或多个所需的 类(可使用 Shift+Click 或 Ctrl+Click 方式选择多个类条目),然后单击 Add 按钮。矩阵中将为每个选定的类添加一行和一列。
单击两个类的行列交叉处的单元格,将其选中,并在约束管理器下半部分显示详细间距设置,您可以在此定义不同对象之间以及不同层上的具体间距值。
使用下半部分的 Clearance 字段输入所需值,该值将应用于这对类的所有对象组合和所有层。也可以双击上半部分矩阵中的单元格,直接输入所需值。
在表格中输入特定对象对所需的间距值。请注意,间距矩阵中的单元格会显示表格中定义的最小值到最大值的范围。
使用 Clearances 视图的注意事项:
-
在间距矩阵的单元格或 Clearance 字段中输入值后,该值会自动应用到约束管理器下半部分表格区域的所有字段(选中间距矩阵中的单元格时显示)。只有需要根据对象类型定义间距时,才需要在表格区域中进行编辑。
-
在约束管理器下半部分的 详细间距设置中,您还可以为选定的类启用 Creepage 约束并定义爬电距离值 。此约束会检查目标信号之间沿电路板表面、经过非金属化孔和开槽以及绕过板边的爬电距离。
-
在约束管理器下半部分的 详细间距设置中,您还可以为选定的类启用 Z-Axis Clearance 约束并定义 Z 轴间距值 。此约束用于检查不同铜层上图元之间的最小间距。
-
要将特定对象对(例如 Track 与 Track 对)的间距值 重置为默认值(即为 All Net Classes 与 All Net Classes 条目定义的值),请在底部表格中选择其单元格,然后按
Delete键,或右键单击该单元格并从上下文菜单中选择 Reset to Default 命令。 -
要将间距矩阵中特定条目(例如某个网络类与另一个网络类的条目)的所有对象对的间距值 重置为默认值,请右键单击间距矩阵中相应的单元格,然后从上下文菜单中选择 Remove Rule 命令。
-
要从间距矩阵中移除某个类,请右键单击间距矩阵中该类所在行的任意单元格,然后从上下文菜单中选择 Remove Scope 命令。
按层配置间距
使用表格下方的选项卡,您还可以按层定义间距值。使用 Add 控件可为特定层添加选项卡。
筛选类
在 Clearances 视图中处理大量类时,您可以使用筛选/分组功能来提高效率。此功能允许创建类的筛选条件(或分组),以便在间距矩阵的特定子集之间切换并进行操作。
使用 Clearances 视图右上角的
按钮可打开弹出窗口,在其中创建、编辑、移除以及启用/禁用筛选器。
使用物理约束和电气约束
在约束管理器的 Physical 或 Electrical 视图中,单击网格区域中的单元格,即可在约束管理器下部显示相应规则的设置,您可以在此定义其约束值。
可在 Physical 视图中配置以下约束:
-
Width – 此约束指定放置在信号层上的走线宽度。
-
Diff Pair Gap – 此约束指定适用范围内差分对中网络之间的间距(或间隙)。
-
Clearance – 此约束指定适用范围内网络的对象与设计中其他网络的对象之间允许的最小间距。
-
Via Style – 此约束指定布线时可使用的过孔样式。您可以为过孔直径和孔径定义具体的最小值/最大值/首选值(Min/Max Preferred);也可以在从 PCB 访问约束管理器时,或在为特定层叠配置约束时(了解更多),使用电路板设计中可用的模板(Templates)。
-
Polygon Connect – 此约束指定元件焊盘或布线过孔与多边形覆铜之间的连接样式。
有关约束值的更多信息,请参阅 平面规则类型页面。
-
Same Net Clearance – 此约束指定属于同一网络的任意两个图元对象之间允许的最小间距(例如,同一网络中的过孔与焊盘之间,或同一网络中的两个走线段之间)。
-
Routing Neck Down – 此约束指定连续走线的最大允许长度,这些走线的宽度介于适用线宽约束所定义的 Min Width 和 Preferred Width 之间。
可在 Electrical 视图中配置以下约束:
-
Nets 选项卡:
-
Topology – 此约束指定在电路板上进行网络布线时采用的拓扑。网络拓扑是指引脚到引脚连接的排列方式或模式。
有关约束值的更多信息,请参阅 布线规则类型页面。
-
Impedance – 此约束指定允许的最小和最大网络阻抗。
-
All Layer Sets – 此约束指定允许用于布线的层。
-
Maximum Via Count – 此约束指定允许的最大过孔数量。
-
Min / Max Total Length – 此约束指定网络的最小和最大长度。
-
Max Stub Length – 此约束指定采用菊花链拓扑的网络所允许的最大残桩长度。
-
Max Via Stub Length – 残桩是过孔或焊盘孔壁超出其所连接的最后一个实际使用信号层的部分。系统将根据已启用的板侧 Layer 复选框,以及 Layer Stack Manager的 Back Drills 选项卡中定义的背钻层对,对目标网络中符合条件的过孔/焊盘进行背钻。
有关约束值的更多信息,请参阅 高速规则类型页面。
有关背钻的更多信息,请参阅 控深钻孔(背钻)页面。
-
-
Diff Pairs 选项卡:
-
Impedance – 此约束指定允许的最小和最大网络阻抗。
-
Gap – 此约束指定作用范围内差分对的网络之间的间距(或间隙)。
-
Width – 此约束指定差分对布线时允许使用的走线宽度。
-
Max Uncoupled Length – 此约束指定差分对内正、负网络之间允许的最大非耦合长度。
-
Tolerance – 此约束指定与差分对中最长网络进行比较时的长度容差。
-
Dynamic Phase Tolerance – 此约束指定差分对走线之间允许的相位失配,超过该值则需要补偿。
-
Matching Distance – 此约束指定超出容差后必须进行补偿的距离。
-
-
xSignals 选项卡:
-
Tolerance – 此约束指定将 xSignal 类中的每个 xSignal 与选作该类的 Matching Target 的 xSignal 进行比较时的长度容差。
-
使用 Physical 或 Electrical 视图时的注意事项:
-
约束管理器会自动定义这些视图中规则的优先级:优先级从 All (最低)到对象类,再到对象(最高)依次递增。
-
要移除某条规则定义的自定义约束值(即将该规则的值重置为默认值),请右键单击表格中对应的单元格,然后从上下文菜单中选择 Remove rule 命令。
-
要移除某个对象所有规则的自定义约束值,请右键单击表格中该对象所在行的任意单元格,然后从上下文菜单中选择 Remove rules from scope 命令。
-
在 Physical 和 Electrical 视图中,除预定义节点(例如 All Nets)外,所有节点默认均处于折叠状态。您可以使用右键菜单中的 Expand All 和 Collapse All 命令控制表格节点。
-
在 Physical 视图顶部表格中,为单个网络或 xNet(Min Width 或 Preferred Width)、差分对(Min Width、 Preferred Width 或 Preferred Diff Pair Gap)或网络/xNet/差分对类输入值时,该值将传递到下方约束区域中对应的宽度(Min Width/Preferred Width/Max Width)或间隙(Min Gap/Preferred Gap/Max Gap)字段。 请注意,只有对象未定义该特定规则时,输入的值才会传递到其他字段。
-
在 Physical 视图中定义最小、最大和首选布线宽度及差分对间隙值时,视图底部的 Values by Layer 表会使用红色文字突出显示无效输入。例如,当您指定的最小约束值大于最大约束值时,就会出现这种情况。 视图顶部表格中的宽度/间隙值也会变为红色,进一步突出显示错误的约束定义。
按层配置约束值
从原理图访问约束管理器时,您可以为所选层叠中的各层配置宽度和差分对布线约束。
使用约束管理器顶部的下拉列表,选择设计项目中某个特定 PCB 文档的条目。如果所选 PCB 包含多个层叠,则在选中相应规则后,可以使用约束管理器下方的选项卡选择需要配置约束的层叠。您还可以使用所选的阻抗配置文件(如果已在所选 PCB 的层叠中定义)。
定义差分对
可在约束管理器的 Physical 视图中,或 Electrical 视图的 Diff Pairs 选项卡中创建差分对。要让约束管理器根据网络创建差分对,待配对的网络必须采用一致的命名规则(即具有共同的名称主体,后接一致的正/负后缀,例如 TX0_P 和 TX0_N)。
右键单击 Physical 视图或 Electrical 视图的 Diff Pairs 选项卡中表格区域的任意位置,然后从上下文菜单中选择 Differential Pairs » Create Differential Pairs From Nets 命令,打开 Create Differential Pairs From Nets 对话框,以定义差分对创建选项。 对话框顶部的筛选器可让您根据网络所属的网络类,以及用于区分待配对正、负网络的特定标识(例如 _P 和 _N),快速定位这些网络。您还可以定义要添加到所创建差分对对象名称中的前缀,并确定将其添加到哪个差分对类。
对于每个差分对对象,对话框都会列出其组成的正、负网络。默认情况下,所有候选差分对对象均被选中以供创建;您可以清除对应的 Create 复选框,以排除个别对象。
按需设置所有选项后,单击
按钮,即可创建差分对对象,并将其显示在约束管理器的 Physical 视图中,其组成网络列在各自条目下方。
也可以根据 xNets 创建差分对。使用 Create Differential Pairs From Nets 对话框顶部的下拉列表,选择 All xNets 或某个特定的 xNet 类。按需配置对话框中的其他选项后,单击
按钮,即可创建相应的差分对。
要移除差分对,请右键单击其条目,然后从上下文菜单中选择 Differential Pairs » Remove Differential Pair 命令。 您也可以使用 Ctrl+Click、Shift+Click 或 Click, Hold&Drag 方式选择多个差分对条目,右键单击所选条目,然后从上下文菜单中选择 Differential Pairs » Remove Differential Pair 命令,以移除多个差分对。
Electrical 视图的 Diff Pairs 选项卡也可用于显式管理差分对。此选项卡以层级列表形式显示设计中的差分对。选择差分对或 差分对类的单元格,即可在 约束管理器的下部显示其约束。
定义 xNet
从 源元件到目标元件、经过一个或多个串联元件的路径 可定义为 xNet。
在 “项目选项”对话框的“选项”选项卡的 xNets Creation 区域中,可以定义以逗号分隔的元件位号前缀列表,分别指定可用作源元件或目标元件的元件(Sources/Destinations)以及串联 元件(Discretes)。

Project Options 对话框的 Options 选项卡中的 xNets Creation 区域

可在约束管理器中定义为 xNet 的路径示例 (根据上面所示的 xNet 创建设置)
在约束管理器的 Physical 或 Electrical 视图中 (从原理图或 PCB 访问时均适用),右键单击要包含在新 xNet 中的网络,然后从上下文菜单中选择 xNets » Create xNets From Selected Nets 命令。系统将创建一个新的 xNet,并将其显示在约束管理器的 Physical 或 Electrical 视图中,其组成网络列在该条目下。
xNet 的生成也支持具有两个以上引脚的串联元件。支持以下串联元件:
-
Dual-inline component with an even number of pins – 可根据连接到元件第一个和最后一个引脚的网络生成 xNet,然后根据连接到第二个和 倒数第二个引脚的网络生成 xNet,依此类推。(
)
-
Single-inline component with an even number of pins – 可根据连接到元件第一个和第二个引脚的网络生成 xNet,然后根据连接到第三个和 第四个引脚的网络生成 xNet,依此类推。(
)请注意,元件必须包含名为 PinPairsConfiguration、值为SIP的参数; 否则,将按照双列直插元件的方式生成 xNet。 -
Component with an odd number of pins – 根据连接到元件所有引脚的网络生成一个 xNet。(
)
要移除 xNet,请右键单击其条目,然后从上下文菜单中选择 xNets » Remove xNet 命令。 您也可以使用 Ctrl+Click、Shift+Click 或 Click, Hold&Drag 方式选择多个 xNet 条目,右键单击所选条目,然后从上下文菜单中选择 xNets » Remove xNet 命令,以移除多个 xNet。
定义 xSignal
您还可以在约束管理器中定义 xSignals ——即 PCB 中两个节点之间的用户自定义信号路径。在约束管理器的 Electrical 视图中,选择网络或 xNet 的 Topology 列中的单元格,从约束管理器下部的下拉列表中选择 Custom,然后使用提供的控件定义自定义拓扑并选择相应的 xSignal。
下面显示了一个为 xNet 定义 xSignal 的示例,随后将对其进行说明和演示。
可以使用约束管理器 下部的 拓扑图定义自定义拓扑。使用图形区域中的右键菜单添加和移除节点,将节点类型从 Source 更改为 Destination 或反向更改,并对节点执行 Click, Hold&Drag 操作以定义拓扑。
建议的 xSignal 列表 (使用 <SourceNetName> (<SourcePinDesignator> → <DestinationPinDesignator>) 命名规则命名)显示在网格区域右侧。该列表分为两组: 从源到目标的 xSignal(S-T)和 从一个目标到另一个目标的 xSignal(T-T)。使用组或单个 xSignal 的复选框 选择/取消选择要创建的 xSignal。选中的 xSignal 将显示在 Electrical 视图的 xSignals 选项卡上。
使用拓扑图创建 xSignal 的示例
对于已创建的 xSignal 类 (详情请参阅下文的 定义类 部分),可以定义 Tolerance 约束,并可将该类中的某个 xSignal 选为 Matching Length。从 PCB 端访问约束管理器时,还可使用 Actual Value 和 Margin 列。
在 PCB 文档中,可以通过处于 xSignals 模式的 PCB 面板浏览已定义的 xSignal。同时,还会创建相应的 From-To,并可通过处于 From-To Editor 模式的 PCB 面板进行浏览。
定义类
约束管理器允许您定义网络、差分对、xNet 和 xSignal 的类。
-
要将约束管理器的 Physical 或 Electrical 视图中的对象 添加到现有类中,请使用
Ctrl+Click、Shift+Click或Click, Hold&Drag方式选择多个对象条目,然后右键单击所选条目,并从右键菜单的 Classes » Add Selected to Class 子菜单中选择所需的类。当类的数量超过 30 个时,将显示 Classes » Add Selected to Class » Existing Class 命令,而不是类列表。使用此命令可打开一个对话框,在其中选择要将所选对象添加到的现有类。
-
要为约束管理器的 Physical 或 Electrical 视图中列出的对象创建新类,请选择这些对象,然后右键单击所选条目,并从右键菜单中选择 Classes » Add Selected to Class » New Class 命令,以打开 Add Class 对话框。定义类的 Name (必须唯一且不能为空)以及类成员集合。打开对话框之前所选的对象将已包含在 Member 列表中。如有需要,可使用箭头按钮在 Non-Members 和 Member 列表之间移动对象条目,进一步配置类成员集合。
-
或者,右键单击表格区域,在 Clearances 或 Electrical 视图中选择 Classes » Add Class 命令,或从(用于添加网络类)或 Classes » Add Class 子菜单中选择命令,以打开 Add Class 对话框。以这种方式打开对话框时, Member 列表最初为空。
-
要将对象从其当前所属的类中移除,请选择这些对象,然后右键单击所选条目,并从右键菜单中选择 Classes » Remove Selected from Class 命令。
-
要编辑类,请右键单击其条目,并从右键菜单中选择 Classes » Edit Class 命令,以打开 Edit Class 对话框,您可以在其中编辑类的名称和成员。
-
要删除现有类,请右键单击其条目,并从右键菜单中选择 Classes » Remove Class 命令。您也可以使用
Ctrl+Click、Shift+Click或Click, Hold&Drag方式选择多个类的条目,右键单击所选条目,再从右键菜单中选择 Classes » Remove Class 命令,以删除多个类。
或者,您可以使用 Object Class Explorer 对话框添加、编辑和删除类。右键单击表格区域,并从右键菜单中选择 Classes » Class Explorer 命令,以打开该对话框。
对话框左侧的文件夹树窗格列出了支持的对象类类型,以及各类型的现有对象类。
- 单击根 Object Classes 文件夹,可在对话框的主编辑区域查看汇总列表,其中列出了所有对象类类型下已定义的全部具体类。
- 单击某个对象类类型的子文件夹,可查看该类型下已定义的全部具体类的汇总列表。
- 单击某个具体类的条目(或在汇总列表中双击其条目),可访问用于管理该类对象成员的控件。
要在 Object Class Explorer 对话框中添加新的用户自定义类,请在要创建的类所属类别中右键单击,并从右键菜单中选择 Add Class。要重命名或删除用户自定义类,请右键单击其名称,并分别选择 Rename Class 或 Delete Class。
约束集
为加快对象约束的定义过程,约束管理器允许您将一组约束保存为约束集,然后将该约束集应用于对象。
要将当前为某个对象定义的一组约束保存为约束集,请右键单击该对象的单元格,并从右键菜单中选择 Save as Constraint Set 命令。在 New Constraint Set 弹出窗口中,输入所需的约束集名称 (必须唯一且不能为空),然后单击 Create。
新创建的约束集将应用于创建该约束集时所用的对象。要将约束集应用于其他对象,请右键单击其单元格,并从右键菜单的 Select Constraint Set 子菜单中选择所需的约束集。应用了约束集的单元格会在左上角显示一个标记(例如
),并且在 Physical 或 Electrical 视图中,所应用约束集的名称将显示在 Constraint Set 列中。
要编辑现有约束集的值,请选择一个已应用该约束集的对象,然后单击
按钮。根据需要更改约束值,然后在弹出的窗口中单击 Save 按钮以保存更改。这些更改将应用于当前选用了该约束集的所有对象。
当前定义的 约束集列在 Properties 面板的 Constraint Sets 区域中。单击某个约束集的条目可显示其约束值。在 Properties 面板中选中某个约束集后,可单击 Constraint Sets 区域底部的
按钮将其删除。选用了已删除约束集的对象将保留该约束集在删除前所应用的约束值。
从原理图导入指令
您可以将原理图源文档上放置并定义的 参数集和 差分对设计指令中的网络类、差分对类、差分对及约束导入 约束管理器。 为此,从原理图端访问约束管理器时,单击
按钮。 Refresh Constraint Manager 对话框将显示从原理图导入约束管理器的内容摘要,单击对话框中的
按钮即可完成导入。
约束管理器中的约束与原理图上所放置指令中定义的对应约束之间,会显示同步状态指示。
-
如果原理图中的对象上放置了参数集或差分对指令,且该指令的约束值与约束管理器中为同一对象定义的值不同,则从原理图访问约束管理器时,这些值会在约束管理器的 Physical 或 Electrical 视图中,以对应单元格左侧的橙色条标记(例如
)。
-
当约束管理器与指令中的约束值 保持同步时,指示会变为绿色条(例如
)。
从指令导入的网络类、差分对和差分对类之间,也会显示同步状态指示。系统会检测更改(新增/删除的元素),并在对应对象名称左侧以橙色条标记需要同步的不一致之处(例如
)。已同步状态则以绿色条指示(例如
)。
将指令导入约束管理器的注意事项:
-
通过约束管理器为网络/网络类/差分对/差分对类定义的任何现有约束 均具有优先权,并会在导入时保留。因此,如果在导入后于约束管理器中编辑了已与指令同步的约束值,则后续再次导入时,该值将不会同步。
-
通过将指令中的数据导入约束管理器来同步数据,并在约束管理器中保存更改后:
-
已导入的指令在设计空间中以蓝色和略有不同的符号(
)加以区分。
-
可以使用 Properties 面板的 Parameters 区域顶部的 Constraint Manager 按钮,过滤掉已导入约束管理器的类和规则条目。
-
对于附加到单根导线的参数集指令,可以在原理图图纸上该指令附近显示约束管理器中的关联数据(网络/差分对类名称和规则设置)。 对于附加到覆盖区且包含已定义网络类的参数集指令,与约束管理器同步或导入到约束管理器后,还可以切换设计空间中网络类指令信息的显示状态。 对于附加到覆盖区的差分对指令,将指令与约束管理器同步或导入到约束管理器后,可以切换设计空间中差分对类及关联规则信息的显示状态。选中指令后,使用 Properties 面板中对应数据条目左侧的可见性控件(
)进行操作。
-
对于相应指令,Properties 面板中用于新增或删除现有网络类、差分对类或 元件类的控件将变为灰色,不可用。
-
对于相应指令,Properties 面板中用于新增规则或编辑/删除现有规则的控件仍然可用。此外,您还可以编辑 网络类的名称。 要将已导入指令的规则和/或网络类名称更改应用到约束管理器中的数据,请在从原理图端访问约束管理器时单击
按钮。
-
-
对于添加到参数集指令中、但未显示在 Physical 和 Electrical 视图中的规则,从 PCB 访问约束管理器时,这些规则将自动创建为高级规则,并显示在 所有规则视图中。高级规则将在完成指令导入及随后从原理图到 PCB 的 ECO后创建。
-
要允许将使用指令定义的网络类导入约束管理器,必须在 项目选项对话框的类生成选项卡中启用 Generate Net Classes 选项。请注意,如果已将网络类导入约束管理器,随后又禁用了 Generate Net Classes 选项,则 后续导入约束管理器时,系统将建议删除 已导入的网络类。
修改从只读文档导入的指令
如果在 Preferences 对话框的 数据管理 - 器件图纸 页面上启用了(勾选了) Make Device Sheets In Projects Read-Only 选项,则无法修改从只读文档(例如器件图纸和受管图纸)导入的指令。
禁用(取消勾选)该选项后,即可修改这些指令。 在启用该选项的情况下导入指令后,相应规则会在约束管理器中以蓝色高亮显示。
导入和导出约束及约束集
您可以在设计之间导入和导出约束及约束集。要使用 此功能,请在约束管理器的 Clearances、 Physical, 或 Electrical 视图中右键单击,然后选择 Import 或 Export。
选择 Import 后,将打开标准的 File Explorer 对话框,您可以在其中选择要导入设计的约束/约束集 (*.CstrDot )。随后打开 Constraints to Import 对话框,您可以在其中选择要导入当前设计的约束/约束集。所选约束/约束集将应用于目标设计中的对应对象。
Exporting Constraints and Constraint Sets
在 Clearances 视图中选择一个或多个单元格,或在 Physical 或 Electrical 视图中选择一行或多行,然后选择 Export,即可打开 Constraints to Export 对话框。其表格中会列出执行该命令前所选所有对象的约束和约束集。 使用复选框选择要导出的约束/约束集(默认情况下,对话框会选中与当前视图相关的约束)。单击 Export items 按钮后,将打开标准的 File Explorer 对话框,您可以在其中命名并保存约束/约束集。导出文件的扩展名为 *.CstrDot ,之后可将其导入另一个设计。
在 PCB 端使用所有规则
从 PCB 编辑器访问约束管理器时,可以使用 All Rules 视图,其中列出了 PCB 设计中的所有规则。您可以在此创建高级规则,在其匹配范围中使用更复杂的查询表达式。
创建新的高级规则
要在约束管理器的 All Rules 视图中创建新的高级规则,请从右键菜单中选择 Add Advanced Rule (或者,在表格区域未选中任何规则时,使用约束管理器下方的
按钮),然后在列表格或下方的图形表示区域中输入基于查询的匹配范围和约束参数。
管理范围库
为简化重复创建高级规则的过程,Constraints Manager 允许您将基于查询的对象匹配范围存储在范围库中。该库通过 Scopes Library 进行管理。 对话框,可通过单击 Properties 面板的 Scopes Library 区域中的 Edit Library 按钮打开。该库显示在 Properties 面板中,可在此将自定义作用域导入或导出为 XML 文件,然后使用该文件填充另一套 Altium Designer 安装中的作用域库。
要将作用域导出到库中或从库中导入作用域,请使用约束管理器下部 Object Match / Second Object Match 字段旁
按钮菜单中的命令。将库中的作用域应用于规则后,作用域名称将显示在网格区域的 Object Match / Second Object Match 列中以及 Object Match / Second Object Match 字段上方。您可以使用该字段的
菜单,将作用域恢复为基于查询的格式 (Detach Scope)。
启用/禁用规则
您可以启用/禁用 All Rules 视图中列出的基本规则和高级规则。Enabled 列反映规则的状态: True (已启用)或 False (已禁用)。双击该列中的单元格可切换特定规则的状态。已禁用的基本规则所对应的单元格标记为 (Disabled),并在 Physical 和 Electrical 视图中灰显。
也可以使用 Rule Class 树中相应条目的右键快捷菜单命令,切换特定类型、特定类别或所有高级规则的启用状态。
|
右键单击 Rule Class 树中的规则类型条目,可启用/禁用此类型的高级规则。 右键单击 Rule Class 树中的规则类别条目,可启用/禁用此类别中的高级规则。 右键单击 Rule Class 标题,可启用/禁用所有高级规则。 |
导入和导出规则
您可以在 All Rules 视图中导入和导出规则(高级规则和/或基本规则)。
要导出规则,请使用 Ctrl+Click、Shift+Click 或 Click, Hold&Drag 在列表中选择多个规则,然后右键单击并选择 Export Selected Rules (x) 命令(x 表示所选规则的数量)。您也可以使用 Rule Class 树中相应条目的右键快捷菜单命令来导出规则:
-
右键单击树中的规则类型条目,然后选择 Export <RuleType> Rules 命令,以导出此规则类型的规则。
-
右键单击树中的规则类别条目,然后选择 Export <RuleCategory> Rules 命令,以导出此规则类别的规则。
-
右键单击树的 Rule Class 标题,然后选择 Export All Rules 命令,以导出所有规则。
选择 Export 命令后,将打开 Constraints to Export 对话框,您可以在其中选择要导出到 *.CstrDot 文件的规则,以便稍后将其导入其他工程。单击 Export x Items 按钮(x 表示对话框中所选项目的数量)后,将打开标准的 File Explorer 对话框,您可以在其中指定文件的名称和位置。规则将导出到 *.CstrDot 文件中,以便稍后导入其他设计。
|
右键单击一个或多个所选规则,可将其导出。 右键单击 Rule Class 树中的规则类型条目,可导出此类型的规则。 右键单击 Rule Class 树中的规则类别条目,可导出此类别中的规则。 右键单击 Rule Class 标题,可导出所有规则。 |
要导入规则,请在 All Rules 视图的列表区域或 Rule Class 树中右键单击,然后选择 Import Rules 命令。此时将打开标准的 File Explorer 窗口,在其中选择所需的 *.CstrDot 文件,然后单击 Open。随后将打开 Constraints to Import 对话框,您可以在其中选择要导入当前设计的规则。导入时,相关联的自定义作用域将自动应用。
删除高级规则
要删除当前选中的高级规则,请右键单击该规则并选择 Remove Advanced Rule。要一次删除多个高级规则,请使用 Ctrl+Click、 Shift+Click 或 Click, Hold&Drag 选择多个规则,然后右键单击并选择 Remove Advance Rules (x)。“x”表示将被移除的规则数量。您也可以使用 Rule Class 树中相应条目的右键快捷菜单命令,移除特定类型、特定类别或所有高级规则。
|
右键单击多个所选规则,可将其移除。 右键单击 Rule Class 树中的规则类型条目,可移除此类型的高级规则。 右键单击 Rule Class 树中的规则类别条目,可移除此类别中的高级规则。 右键单击 Rule Class 标题,可移除所有高级规则。 |
在上述每种情况下,规则都会立即删除,无需任何确认。
交叉探查
约束管理器包含交叉探查功能,可在相应文档中通过高亮显示来呈现关联对象。要交叉探查任意对象,请右键单击其条目,然后从快捷菜单中选择 Cross Probe 选项,或从高级规则的
菜单中选择 Cross Probe。
在 Properties 面板中设置 Cross Probe View Settings,以配置交叉探查设置。
使用原理图/PCB 编辑器的 Clear Filter 选项(在设计空间中右键单击并选择 Clear Filter,快捷键:Shift+C)可重置交叉探查高亮显示。
请参阅 交叉探查与选择 页面,了解有关 Altium Designer 中交叉探查的更多信息。
交叉选择
交叉选择功能支持动态、双向的对象选择。启用交叉选择模式后(使用 Cross Select Mode 命令(位于约束管理器、原理图或 PCB 编辑器的 Tools 主菜单中),在约束管理器中选中的对象也会在原理图和 PCB 文档中被选中,反之亦然。
有关 Altium Designer 中交叉选择的更多信息,请参阅 交叉探测与选择 页面。
在原理图与 PCB 之间传递约束
在约束管理器中应用的更改通过工程变更单 (ECO) 流程在原理图与 PCB 设计之间传递。 选择相应命令以更新另一端的约束。
-
要将更改从原理图传递到 PCB – 请从原理图编辑器的主菜单中选择 Design » Update PCB Document <PCBDocumentName> 命令。
-
要将更改(在约束管理器的 Clearances、Physical 和/或 Electrical 视图中所做的更改)从 PCB 传递到原理图 – 请从 PCB 编辑器的主菜单中选择 Design » Update Schematics in <PCBProjectName> 命令。
使用随后出现的 Engineering Change Order 对话框查看、验证并执行更改。
有关更多信息,请参阅 保持原理图与 PCB 同步 页面。
从设计规则迁移到约束管理器
如果 PCB 项目使用旧版规则管理系统(即 PCB Rules and Constraints Editor 对话框),则可以执行一次性的单向迁移,将其迁移到约束管理器。
使用 PCB 和原理图编辑器主菜单中的 Design » Migrate Project to Constraint Manager Flow 命令。随后将打开 Migration Required 对话框,警告您即将执行迁移,并且在单击
按钮后将无法撤销。
PCB 设计规则和原理图指令都会转换为约束管理器中适用的对应约束。迁移成功完成后,将打开约束管理器(其上下文取决于执行迁移时处于活动状态的编辑器)。
)。




)
)

)
)
)。

















)。






),从约束管理器中移除不匹配的对象。


)中输入所需的优先级(










)。
)。
)。
