Changes between Version 11 and Version 12 of Ex08課題2016
- Timestamp:
- Jun 6, 2016 7:07:07 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ex08課題2016
v11 v12 18 18 他の命令の場合も「0→1」の遷移は共通です。状態0は命令フェッチ、状態1は命令デコード&レジスタ読み出しをおこないます。 19 19 20 状態0では、以下の動作が同時に実施されます。 20 === 状態0では、以下の動作が同時に実施されます === 21 21 22 22 * メモリから現在のPCのアドレスにある命令を読み出す。 … … 32 32 その結果をPCレジスタに書き込むため、PCWriteはアサートされ、PCSource(2 bit)は"00"となります。 33 33 34 状態1では、以下の動作が同時に実施されます。 34 === 状態1では、以下の動作が同時に実施されます === 35 35 36 36 * 次のサイクルで計算に利用するレジスタの値を読み出す 37 * ジャンプ先のアドレス を計算する37 * ジャンプ先のアドレス(PC+オフセット)を計算する 38 38 39 39 この時に必要な動作は、主としてALUでのアドレス計算です。 40 ALUの入力AにはPCの値を入力するため、それを制御する信号ALUSrcAはネゲートします。 41 ALUの入力Bにはアドレスのオフセットを入力するので、それを制御する信号ALUSrcB(2 bit)は"11"となります。 42 この時入力される値は、状態0で読み出された命令の下位16ビットを符号拡張して2ビット左シフトした値となります。 43 状態0と同様に、ALUは加算をするためALUOp(2 bit)は"00"とします。 40 44 41 45 == 制御部の設計(1) ==
