确保 PCB 为与 Specctra 兼容的自动布线器做好准备
Altium Designer 的 Specctra Exporter 可对特定格式的宽度和间隙设计规则进行翻译,从而在使用与 Specctra 兼容的布线器产品和 Altium Designer 时实现更顺畅的过渡和更大的成功。
背景介绍
Specctra 设计规则和 Altium Designer 设计规则在性质和实施方面有很大不同。以下概念上的差异为将设计从 Altium Designer 成功转移到 Specctra 带来了挑战:
-
Specctra 具有固定(硬编码)的范围层次结构,这也决定了规则的应用顺序(例如,网级规则总是先于网类规则应用)。Altium Designer 拥有更强大、更灵活的规则系统。优先级(优先权)和范围都不是固定的。您可以使用表达式自由定义规则的范围,然后根据需要设置规则的优先级。因此,您可以先执行 Net 类范围的规则,然后再执行 Net 范围的规则。
-
在 Specctra 中,作用域可以被视为具有关联规则--适用于作用域实例的规则集合。在 Altium Designer 中,情况并非如此。除了默认的 "所有 "作用域外,一个设计的所有已定义规则中的所有其他作用域都可能是不同的。
-
Specctra 规则可在基元级别上对属性进行评估,例如,网 A 中的轨道要求与所有其他对象之间有 8mil 的间隙。Altium Designer 的某些规则(特别是二进制规则)永远无法评估到基元属性级别。例如,网 A 和网 B 中轨道之间的间隙可能不同于网 A 和网 C 中轨道之间的间隙,从而导致网 A 中的轨道没有一个统一的值。
总之,可以公正地评价 Altium Designer 的范围界定系统比 Specctra 规则系统更具表现力,总体而言,它是 Specctra 范围界定系统的超集。
在 Altium Designer 中定义规则
如果您计划使用 Specctra 对 Altium Designer PCB 设计进行布线,强烈建议您遵循 Specctra 范围界定层次结构,以最大限度地提高翻译正确性和布线结果。下表提供了规则定义指南。它总结了 Specctra 侧的各种固定范围,以及在导出程序支持的情况下,Altium Designer 侧所需的范围和优先级。这些 "映射"(如果您愿意)旨在简化规则导出流程,避免在导出后在 Specctra 端手动创建所需规则。
|
Specctra 范围
|
Altium Designer Scope
|
Altium Designer 优先级
|
|
|---|---|---|---|
|
第 1 次对象查询
|
第 2 次对象查询
|
||
| PCB 设计 |
12
|
||
| 层数 |
11
|
||
| 网络类别 |
10
|
||
| 层上净级 |
9
|
||
| 组集 |
Altium Designer 不支持
|
||
| 图层上的组集 |
Altium Designer 中不支持
|
||
| 网络 |
8
|
||
| 层上网络 |
7
|
||
| 组 | 使用 From To 类模拟: |
6
|
|
| 层上的组 | 使用 From To Class 进行仿真: |
5
|
|
| 从到 |
4
|
||
| 层上的 FromTo |
3
|
||
| 类与类 |
2
|
||
| 层上的类与类 |
出口程序目前不支持
|
||
| 堆栈 |
Altium Designer 不支持
|
||
| 区域 |
1
|
||
| 地区净等级 |
出口国目前不支持
|
||
| 地区净值 |
目前不支持出口
|
||
| 类别与地区类别 |
出口国目前不支持
|
||
注释
-
在一个 Altium Designer 规则中,可以使用
运算符将多个表达式合并到一个 Altium Designer 规则中,从而减少设计中规则的总数。例如OR-
- 使规则适用于任何网络InNet('N1') OR InNet('N2') OR InNet('N3') ,N1 或N2 .N3 -
- 使规则适用于任一图层上的对象OnLayer('L1') OR OnLayer('L2') 层或L1 .L2
-
-
Altium Designer 中的规则优先级、
是最高优先级,将首先应用。1
基于基元的作用域修饰符
支持以下表达式作为作用域修饰符:
-
IsPad -
IsThruPin -
IsSMDPad -
IsVia -
IsTrack -
IsFill -
IsPolyRegion -
IsTestPoint -
TestPoint
这些修饰符对清除规则非常有用,例如,您可能希望在 via 和 pad 之间定义不同的清除值,而在 via 和 track 之间定义不同的清除值。以下示例范围说明了如何在清除规则定义中使用这些修饰符:
-
网络 N1 的 pad 到 via 间隙:
InNet('N1') AND IsVia vs IsPad
-
N1 网顶层的轨道至轨道间隙:
InNet('N1') AND IsTrack vs IsTrack AND OnTopLayer
范围别名
与口语一样,在定义规则作用域时,相同的含义往往可以通过不同的方式实现。基于层的作用域支持以下别名:
-
或OnTop - 的别名OnTopLayerOnLayer('TopLayerName')
-
或OnBottom - 或OnBottomLayerOnLayer('BottomLayerName')
-
- 用于中间层 1 至中间层 30(即不包括顶部和底部的信号层)的别名OnMid
-
- 用于所有信号层的别名OnSignal
-
和TestPoint 互为别名。IsTestPoint
导入 Specctra 设计
要将 Specctra 设计导入活动 Altium Designer PCB 文档,请从 PCB 编辑器主菜单中选择
将 PCB 导出为 Specctra 设计文件格式
Altium Designer PCB 文档可导出为 Specctra 设计文件格式。在输出任务文件中,单击
或者,从 Altctra Design 的主菜单中选择
无论是作为 OutJob 文件的一部分导出,还是直接从菜单中导出,您都可以对输出进行配置。