保持原理图与 PCB 同步
Altium Essentials: Transfer to PCB
This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.
概览
- 了解双向比较与直接更新工作流程之间的区别,以及各自的适用场景。
- 了解 Altium Designer 可以在原理图与 PCB 之间同步哪些内容,包括元件、连接关系、类和某些设计规则。
- 了解比较器和 ECO 生成设置等项目选项如何影响同步过程,以及可以应用哪些变更。
从原理图到 PCB 的设计过程中,最常见的任务就是保持原理图与 PCB 一致或同步。无论是首次将已绘制的设计传输到新的 PCB,还是在原理图端或 PCB 端修改现有设计,都需要一种方法来保持两端同步。Altium Designer 提供了强大的设计同步功能,简化了保持设计同步的工作,让设计人员能够专注于设计过程中的创造性工作。
设计同步直接在原理图编辑器与 PCB 编辑器之间进行,不使用类似网表的中间文档。软件使用比较器引擎比较设计的各个方面,并以差异列表的形式详细列出结果。设计人员决定应修改哪一端来解决差异,随后系统会创建一组工程变更单(ECO)。执行这些工程变更单后,设计的两端就会恢复同步。
可以同步哪些内容?
同步过程可确保原理图中的元件和连接数据与 PCB 中的元件和连接数据一致。除了元件和连接数据,同步过程还可确保其他设计约束(例如网络类、元件类和设计规则)保持同步。
配置比较器选项
Dialog page: PCB 项目选项,“比较器”选项卡
具体比较哪些 what 原理图和 PCB 数据,可在 Options for PCB Project 对话框的比较器选项卡中配置。选择 Project » Project Options 以打开该对话框。

比较器引擎遵循 Options for Project 对话框中 Comparator 选项卡定义的设置。
对话框的主区域包含一长列比较类型,例如 Different Designators 和 Changed Net Name,共分为 5 个类别。右侧的 Mode 列为每种类型提供了一个下拉列表,可在其中选择比较模式,例如 Find Differences 或 Ignore Differences。文本类型的比较还提供第三个选项,允许比较时不区分大小写。
新项目默认对每种比较类型都查找差异,请根据项目需要设置这些选项。
对话框底部提供了用于设置 Object Matching Criteria 的选项。匹配是一个复杂的多轮处理过程,并不依赖简单的字符串精确匹配。有关更多信息,请参阅匹配网络和类 部分。
请注意对话框底部的 Ignore Rules Defined in the PCB Only 选项,启用此选项可在比较过程中排除您在 PCB 中定义的规则。
同步网络类和元件类
Dialog page: PCB 项目选项,“类生成”选项卡
除了元件和连接数据,在执行 Design » Update PCB 时,还可以生成并同步类和设计规则。
同步设计规则
可以使用参数集对象在原理图中定义设计规则。选中参数集对象后,Properties 面板或模态对话框中会显示 Rules 区域。单击 Add 下拉列表可添加设计规则。该规则将应用于参数集对象所接触的网络、总线、线束或覆盖区域下的对象。
在下图中,线宽约束设计规则被应用于 USB_data 网络类(该网络类也在此参数集中定义,位于 Parameters 下拉列表的 Classes 区域中)。

参数集用于为原理图覆盖区域对象下的网络定义网络类和设计规则。请注意,所需的计量单位在“编辑 PCB 规则”对话框底部配置。
在原理图中添加设计规则
- 将参数集附加到网络、总线、线束或覆盖区域(如有需要,在参数集中添加网络类定义)。
- Add 在参数集中添加规则定义。这将打开 Choose Design Rule Type 对话框,如上图所示。
- 选择所需的 Rule Type。
- 单击 OK 按钮以打开 Edit PCB Rule 对话框。
- 根据需要配置 PCB 规则要求。请注意,此 PCB 规则所需的计量单位在对话框底部选择。
在上图和下图中,设计规则均定义在附加到覆盖区域的参数集对象中。在参数集对象中包含类定义后,还会创建一个 PCB 网络类,并且由于存在该类定义,PCB 规则的作用范围将设为 InNetClass('<PCB_NetClassName >')。
在下图中,您会注意到参数集对象显示为差分对指令。这是一种特殊的参数集对象,使用 Place » Directives » Differential Pair 命令放置。

差分对指令用于定义网络类和设计规则,随后将规则应用于目标差分对。
配置 ECO 生成选项
Options for Project 对话框还包含一个 ECO 生成选项卡。此选项卡用于定义哪些设计修改可以生成 ECO。通常,这些选项全部启用,而通过该对话框中 比较器选项卡上的选项,来配置哪些设计变更需要在原理图与 PCB 之间同步。
查找差异
设计同步功能能够检测并解决两个方向上的差异,即从原理图到 PCB,或从 PCB 回到原理图。
软件能够同时对两侧应用变更,以解决这些差异。例如,电子设计工程师更改了一个电容的值,而 PCB 设计工程师更改了同一个电容的封装。这两个差异可以在一次更新过程中解决:将注释变更作为从原理图到 PCB 的更新应用,将封装变更作为从 PCB 到原理图的更新应用。
当比较器引擎将原理图工程与 PCB 进行比较时,会生成完整的差异列表—— 在此阶段,不会预先认定必须更改哪一侧才能使两者恢复同步。
可以在 Differences between 对话框中查看差异列表。
Differences between 对话框的选项与控件
该对话框主要分为三个区域: Differences、 Update 和 Change Order。
差异
对话框的此区域列出了比较器在所选文档之间发现的所有差异。每项差异都列在其所在文档对应的列中。差异按比较类型分组,这些类型在 Project Options 对话框的 比较器选项卡中列出并启用。分组级别的条目显示该类型的差异数量。
双击某个条目,可交叉探查到相应源文档中的对象。
更新
使用对话框的此区域指定应更新哪个文档,以消除差异。默认情况下,所有 Decision 条目的初始处理决定均为 No Change 。
每项差异的更新决定都可以单独设置:单击 Decision 列中的相应条目,然后在随后出现的 ECO 决策对话框中选择所需的更新操作。只需选择更新方向(要更新哪个被比较的文档),或者选择完全 No Updates。
变更单
对于您决定处理的每项差异,对话框的此区域会列出要执行的操作、操作影响的对象,以及执行操作的目标文档。这些信息将用于编制后续 ECO,以实施更新。此区域通常会列出以下操作:
- Remove — 当更新方向指向包含导致差异的对象的文档时,该对象将被移除。
- Add — 当更新方向指向不包含导致差异的对象的文档时,该对象将被添加。
- Update — 当两个文档都包含同一个对象,但该对象在某些方面存在差异时,要更改哪个文档中的对象取决于所选方向。
右键菜单
- Create Change Order — 用于创建工程变更单(ECO)。
- Generate Report — 用于为比较器发现的差异生成报告。您作出的更新决定及相应操作将包含在生成的 ECO 中。报告将加载到 Report Preview 对话框中。可使用此对话框浏览报告,然后将其导出为支持的各种格式之一,或直接打印。
- << Update All in — 用于将所有差异的更新方向设置为左侧文档(适用时)。
- Update All in >> — 用于将所有差异的更新方向设置为右侧文档(适用时)。
- Reverse Direction For All — 用于快速反转所有差异的更新方向(适用时)。如果某项差异的方向无法有效更改,则该条目将设置为 No Change。
- Set No Action For All — 用于快速将所有差异的更新决定设置为 No Change。
- << Update Same Kind in — 用于将与当前选中差异属于同一比较类型的所有差异的更新方向设置为左侧文档(适用时)。
- Update Same Kind in >> - 用于将与当前聚焦差异具有相同比较类型的所有差异的更新方向 设置为右侧文档(如适用)。
- Reverse Direction For Same Kind - 用于快速反转与当前聚焦差异具有相同比较类型的所有差异的更新方向 (如适用)。如果某个差异的方向无法更改,该条目将设置为 No Change。
- Set No Action For Same Kind - 用于将与当前聚焦差异具有相同比较类型的所有差异的更新方向 快速设置为 No Change。
- << Update Selected in - 用于将所有选定差异的更新方向设置为左侧文档(如适用)。
- Update Selected in >> - 用于将所有选定差异的更新方向设置为右侧文档(如适用)。
- Reverse Direction For Selected - 用于快速反转所有选定差异的更新方向(如适用)。如果某个差异的方向无法更改,该条目将设置为 No Change。
- Set No Action For Selected - 用于将所有选定差异的更新决策快速设置为 No Change。
- Invert Selection - 用于 选中列表中当前未选中的所有差异 ,或取消选中当前已选中的差异。
其他控件
对话框底部提供以下按钮:
- Create Engineering Change Order - 单击此按钮可生成 ECO。随后将显示 Engineering Change Order 对话框 ,您可以在其中验证并执行更新 ,以同步文档。
- Report Differences - 单击此按钮可为比较器发现的差异生成报告。您指定的更新决策和操作将包含在生成的 ECO 中。报告将加载到 Report Preview 对话框中。使用此对话框浏览报告 ,然后将其导出为受支持的多种格式之一 ,或直接打印。
- Explore Differences - 单击此按钮可在生成 ECO 之前,进一步检查比较器发现的差异 。Differences between 对话框将关闭,您将返回主工作区 ,同时打开 差异面板。该面板将包含比较器列出的所有差异,并采用相同的分类。使用此面板可交叉探查到差异所涉及的对象 ,并在其所属文档中定位该对象。
要打开 Difference between 对话框并查看差异列表:
-
要打开下图所示的 Choose Documents to Compare 对话框,请运行 Project » Show Differences 命令,或 在 Projects 面板中右键单击所需项目(或其某个源文档)的条目,然后从右键菜单中选择 Show Differences 命令。Choose Documents to Compare 对话框用于选择要比较的两个文档或文档集 ,通常是将原理图项目与 PCB 进行比较。您也可以勾选 Advanced Mode 选项,使用此对话框比较任意两个文档。例如,您可以将网表与 PCB 进行比较,或将一个 PCB 与另一个 PCB 进行比较。
通常,无论处于基本模式还是高级模式,对话框的默认设置都能满足大多数设计比较需求,即比较源文档与目标 PCB 设计,以实现同步。不过,该对话框也允许比较其他文档;如果您需要加载项目的不同版本,并比较对应源文档之间的差异,这一功能会很有用。

选择要与原理图项目进行比较的 PCB。 - 在对话框的主体区域选择 PCB,然后单击 OK,打开如下所示的 Difference between 对话框。 如果 PCB 文档当前已与源文档同步,则会出现一个对话框,提示未检测到差异。
Differences between 对话框将打开。同步器是双向的。这意味着您可以在同一个 ECO 中指定对两个文档的更新。为了同步所比较的文档,需要针对每个差异确定是否执行操作,以及更改的方向,即指定应更新哪个文档以消除该差异。因此,下一步是为每个差异指定更新 方向:
- 对于单个差异,单击 Update 列以显示方向选择器,如下图所示。
- 对于多个同类差异,右键单击一个标题(例如“封装不同”),然后选择所需的 Update Same Kind 命令。
- 对于所有差异,右键单击对话框中的任意位置,然后选择所需的 Update All 命令。

必须为每个差异设置更新方向,才能创建用于解决该差异的 ECO。
单击 Explore Differences 按钮,访问 Differences 面板,并按照下方 使用差异面板查看设计更改一节中的说明查看差异。
单击 Report Differences 可 设置并打印或导出报告,报告内容包括比较器发现的差异、指定的更新决策,以及将包含在生成的 ECO 中的操作。
指定更新方向后,单击 Create Engineering Change Order 按钮打开 Engineering Change Order 对话框。有关该对话框的说明,请参见下方的 解决差异 - 应用 ECO一节。
使用差异面板查看设计更改

Differences 面板以层次结构视图显示文档差异。
概述
Differences 面板用于显示软件内置的差异比较器 在比较设计文档时发现的逻辑或物理差异(例如,将项目的源文档层次结构(原理图)与 PCB 设计文档进行比较)。在决定创建用于同步项目文档的工程变更单(ECO)之前,您可以通过此面板交互式地查看这些差异。
访问面板
要打开 Differences 面板:
- 从主菜单中选择 View » Panels » Differences 。
- 单击设计工作区右下角的 Panels 按钮,然后单击 Differences。
显示差异
Differences 面板的使用方式取决于您的目标是:
- 通过检测项目层次结构中的逻辑差异,分析整个项目在内容和结构方面的完整性。
- 通过检测图形(物理)差异,比较同一原理图或 PCB 文档的两个版本。
显示逻辑差异
项目文档的逻辑差异比较在 Choose Documents To Compare 对话框中进行。在 Projects 面板 中右键单击项目(或项目文档),然后从相应的右键菜单中选择 Show Differences,即可打开该对话框。

右键单击项目名称,然后选择 Show Differences,以打开 Choose Documents To Compare 对话框。
通常,会将 PCB 文档与其所属项目的源文档层次结构进行比较,以检测原理图设计内容与 PCB 设计内容之间的逻辑差异。
单击 OK 后,如果指定文档之间存在差异,将打开 差异比较 对话框。只有在 Differences between 对话框中单击 Explore Differences 按钮后,Differences 面板才会显示信息。
Differences 面板仅显示 Differences between 对话框中列出的差异。而这些差异由 Project Options 对话框(Project » Options)的 比较器选项卡 中的设置决定。此选项卡列出了所有比较类型,例如与元件、网络和参数相关的差异。将每个比较类别的 Mode 设置为 Find Differences 或 Ignore Differences,将决定差异比较器是否将其结果传递到 Differences between 对话框中。

在 Project Options 对话框中设置差异的检测和报告方式。
Differences 面板以树状结构显示源文档之间发现的差异,顶层文件夹显示检测到的差异总数。对于 差异比较 对话框中出现的每种具体比较类型,都会创建一个子文件夹。每个子文件夹列出发现的具体差异,并进一步细分为文档中导致这些差异的对象。
如果关联文档已打开(或已打开但处于隐藏状态),单击面板中的对象条目将交叉定位到文档中的对应对象。
对象通过缩放和调暗效果进行显示,即通过调暗所有其他对象来突出显示该对象。可使用 Preferences 对话框的 系统 - 导航 页面中 Highlight Methods 区域内的 Dimming 滑块调整调暗效果的对比度。
显示物理差异
对同一原理图或 PCB 文档的两个版本进行图形(物理)比较,其操作方式基本与上述逻辑比较相同,但还需使用 Choose Documents To Compare 对话框中的 Advanced Mode。
使用 Show Differences 命令(位于 Projects 面板的右键菜单中)打开 Choose Documents To Compare 对话框,然后勾选 Advanced Mode 复选框,即可进行文档物理比较。此时,对话框中会显示所有项目文件,请选择要比较的文档的两个版本。

在 Advanced Mode 的 Choose Documents To Compare 对话框中选择要进行物理比较的文档。
单击 OK 将执行图形比较,并按前述方式打开 差异比较 对话框。单击 Explore Differences,即可在 Differences 面板中打开交互式差异列表。
面板以树状结构显示文档之间发现的差异。顶层文件夹显示检测到的差异总数。每种差异类型都有对应条目,每个条目又包含各项差异涉及的具体引用信息和对象(端口、元件等)。
选择检测到的差异所对应的对象条目,将在编辑器设计区域中突出显示该对象,并缩放至该对象。
注意事项
- 如果面板中的某个对象位于当前隐藏的文档中,单击其对应条目时,该文档将自动打开,并成为设计编辑器窗口中的活动文档。
- 从 Differences 面板进行交叉定位时应用的过滤是临时性的。因此,您仍可选择或编辑过滤范围之外的设计对象。
- 执行新的文档比较或编译其所属项目时,Differences 面板中的信息将被清除。
- 使用主菜单中的 Project » Show Physical Differences命令,可检测原理图或 PCB 文档的两个版本之间存在的物理差异,并在设计区域中并排查看这两个文档时,以图形方式呈现这些差异。此“显示物理差异”功能仅提供视觉比较,无法通过生成 ECO 来更新所比较的任一文档。此功能用于比较同一文档的两个版本;如果用它比较不同文档,例如项目的源层次结构与 PCB,则会显示 Differences 面板,列出检测到的逻辑差异。
执行直接更新
由于设计人员通常清楚希望按哪个方向应用更新,并且所有更新的方向都相同,因此您可以选择跳过刚才介绍的差异检测和方向指定过程。
您无需从 Project 菜单中选择 Show Differences 命令,而是可以在原理图编辑器或 PCB 编辑器中,从 Design 菜单选择 Update 命令。运行命令时所选的编辑器决定了应用更改的方向,即从 this 编辑器到 that 编辑器。例如,在原理图编辑器中选择 Design » Update,即可将原理图中的所有更改推送到 PCB。
系统将跳过 Differences between 对话框,直接进入 Engineering Change Order 对话框。
如果所有更新都要沿同一方向应用,请使用 Design » Update 命令。
解决差异 - 应用 ECO
每项差异都通过应用工程变更单(ECO)来解决。ECO 列在 Engineering Change Order 对话框中,每行一个,每个 ECO 都有各自的 Enable 复选框。
使用 Engineering Change Order 对话框时:
- 对话框打开时,所有更改默认均已启用,请禁用您希望暂缓应用的更改。该对话框支持多选,可使用右键上下文菜单切换所选 ECO 的启用状态。
- 使用右键菜单中的交叉探查命令,检查该 ECO 影响的对象。
- 使用 Validate Changes 按钮检查这些更改是否能够执行。ECO 通常会因对象不可用而失败,例如,指定的 PCB 封装不存在于 可用的基于文件的库中,或者指定的焊盘不存在于该封装上。
- ECO 也可能因其所需的某个对象原本不存在而失败,即使该对象已在当前 ECO 的处理过程中添加。在这种情况下,请再次运行更新命令以完成该 ECO。

每项设计更改都以 ECO 的形式呈现,请启用所需的 ECO。
工程变更单对话框的选项和控件
该对话框分为两个主要区域:Modifications 和 Status。
修改
该区域列出了实现同步所需的所有修改。修改按修改类型分组,类型及其启用状态由 项目选项 - ECO 生成对话框中的设置决定。组级别的条目显示该类型的修改数量。此区域中的每项具体修改均包含以下信息:
- Enable - 此选项决定执行 ECO 时是否包含该修改。直接单击复选框,可在启用/包含(选中)和禁用/排除(未选中)之间切换。您可以使用空格键切换 Enable 复选框的选中状态。
- Action - 要执行的具体操作。操作类型取决于需要执行的 ECO 类型。
- Affected Object - 该操作影响的对象。
- Affected Document - 将执行该操作的文档。
右键菜单
默认情况下,所有修改均已启用,并将在执行 ECO 时包含在内。您可以根据需要逐项启用或禁用修改,也可以使用右键菜单中的以下命令来更改多项修改的启用状态:
- Validate Changes - 单击以对已启用并将包含在 ECO 中的修改进行验证检查。验证结果将显示在对话框 Status 区域下的 Check 列中。
- Execute Changes - 单击以执行 ECO。执行结果将显示在对话框 Status 区域下的 Done 列中。请注意,只有通过验证阶段的更改才会被执行。
- Create Report - 单击以生成 ECO 所包含修改的报告。该报告将加载到 Report Preview 对话框中。
- Cross Probe - 单击以交叉探查相关原理图和 PCB 文档中参与修改操作的目标对象和参考对象。
- Expand All - 单击以展开列表中所有修改的视图。
- Contract All - 单击以折叠列表中所有修改的视图。
- Enable All - 用于启用所有修改。
- Disable All - 用于禁用所有修改。
- Enable Selected - 用于启用所有选中的修改。
- Disable Selected - 用于禁用所有选中的修改。
- Enable all of same Kind - 用于启用与当前焦点所在修改属于同一修改类型的所有修改。
- Disable all of same Kind - 用于禁用与当前焦点所在修改属于同一修改类型的所有修改。
- Invert Selection - 用于快速选中列表中当前未选中的所有修改,并取消选择当前已选中的修改。
状态
该区域显示每项已启用修改的以下状态信息:
-
Check - 此字段显示对该修改运行验证检查的结果。绿色勾号(
)表示所提出的更改受支持,并将在执行 ECO 时应用。红色叉号(
)表示所提出的更改无效,执行 ECO 时不会应用。
-
Done - 此字段显示该修改的执行结果。绿色勾号(
)表示有效的修改已成功执行。
- Message - 如果修改未通过验证阶段,此字段中(以及 Messages 面板中)将出现一条记录,说明失败的原因。
其他控件
对话框底部和右键菜单中提供了以下控件:
- Validate Changes - 单击可对已启用、将纳入 ECO 的修改执行验证检查。验证结果将显示在对话框 Status 区域的 Check 列中。
- Execute Changes - 单击可执行 ECO,并应用其中的有效更改。执行结果将显示在对话框 Status 区域的 Done 列中。请记住,只有通过验证阶段的更改才会被执行。
- Report Changes - 单击可为 ECO 中包含的修改生成报告。报告将加载到 Report Preview 对话框中。
- Only Show Errors - 勾选此选项可仅显示工程变更单中的错误。已通过验证的更改将不会显示。仅显示错误列表可帮助您快速检查设计并进行必要的更改,使生成的 ECO 完全通过验证。
了解原理图与 PCB 之间的关联
通过唯一标识符匹配元件
每个原理图元件都通过唯一标识符(UID)与其 PCB 元件关联。将原理图元件放置到图纸上时,系统会为其分配 UID;将设计传送到 PCB 编辑器时,此值会传递给 PCB 元件。首次使用 Synchronizer 在原理图源文档与空白 PCB 设计文档之间传送元件信息时,所有元件都会自动通过唯一 ID 建立关联,即将每个原理图元件的 ID 信息分配给对应的元件封装。
这种机制适用于简单设计,但无法支持多通道设计。在多通道设计中,同一个原理图元件会在每个物理通道中重复出现,这意味着重复的 PCB 元件将具有相同的 UID。为解决这一问题,PCB 元件的 UID 由其父级图纸符号的 UID 与原理图元件的 UID 组合而成。根据多通道设计的创建方式,PCB UID 的语法会略有不同。
对于通过放置多个引用同一原理图图纸的图纸符号而创建的多通道设计,每个图纸符号都可以提供一个唯一 ID,因此 PCB UID 的格式为:
\SheetSymbolUID\SchComponentUID
对于使用 Repeat 关键字创建的多通道设计,只有一个可用的图纸符号 UID,因此 PCB UID 还会包含 ChannelIndex 值,格式为:
\ChannelIndex+SheetSymbolUID\SchComponentUID
元件未建立关联时
使用 UID 匹配原理图元件与 PCB 元件的优点是,即使位号不同步(例如多次执行 PCB 重新标注后),也不会出现原理图与 PCB 无法重新同步的风险。
如果原理图或 PCB 中存在某个元件,而另一个编辑器中没有与之匹配的元件(具有相同 UID),则会发生以下情况:
- 如果额外的元件仅存在于源编辑器中,系统将生成一个 ECO,以将该元件添加到目标编辑器中。
- 如果额外的元件仅存在于目标编辑器中,系统将生成一个 ECO,以移除该额外元件。
- 如果两个编辑器中都存在未匹配的元件,软件需要您指定如何处理它们,因此会打开 Failed to Match Unique Identifiers 对话框。
e Failed to Match Unique Identifiers 对话框
对话框按钮提供以下选项:
- Automatically Create Component Links - 如果您确定未匹配的元件已具有匹配的位号,请单击此按钮。软件将根据元件位号,为这些额外元件分配匹配的 UID。对于能够通过位号匹配的元件,任何其他属性差异(例如不匹配的参数)都将触发 ECO 的生成。如果存在无法通过位号匹配的元件,系统将生成用于添加或移除这些元件的 ECO(添加源编辑器中存在的额外元件,移除目标编辑器中的额外元件)。
-
Manual Component Links - 如果您确定存在匹配的元件,但不清楚其位号状态,请单击此按钮。此时将打开 Edit Component Links 对话框(详见下文),您可以在其中手动选择各个源元件和目标元件,并将其移至已匹配元件列表,为它们分配匹配的 UID。随后,系统将生成 ECO,以同步位号(以及任何其他不匹配的元件属性)。
- Cancel - 单击此按钮可生成 ECO,以添加源编辑器中存在的额外元件,并移除目标编辑器中的额外元件。
手动关联元件
您可以随时在 Edit Component Links 对话框中(PCB 编辑器中的 Projects » Component Links 命令)检查和管理原理图元件与其对应 PCB 元件封装之间的关联状态。

“编辑元件关联”对话框用于检测和解决 UID 不匹配问题,可从 PCB 编辑器中打开。
对话框功能概述:
- 未匹配的元件显示在左侧的两个 Un-Matched Components 列中,具有匹配 UID 的元件显示在对话框右侧的 Matched Components 区域中。
- 对话框中间的箭头按钮用于手动匹配(或取消匹配)所选元件,也可取消所有当前已匹配元件的匹配。
- 对话框底部的 Add Pairs Matched By 按钮和选项用于扫描当前未匹配的元件列表,并尝试根据已启用的属性(位号、注释、封装)进行匹配。
- 单击 Perform Update 按钮后,每个新匹配的 PCB 元件都会被分配其对应原理图元件的 UID。 如果您已移动了 Matched 中的任何条目对话框的区域移回 Unmatched 区域时,会弹出确认对话框,提示继续操作将断开现有的元件关联。单击 Yes 将继续更新,并弹出信息对话框,汇总 PCB 文档中修改的元件链接。 Matched 区域中的新条目会汇总为 Link Modified,而之前已链接、现在已取消匹配的条目则会汇总为 Link Removed。
- 使用此对话框手动链接元件后,建议检查同步状态(运行 Design » Update 命令)。
匹配网络和类
网络和类都具有父对象(网络或类本身)和子对象(该网络或类的成员)。要支持对父对象、子对象或父子对象同时进行更改,匹配这些对象时需要采用不同于元件链接所用 UID 机制的方法。例如,只是在原理图中更改网络名称这样简单的操作,不应需要先从 PCB 中移除该网络及其所有子引脚,再添加重新命名后的网络,最后将所有子引脚添加到这个新网络。
为此,软件提供了独立的匹配算法,可按成员或名称匹配网络和类。匹配过程可在 Options for Project 对话框的 Comparator 选项卡中的 Object Matching Criteria 区域配置。
这些类型的对象按以下方式进行匹配:
- 在设计同步期间,默认行为是根据 Min Match % 和 Min Match Member 设置,首先尝试按成员匹配。
- 如果按成员匹配失败,软件会尝试按名称匹配(如果已启用 Use Name Matching 选项)。
- 如果任一匹配过程成功,将进入 Engineering Change Order 对话框。
-
如果两种匹配方式都失败(或 Use Name Matching 选项设置为
Never),则会打开 Match Manually 对话框。
- 在 Match Manually 对话框中单击 No,将跳过用户匹配过程,直接进入 Engineering Change Order 对话框。由于您没有尝试匹配任何未匹配的对象,软件会认为参考对象与目标对象无关,因此会生成 ECO,从电路板中移除 Unmatched Reference Objects,并将 Unmatched Target Objects 作为新对象添加。
- 如果在对话框中单击 Yes 以进行手动匹配,则会打开 Match 对话框,如下所示(对话框标题会根据未匹配的对象类型而变化)。
Match 对话框用于手动匹配您确定相互对应的对象。如果不确定,请将右侧留空并单击 Continue。
匹配对话框的选项和控件
-
Unmatched <Object>
- Unmatched Reference Objects - 列出未匹配的对象。使用展开/折叠控件打开/关闭列表。
- Unmatched Target Objects - 列出目标对象。使用展开/折叠控件打开/关闭列表。
-
- 单击可匹配所选的参考对象和目标对象,并将所选对象从 Unmatched 区域移到 Matched Pairs 区域。
-
- 单击可将所选对象从 Matched Pairs 区域移到 Unmatched 区域。此操作会取消所移动对象的匹配。
-
- 单击可将所有对象从 Matched Pairs 区域移到 Unmatched 区域。此操作会取消所移动对象的匹配。
- Matched Pairs - 列出当前已匹配的 Reference Object 和 Target Object 。
- Continue - 单击可接受匹配更新并打开 Engineering Change Order 对话框。
- 在此对话框中,从 Unmatched Reference Objects 和 Unmatched Target Objects 中选择要匹配的对象,然后将其移到对话框的 Matched Pairs 区域。对于这些对象,软件会生成一个 ECO 来更新名称,使其一致,并生成用于移除/添加成员的 ECO,使成员也保持一致。
- 如果不确定,则不必手动匹配对象。对于任何未匹配的对象,软件会认为参考对象与目标对象无关,因此会生成 ECO,从电路板中移除 Unmatched Reference Objects,并将 Unmatched Target Objects 作为新对象添加。
- 匹配完您确定相互对应的对象后,单击 Continue 打开 Engineering Change Order 对话框。
- 如果单击 Cancel,更新过程将终止。
匹配设计规则
在原理图中定义的设计规则也必须链接到 PCB 上对应的规则。如果没有链接机制,就无法在原理图中更新规则并将这些更改传递到 PCB。UID 用于将原理图设计规则链接到 PCB 设计规则。
UID 会在原理图中包含规则定义的参数集中自动分配,并在设计同步期间传输到 PCB。
设计规则使用 UID 将原理图设计规则定义与 PCB 设计规则进行匹配。
通常,您无需手动管理规则匹配,除非您在 PCB 编辑器的 PCB Rules and Constraints 对话框中手动编辑了 UID。如果 UID 不匹配,软件会为每条没有匹配 PCB 规则的原理图规则向 PCB 添加一条新规则,并删除所有没有匹配原理图设计规则的 PCB 设计规则。



