これ何て呼びますか

画像の結果のように2クロック目でなぜID_RSが4,ID_RTが6になるのですか?パイプラインの各ステージでどのような処理が行われているかを教えてください。
80000000番地にADD $10,$8,$9 (0x01095020)を書き込み、レジスタ$8に4、$9に6を設定してあり、80000004~80000014番地にはNOP命令(00000000)を書き込んであります。

「パイプラインに詳しい方」の質問画像

A 回答 (5件)

CPUの仕様やレジスタの意味が分からないので何とも言えませんが、一般的なRISCプロセッサであれば、フェッチ→デコード→実行→ライトバックという流れを踏みます。

各クロックでそれぞれどのステージに対応しているかが分かればわかるのではないでしょうか。雰囲気的に、Fがフェッチ、Dがデコード、EXが実行、MEMがライトバックな感じもしますが・・・
    • good
    • 0

CPUの仕様が判らないので一般的な話になります。


1クロック目で80000000番地からフェッチする(PCをインクリメント)
2 クロック目でレジスタの値を演算器にセットする、80000004番地からフェッチする(PCをインクリメント)NOPなので何もしない。
3 クロック目でレジスタの値を演算する。
4 クロック目でどこかに移す(よう分からん)
5 クロック目で$10に格納する。
    • good
    • 0

1クロック目で命令読み込み



2クロック目で命令を解読
「$8の値と$9の値を足して$10に格納」という命令と判明
計算の前準備としてID_RSに$8の値、 ID_RTに$9の値を格納

3クロック目で命令の実行
ID_RSの値と ID_RTの値を足した結果がEX_Cへ出力

4クロック目で結果をメモリに書き込む
メモリ制御セクションのレジスタMEM_Cへ値を転送
$10へ書き込み処理を実行

5クロック目で処理が完了
$10には000000Aが格納されている


こんな所なんじゃないかな?
    • good
    • 0

「ID_RS」とか「ID_RT」とか書いてあるけど, それってどういうものなの? あと, どんなパイプラインなのか説明してもらえな

いかな.
    • good
    • 0

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報