MINIMIPS2プロセッサ (JUMPとLW, SWだけ)
琉球大学・工学部・情報工学科 教授 ファイヤー和田
私に用事がある時は、
「ファイヤー!」、「ファイヤー和田先生!」、「和田さん!」
と大声で叫ぶか呼んでください!必ず振り向きます!
1)本日の内容
SPWのHDS(Hardware Design System)を用いて、JUMP命令、ロードワードLW、ストアーワードSW命令を実行できるプロセッサを設計する。
2)和田の回路ライブラリを使えるようにする
nirai上の ~/spwfiles/cds.lib なるファイルに以下の一行を追加して書き込む(すでに事前の実習で変更済みのはず)
DEFINE diglib /home/teacher/wada/pub/spwlib
以下にファイヤー和田のcds.libを示す
DEFINE digsysの方には各自のディレクトリが書かれているはずである。
3)和田のライブラリを自分のディレクトリへコピーする
SPWを起動して diglib/dram.detailをOPENする
そして Save As メニューで digsys/dram.detail へSAVEする
以下のファイルに対してどうようなことを繰り返す(diglib から digsys へコピーする)
diglib/dram.symbol
diglib/reg_file.detail
diglib/reg_file.symbol
diglib/minimips2.detail
diglib/minimips2.symbol
diglib/test_minimips2.system
右上の青い四角のBOXは前回のMINIMIPS1プロセッサと同じで、下の回路と入出力ポートが追加されている。
追加部分を拡大すると、
ここでDRAMの動作を復習しておく
コピーしたdigsys/test_minimips2.systemをOPENし、図中のminimips2は和田のライブラリにminimips2が置かれているので、クリックして選択後、CUTして削除し、自分のライブラリにコピーしたdigsys/minimips2.symbolを配置する。
dramも和田のライブラリのものが置かれているので、クリックして選択後、CUTして削除し、自分のライブラリにコピーしたdigsys/dram.symbolを配置する。
上記インスタンスの置き換えは、実はインスタンス選択後 >EDIT>Relplace>NEW で簡単にできます!
すべてのSIGNAL SINKのファイル名を修正する。
ROMのデータファイルを自分のディレクトリにコピーする。
$cd (自分のdigsysのディレクトリ)
$cp /home/teacher/wada/pub/spwlib/program2.ascsig program2.ascsig
以下のようなファイルである
最初の3つの命令はNOP、そして、LWが2命令、SWが2命令、NOPが2命令、JUMP命令からなる
digsys/test_minimips2.systemのROMをダブルクリックしてコピーしたROMデータを入力する。
これで、自分の環境でMINIMIPSプロセッサ2が実行できる。
4)シミュレーションの実行
Simulation Managerを起動し、1000サイクルでシミュレーションを実行し、以下のような動作を確認する。
講義のページへのリンク