コンテンツへスキップ

第3回 クロストーク解析用の基板の作成 (2)

前回の連載ではG-Formatを使って基板の部品配置まで行いました。今回はG-Formatを使って配線パターンを定義して基板を完成させます。今回までの内容で、単純なパターンの基板レイアウトをG-Formatで記述できるようになります。

復習のためXtalk検証用基板のレイアウト図を下に示します。前回は基板の定義と部品の配置までを行いました。

並走距離とクロストークの関係を検証するための配線パターン
並走距離とクロストークの関係を検証するための配線パターン

下にG-Format の構成を示します。今回は .netattr 以降を説明します。

 

.netattr セクション

 

.netlist セクションではネットに対する属性を定義しますが、ほとんど 使用されないため説明は省きます。 .netlist セクションは未定義でも問題ありません。

 

 .netlist セクション

 

.netlist セクションでネットを定義します。 本稿の例ではL1層に6本の配線を、L2層にグランドを配置していますが、 .netlist セクションの記述は以下のようになります。 では、この記述を元にネットの定義方法を説明して行きます。

ネットは以下の形式で定義します。

netName netType attributeID {
compName pinName ioType { x y signalLayerNumber }
compName pinName ioType { x y signalLayerNumber }
....
}

netName

ネット名です。ダブルクォート(")で名前を囲みます。

netType

ネットタイプです。以下のいずれかを設定します。

    • S : 信号
    • P : 電源
    • G : グランド

attributeID

.netlist セクションで定義したネット属性の参照番号を記載します。 ネット属性を参照しない場合は0を記載します。

それでは、あらためて本事例でのネットの定義を見てみます。 ブレイス({})内の記述は省略しています。

.netlist
"GND" G 0 { ... }
"NA1" S 0 { ... }
"NA2" S 0 { ... }
"NB1" S 0 { ... }
"NB2" S 0 { ... }
"NC1" S 0 { ... }
"NC2" S 0 { ... }
.end netlist

この例では、 GNDNA1NA2NB1NB2NC1NC2 の6個のネットを定義しています。ネットタイプは GND がグランド(G)、 その他は信号(S)となっています。

ブレイス({})内には、そのネットに接続する端子の情報を記載します。 例えばネット NA1 の例を見てみましょう。このネットには2つの端子が 接続しています。

"NA1" S 0 {
XA1 P1 B { 25.08 50.18 1 }
XA2 P1 B { 74.92 50.18 1 }
}

端子接続の定義は以下の形式で定義します。

compName pinName ioType { x y signalLayerNumber }

compName

.component セクションで定義されたコンポーネントのインスタス名です。

pinName

compName で参照されたコンポーネントが参照する部品の端子名です。 端子は .part セクションで定義されています。

ioType

端子のタイプです。以下のいずれかを設定します。 ここに記載する端子タイプは、 pinName で参照する端子のタイプと同一の値を記載してください。

    • D : 出力端子 (Driver pin)
    • R : 入力端子 (Receiver pin)
    • B : 双方向端子 (Bidirectional pin)

再度 ネット NA1 の端子定義を見てみます(ブレイス内の記述は省略しています)。

"NA1" S 0 {
XA1 P1 B { ... }
XA2 P1 B { ... }
}

XA1 P1 はコンポーネント XA1 の P1 端子を表しています。 続く XA2 P1 はコンポーネント XA2 の P1 端子を表します。XA1 と XA2 は、下記のように .component セクションに定義されていました。 双方のコンポーネントが参照している部品は U1 です。 P1 は、 .part セクションに定義されている部品 U1 の端子名となります。

.component
XA1 U1 25.08 50 1 0
XA2 U1 74.92 50 1 0
.....
.end

部品 U1 の定義は以下のようになっていました。端子 P1 の 端子タイプは、 B (双方向)となってます。従って、 .netlist セクションの端子定義でも端子タイプは B と記述しています。

.part
U1 R -0.09 -0.28 0.09 0.28 0.1 {
P1 0 0.18 B 1
P2 0 -0.18 B 1
}
.end

引き続き端子定義のブレイス内の記述を見ていきます。

"NA1" S 0 {
XA1 P1 B { 25.08 50.18 1 }
XA2 P1 B { 74.92 50.18 1 }
}

ブレイス内の記法は以下のようになっています。

{ x y signalLayerNumber }

x y

端子位置のxy座標です。 端子 XA1 P1 の 座標は 25.08 50.18 となっています。

signalLayerNumber

端子が配置されている層の層番号です。 コンポーネント XA1 はL1層に配置されているので端子もL1層に配置されています。 従って層番号は 1 となります。

ここで端子 XA1 P1 の座標が(25.08, 50.18)になっているか確認してみましょう。 コンポーネント XA1 が参照している部品 U1 の定義は以下のようになっています。

U1 R -0.09 -0.28 0.09 0.28 0.1 {
P1 0 0.18 B 1
P2 0 -0.18 B 1
}

端子 P1 の座標は 0 0.18 となっていますから下図のようになります。

部品U1の形状
部品U1の形状

 

またコンポーネント XA1 の定義は以下のようになっています。

XA1 U1 25.08 50 1 0

部品 U1 を座標(25.08, 50)に配置すると端子 P1 の座標は

(0, 0.18) + (25.08, 50) = (25.08, 50.18)

となります。

コンポーネントX1の配置
コンポーネントX1の配置

 

では改めてネット NA1 の定義を見てみます。

"NA1" S 0 {
XA1 P1 B { 25.08 50.18 1 }
XA2 P1 B { 74.92 50.18 1 }
}

ネット NA1 は、 座標(25.08, 50.18)でL1層に配置されている端子 XA1 P1 と、 座標(74.92, 50.18)でL1層に配置されている端子 XA2 P1 に接続し、そのネットタイプは 信号(S) です。

最後にグランドの定義を確認して .netlist セクションの説明を終わります。 グランドの定義は以下のようになっています。

"GND" G 0 {
}

ブレイス内には何も記述がありません。これは、このネットに接続する端子が 無いことを意味しています。

ここでネットを定義する際に接続する端子の座標を記載することに疑問を感じた方も 多いと思います。 この座標はコンポーネントの配置座標から算出できるものです。 「EDA側で計算しろよ」と言いたくなる所です。 「G-Format裏話」で書いたように「そうなっていた」ので、 申し訳ありません、御容赦ください。

 

.via セクション

 

.via セクションではビアの形状を定義します。 今回の例ではビアは使いませんので説明は省略します。 別の機会に説明します。

 

.bondwire セクション

 

.bondwire セクションではボンディングワイヤの形状を定義します。 今回の例ではボンディングワイヤは使いませんので説明は省略します。 別の機会に説明します。

 

.route セクション

 

.route セクションは配線パターン(形)を定義します。 様々な形状の配線パターンを定義することができますが、XTalk検証用基板で使用してるPATHと矩形に絞って説明します。XTalk検証用基板で使っている3組の並走配線とべたグランドの配線パターンの記述は以下のようなります。

 

配線は以下の記法で定義します。

netName {
配線パターン
....
}

netName

ネット名です。 .netlist セクションで定義されたネットを参照します。 ネット名はダブルクォート(")で囲って下さい

ブレイスの内に配線パターンを記述しますが、形状によって記法が異なります。 ここではグランドで使用している矩形と、信号配線で使用しているパスに 絞って説明します。

 

矩形パターン

矩形は以下の記法で定義します。

rectangle signalLayerNumber width height x y

rectangle

矩形パターンを表すキーワードです。

signalLayerNumber

配線パターンを配置する層の層番号です。

width height

矩形の幅(width)と高さ(height)です。

x y

矩形の配置座標です。矩形中心を、この座標に配置します。

矩形パターン
矩形パターン

XTalk検証用の基板は裏面(L2層)を べたグランドとしています。グランドは矩形パターンで定義しています。

"GND" {
rectangle 2 200 200 0 0
}

2 は、グランドバターンが配置されている層の層番号です。 本稿の例ではL2層(裏面)を意味しています。200 200 は、矩形の幅と高さです。200mm × 200mm の正方形となります。0 0 は、矩形の配置座標です。矩形の中心を (0, 0) に配置しています。

パス

本稿の例では信号線のパターンはパスで定義してます。 パスの記法を以下に示します。

path signalLayerNumber width {
x y
x y
....
}

path

パスを表すキーワードです。

signalLayerNumber

配線パターンを配置する層の層番号です。

width

パスの配線幅です。

x y

パスの頂点座標です。ブレイス内に必要な数の頂点座標を列挙します。

パス
パス

 

ネット NA1 の配線パターンは、以下のように定義されていました。

"NA1" {
path 1 0.16 {
75 50.18
25 50.18
}

キーワード(path)に続く 1 は、この配線が引かれている層の層番号を表します。 NA1* の例ではL1層に配線が引かれていることを意味してます。0.16 は配線幅(0.16mm)を意味しています。ブレイス内はパスの頂点座標です。(75, 50.18) と (25, 50.18) となります。

XTalke検証用の基板の全容

以上でXTalke検証用の基板レイアウトを 表現するGFormatの解説を終わります。 最後にXTalk検証用のG-Formatの全体を示します。

 

今回はここまでとします。尚、ここで示した仕様がG-Fomratの全てではありません。より詳細な情報が必要な方は仕様書(IEEE 2401)をご覧いただくかJEITA LPB-SCまでお問い合わせください

次回はGEN Design Technologiesが提供してるLPBフォーマット交換サイトを利用して作成したG-Formatのレイアウトを表示したり、記述ミスをチェックする方法を説明します。

 

Translate »