Presentation is loading. Please wait.

Presentation is loading. Please wait.

プロジェクト実習 LSIの設計と実現 パイプライン実行とハザード.

Similar presentations


Presentation on theme: "プロジェクト実習 LSIの設計と実現 パイプライン実行とハザード."— Presentation transcript:

1 プロジェクト実習 LSIの設計と実現 パイプライン実行とハザード

2 今日の目標 ハザード 分岐命令

3 ハザードの回避 フォワーディング 関係者が相互確認 常にできるとは限らない Aさん +1万円 10万円 11万円 Aさん -1万円 10万円

4 ハザードの回避 フォワーディング ADDI R1, R1, 1 IF ADD ID EX MEM WB IF ADD ID EX MEM

5 フォワーディング MEM MEM/ WB ID/ EX EX EX/ MEM A C B

6 フォワーディング ? MEM MEM/ WB ID/ EX EX EX/ MEM A C C1 B

7 ハザードの回避 フォワーディング IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB
ADDI R1, R1, 1 ADDI R2, R2, 2

8 フォワーディング ? MEM MEM/ WB ID/ EX EX EX/ MEM A C C1 B

9 ハザード 間にさらにもう1命令入った場合も AだけではなくBの場合も 優先順位 ADD R1, R2, R1 ADD R2, R3, R1

10 ストール ロード命令 EXステージではまだ不明

11 ストール ? MEM MEM/ WB ID/ EX EX EX/ MEM A C C1 B

12 パイプラインプロセッサと分岐 分岐が成立した場合に不要になる命令 PC=1 ID EX MEM WB PC=2 ID EX MEM WB
PC=X ID EX MEM WB 分岐が成立した場合に不要になる命令

13 不要な命令をどうするか? 実行することにする IFで止める キャンセルする 困る場合はNOPをユーザが挿入する
遅延分岐 (delayed branch) IFで止める IDで分岐命令であることを確認する キャンセルする 分岐しなかった場合に得

14 分岐命令 後続命令を実行する場合 IF IF/ ID ID ID/ EX EX EX/ MEM Taken? PC Next PC +1

15 分岐命令 後続命令をフラッシュする場合 IF ID EX Taken? +1 Next PC IF/ ID ID/ EX EX/ MEM
Next PC +1

16 分岐命令 後続命令を止める場合(タイマが必要) IF ID EX Jump? +1 Next PC IF/ ID ID/ EX EX/
MEM PC Jump? Next PC +1

17 分岐予測 頻繁に分岐が成立する場合 静的分岐予測 動的分岐予測 毎回フラッシュするのは無駄 →成立する方向の実行を継続
成立しなかった場合はフラッシュ 静的分岐予測 後方分岐は成立、前方分岐は不成立 後方分岐はループのことが多い 動的分岐予測 過去の結果を利用して予測 現在の高性能プロセッサではほぼ必須

18 今後の予定 来週(3日)は出張 再来週(10日)はサマーブートキャンプ 12日 午後は自習 17日 最終授業 24日 締切
→自習 再来週(10日)はサマーブートキャンプ →半自習 12日 午後は自習 17日 最終授業 24日 締切 31日 締切その2


Download ppt "プロジェクト実習 LSIの設計と実現 パイプライン実行とハザード."

Similar presentations


Ads by Google