沼津高専 電子制御工学科 | |||||||
| |||||||
改訂記録 | 版数 | 作成日 | 作成者 | 承認 | 改訂内容 | 提出先 | |
---|---|---|---|---|---|---|---|
A01 | H12/1/18 |
河野丈志 |
河野丈志 | 初版 |
MPUボードとはCPUボードとI/0ボードという2枚のボードで構成されている。 CPUボード(名称 VMBC-1)にはRS232C用のコネクタが2つ搭載されており、そ のコネクタを通し、外部の機器(パソコンなど)とのデータのやり取りをして いる。また、I/Oボード(名称 VIPC310)にはロータリーエンコードとIP-Digital48を搭 搭載できる。IP-Digital48ボードには、さらにMC68230 PARALLEL INTERFACE/TIMER(PI/T)(50ピンのコネクタ)を搭載していて、それで外部とのデータのやり取りをする。 ここではCPUボードについて解説する。
名称 | VSBC-1 Single Board(68HC000) Computer Module for the VMEbus |
CPU | MC68000 クロック :12.5MHz(16.7MHzに変更可能) |
サイズ | 100×160(mm) (これはVMEbusの規格の大きさの一つでシングルハイトという) |
製造元 | PEP Modular Computer |
RAM | SRAM 256KB×2 |
ROM | EPROM 128KB |
Serial I/O | 68562DUSCC:ポートA,ポートBの2つのポートが使える。 |
Parallel I/O | MC68230:PI/Tを搭載する。16のパラレルI/Oライン (8bit×2port)と4つのハンドシェークラインを待つ。そして24bitのタイマ/カウンター を持つ。これにより、ハードウェア割り込み、タイマ割り込みなどが行える。 |
Realtime Clock | 12/24時間時計、曜日カウンター、アラーム、タイマ割り込み |
VMEbus interface | インターフェイス:A16:D16/D8 MASTERコネクタ:DIN4612 C型 96pin P1コネクタ |
Power | 通常DC5V(±5%),750mA RS232C使用時 DC±12V 100mA RAM,RTCのバックアップ用の電源リチウム電池 800mAh(on-boar Battery) |
Temperature ranges (使用温度範囲) |
動作時:0℃かた+70℃ (標準) -25℃から+85℃ (拡張) * +85℃以上ではバッテリーをはずす。 -55℃から+125℃ (軍事用) 保存時 -55℃から+85℃ |
Watchdog | 400msecごとに信号が送られてこないと、以上が発生したとしてシステムリセットを行う。 |
Clock | CPUクロック×1 システムクロック×1 RTCクロック×1 DUSCCクロック×1 |
Interrupt handler | 7levelの割り込みが可能(IRQ1からIRQ7)。システムが設定しているオートベクタは下の表に通りである。 |
Abort switch | level7 |
ACFAILE | level7 |
RTC/TICK | level6 |
DUSCC | level5 |
SYSFAIL | level4 |
PI/T | level3 |
SCSI | level2 |
1.特徴
モトローラ社のMPU68000は、特別な入力命令を持たず、I/Oをメモリー空間に配置する
メモリーマップト方式を採用している。そのため常に16Mバイトに目盛空間に一様にアクセスできる。68000では常にCLK入力の10クロック分のE信号を定期的に出力している。通常68000のデータ入出力はE信号と関係なく非同期に行われている。68000は16ビットのMPUでありながら内部レジスタは、すべて32ビットになっている。また、レジスタは用途に関してはあまり制限の多くない汎用レジスタ方式を採用している。レジスタ間のデータ転送などの回数を減らすことができる。
2.レジスタ
68000のレジスタはデータレジスタ(32ビット)をD0〜D7の8個、アドレスレジスタ(32ビット)をA0〜A7の8個、ステータスレジスタ(16ビット)を1つ、プログラムカウンタ(32ビット)がある。ただA7はスーパーバイザ用スタックポインタとユーザ用スタックポインタの2つの兼用としてはじめから用途が決まっている。スーパーバイザ用か、ユーザ用かはステータスレジスタのステートビットによって決まる。
* アドレスレジスタは32ビットあるがICのアドレスバス用のピンは、24ビットである。
そのため16Mバイトのメモリ空間となっている。
3.スーパバイザモードとユーザステート
68000は、実行時の状態をスーパバイザモードとユーザモードの2つに分けて、いくつかの命令はスーパバイザステートのときにしか実行できないようにしている。これは68000がユーザがかってに使っては困るようなシステム関係の命令を持っているためである。これらの命令は特権命令と呼ばれ、ステータスレジスタの変更や割り込み処理に関する命令群がこれに属する。スーパーバイザモードか、ユーザモードかはステータスレジスタのステートビットによって決まる。
4.68000が扱えるデータ型
68000は1、4、8、16、32ビット長のデータを取り扱うことができる。これらの内容としてはビットデータ、BCD、バイトデータ、ワードデータ、ロングワードデータがある。データレジスタは4種類のデータを保持することができるが、アドレスレジスタは16ビット、32ビットを単位をとして扱う。
5.例外処理
例外処理VECTORは、MPUが例外処理ルーチンのアドレスを得るために0〜255番までの256種類が用意され、0番地から3FF番地までの1Kバイトに配置されている。このため必要に応じた例外処理プログラムの先頭番地をVECTOR TABLEに書き込んでおかなければならない。例外処理には、MPUが以上と判断することにより発生するものもあるが、リセットや割り込み、さらにトラップ命令に対しての処理も例外処理として分類されている。どの場合にも例外処理は定められたベクタをフェッチし、ベクタに書かれたアドレスから命令を実行することにより開始する。
6.バスインターフェイス機能
68000のバスインターフェイスの大きな特徴は非同期式インターフェイスである。この非同期式インターフェイスはバスクロックを持たない。その代わりバスサイクルの終了はI/Oやメモリからのデータを受け取ったという応答信号(DTACKバー Data Transfer Acknowledge)によって行われる。この方式は多少回路の増大があるものの、システムの融通制が増すので16ビットシステムとしては適切なものである。68000は更に同期型インターフェイスモードに切り替えて古い8ビット周辺LSIにも接続できる。8ビット周辺LSIは16ビットシステムにおいても重要なI/O機器の接続を可能にする。
7.MPU68000の端子機能