2003.09.30
CASLU & COMETU
Lesson 1 COMETUの構成と命令の実行過程
|
|
|
COMETUの構成図
以下に,COMETUの構成図の例を示します.例と書いたのは,COMETUの仕様を満たすCPUはいろいろ作れるからです.この図はWCASLUのCOMETシミュレータで表示される図です.
ただし,上の図にはCPUとメモリの両方が描かれています.まず,上の図を下のように,CPUとメモリに分けて見ることができるようになることが大切です.
CPUは以下のような構成要素で構成されています.
レジスタ
COMETUは,以下のようなレジスタを持ちます.レジスタとは,CPUが処理を実行するために、一時的にデータを格納しておくデータの入れ物のようなものです.これから演算を行なうための数値や,演算実行後の結果,現在実行している命令のメモリアドレス、CPUの状態などを格納しておきます.
-
PR (プログラムレジスタ): 次に実行される命令のアドレスを保存.プログラムレジスタの大きさは16ビットです.
- IR (命令レジスタ): 解読,実行する命令を保存.命令レジスタの大きさは32ビットです.
-
GR (汎用レジスタ) : 0〜7の8つの汎用レジスタがあります.汎用レジスタの大きさは16ビットです.
- FR (フラグレジスタ): 演算後の符号などの状態を保持します.オーバフローフラグ,符号フラグ,ゼロフラグの3ビットから成ります.
- MAR (メモリアドレスレジスタ): メモリを読み書きする際に,アクセスするアドレスを指定するレジスタ.16ビットです.
- MDR (メモリデータレジスタ): メモリとのデータのやり取りをするレジスタ.これも16ビットです.
レジスタ以外の構成要素
- ALU (演算装置): 算術,論理,シフト,比較などの演算を行います.
- Decoder (命令解読器): IRの命令を解読するモジュール.
- Controler (制御装置) : 命令の実行のための制御を行うモジュール.
- Bus (バス) : レジスタやALUなどの間をデータが通る道.
- Adder (アドレス加算器): 命令のアドレス部とインデックスレジスタの内容から有効アドレスを求める加算器.