[理工] 計組 高銘課本 pipeline

看板Grad-ProbAsk作者 (feng.)時間10年前 (2013/10/08 16:38), 編輯推噓0(005)
留言5則, 2人參與, 最新討論串1/1
大家好第一次在這邊請教問題 下冊第五章 p257 關於94台大電機 第四小題 1 DIVE : add $t3,$zero,$zero 2 add $t2,$zero,$zero 3 lw $t1,4($a0) 4 lw $t0,0($a0) 5 LOOP : beq $t2,$t0,END 6 addi $t3,$t3,1 7 add $t2,$t2,$t1 8 j LOOP 9 END : sw $t3,8($a0) 這是程式片段 X at 0($a0), Y at 4($a0) , Z at 8($a0) 第四小題主要敘述重點 Rewrite the code assuming delayed branches are used X/Y at least 2 branch are resolved in RF/ID 題目要問 這個程式執行完 需要幾個clock 我的算法是 3.4 行調換 解決data hazard 1~4行 4個 clock 5.6.7.8.5.6.7.8.5.9 後面照這樣執行 共14個clock 解答上是 (n+k-1)= (9+5-1)=13 我不太懂解答的方式 以及我錯誤的部分 請教一下各位囉 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.244.59.72 ※ 編輯: h56999 來自: 60.244.59.72 (10/08 16:42)

10/08 20:58, , 1F
不懂3.4行有hazard?還有解答方式是N+S-1=cycles來的 N是
10/08 20:58, 1F

10/08 20:59, , 2F
指令數 S是stage數 你把指令讀進pipeline時cycle定義搞
10/08 20:59, 2F

10/08 21:01, , 3F
錯了吧 舉例讀1個要花5cycles讀2個花6個 指令後面跟著跑
10/08 21:01, 3F

10/08 22:39, , 4F
我打錯了 應該是4.5行才有hazard
10/08 22:39, 4F

10/08 22:49, , 5F
謝謝你的解答
10/08 22:49, 5F
文章代碼(AID): #1IKyIBKX (Grad-ProbAsk)