沼津高専 電子制御工学科 |
MIRS99技術調査 VMEラック及びバス |
MIRS9901 |
|
改訂記録 |
版数 |
作成日 |
作成者 |
承認 |
改訂内容 |
A01 |
2000/01/17 |
坪井翔也 |
|
初版 |
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バスのシステムクロック(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スレーブ表記されます。
- インタラプタ
・・・割込み要求を発生し、インタラプト・ハンドラを含むバス・マスタに応答する機能を持つモ
ジュールを示します。
- スレーブ・サブシステム
・・・スレーブとインタラプタの両方で構成されるサブシステム。メモリ・ボードのようにインタ
ラプタの機能を持たないボードには単にスレーブと呼び、スレーブ・サブシステムとは呼ばな
いので注意。
(参考:http://www2.denshi.numazu-ct.ac.jp/mirsdoc2/mirs9805/tech/num0004a/vme.html)
以下はMIRS9901の独自の調査の内容になります。
MIRSについてのVMEの調査報告
1.MIRSで使用するVMEラックのスロット数は、5スロットです。各スロットに挿入するボードは、
CPUボード、MMIボード、I/Oボード、I/Osubボードの4枚です(スロットは1つ余る)。
2.全てのボードがVMEバスで接続(データのやりとり)がされているわけではいません。実際にVMEバ
スを使用してデータの交換を行っているボードは、CPUボードとI/Oボードだけです。I/Osubボード
はVMEバスから電源とCLOCKを、MMIボードは電源の供給をそれぞれ受けています。
3.VMEラック、バスを使用する利点としては、メンテナンスが楽である(サイズさえ合っていればス
ロットに挿入するだけ)という事がまずあげられます。他にもVMEバス自体の限界が高いこともあ
りますが、MIRSでは特に関係ありません。
4.注意点
其の一
バスと接続されていないボードはジャンパ接続を忘れない。(下図参照)
CPUボードとI/Oボードは割り込み応答信号を次のボードに送る機能がついている
が、I/OsubボードとMMIボードはその機能が付いていない(正確には、割り込み応答信
号線がつながっていない)そのため、ジャンパ接続をして割込み応答信号を次のボードに送るこ
とができるようにする必要がある。これを忘れると割り込み処理が行われないので注
意が必要。
其の二
スロットにボードを差す順番は、CPU-MMI-I/O-I/Osubの順番です。スロットにボードを挿入
する順番は、VMEバスを使用するボードについては順番が決まっています。(CPUとMMI、I/OとI/Osub
はそれぞれVMEバスを使わずにつながっているので並べてスロットに挿入する。)
@ まず、あるボードが割り込み要求をしたとする。(複数でも可)
A 割り込み要求信号がCPUボードに届くとCPUボードから割り込み応答信号が発信
される。(CPUボードにはバスを管理する機能があるため必ず一番最初のスロット
に挿入する)
B 割り込み応答信号線は、デージチェーン式につながっているのでので割り込み応答
信号はスロットに挿入した順番に各ボード(VMEバスで接続されているもの)を通
ってくる。途中割り込み要求をしているボードがあれば、そこで割り込み処理が
始まる。処理が行われれば、それ以降のボードには割り込み応答信号は届かない。
このため必ずボードを優先順位順に挿入する必要がある。