2

MIPS でのパイプライン処理について学習しています。即時指示とその指示プロセスについて質問がありました。私はその ori/addi/lui を読み続け、即時の指示または I タイプです。また、I タイプの命令は、MIPS 5 ステージ プロセスの最初の 3 ステージのみを必要とすることもわかっています。以下のように

     |instruction memory|register read|ALU op|DataMemory|Register Write|
     |------------------------------------------------------------------
 addi|         X        |       X     |    X |          |              |
 -----------------------------------------------------------------------
 ori |         X        |       X     |    X |          |              |
 -----------------------------------------------------------------------
 lui |         X        |       X     |   X  |          |              |
 -----------------------------------------------------------------------

私の質問は最初です、この表は正しいですか? これらの命令が、レジスタの内容を変更するためにレジスタへの書き込みを必要としないのは奇妙だと思います。この表が正しくない場合、誰かが正しい表がどのように見えるかを手伝ってくれますか?

4

1 に答える 1

2

などの即時命令はaddi/ori/lui、その結果をレジスタ ファイルに書き込む必要があります。例: addi $dest, $src, immd_val. この命令では、オペランドの 1 つが即値です。したがって、計算は になります$dest = $src + immd_val。ご覧のとおり、結果を register に書き戻す必要があります$dest。あなたは正しい軌道に乗っています。テーブルを適切に変更する必要があります。

分岐、ストア、比較など、結果をレジスタ ファイルに書き戻す必要のない命令がいくつかあります。

于 2011-09-04T14:31:45.583 に答える