- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用管路增加效能 第十七週 管路概觀 管路 是一種製作技巧,它可以重疊指令的執行。 (圖 6.1) 4個階段的管路 (所有的階段都花費同樣的時間) 對於非管路而言,花費16個單位時間 對於管路而言,花費7個單位時間 一個工作的執行時間不會較管路來的短 因為使用管路技巧而提升的速度很可能相當於管路的階段數目 管路概觀 管路概觀 一般來說,MIPS的指令分成下面五個管路階段: 從指令記憶體中擷取指令 當對指令進行解碼時,讀取暫存器的值 執行運算 (R-型),或計算一個位址 (存取記憶體) 存取在記憶體中的運算元 將結果寫回暫存器中 MIPS指令以管路方式執行須五個階段 管路概觀 範例. 單一時脈週期指令及管路效率的比較 (1) 單一時脈,非管路化的執行結果: 單一指令執行時間 = 8 ns 三個指令的執行時間 = 3*8 = 24 ns (2) 管路執行結果: 所有的管路階段花費相同的時間 (單一時脈週期) 時脈週期必須夠長以配合最慢的指令 階段長度 = 2 ns 執行時間 = 7*2 = 14 ns 管路概觀 若有分支指令呢? 在管路終將會有〝洞〞產生 管路概觀 管路危障 在管路化中,不能順利的在下一個時脈週期執行下一個指令,這種情形稱之為〝危障〞。. 三種不同形態的危障 結構危障 控制危障 資料危障 1.結構危障 硬體資源不夠多,而導致在同一時間內要執行的多個指令卻無法執行。 範例 假設我們只有單一記憶體而不是擁有兩個分離的記憶體,如果在圖6.3管路中有第四個指令,在某一時脈週期,第一個指令正在存取記憶體的同時,第四個指令也在同一記憶體中擷取指令,也就是兩個記憶體對同一個記憶體同時進行存取動作,此一狀況稱之為〝結構危障〞。 管路概觀 2. 控制危障 發生在其他指令正在執行時,需要依據另一指令的結果來做出一些決定的時候就會發生〝控制危障〞。 範例: 圖6.4 的lw指令︰ 解決方式 1: 暫停 假設我們有足夠的硬體,所以可以在第二個管路階段中測試暫存器、計算分支位址、並更新PC值。 指令 lw 被額外暫停了 2-ns 的時脈週期 稱之為〝管路暫停〞也稱之為〝氣泡〞)。 管路概觀 解決方式2: 預測 預測分支條件永遠不會成立 當你的預測正確時,管路可以全速的運作 (圖 6.5 (a)) 只有當分支發生時我們才需要管路暫停 (圖6.5 (b)) 管路概觀 3. 資料危障 管路中某一指令執行時,需要用到還在管路中前面的指令所產生的結果。 範例 add $s0, $t0, $t1 sub $t2, $s0, $t3 加法指令會到第五個管路階段才將資料寫回暫存器,意思就是說我們將會產生三個氣泡。 前饋 (圖 6.8) 管路概觀 範例 lw $s0, 20($t1) sub $t2, $s0, $t3 即使有前饋的技術我們仍需要暫停管路 (Fig 6.9) A Pipleline Datapath * 第六章 利用管路增加效能 頁 計算機組織與設計-軟硬體介面 * 第六章 利用管路增加效能 頁 計算機組織與設計-軟硬體介面 1 2 3 4 指令種類 指令擷取 暫存器 讀取 ALU 運算 資料 存取 暫存器 寫入 總共 時間 載入指令(lw) 2 ns 1 ns 2 ns 2 ns 1 ns 8 ns 儲存指令(sw) 2 ns 1 ns 2 ns 2 ns ? 7 ns R型態指令(add、sub、and、or、slt) 2 ns 1 ns 2 ns ? 1 ns 6 ns 分支指令(beq) 2 ns 1 ns 2 ns ? ? 5 ns 5 Fig 6.3 Single-cycle, non-pipelined execution in top vs. pipelined execution in bottom 6 7 8 Fig 6.5 Predicting that branches are not taken as a solution to control hazards 9 10
您可能关注的文档
- 历史七年级上北师版第14课秦始皇建立中央集权的措施课件.ppt
- 历史七年级上北师大版 第15课 汉武帝推进大一统格局 课件.ppt
- 历史七年级上北师大版第8课铁器牛耕引发的社会变革课件.ppt
- 历史七年级上北师版第16课秦汉开拓西域丝绸之路课件与.ppt
- 历史七年级上北师版第6课夏商西周的社会与国家课件3 (1).ppt
- 历史七年级上人教版第4课夏、商、西周的兴亡课件.ppt
- 历史七年级上北师版第16课秦汉开拓西域和丝绸之路课件.ppt
- 历史七年级上人教新课标第18课三国鼎立课件5.ppt
- 历史七年级上人教新课标中国历史导言课课件.ppt
- 历史七年级上岳麓版 第1课 我们的远古祖先课件.ppt
文档评论(0)