• 検索結果がありません。

回路図 DSL

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 69-72)

* 6 REGISTER DETAILED DESCRIPTIONS FOR MAGNETOMETER

5.2.4 ハードウェア情報入力用 DSL

5.2.4.3 回路図 DSL

回路図

DSL

は,ハードウェア部品とその電気的な結線情報を入力するものであ る.回路図は多くの回路図エディタでサポートされているネットリストエクスポー ト機能を利用し,ネットリストをスクリプトを使い

DSL

にテキスト変換し読み 込む.

HwCircuitDiagram:

component

net { HwWire }

,

} HwWire:

component:

Name

HwPackagePin:

Name : HwWire

{

component Name HwPackagePin ,

HwWire

と して 定義された 要素の参照

5.16:

回路図

DSL

の定義

5.16

に回路図

DSL

の定義を示す.

HwCircuitDiagram

の定義では,前半の

net

から

}

までが結線の定義,後半の

Component

のがハードウェア部品の定義である.

結線の定義では指示詞

net

に続き大カッコで囲んだ中に,

HwWire

で結線名をカ ンマ区切りで列挙する.

一方ハードウェア部品である

component

では,指示詞

component

に続きハード ウェア部品名の記述し,大カッコ内にピン情報と結線情報を記述する.なお結線 情報は,上記の結線で定義した要素の参照となっており,

DSL

記述時には,予め 結線の定義にて結線名を列挙しておくことで,参照することができる.

回路図DSL

T

ネット リス ト 回路図

( 回路図エディタ)

Export 変換

Rubyによる テ キスト変換 プ ログ ラム

Net Part Pad Pin Sheet GND ATMEGA328 P$22 GND2 1

ATMEGA328 P$8 GND 1 KXP84 P$1 GND 1 N$2 ATMEGA328 P$28 PC5 1

KXP84 P$12 SCL 1 N$4 ATMEGA328 P$27 PC4 1

KXP84 P$11 SDA 1 VDD ATMEGA328 P$7 VCC 1

KXP84 P$2 VDD 1

5.17:

回路図

DSL

の入力例

5.17

に入力例を示す.回路図エディタから出力されたネットリストは,結線 情報を表形式で表したもので,

DSL

で想定している表記法とは異なる.しかしな がら,情報量としてはほぼ同等であるため,ネットリストから

DSL

へのテキスト 変換を行うスクルプトを作成した.

回路図DSL

T

回路図モデル

<<Component>>

Atmega328

<<HwWire>>

GND <<HwWire>>

N1

<< HwPackagePin >>

(Pin : Net) P27 : N1

<<Component>>

KXP84

<<HwPackagePin>>

(Pin : Net) P11: N1

<<HwComponent>>

KXP84

<<HwPackagePin>>

P11

<< HwPackagePin >>

P27

<<HwComponent>>

Atmega328

・ ・・

2 2 3

回路図DSLASTモ デル(抜粋)

・ ・・

変換

( 回路図DSL AST 回路図モデル)

Component

HwComponentに変換.

HwPackagePin ハードウェ アモデル の

HwPackagePinに変換.

netが同じ要素 同士を接続

Xtextによる 自動変換

5.18:

回路図

DSL

から回路図モデルへの変換

5.18

に回路図モデルへの変換を示す.

5.2.5 ハードウェアモデルの結合

ハードウェ ア モ デル ハードウェ ア 選択モデル

From ハードウェ アフィー チャ モ デル ハードウェ ア部品モ デル

MCU ハードウェ ア部品モ デル

( デバイス)

回路図モデル ブ ロッ ク図 モ デル

Process 選択された ハードウェア フ ィー チャに関連付 けたハー

ド ウェア部 品モ デルを抽出

ブ ロッ ク図 のコ ンポーネント 名とハ ードウェア部 品モデル

を 名前でマッチングし,

5.19:

ハードウェアモデルの結合

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 69-72)