沼津高専 電子制御工学科 |
MIRS98技術調査 VMEラック及びバス |
MIRS9805-TECH-0004 |
|
改訂記録 |
版数 |
作成日 |
作成者 |
承認 |
改訂内容 |
A01 |
1998/12/15 |
山本 悟 |
|
初版 |
VMEに関する調査
- VMEバスの概要
VMEバスのVMEは、Versa Module Europeの頭文字から由来しています。 Versaはモトロー
ラ社が68000CPUの為に開発したバスの名称であり、EuropeはVMEバス・システム用のボー
ド(モジュール)サイズがユーロカード(IECおよびDINが規定)に準拠していることを示
します。
VMEバスの使用では、ラックについて材質や寸法に関する仕様が決められています。
ボードを挿入する位置のことをスロットと呼び、20スロットまたは9スロットのラックのつ
いて寸法が決まっています。
VMEではコネクタが複数個並んだマザー・ボードのことをバックプレーンと呼び、材質や
寸法について仕様が決められています。20スロット用バックプレーンの前面図と後面図を
下の図1に示します。
- VMEバスの特徴
- データ転送は非同期式インターロック方式で行われる。
マスタ側とスレーブ側との間のデータのやりとりは、システム・クロックに同期して行
われるのではなく、スレーブ側からのDTACK*信号によって行われます。つまり図のよう
にスレーブ側からDTACK*(確認信号)を返さないかぎり、マスタ側はデータ転送サイクルを
終了しません(インターロック)。同一バス上にアクセス・タイム(応答時間)の異なるスレー
ブが混在する場合、この機能は大変有効です。また、スレーブ・モジュールを設計するう
えでも、モジュール側のタイミングにデータ転送のタイミングをあわせることができるの
で、設計しやすくなります。もちろん、インターロックがかかってしまって、マスタ側が
永遠に待っていることがないよう、バス・タイムアウト機能が用意されています。メモリ
モジュールの実装されていないアドレスへマスタがアクセスを行った場合などはDTACK*
が返ってきませんので、一定時間後(10〜100μs程度)タイムアウト・エラーとなっ
て転送サイクルが終了します。
- バス上に最大20までマスタが存在してよい。
VMEバスではバス・アービトレーション(調停)に関して厳密に仕様が決められているので、
複数のバス・マスタおよびCPUボードで構成される高性能なシステムを作成できます。
また、VMEバスではデータ転送のマスタだけではなく、割り込み応答処理機能をもつマス
タ(割込みハンドラ)も複数個存在することができます。割込みハンドラ間のアービトレーシ
ョンや優先順位に関しても、細かく仕様が定められています。
- VME
VMEバスのシステムでは、バックプレーン上のスロットの番号が決められ、番号の昇順に
デージ・チェーンが行われます。図のような最小構成では、一番左側(A01)のスロットに
CPUボード、その隣から右へ優先度に応じてI/Oボードが挿入されます。メモリボードはど
の位置でもかまわないが、図に示すように割り込みデージ・チェーンの邪魔にならないよう
に注意します。
VMEバス仕様では、1スロットを専有するプリント基板のことをボード、ボード上である一
つの機能をもった回路のことをモジュールと呼びます。したがって、一つのボード上に複数
のモジュールが存在する場合もあります。
VMEバスの定義内に含まれる各機能モジュールを図に示します。図中の用語の意味を以下で
説明します。
- システム・クロック・ドライバ
・・・VMEバスのシステムクロック(16MHZ)を発生し、供給する機能モジュール
VMEバスのデータ転送は非同期で行われるから
- アービタ
・・・複数のDTB(Data Transfer Bus)リクエスタからのバス使用要求を調停し、各リクエスタにバス
の使用権を与えるモジュールで、必ずスロットA01内のボード上に存在しなければいけません
- コントローラ・サブシステム
・・・VMEバス・システム中に必ず1つ存在しなければならないサブシステムで、スロットA01内の
ボード上に存在しなくてはなりません。DTBアービタとシステム・クロック・ドライバの両機能は
必ず含んでいなければなりませんが、下記の機能モジュールも必要に応じて含めます。
システム・リセット・ドライバ
ACファイル・ドライバ
バス・タイムアウト検出モジュール
このうち上の二つは必ずしもスロットA01内に存在しなければならないことはなく、都合の
いいところに設置することができます。
- マスタ
・・・データ・バス上でデータの転送サイクルを開始する機能、すなわちアドレス・バス、AM
コード、AS*、DS1*、DS0*、WRITE*などの信号線をドライブする機能を持つモジュールを
示します。多くの場合DTMマスタと表記されます。
VMEバス・システムの最小構成では、システム中(バス上)にDTMマスタは一つだけですが、
最大20(20スロット)のマスタが存在することもできます。その場合、各マスタのバスの使用の
使用はアービタによって調停されます。
- リクエスタ
・・・DTBの制御をアービタ(調停機能を有する回路)に要求する能力のある機能モジュールを示し
ます。
- 割り込みハンドラ
・・・割込み要求を検知し、それに対する応用能力を持つ機能モジュールを示します。通常、割
込みハンドラだけでは存在せず、マスタおよびリクエスタとともにマスタ・サブシステムを構成
します。
- マスタ・サブシステム
・・・マスタ、リクエスタ、割り込みハンドラで構成されるサブシステム(一枚のボード)です。マ
スタ、リクエスタ、インタラプタの組み合わせの場合もあります。(DMAコントローラ機能付き
I/Oボードなど)。
- スレーブ
・・・マスタによって開始されるデータ転送に応答する機能を持つモジュールを示します。DTA
CK*、BERR*以外のコントロール・ライン、アドレス・ラインによってドライブされます。
通常はDTBマスタとの関係でDTBスレーブ表記されます。
- インタラプタ
・・・割込み要求を発生し、インタラプト・ハンドラを含むバス・マスタに応答する機能を持つモ
ジュールを示します。
- スレーブ・サブシステム
・・・スレーブとインタラプタの両方で構成されるサブシステム。メモリ・ボードのようにインタ
ラプタの機能を持たないボードには単にスレーブと呼び、スレーブ・サブシステムとは呼ばな
いので注意。