




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、流水線處理機第1頁,共59頁,2022年,5月20日,11點23分,星期四1、流水線處理機的基本概念2、流水線處理機的數據路徑流水線級,流水線各級的操作3、流水線處理機的控制運算指令,訪存指令,轉移控制指令,流水線各級信號的產生,時序圖,時空圖4、流水線處理機的相關 結構相關,數據相關,轉移相關本講安排第2頁,共59頁,2022年,5月20日,11點23分,星期四將解決的主要問題 掌握流水線處理機的數據路徑建立指令流水線中指令如何重疊執行和流動了解流水線工作原理以及相關問題第3頁,共59頁,2022年,5月20日,11點23分,星期四單周期處理機第4頁,共59頁,2022年,5月20日,11點
2、23分,星期四單周期處理器的缺陷時鐘周期時間長: 對于裝入指令,周期時間必須足夠長:指令存儲器訪問時間+寄存器堆訪問時間+ALU計算地址+數據存儲器訪問時間+寄存器訪問時間 對于其它指令,周期時間都比所需的要長很多!第5頁,共59頁,2022年,5月20日,11點23分,星期四多周期處理機第6頁,共59頁,2022年,5月20日,11點23分,星期四單周期處理器的問題根源: 對于最慢的指令,周期時間必須足夠長解決方案: 將指令處理分為更小的步驟,每個周期執行一步(而不是整個指令)- 周期時間: 執行最長步所需的時間- 使所有的步驟盡量具有相同的長度 這是多周期處理器的本質所在多周期處理器的優點
3、: 周期時間短 不同的指令需要不同的周期數來完成- 裝入指令需要5個周期,- 跳轉僅僅需要3個周期 允許每條指令多次使用同一個功能部件多周期實現概述第7頁,共59頁,2022年,5月20日,11點23分,星期四流水線的基本概念什么是流水線 計算機中的流水線是把一個重復的過程分解為若干個子過程,每個子過程與其他子過程并行進行。由于這種工作方式與工廠中的生產流水線十分相似,因此稱為流水線技術。從本質上講,流水線技術是一種時間并行技術。第8頁,共59頁,2022年,5月20日,11點23分,星期四計算機的各個部分幾乎都可以采用流水線技術: (1)指令的執行過程可以采用流水線,稱為指令流水線。 (2)
4、運算器中的操作部件,如浮點加法器、浮點乘法器等可以采用流水線,稱為操作部件流水線。 (3)訪問主存的部件可以采用訪存部件流水線。多個計算機之間,通過存儲器連接,也可以采用流水線,稱為宏流水線。第9頁,共59頁,2022年,5月20日,11點23分,星期四指令的重疊執行 (1)順序執行方式(2)一次重疊執行方式(3)二次重疊執行方式(2) 重疊解釋執行執行k分析k取指k執行k+1分析k+1取指k+1T=(2n+1)t執行k分析k取指k執行k+1分析k+1取指k+1(3) 更高重疊程度的解釋執行T=3t+(n-1)t=(n+2)t執行k+1分析k+1取指k+1執行k分析k取指k(1) 順序解釋執行
5、T=3nt第10頁,共59頁,2022年,5月20日,11點23分,星期四流水線工作原理1.基本思想重疊延伸方式,使指令解釋過程進一步細化,提高各部件的利用率,以提高指令執行速度。 理想目標:完成任務的時間與操作處理過程無關,只與提供操作的速度有關。取指譯碼執行訪存寫回輸入輸出IFIDEXEMEMWBs1s2s3s4s5 指令流水線舉例:設:每段時間為t,有m個段,每段間均可重疊;則:每間隔t時間有一條指令流傳出第11頁,共59頁,2022年,5月20日,11點23分,星期四 流水線處理機的最大特點是每一個時針周期都能啟動一條指令的執行。第12頁,共59頁,2022年,5月20日,11點23分
6、,星期四 流水技術無助于減少單個任務的處理延遲(latency) ,但有助于提高整體工作負載的吞吐率 多個不同任務同時操作, 使用不同資源 潛在加速比= 流水線級數 流水線的速率受限于最慢的流水段 流水段的執行時間如果不均衡,那么加速比就會降低 開始填充流水線的時間和最后排放流水線的時間降低加速比 相關將導致流水線暫停流水技術性第13頁,共59頁,2022年,5月20日,11點23分,星期四單周期、多周期與流水線第14頁,共59頁,2022年,5月20日,11點23分,星期四流水線處理機的數據路徑第15頁,共59頁,2022年,5月20日,11點23分,星期四流水線各級的操作IF級1、取指令2
7、、計算下一條指令地址第16頁,共59頁,2022年,5月20日,11點23分,星期四流水線各級的操作ID級1、讀寄存器堆中的操作數2、符號擴展3、控制器根據OPCODE產生控制信號4、轉移指令在ID級結束第17頁,共59頁,2022年,5月20日,11點23分,星期四流水線各級的操作EXE級1、ALU指令完成計算結果2、LOAD/STORE指令計算存儲器地址第18頁,共59頁,2022年,5月20日,11點23分,星期四流水線各級的操作MEM級2、LOAD/STORE指令訪問存儲器,LOAD指令讀操作,STORE指令寫操作,STORE指令結束。1、ALU指令在該級僅把R內容打入C第19頁,共5
8、9頁,2022年,5月20日,11點23分,星期四流水線各級的操作WB級結果寫回到寄存器堆第20頁,共59頁,2022年,5月20日,11點23分,星期四ALU指令執行時流水線的數據路徑第21頁,共59頁,2022年,5月20日,11點23分,星期四LOAD指令執行時流水線的數據路徑第22頁,共59頁,2022年,5月20日,11點23分,星期四STORE指令執行時流水線的數據路徑第23頁,共59頁,2022年,5月20日,11點23分,星期四流水線處理機的控制ALU指令和存儲器訪問指令的控制I1 addi r1,r2,4 ; r1(r2) + 4I2 load r2,100(r3); r2
9、memory (r3) + 100I3 sub r4,r5,r6; r4(r5) -(r6)I4 add r7,r5,r6; r7(r5) +(r6)I5 store r8,200(r9);memory(r9) + 200(r8)I6 subi r10,r10,1; r10(r10) - 1研究流水線處理機對以下指令重疊操作過程指令系統和指令格式同前面一樣第24頁,共59頁,2022年,5月20日,11點23分,星期四指令系統和指令格式31 2625 2120 16 15 54 0指令助記符意 義00 0101rdrs1immeaddi rd, rs1, immerd (rs1) add im
10、me00 010100001000100004Haddi r1, r2, 400 0100rdrs1rs2add rd, rs1, rs2rd (rs1) add (rs2)00 0100001110010100110add r7,r5,r600 0110rdrs1rs2sub rd, rs1, rs2rd (rs1) sub (rs2)00 0110001000010100110sub r4,r5,r600 1000rdrs1immeload rd, rs1, immerd (rs1) + imme)00 100000010000110064Hload r2,r3,10000 1001rdr
11、s1immestore rd, rs1,imme(rd)(rs1) + imme)00 1001010000100100C8Hstore r8,r9,200第25頁,共59頁,2022年,5月20日,11點23分,星期四指令系統和指令格式31 2625 2120 16 15 54 0指令助記符意 義00 0000rdrs1rs2and rd, rs1, rs2rd (rs1) and (rs2)00 0001rdrs1immeandi rd, rs1, immerd(rs1) and imme00 0010rdrs1rs2or rd, rs1, rs2rd (rs1) or (rs2)00 0
12、011rdrs1immeori rd, rs1, immerd (rs1) or imme00 0100rdrs1rs2add rd, rs1, rs2rd (rs1) add (rs2)00 0101rdrs1immeaddi rd, rs1, immerd (rs1) add imme00 0110rdrs1rs2sub rd, rs1, rs2rd (rs1) sub (rs2)00 0111rdrs1immesubi rd, rs1, immerd (rs1) sub imme00 1000rdrs1immeload rd, rs1, immerd (rs1) + imme)00 10
13、01rdrs1immestore rd, rs1, imme(rd)(rs1) + imme)00 1010dispbne dispIf z=0, pc(pc)+disp00 1011dispbeq dispIf z=1, pc(pc)+disp00 1100dispbranch disppc(pc) + disp第26頁,共59頁,2022年,5月20日,11點23分,星期四CC1Fetch I1第27頁,共59頁,2022年,5月20日,11點23分,星期四CC2Fetch I2 并 Decode I1第28頁,共59頁,2022年,5月20日,11點23分,星期四CC3Fetch I3
14、并 Decode I2 并 EXEC I1第29頁,共59頁,2022年,5月20日,11點23分,星期四CC4Fetch I4 并 Decode I3 并 EXEC I2 并 MEM I1第30頁,共59頁,2022年,5月20日,11點23分,星期四CC5Fetch I5 并 Decode I4 并 EXEC I3 并 MEM I2 并WB I1第31頁,共59頁,2022年,5月20日,11點23分,星期四CC6Fetch I6 并 Decode I5 并 EXEC I4 并 MEM I3 并WB I2第32頁,共59頁,2022年,5月20日,11點23分,星期四CC7Decode I
15、6 并 EXEC I5 并 MEM I4 并WB I3第33頁,共59頁,2022年,5月20日,11點23分,星期四CC8 EXEC I6 并 MEM I5 并 WB I4第34頁,共59頁,2022年,5月20日,11點23分,星期四CC9 MEM I6第35頁,共59頁,2022年,5月20日,11點23分,星期四CC10 WB I6以上還有3個控制信號:WZ 寫Z標志信號 WMEM 寫存儲器信號 WREG- 寫寄存器堆信號第36頁,共59頁,2022年,5月20日,11點23分,星期四流水線處理機的控制轉移指令控制 subi r10,r10,1 bne abc add r1,r2,r3
16、abc: load 00 1010dispbne dispIf z=0, pc(pc)+disp結果不為0,轉移00 1011dispbeq dispIf z=1, pc(pc)+disp結果為0,轉移00 1100dispbranch disppc(pc) + disp無條件轉移subi r10,r10,1nopbne abcnopadd r1,r2,r3條件轉移指令控制無條件轉移指令控制branch abcadd r1,r2,r3branch abcnopadd r1,r2,r3第37頁,共59頁,2022年,5月20日,11點23分,星期四第38頁,共59頁,2022年,5月20日,11
17、點23分,星期四第39頁,共59頁,2022年,5月20日,11點23分,星期四第40頁,共59頁,2022年,5月20日,11點23分,星期四轉移發生的條件為 BTAKEN = branch + bneZ + beqZ第41頁,共59頁,2022年,5月20日,11點23分,星期四級控制信號注釋IF級BTAKEN轉移發生ID級SST選擇STORE(rd)EXE級SIMM選擇立即數ALUOPALU操作碼WZ寫Z標志MEM級WMEM寫存儲器WB級SLD選擇LOADWREG寫寄存器堆流水線各級控制信號的定義第42頁,共59頁,2022年,5月20日,11點23分,星期四流水線各級控制信號的產生表達
18、式指 令ALUOP1ALUOP0注釋and /andi00與or/ ori01或add/ addi10加sub/ subi11減load/ store10加aluop1=add+addi+sub+subi+load+storealuop0=or+ori+sub+subiBTAKEN=branch+bneZ+beqZSST=storeSIMM=andi+addi+ori+subi+load+storeWZ= andi+addi+ori+subi+ and+add+or+subWMEM=storeSLD=loadWREG=andi+addi+ori+subi+ and+add+or+sub+loa
19、d第43頁,共59頁,2022年,5月20日,11點23分,星期四第44頁,共59頁,2022年,5月20日,11點23分,星期四第45頁,共59頁,2022年,5月20日,11點23分,星期四第46頁,共59頁,2022年,5月20日,11點23分,星期四相關概念:相近指令間出現了某種關聯,使得指令不能 提前解釋結構相關:由于硬件資源不足而導致流水線不暢通。數據相關:本條指令的操作數地址與前一條指令存放 結果的地址相同,便出現了前條指令還沒有 結果,而后一條指令要求提前取出,造成 錯誤。轉移相關:由于在轉移發生之前,若干條轉移指令的后繼指令已被取到流水線處理機中,而造成錯誤。流水線處理機的相
20、關因為流水線中指令和數據要提前取出來,因此相鄰指令之間存在許多關聯。第47頁,共59頁,2022年,5月20日,11點23分,星期四結構相關及解決方法單存儲器模塊所構成的流水線處理機-結構相關第48頁,共59頁,2022年,5月20日,11點23分,星期四I1是LOAD指令,則I1與I4結構相關第49頁,共59頁,2022年,5月20日,11點23分,星期四采用分開的CACHE解決結構相關第50頁,共59頁,2022年,5月20日,11點23分,星期四數據相關及解決方法I1:add r1,r2,r3I2:sub r4,r1,r5I3:and r6,r7,r1I4:or r8,r1,r9I5:a
21、ddi r10,r1,100第51頁,共59頁,2022年,5月20日,11點23分,星期四寫寄存器堆提前半個周期,我們只需考慮兩條相關指令第52頁,共59頁,2022年,5月20日,11點23分,星期四數據相關及解決方法如何檢測發生了數據相關?靜態方法:由編譯程序來完成檢測。若發生數據相關,則I1:add r1,r2,r3 nop nopI2:sub r4,r1,r5I3:and r6,r7,r1I1:add r1,r2,r3I2:sub r4,r5,r1I3:and r6,r1,r7真正影響數據正確性的數據相關是先寫后讀相關(Read After Write)I1:add r1,r2,r3 I2:sub r4,r1,r5I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 應急保障車管理制度
- 強弱電豎井管理制度
- 徐福記車間管理制度
- 微權力清單管理制度
- 心電圖工作管理制度
- 快遞員服務管理制度
- 急診檢驗科管理制度
- 總承包會議管理制度
- 患者及陪護管理制度
- 成品庫庫存管理制度
- 插班生申請表
- 壓力容器壁厚計算軟件
- 降低非計劃重返手術率PDCA
- 腫瘤防治知識講座
- 湖北省普通高中教育技術裝備建設規范
- 《激光原理及應用》課后部分參考答案 陳鶴鳴
- 八年級名著導讀-給青年的十二封信
- 2023版個人征信模板簡版(可編輯-帶水印)
- 2023-2024學年浙江省慈溪市小學語文六年級期末評估試題附參考答案和詳細解析
- 2023年廣東廣州市公安局招考聘用刑事技術助理70人筆試題庫含答案解析
- 海洋之歌(英文)
評論
0/150
提交評論