《計算機系統(tǒng)結構》電子教案.ppt

上傳人:w****2 文檔編號:15005461 上傳時間:2020-08-02 格式:PPT 頁數:26 大?。?88.06KB
收藏 版權申訴 舉報 下載
《計算機系統(tǒng)結構》電子教案.ppt_第1頁
第1頁 / 共26頁
《計算機系統(tǒng)結構》電子教案.ppt_第2頁
第2頁 / 共26頁
《計算機系統(tǒng)結構》電子教案.ppt_第3頁
第3頁 / 共26頁

下載文檔到電腦,查找使用更方便

9.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《計算機系統(tǒng)結構》電子教案.ppt》由會員分享,可在線閱讀,更多相關《《計算機系統(tǒng)結構》電子教案.ppt(26頁珍藏版)》請在裝配圖網上搜索。

1、2014.2.17,計算機系統(tǒng)結構,1,3.4 RISC的基本流水線(P70),下面是RISC的指令流水線簡化結構圖(5段結構),每段1個時鐘周期。,2014.2.17,計算機系統(tǒng)結構,2,(1)流水運行方式,RISC流水線5段功能的初步定義(時鐘周期圖Cycle),IF,ID,EX,Mem,WB,IF,ID,EX,Mem,WB,指令K,指令K+1,取指 PC+4,譯碼 取數,計算 判斷,訪存 送PC,寫回,(2)順序運行方式,IF,ID,EX,Mem,WB,IF,ID,EX,Mem,WB,指令K,指令K+1,取指,譯碼 取數,計算 判斷,訪存 送PC,寫回,2014.2.17,計算機系統(tǒng)結構

2、,3,RISC流水線5段功能的初步定義,2014.2.17,計算機系統(tǒng)結構,4,為了簡單,先考慮順序處理方式下的工作過程(即不考慮并行處理多條指令): (1) IF 取指周期(后來稱IM) (2) ID 指令譯碼/讀寄存器周期 (3) EX 執(zhí)行/地址計算周期 做4種操作之一:存儲器地址計算、寄存器/寄存器ALU運算、寄存器/立即數ALU運算、分支地址計算與條件判斷。 (4) MEM 存儲器訪問/分支完成周期(ALU指令不需要)(后來稱DM) 做2種操作之一:存儲器訪問、根據分支條件對PC賦值。 (5) WB 寫回寄存器周期(分支指令不需要) 做2種操作之一:ALU結果寫寄存器、LOAD結

3、果寫寄存器。 總周期數 = n CPI(ALU和分支指令的CPI=4,其它指令的CPI=5),3.4.1 用順序方式實現RISC詳解,2014.2.17,計算機系統(tǒng)結構,5,按流水方式運行需要解決的問題: 存儲周期每個時鐘周期都至少訪問一次存儲器,所以存儲器件的訪問周期必須縮短為順序方式的1/5(流水線必須配用高速存儲系統(tǒng))。 沖突前面指令在MEM修改PC與后面指令在IF做PC+4發(fā)生PC沖突; 前面指令在MEM訪存與后面指令在IF取指發(fā)生存儲器沖突; 前面指令在WB寫寄存器與后面指令在ID讀寄存器發(fā)生寄存器沖突。(下頁圖) 對策用多路器選擇PC+4送PC,還是ALUout送PC;IF改成訪

4、問指令存儲器IM,MEM改成訪問數據存儲器DM,以避免存儲器沖突;或者雖共用一個存儲器,但是分別連到指令Cache、數據Cache; 寄存器沖突留待下文解決。 寄存器文件每條指令啟動后就被分配一組暫存器,稱為“寄存器文件”,用以保存自己的臨時數據,如NPC、IR等,它們伴隨指令逐段推進,直至指令結束。在沒有操作的段,寄存器文件被直接拷貝到下一段。(P119) 總周期數 = n + m 1 + stall總數(無相關、無沖突情況下),3.5 基本的MIPS流水線(P87),2014.2.17,計算機系統(tǒng)結構,6,,,,,,,(1)3種沖突,流水方式運行帶來的結構沖突,IF,ID,EX,Mem,W

5、B,IF,ID,EX,Mem,WB,指令K,指令K+1,譯碼 取數,訪存 送PC,寫回,(2)存儲器哈佛結構、分離Cache結構,CPU,指令K+3,指令K,IF,ID,EX,Mem,WB,指令K+2,IF,ID,EX,Mem,WB,指令K+3,取指 PC+4,指令存儲器,數據存儲器,CPU,指令Cache,數據Cache,內存,2014.2.17,計算機系統(tǒng)結構,7,3.5.1 MIPS的一種簡單實現,2014.2.17,計算機系統(tǒng)結構,8,3.4.2 相關與沖突(P72),相關dependence :一條指令依賴另一條指令的結果。 沖突hazard :由于相關或其它原因,一條指令暫時停下來

6、等待另一條指令執(zhí)行,不然就會產生錯誤的結果(與程序員預期的不一致)。 相關的分類 1. 數據相關:前面指令的結果作為后面指令的操作數(真數據相關) 2. 名相關:兩條指令使用了同一個寄存器或存儲單元,并非要傳送數據 3. 控制相關:分支指令等改變PC值的情況 反相關 名相關 輸出相關 沖突的分類 1. 結構沖突:即資源爭用 寫后讀:RAW 2. 數據沖突:由數據相關、或者名相關造成 寫后寫:WAW 3. 控制沖突:由控制相關造成 讀后寫:WAR 實例:P73P83;多種相關、沖突演示程序Lesson

7、-5.s,,,2014.2.17,計算機系統(tǒng)結構,9,3種相關與3種沖突的關系,???,,數據相關,名相關,控制相關,3種相關,,結構沖突,數據沖突,控制沖突,3種沖突,原因,結果,,,,,2014.2.17,計算機系統(tǒng)結構,10,沖突的通用處理方法暫停,沖突的通用處理方法:為了不出現錯誤結果,相關檢測硬件會自動插入所需個數的暫停周期stall(又稱為“流水線氣泡”),圖3.21和圖3.22是等效的表示法,后者比較緊湊; MIPS流水線的暫停:在ID段之后分支,在MEM段之前匯合。 如果一條指令在非分支的IF、ID、MEM、WB段暫停,它后面的指令只能順序流動;如果一條指令在任一分支內暫停,它

8、后面的其它種類指令可以亂序流動(繞過它先流向出口)。 MIPS暫停演示程序Lesson-5.s: dmul r1,r2,r3 dmul r4,r5,r1 sub.d f1,f2,f3,2014.2.17,計算機系統(tǒng)結構,11,1. 結構沖突特異處理方法(P75),“設備重復”方法,又稱“完全流水化功能單元”方法:即為不同指令的同一操作分別設置獨立的設備。比如 IF 段訪問指令存儲器,MEM 段訪問數據存儲器(見課件P108)。 這種方法需要顯著增加成本,對經常發(fā)生的沖突類型值得采用。而不常發(fā)生的結構相關,因為導致的程序平均執(zhí)行時間增加并不多,可以放任不管,見下頁例子。,2014.2

9、.17,計算機系統(tǒng)結構,12,例3.5(不用“完全流水化功能單元”的例子,2版教材),已知DLX處理機(MIPS的前身)中其它指令的 CPI = 1,浮點乘法指令的 CPI = 7,因為非流水的浮點乘法部件用時 7 拍。如果下一條指令也要使用浮點乘法部件,則必須比上一條指令推遲7 拍啟動,除非增加一個浮點乘法部件。在mdljdp2基準測試程序中,浮點乘法指令出現的概率為14%,試分析不采用“完全流水化功能單元” 方法帶來的 CPI 增量。 分析: 不采用“完全流水化功能單元” 方法,即系統(tǒng)中只有一個浮點乘法部件,那么當浮點乘法指令的下一條指令不是浮點乘法指令時 CPI 仍為 1(應為2,林老師

10、注),當下一條指令是浮點乘法指令時 CPI 增大到 7。最壞情況是這14%的浮點乘法指令連續(xù)出現,那么整個程序的平均 CPI 將增加 14% 6 = 0.84拍。 該教材說當浮點乘法指令服從均勻分布時,采用“完全流水化功能單元” 獲得的好處可能很少,原因是實際 CPI 的增量比0.84小得多(見下頁例3.5 的進一步推導”)。,2014.2.17,計算機系統(tǒng)結構,13,例3.5 的進一步推導,記:浮點乘法指令的出現概率,= 14%; 由于浮點乘法指令出現導致的平均 CPI 增量(節(jié)拍數);n 指令總數。 分析:1條單獨出現的概率為1(1-),對應的= 0;2條連續(xù)出現的概率為2(1-),對應的

11、= 4;;k條連續(xù)出現的概率為k(1-),對應的= 4(k-1);;n+1條連續(xù)出現的概率為0。 的期望值:/= 2(1-)41 + 3(1-)42 + + n(1-)4(n-1) = 4(1-)12 + 23 + +(n-1)n = 42(1-n -1)/(1-)-(n-1)n+1 當n時,/ 42 /(1-)0.09拍,2014.2.17,計算機系統(tǒng)結構,14,2. 數據沖突特異處理方法(P76),(1) 實例見圖3.23 (2) 相關指令彼此間隔大于一定距離就不會出錯(P77第1段,XOR) (3) 把時鐘分成前、后半段的方法可以解決寄存器相關(P77第1段,OR) (4) 定向技術(f

12、orwarding)可以達到提前1.5拍寫、推遲0.5拍讀的效果,消除2拍以內的相關出錯(實際有效范圍因指令而異,見下圖) (5) 通過編譯軟件的指令調度處理,可以達到(2)的目的,而不用增加“空操作”指令或者硬件“氣泡”(P79第5行實例分析)。,前半拍完成寫寄存器,后半拍完成讀寄存器,ALU出口定向路徑,定向路徑ALU入口,,,2014.2.17,計算機系統(tǒng)結構,15,定向路徑(相關專用通路),,寄存器文件,寄存器文件,寄存器文件,寄存器文件,通過定向路徑復制寄存器文件,2014.2.17,計算機系統(tǒng)結構,16,采用定向技術后消除停頓的情形,2014.2.17,計算機系統(tǒng)結構,17,采用定

13、向技術后減少停頓的情形,2014.2.17,計算機系統(tǒng)結構,18,數據沖突的分類(P76),(1) 寫-讀沖突,當后一條指令ID先于前一條指令WB時發(fā)生,最常見; (2) 寫-寫沖突,當后一條指令WB先于前一條指令WB時發(fā)生,亂序流動下會出現; (3) 讀-寫沖突,當后一條指令WB先于前一條指令ID時發(fā)生。RISC機器不會出現,因為流水線在ID之前沒有分支。 數據沖突的自動檢測與氣泡的自動生成: 通過“流水線互鎖”(pipeline interlock)機構來實現,閱讀P79第1段, P89第2段,詳見2版P96;可以檢測到的各種數據沖突列表,見2版P96表3.3。,2014.2.17,計算機

14、系統(tǒng)結構,19,3. 控制沖突特異處理方法(P79),重要性(P80):每個條件分支指令帶來3個暫停周期,30%時減速一半。 方法: (1) “凍結”(freeze)或“排空”(flush):消極暫停 (2) 提早完成分支操作,把3個暫停周期縮短為1個。需要做兩件事: 盡早判斷是否成功(將測試操作提早到ID段); 盡早算出目標地址(將地址計算提早到ID段)。 改進前 改進后,,,2014.2.17,計算機系統(tǒng)結構,20,3. 控制沖突特異處理方法(P79)續(xù),(3) 通過預測提前啟動分支后面的指令 “預測分支失敗”:猜失敗,提前取指令i+1; “預測分支成功”:猜成功,需要計算目標地址,而RI

15、SC流水線的地址計算與判跳操作是同時完成的,故此舉無益; (4) “延遲分支”(delayed branch):調若干指令在若干“延遲槽”中執(zhí)行, 調分支前的指令(最佳方案); 調跳轉目標處指令(猜成功,猜錯需作廢); 調后續(xù)指令(猜失敗,猜錯需作廢)。 (5) “取消”(canceling)或“作廢”(nullifying)分支:對“分支延遲槽”的處理技術。,2014.2.17,計算機系統(tǒng)結構,21,改進后的MIPS流水線(P90),2014.2.17,計算機系統(tǒng)結構,22,改進流水線上使用定向技術的延遲時間,2014.2.17,計算機系統(tǒng)結構,23,各種處理控制沖突方法的性能公式(2版P1

16、04),(1) 控制沖突(即分支)導致的最大加速比Smax下降 在定義流水線“效率”指標時推導過一個公式:Smax=Em,意思是說當效率達到100%時,流水方式(每個t完成一個任務)吞吐率為順序方式(每m個t完成一個任務)的m倍。此處把m改寫為D。 考慮分支損失的流水線最大加速比公式: Smax=Em / (1 + f P分支),其中f是分支指令的出現概率,P分支是平均分支損失(暫停周期數)。 其實這個公式可以用來計算任何一種沖突對應的最大加速比Smax 。 對MIPS來說,無任何沖突情況下“效率” E=100%。 (2) 采用每種處理方法減少分支損失的效果 假定沒有分支損

17、失情況下,理想CPI = 1。 可以算出存在分支損失情況下,不處理或單一處理方法對應的平均分支損失值、延長的CPI值。,2014.2.17,計算機系統(tǒng)結構,24,各種沖突處理方法小結(同學們自己做),結構沖突: 數據沖突: (1) (2) (3) 控制沖突: (1) (2) (3) 作業(yè)3.11題修改: 開頭添加:在圖3.33所示MIPS流水線上,2014.2.17,計算機系統(tǒng)結構,25,實驗2MIPS流水線部件與指令周期,實驗要求: 在人工完成習題3.11之后,在WinMIPS64模擬器上運行對應的程序,分別按(1)(2)(3)小問的條件設置模擬器的運行模式,記錄相應的時鐘周期數。 實驗報告: (1) 程序清單; (2) 程序時間對比 (3) 人工計算值與實測值的差異原因分析,如果有差異的話; (4) 至少1段自己認為有價值的“時鐘周期圖”片段抄錄或者打印,加注釋。,2014.2.17,計算機系統(tǒng)結構,26,各次作業(yè)應交的內容,作業(yè)5(第5次課),3.11(改),實驗2,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!