プロが教えるわが家の防犯対策術!

(2)パイプラインハザードに関する以下の問いに答えよ。C言語で図1のコードをコンパイルしたところ図2のような機械語に翻訳された。変数のメモリマップは図3を参照せよ。

(a)CPUがこの機械語をパイプライン処理している場合に、どのようなパイプラインハザードがありうるか説明せよ。

(b)上記のパイプラインハザードを回避するために、図2の機械語を一部修正した機械語を記せ。その際、なぜハザードが回避できるのか説明せよ。

図1:C言語による演算コード
A=B+C
D=B+E

図2:図1のコードを翻訳した機会コード
LOAD R1 SO(4)
LOAD R2 SO(8)
ADD R3 R1 R2
STORE SO(0) R3
LOAD R2 SO (16)
ADD R3 R1 R2
STORE SO(12) R3

図3:変数のメモリマップ
 
SO→|AAAA|
  |BBBB|
  |CCCC|
  |DDDD|
  |EEEE|



データ依存、資源依存、制御依存のどれかによるものだと思うのですが、全く検討がつきません。ご教示お願い致します。

A 回答 (2件)

この質問に対する回答ではありません。



> スーパースカラーは命令待ちの遅延時間を短縮する方法ですし、
> 1クロック単位の命令実行速度そのものは向上しません。
http://okwave.jp/qa/q8159131.html の回答No.2

スーパースカラというのは次のような技術であるのに,
http://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%BC% …

質問者は,正解の候補としてスーパースカラを除外することに「ありがとうございます!納得しました。」とのこと。参考までに,なぜ納得できたのか,お聞かせいただけるとありがたいです。
    • good
    • 0
この回答へのお礼

いつもご回答ありがとうございます。
いつも参考にさせて頂いております。

お礼日時:2013/07/02 19:08

パイプラインの構成は?

この回答への補足

パイプラインに関する記述は特にありません。

補足日時:2013/07/02 11:01
    • good
    • 0

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