看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《kyuudonut (善良老百姓)》之銘言: : ※ 引述《kyuudonut (善良老百姓)》之銘言: : : 想問一下這題 : : 張凡[上] P-389 的第三小題 : : https://imgur.com/a/OXTWh : : 後續計算方式了解 : : 但不太知道為什麼第一句 就直接肯定 : : ALUOp and ALUSrc would be "the most critical" to generate quickly. : : 請問這兩個是怎麼被選出來的? critical path 上應該還有其他的訊號線可以選擇? : : 就我的了解 critical path 應該是 load 的路徑對吧? 實際執行時間最長的指令? : 第二次看第三小題又有問題跑出來 : 先附上解答: http://imgur.com/a/aTjxG : 張凡 ALUop 的算法: 200 + 30 - 50 = 180 : 我理解的意思為: "instruction 讀到後,在 ALU 前所花的時間" 為 200 + 30 ps : 故 ALUsrc 可產生之時間為 200 ps,ALUop 可產生之時間為 180 ps : 但張凡上課講的 critical path (lw) 路徑為: : I-MEM -> Regs --------------> ALU -> D-MEM -> MUX -> Regs (1) (critical path) : -> SE Unit -> MUX ---| (2) : 他把 ALUsrc 這個 MUX 放在第 (2) 條路徑 (跟Regs同時進行?) : 我不太懂的是第三小題為什麼在 "instruction讀到後,在ALU前所花的時間" : 又要加上 ALUsrc 這顆 MUX 的 latency? : 因為原本的 critical path(1300ps) 並沒有算到它阿@@ : 有沒有我理解錯誤的地方? 謝謝 ※ 引述《kyuudonut (善良老百姓)》之銘言: : ※ 引述《kyuudonut (善良老百姓)》之銘言: : : 想問一下這題 : : 張凡[上] P-389 的第三小題 : : https://imgur.com/a/OXTWh : : 後續計算方式了解 : : 但不太知道為什麼第一句 就直接肯定 : : ALUOp and ALUSrc would be "the most critical" to generate quickly. : : 請問這兩個是怎麼被選出來的? critical path 上應該還有其他的訊號線可以選擇? : : 就我的了解 critical path 應該是 load 的路徑對吧? 實際執行時間最長的指令? : 第二次看第三小題又有問題跑出來 : 先附上解答: http://imgur.com/a/aTjxG : 張凡 ALUop 的算法: 200 + 30 - 50 = 180 : 我理解的意思為: "instruction 讀到後,在 ALU 前所花的時間" 為 200 + 30 ps : 故 ALUsrc 可產生之時間為 200 ps,ALUop 可產生之時間為 180 ps : 但張凡上課講的 critical path (lw) 路徑為: : I-MEM -> Regs --------------> ALU -> D-MEM -> MUX -> Regs (1) (critical path) : -> SE Unit -> MUX ---| (2) : 他把 ALUsrc 這個 MUX 放在第 (2) 條路徑 (跟Regs同時進行?) : 我不太懂的是第三小題為什麼在 "instruction讀到後,在ALU前所花的時間" : 又要加上 ALUsrc 這顆 MUX 的 latency? : 因為原本的 critical path(1300ps) 並沒有算到它阿@@ : 有沒有我理解錯誤的地方? 謝謝 早上到下午忙延徵的事情到現在終於有空來看題目   看了第四版的詳解才發現一件事情,其實它只是單純" load " one instruction   進入此 Single cycle instruction,而並非是讀取「 load 」 instruction (還是其實是只有我看錯QQ...)   所以在任何instruction的情況下,都必須在 1 cycle 內得到正確值 ┌────────────────────────┐ │        ┌──>2─────┬──┐   │ │     ┌ Add──────┐ ├ Mux┴ Mux─┘ │     │  │     ├Add ┘ │     │  │  ┌>2─┘ PC──Imem─┼─── Reg──┬─┐        │  │ │├─┘ ├ ALU─Dmem─ mux──┐       ├ Mux──┤├ Mux─┘ │        │       └ S/E┴──┴─── ALUCtl │   └───────────────┘ t=0───────────────────────────→t=n ═══════════════════════════════    ALU(Src+op) MEMtoReg R : PC→IM─→Reg─────→ALU───────→Mux→Reg→PC     ALUop MemRead MEMtoReg lw : PC→IM─→Reg─────→ALU───→DM──→Mux→Reg→PC     ALUop MemWrite Sw : PC→IM─→Reg─────→ALU───→DM───────→PC          ALU(Src+op)   Branch  jump Beq: PC→IM─→Reg─────→ALU─────→Mux──→Mux→PC   jump j : PC→IM───→<<2───────────→ll──→Mux→PC ═══════════════════════════════ To Single Cycle with no pipeline,各signal發生時間: RegDst :在 Mux 延遲之前 ALUSrc :在 Mux 延遲之前     ALUop :雖然 lw 沒有在 Critical Path 經過ALUsrc,但 R type同 時經過 ALUsrc or ALUcontrol or ALUsrc + ALUcontrol ,因此在 Single Cycle with no piepeline 中必須同時考量 到各式 type 中 各傳輸 signal 的一致性 在 ALU-Control 延遲之前 MemRead :在 DM 延遲之前 MemWrite:在 DM 延遲之前 MemtoReg:以一般狀況中,R type的 MemtoReg 會比 I type 的 MemtoReg 還快接 收,但是給予的signal必須一致 必須在 Mux 延遲之前 branch :在第一個Mux延遲之前 jump :在第二個Mux延遲之前 補上聖經本題目: http://imgur.com/a/xj578 http://imgur.com/a/uKwq7 http://imgur.com/a/3VIs8 歡迎討論 @@~ --   有一個香錦囊,是從一個神話般的守軍的血屍頂上剝下的。那一次我們部隊遭受從未 有過的頑強抵抗,我們犧牲了三個艦隊,一個裝甲師和無以數計小組推進的敢死排,才摧 毀了那處隘口的碉堡。但是竟然發現,使我們遭受如此慘烈傷亡的守軍,總數只有一人。   士兵們起鬨地在他胸前發現這枚香袋,大家都相信這是一枚具有神奇力量的護身符。 我們把他的頭顱砍斷,取下香袋,剝開,   裡面一張被血浸紅的宣紙竟用漢字娟娟秀秀四個整齊的楷書寫著-「盼君早歸。」 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.4.186 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1479123422.A.499.html ※ 編輯: ken52011219 (36.224.4.186), 11/14/2016 21:58:42
kyuudonut: 每次看你文章都覺得超用心的阿 orz~ 11/15 00:28
kyuudonut: 今天有點累了 我詳細閱讀一下再回復你 謝謝!! 11/15 00:29
k2shouai: 推推~ 用心畫圖 11/16 18:58
leoone: 大大的排版很像程式排版XD 11/20 21:16