通过重构进行设计重组
父页面: 多表单 & 分层设计
重构,在传统意义上,是指在不改变该设计(或代码)功能的情况下,对现有设计(或编程领域的代码体)进行结构重组的行为。就PCB设计而言,有各种情况下某种形式的重构将提供有益且及时的解决方案:
- 一个部件已经过时,需要被一个功能等效的子电路替换。(显示)
- 一个原理图设计将成为用于更大设计中的子电路。(显示)
- 一个现有的原理图子表将被制作成设备表,以便在未来的设计中重复使用。(显示)
- 一个现有的设备表需要针对当前设计进行本地化和定制。(显示)
- 一些现有的子电路需要移动到另一个表单。(显示)
Altium Designer 提供了许多功能,这些功能共同构成了其设计重构能力 - 给您最大的灵活性来根据需求重组设计。
将部件转换为表符号
此功能用于将当前文档上的部件转换为表符号。它适用于现有部件已过时并需要被定义在单独表上的功能等效子电路替换的情况。
右键点击一个部件并从上下文菜单中选择 部件操作 » 转换部件为表符号 命令,将部件符号转换为表符号。连接性保持不变,表条目按照原始引脚命名命名,I/O 类型设置为反映原始引脚电气类型。
表符号的 指定器 最初设置为原始部件的指定器,其 文件名 最初设置为部件的注释文本。
如果所需的子表存在,更改表符号的 文件名 以指向该表。如果没有,可以通过右键点击表符号并选择 表符号操作 » 从表符号创建表 命令快速创建子表。在后一种情况下,与符号的表条目相对应的端口将被放置在新的子表上,准备好定义和连接替换子电路。
将部件推送到新的子表上
一种替代的,可能更快的方法来达到类似的最终结果,是在所需的部件上右键点击,然后选择部件操作 » 推送部件至图纸命令。这个命令用于将当前文档上的一个部件推送到一个新的子图纸上,用一个引用该图纸的图纸符号替换原始部件。基本上执行以下一系列步骤:
- 复制部件。
- 将原始部件转换为图纸符号,指定器设置为原始部件的指定器,文件名设置为<OriginalPartComment>.SchDoc。同样,连通性得以保持,图纸入口按照原始引脚命名命名,I/O类型设置为反映原始引脚电气类型。
- 从图纸符号创建一个新的原理图图纸,使用符号的文件名值命名。
- 将原始部件的副本粘贴在图纸中心,放置与图纸符号的图纸入口相对应的端口,并将其与部件的引脚连接。
然后你可以删除部件,并根据需要用功能等效的电路替换它。
将部件转换为端口
此功能用于将当前文档上的部件转换为一组端口。当一个现有的独立子设计,如电源或卫星板,要制作成一个子电路,以便在更大的单板设计中使用时,这是理想的选择 - 也许是为了降低制造成本。这与前一节相反,前一节是用一个低级别的子电路替换一个组件。相反,这是将一个子电路插入到更高级别设计中的过程,使其可以连接到层次结构中的更高点。
在部件上右键点击并选择上下文菜单中的部件操作 » 转换部件为端口命令,将部件符号转换为一组端口。连通性得以保持,端口按照原始引脚命名命名,I/O类型设置为反映原始引脚电气类型。
然后通过在相关的更高级别父图纸上添加一个图纸符号来完成子电路插入层次结构的步骤。为此:
- 激活所需的父图纸。
- 使用设计 » 从图纸创建图纸符号命令。
- 在选择要放置的文档对话框中选择文档(包含从部件创建的端口)。
- 图纸符号将出现在光标上 - 根据需要在图纸内定位,并点击以实现放置。
表符号通过其文件名属性引用底层子表,并且具有与子表上的端口相对应的表条目。
将原理图表转换为器件表
在某个阶段,为了重用而设计的概念必须提高其抽象程度。如果我们停留在组件级别,那么每个设计都会有类似的功能部分 - 比如USB接口或电压调节器 - 就会像是在“重新发明轮子”。这就是器件表的用武之地 - 旨在提供特定电路功能的原理图表。它们的使用消除了传统复制粘贴方法的风险。并且它们消除了设计工作的重复,同时增加了可以在未来设计中重用的设计内容水平。
作为其重构工具套件的一部分,原理图编辑器提供了快速将现有的标准原理图表转换为器件表,以便在其他设计中重用的能力。
要将现有的原理图表转换为器件表:
- 在设计层次结构的相关父页面上找到引用所需工作表的工作表符号。
-
选择工作表符号并从主菜单中选择 编辑 » 重构 » 将选定的原理图工作表转换为设备工作表 命令。将出现 将原理图工作表转换为设备工作表 对话框。选择用于存储新创建的设备工作表的目标位置,以及转换的范围 - 是更新当前工作表符号,还是更新设计空间或活动项目中的所有相关工作表符号。后者对于多通道设计特别有用,其中子电路存在于多个实例中。
-
点击 确定。工作表符号将被转换为设备工作表符号,并且原理图将被移动到指定的设备工作表位置。
原始工作表符号的属性将被设备工作表符号继承。
将设备工作表转换为原理图工作表
设备工作表使功能子电路能够在设计中被捕获和重复使用。然而,可能需要修改特定设计的现有子电路。与其修改设备工作表本身,原理图编辑器提供了复制设备工作表的能力,使其电路在标准原理图工作表上可用。这允许您根据当前设计的要求修改本地副本,并且知道原始设备工作表保持不变。
要将现有设备工作表“转换”为原理图工作表:
- 找到引用所需设备表的设备表符号。
-
选择设备表符号,然后从主菜单中选择 编辑 » 重构 » 将设备表转换为原理图表 命令。将会出现 将设备表转换为原理图表 对话框。选择存储新创建的原理图表的目标位置,以及转换的范围 - 是更新当前的设备表符号,还是更新活动项目中所有相关的设备表符号。
-
点击 确定。设备表符号将被转换为表符号,并且设备表的副本将作为标准(未受保护的)表本地存储在指定位置。表符号将引用这个本地表。
原始设备表符号的属性将被表符号继承。
将选定的子电路移动到不同的表
随着设计的发展,构成该设计的源原理图表的内容可能需要调整 - 特定部分的电路在其自己的表上可能“读起来”更好,或者可能一个表变得过于拥挤(并且难以阅读!)并且可以从中移动一些电路到额外/不同的表上。
另一个重构功能是能够选择表上的一个或多个对象,并将该选择移动到不同的表上。要做到这一点:
- 首先选择你想要移动的电路。
- 右键点击并选择上下文菜单中的 编辑 » 重构 » 将选定的子电路移动到不同的表 命令。将会出现 选择目标文档 对话框 - 使用它来指定目标原理图表。
- 点击确定。所选图纸将被激活,选定的子电路将浮现在光标上。
- 根据需要在图纸上定位电路,并点击以完成放置。一旦放置,该电路将从原图纸上移除。
- 如果移动的电路包含一个或多个现有的图纸符号,由符号引用的子原理图图纸将被移动到设计层次结构中反映在项目面板中的图纸下方。如果移动到新图纸,请在相关的父页面添加图纸符号,以将该图纸正确地插入到设计层次结构中。