在原理图上操作指令

您正在阅读的是 23. 版本。关于最新版本,请前往 在原理图上操作指令 阅读 24 版本

父页面: 捕获您的设计想法作为原理图

设计指令是在设计捕获过程中放置在原理图上的对象,它们提供了一种向软件的其他部分传递指令的方式。有多种设计指令可用,用于以下两种方式:

  • 与源原理图文件的自动编译相关的指令。
  • 用于将在原理图表上定义的信息传递到PCB的指令。

以下部分将更仔细地查看这些领域及其相关的指令。

与编译相关的指令

设计随着时间的推移而演变,并且是分阶段捕获的。当每个阶段确定下来时,通常会希望将它们与设计的其余部分隔离开来进行检查。在捕获过程的间歇阶段对单个原理图文件(或整个项目)进行编译,通常会产生许多错误消息,这些消息是由尚未捕获的电路或仍然不完整的电路片段之间的接口布线引起的。这些消息没有真正的价值,因为它们只会在真实信息周围产生噪音。抑制这些编译错误最快最简单的方法是放置无ERC编译屏蔽指令。

无ERC指令

无ERC指令放置在电路的节点上,以抑制在验证原理图项目时检测到的所有报告的电气规则检查警告和/或错误违规条件。请参阅验证您的设计项目页面了解更多。

编译屏蔽指令

无ERC指令非常适合抑制设计中违规的引脚、端口、表项或网络的数量较少的情况。但在某些情况下,可能希望移除设计的整个部分;包括组件。使用编译屏蔽指令(放置 » 指令 » 编译屏蔽命令)或点击活动栏上的指令下拉菜单中的编译屏蔽按钮(),可以有效地隐藏它包含的设计区域,使编译器忽略,允许您手动防止尚未完成且您知道会生成编译错误的电路的错误检查。如果您需要编译活动文档或项目以检查设计的其他特定区域的完整性,但不希望有与未完成部分的设计相关的编译器生成的消息的“噪音”,这可能非常有用。

顾名思义,这个指令指示编译器忽略任何完全位于定义的屏蔽范围内的对象。放置屏蔽就像放置注释或矩形对象一样。

考虑以下图片中的示例电路原理图,其中LCD1设备的接线尚未完成。仅编译此原理图(项目 » 验证PCB项目)将导致许多违规信息(如下所示),每个违规信息都是由不完整的电路引起的。将鼠标悬停在图片上可以看到在不完整电路周围放置编译屏蔽指令的效果。这些违规将被编译器忽略,而原理图上的其余电路 - 完全接线的部分 - 将被检查。请注意,真正被屏蔽的对象 - 那些完全位于屏蔽矩形边界内的对象 - 将显示为灰色。

滚动图片以显示使用编译屏蔽指令隐藏由于电路不完整而导致的编译器违规的效果。
滚动图片以显示使用编译屏蔽指令隐藏由于电路不完整而导致的编译器违规的效果。

编译屏蔽可以以展开(完整框架)或折叠(小三角形)模式显示。这些模式分别对应于屏蔽启用和禁用。通过点击放置的编译屏蔽的左上角来切换显示模式。当仿真作为设计流程的一部分时,这个功能会很有帮助:了解更多
虽然编译屏蔽可以沿X轴或Y轴旋转或镜像,但这不会影响其中设计电路的方向。

与PCB相关的指令

作为统一设计环境,Altium Designer提供了在布局电路板之前定义PCB要求的能力。这是通过向原理图表上放置的对象添加和指定参数来实现的。

对于某些原理图设计对象 - 如组件、表符号、端口等 - 这涉及将相关参数作为该对象属性的一部分添加。对于网对象,如线和总线,参数不能直接作为线或总线的属性添加。相反,需要使用专用的设计指令来指定保存信息的参数。

以下信息可以使用指令指定,并将在设计同步期间转移到适当的基于PCB的定义:

  • PCB布局约束
  • 差分对
  • 网类

通过在原理图中包含设计指令,设计工程师可以指定明确的设计约束,并确保原理图保持为设计的主记录。对设计的任何修改都将仅在原理图端进行,并推送到PCB。当多人参与设计时,这一点尤其重要——特别是当他们地理位置分散时。设计人员无需通过电子邮件链或电话通话尝试相互沟通,而是可以确保在布局阶段确实使用了特定的约束。

这一功能的核心是参数集指令

这些本质上是用户定义的参数集对象,可以与原理图设计中的网络对象关联。在导线、总线或信号束上放置PCB布局指令,以定义针对关联网络的一个或多个设计约束。从原理图创建PCB时,PCB布局指令中的信息将用于创建相关的PCB设计规则。PCB布局指令指定的信息仅适用于与指令连接的网络(或一组网络)。

一个参数集指令。
一个参数集指令。

这充当容器,用于针对参数集指令所附加的网络的任意数量的参数。可以放置一个默认的没有参数的参数集指令(放置 » 指令 » 参数集),并且稍后可以添加相关参数。以下部分将更深入地查看使用这些基于参数的指令。用户定义的(参数集)和预定义的(差分对)参数集指令都是可用的。空参数集和预定义参数集之间的唯一区别是预定义参数集包括一个参数,如下所述。

参考在原理图中定义差分对页面,了解更多关于使用差分对指令的信息。
在使用约束管理器功能时,请注意,使用参数集和差分对指令定义的网络类别、差分对、差分对类别和规则在从原理图更新PCB时不会被检测和转移。只有在约束管理器中定义的网络类别、差分对、差分对类别和规则才会被转移。

放置参数集指令

通过从主菜单选择放置 » 指令 » 参数集命令,或在设计空间内右键点击来放置此类指令。放置默认参数集指令时,将不存在现有参数。参数集是一种设计指令,允许将设计规格与原理图设计中的网型对象关联。例如,使用参数集声明两个网络是差分对的成员。软件用于确定您正在放置哪种设计指令的是参数集中特定命名的参数的存在。

除了用户定义的参数指令外,基于规则的参数指令是从选择设计规则类型对话框中定义的,可通过与参数相关联的属性面板模式访问。访问包括以下步骤:

  1. 在放置参数集之前按Tab,或双击已放置的参数集指令,以显示属性面板的参数集模式
  2. 接下来,在属性面板的参数集模式的参数部分点击添加按钮,并从下拉菜单中选择规则,以从选择设计规则类型对话框中选择规则。

编辑规则的值。
编辑规则的值。

使用选择设计规则类型对话框来选择您希望作为指令规则参数添加的规则。双击规则类型将让您访问相关的编辑PCB规则(来自原理图)对话框,在其中您可以定义规则的约束。

编辑PCB规则(来自原理图)对话框中出现的特定属性取决于所选的设计规则,并且将与PCB编辑器中为该规则定义的属性相同。

例如,下面的图片显示了最大-最小宽度规则编辑PCB规则(来自原理图)对话框,您可以:为所有层配置最小/首选/最大设置,手动为每层定义每个宽度设置,或选择使用阻抗配置文件。如果您正在选择阻抗配置文件,并且实际的物理板结构已经在PCB编辑器中定义,您还可以选择板文件来加载PCB层堆栈并计算走线宽度值

如果PCB存在且层堆栈已定义,计算出的宽度可以加载到原理图中。如果PCB存在且层堆栈已定义,计算出的宽度可以加载到原理图中。

上面显示的规则应用于一类网络。这是通过放置一个覆盖指令并附加一个PCB布线指令来将网络分组成一个类,然后将最大-最小宽度规则应用于该类(显示图片)。

有关每个PCB设计规则和约束的详细信息,请点击这里

使用测量单位下拉字段选择公制英制单位。

为所选规则指定约束。
为所选规则指定约束。

参数区域的条目将是所选的规则类型以及指定的约束。下图说明了为参数集指令定义的宽度约束规则参数。要在设计空间内显示规则,请点击规则区域内的可见性()图标。

为特定网络定义的多个规则约束,由参数集指令提供。
为特定网络定义的多个规则约束,由参数集指令提供。

当设计通过同步过程转移到PCB时,将根据指令中包含的信息创建相关的设计规则。每个生成的规则的名称中都使用了原理图一词,以区分该规则的来源。

在PCB端生成的设计规则。
在PCB端生成的设计规则。

记住,可以将多个参数添加到同一个参数集指令中,以便于创建更整洁的原理图。

放置网络类指令

网络类指令允许您在原理图上创建用户定义的网络类。可以通过从主菜单选择放置 » 指令 » 参数集命令来放置网络类指令,然后根据命令页面上的提示#2定义参数集为网络类指令。当从原理图创建PCB时,网络类指令中的信息将用于在PCB上创建相应的网络类。要使网络成为网络类的成员,请将网络类指令附加到相关的线、总线或信号束上,然后将指令的ClassName参数设置为所需类的名称。必须在项目选项对话框的类生成标签页上启用生成网络类选项(对于用户定义的类),才能使用此功能。

如果为网络定义了网络类指令,那么在设计转移到PCB编辑器时,由该参数集对象创建的任何PCB设计规则都将具有网络类的规则范围。可以通过向放置的参数集指令添加一个类,并将其值设置为所需的PCB网络类,来创建网络类指令。

虽然可以在PCB编辑器中创建网络类,但是在原理图中,网络的逻辑功能或分组通常更加清晰,因此,从那里驱动过程更有意义。

当设计通过同步过程转移到PCB时,将根据指令中包含的信息创建相关的网络类。

将网类指令附加到blanket对象上,以创建一个网类,其成员是被该blanket覆盖的各个网。如果一个PCB布局指令也附加到那个blanket上,PCB布局指令的规则参数将针对那个网类,而不是每个单独的网。当将更改导入到PCB文档时,这将导致创建一个单一的设计规则(每个参数),其范围设置为针对网类。

放置blanket指令

参数集指令只能针对它们附加到的特定网,但当与blanket指令结合时,它们的范围可以扩展到覆盖blanket内的所有网。

通过从主菜单中选择放置 » 指令 » blanket命令来放置此类指令。放置blanket时,您可以定义一个简单的矩形形状或多边形形状。后者可以更精确地控制所需网对象在工作表上的覆盖范围。

blanket标识了感兴趣的网 - 在blanket的边缘的任何地方放置一个参数集指令,以将设计要求应用于那些网。要将边缘指令应用于blanket指令下的网,与该网相关联的对象 - 引脚、端口、网标签、电源端口、线/总线/线束段(包括两端) - 必须落在blanket的范围内。请注意,对于网标识符,如网标签,热点必须在blanket内。如果成员网没有按预期进入PCB参数集,请相应调整blanket的区域。

要检查blanket指令将应用于哪些网,请使用网颜色功能来突出显示它们。从查看 » 设置网颜色菜单中选择所需的颜色,然后点击所需blanket指令的边缘。要清除特定网的高亮显示,请使用查看 » 设置网颜色 » 清除网颜色命令,然后点击您希望去除着色的网。要清除所有原理图工作表上的网颜色,请使用查看 » 设置网颜色 » 清除所有网颜色命令。

使用blanket指令将参数集指令应用于blanket内的网的示例。
使用blanket指令将参数集指令应用于blanket内的网的示例。

blanket指令的示例用法可以包括:

  • 将参数集指令附加到blanket对象上,以将其规则参数应用于被该blanket覆盖的每个单独网。
  • 将参数集指令附加到blanket对象上,以创建一个参数集,其成员是被该blanket覆盖的各个网。
  • 将差分对指令附加到blanket对象上,以根据blanket范围内的差分网创建差分对对象。
将参数集指令附加到blanket对象上,以将其规则参数应用于被该blanket覆盖的每个单独网。如果一个参数集指令也附加到那个blanket上,并且参数集也有一个网类参数,参数集指令的规则参数将针对那个网类,而不是每个单独的网。当将更改导入到PCB文档时,这将导致创建一个单一的设计规则(每个参数),其范围设置为针对网类。
您还可以复制一个周边参数集指令,并将其附加到另一个Blanket指令或甚至单个线、总线或线束上——结果将是将与同一参数集指令相关联的所有附加网络添加到生成的PCB网络类中。

Blanket与参数集指令结合使用,还可以用于应用完全位于Blanket定义区域内的组件的组件类和参数。为此,请使用附加到Blanket的参数集指令属性中的添加按钮下拉菜单中的组件类参数选项。组件类和参数的信息将在ECO过程中更新PCB时传输到项目PCB文档中。

间接(基于参数的)指令

参数集指令在针对原理图中不能包含参数的设计对象时是必需的,但对于那些可以包含参数的对象,可以通过将它们作为参数添加(并定义)到相关的原理图对象来间接应用设计指令。本质上,它们是基于参数的指令

参数化指令的使用示例可能包括限制特定组件的高度或针对设计中的所有对象添加间隙约束。定义约束的所需参数作为规则添加到对象中。

与PCB同步时,添加到原理图中对象的基于参数的指令将变成PCB设计规则。相应PCB设计规则的范围将由首次分配参数的对象的性质决定。下表总结了支持的原理图参数到PCB规则范围选项。

向...添加参数(作为规则) 来自... 对于PCB规则范围...
引脚 参数标签页的引脚模式属性面板 焊盘
端口 参数标签页的端口模式属性面板 网络
组件 参数区域的组件模式属性面板 组件
表符号 参数标签页的表符号模式属性面板,当在来源区域选择本地时 组件类
设备表符号 参数标签页的表符号模式属性面板,当在来源区域选择设备时 组件类
管理表符号 参数区域的表符号模式属性面板,当在来源区域选择管理时 组件类
参数标签页的文档选项模式属性面板 所有对象

在每种情况下,添加基于规则的参数的方法是相同的。从相应的标签页或对话框执行以下操作:

  1. 添加一个参数作为规则。
  2. 选择要使用的规则类型。
  3. 为所选规则类型配置约束。
在原理图上向对象添加设计规则参数时,每个规则参数都会被赋予一个唯一的ID。相应的在PCB上创建的设计规则也会被赋予相同的ID。有了这个唯一ID,规则的约束可以在原理图或PCB侧进行编辑,并在同步时推送更改。

指定组件类

类似地,可以通过向目标组件添加ClassName参数并将其值设置为所需的类名,在原理图上定义组件类。当设计转移到PCB时,将创建定义的组件类。

为了确保原理图定义的组件类传播到PCB,必须在项目选项对话框中设置以下选项:

  • 启用位于对话框类生成标签页的用户定义类区域中的生成组件类选项。
  • 在对话框的比较器标签页上,将与组件相关的差异 » 额外组件类模式设置为查找差异

上述列出的类生成标签页选项如下图所示。将鼠标悬停在图片上可以查看比较器标签页选项设置。

要将组件类传播到PCB,请在类生成标签页上启用生成组件类选项。将鼠标悬停在图片上以显示比较器标签页,您需要将额外组件类模式设置为查找差异。
要将组件类传播到PCB,请在类生成标签页上启用生成组件类选项。将鼠标悬停在图片上以显示比较器标签页,您需要将额外组件类模式设置为查找差异

一旦定义,类可以在相应组件属性的属性面板的属性区域中锁定。

在PCB编辑器中,一个组件可以属于多个组件类。要在原理图中定义这一点,请在原理图组件参数值中用逗号分隔每个PCB组件类名称(显示图片)。

控制指令的打印

默认情况下,所有设计指令都包含在原理图页的打印中。但是,这可以更改:

根据需要控制指令的打印。对于No ERC指令,您可以选择打印某些符号样式,同时排除其他样式。
根据需要控制指令的打印。对于No ERC指令,您可以选择打印某些符号样式,同时排除其他样式。

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.

您可以使用的功能取决于您的 Altium 订阅级别。如果您在软件中找不到某个功能,请联系 Altium 的销售人员以获取更多信息。

Content