Ensuring PCB Readiness for Specctra-compatible Routers in Altium Designer
Altium Designer の Specctra Exporter は、特定の形式で記述された幅およびクリアランスのデザインルールを変換できるため、Altium Designer で Specctra 互換の配線製品を使用する際に、よりスムーズな移行と高い成功率を実現します。
背景
Specctra のデザインルールと Altium Designer のデザインルールは、その性質と実装の観点で大きく異なります。以下の概念的な違いが、Altium Designer から Specctra へ設計を正しく移行するうえでの課題を示しています。
-
Specctra には固定(ハードコード)されたスコープ階層があり、これがルール適用順序も決定します(例:ネットレベルのルールは常にネットクラスのルールより先に適用される)。一方、Altium Designer にはより強力で柔軟なルールシステムがあります。優先順位(priority)もスコープも固定ではありません。式を使ってルールのスコープを自由に定義し、必要に応じてそのルールの優先順位を設定できます。そのため、ネットクラスをスコープとするルールを、ネットをスコープとするルールより先に実行させることも可能です。
-
Specctra では、スコープには関連ルール(そのスコープのインスタンスに適用されるルールの集合)が紐づいていると捉えられます。Altium Designer ではそうではありません。既定の「All」スコープを除き、設計内で定義されたすべてのルールにおける各スコープは、それぞれ異なっている可能性があります。
-
Specctra のルールは、プリミティブレベルの属性として評価できます。たとえば「ネット A のトラックは、他のすべてのオブジェクトに対して 8mil のクリアランスが必要」といった形です。Altium Designer のルールの一部(特にバイナリルール)は、プリミティブの属性レベルに評価できない場合があります。たとえば、ネット A と B のトラック間クリアランスが、ネット A と C のトラック間クリアランスと異なることがあり、その結果、ネット A のトラックに対して単一の統一値を割り当てられません。
要約すると、Altium Designer のスコープシステムは Specctra のルールシステムより表現力が高く、一般に Specctra のスコープシステムを包含する(上位互換の)ものだと評価できます。
Altium Designer でのルール定義
Altium Designer の PCB 設計を Specctra で配線する予定がある場合、変換の正確性と配線結果を最大化するために、Specctra のスコープ階層に従うことを強く推奨します。次の表はルール定義のガイドラインです。Specctra 側の各固定スコープと、エクスポーターでサポートされる範囲において Altium Designer 側で必要となるスコープおよび優先順位をまとめています。これらの「マッピング」は、ルールのエクスポート処理をより効率化し、エクスポート後に Specctra 側で必要なルールを手作業で作り込む手間を避けることを目的としています。
|
Specctra Scope
|
Altium Designer Scope
|
Altium Designer Priority
|
|
|---|---|---|---|
|
1st Object Query
|
2nd Object Query
|
||
| PCB Design |
12
|
||
| Layer |
11
|
||
| Net Class |
10
|
||
| Net Class on Layer |
9
|
||
| Group Set |
Altium Designer ではサポートされていません
|
||
| Group Set on Layer |
Altium Designer ではサポートされていません
|
||
| Net |
8
|
||
| Net on Layer |
7
|
||
| Group | From To Class を使用してエミュレート: |
6
|
|
| Group on Layer | From To Class を使用してエミュレート: |
5
|
|
| FromTo |
4
|
||
| FromTo on Layer |
3
|
||
| Class vs. Class |
2
|
||
| Class vs. Class on Layer |
現在 Exporter ではサポートされていません
|
||
| Padstack |
Altium Designer ではサポートされていません
|
||
| Region |
1
|
||
| Net Class in Region |
現在 Exporter ではサポートされていません
|
||
| Net in Region |
現在 Exporter ではサポートされていません
|
||
| Class vs. Class in Region |
現在 Exporter ではサポートされていません
|
||
注記
-
複数の式は、
演算子を使用して 1 つの 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
これらの修飾子はクリアランスルールで有用です。たとえば、ビアとパッド間のクリアランスと、ビアとトラック間のクリアランスで異なる値を定義したい場合があります。次のスコープ例は、これらの修飾子をクリアランスルール定義でどのように使用できるかを示しています。
-
ネット N1 のパッド-ビア間クリアランス:
InNet('N1') AND IsVia vs IsPad
-
ネット N1 のトップレイヤー上のトラック-トラック間クリアランス:
InNet('N1') AND IsTrack vs IsTrack AND OnTopLayer
スコープの別名
話し言葉と同様に、ルールスコープを定義する際、同じ意味を異なる書き方で表現できることがよくあります。レイヤーベースのスコープについては、次の別名がサポートされています。
-
またはOnTop –OnTopLayerOnLayer('TopLayerName')
-
の別名OnBottom –OnBottomLayerOnLayer('BottomLayerName')
-
の別名OnMidOnLayer('BottomLayerName')
-
– Mid Layer 1 から Mid Layer 30(トップ/ボトムを除く信号層)に対して使用される別名OnMid
-
– すべての信号層に対して使用される別名OnSignal
-
とTestPoint は互いに別名です。IsTestPoint
Specctra 設計のインポート
Specctra 設計をアクティブな Altium Designer PCB ドキュメントにインポートするには、PCB エディタのメインメニューから
PCB を Specctra 設計ファイル形式へエクスポート
Altium Designer の PCB ドキュメントは Specctra 設計ファイル形式にエクスポートできます。Outputjob file で
または、Altium Designer の PCB エディタのメインメニューから
OutJob ファイルの一部としてエクスポートする場合でも、