計算機系統(tǒng)結(jié)構(gòu)第15講.ppt_第1頁
計算機系統(tǒng)結(jié)構(gòu)第15講.ppt_第2頁
計算機系統(tǒng)結(jié)構(gòu)第15講.ppt_第3頁
計算機系統(tǒng)結(jié)構(gòu)第15講.ppt_第4頁
計算機系統(tǒng)結(jié)構(gòu)第15講.ppt_第5頁
已閱讀5頁,還剩94頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

,計算機系統(tǒng)結(jié)構(gòu) (第15講),計算機系統(tǒng)結(jié)構(gòu),第一章 基本概念 第二章 指令系統(tǒng) 第三章 存儲系統(tǒng) 第四章 輸入輸出系統(tǒng) 第五章 標量處理機,第六章 向量處理機 第七章 互連網(wǎng)絡(luò) 第八章 并行處理機和 多處理機,第五章 標量處理機,5.1 指令的重疊執(zhí)行方式 5.2 流水線技術(shù) 5.3 超標量處理機 5.4 超流水線處理機 5.5 超標量超流水線處理機,只有標量數(shù)據(jù)表示和標量指令系統(tǒng)的處理機稱為標量處理機 提高指令執(zhí)行速度的主要途徑: (1) 提高處理機的工作主頻 (2) 采用更好的算法和設(shè)計更好的功能部件 (3) 采用指令級并行技術(shù) 三種指令級并行處理機: (1) 流水線處理機和超流水線(Super- pipelining)處理機 (2) 超標量(Superscalar)處理機 (3) 超長指令字(VLIW: Very Long Instruction Word)處理機,5.1 指令的重疊執(zhí)行方式 1、順序執(zhí)行方式 執(zhí)行n條指令所用的時間為: 如果每段時間都為t,則執(zhí)行n條指令所用的時間為: T=3nt,取指令k,分析k,執(zhí)行k,取指令k+1,分析k+1,執(zhí)行k+1,主要優(yōu)點: 控制簡單,節(jié)省設(shè)備。 主要缺點: 執(zhí)行指令的速度慢,功能部件的利用率很低。 2、一次重疊執(zhí)行方式 一種最簡單的流水線方式 如果兩個過程的時間相等,則執(zhí)行n條指令的時間為:T=(1+2n)t,取指,分析,執(zhí)行,取指,分析,執(zhí)行,取指,分析,執(zhí)行,主要優(yōu)點: 指令的執(zhí)行時間縮短 功能部件的利用率明顯提高 主要缺點: 需要增加一些硬件 控制過程稍復(fù)雜,3、二次重疊執(zhí)行方式 如果三過程的時間相等,執(zhí)行n條指令的時間為:T=(2+n)t 理想情況下同時有三條指令在執(zhí)行 處理機的結(jié)構(gòu)要作比較大的改變,必須采用先行控制方式,取指k+2,分析k+2,執(zhí)行k+2,取指k+1,分析k+1,執(zhí)行k+1,取指k,分析k,執(zhí)行k,先行控制方式的原理 1、采用二次重疊執(zhí)行方式,必須解決兩個問題: (1) 有獨立的取指令部件、指令分析部件 和指令執(zhí)行部件 獨立的控制器: 存儲控制器、指令控制器、運算控制器 (2) 要解決訪問主存儲器的沖突問題 取指令、分析指令、執(zhí)行指令都可能要訪問存儲器 2、解決訪存沖突的方法: (1) 采用低位交叉存取方式: 這種方法不能根本解決沖突問題。 取指令、讀操作數(shù)、寫結(jié)果。,(2) 兩個獨立的存儲器:獨立的指令存儲器和數(shù)據(jù)存儲器。 如果再規(guī)定,執(zhí)行指令所需要的操作數(shù)和執(zhí)行結(jié)果只寫到通用寄存器,那么,取指令、分析指令和執(zhí)行指令就可以同時進行。 在許多高性能處理機中,有獨立的指令Cache和數(shù)據(jù)Cache。 這種結(jié)構(gòu)被稱為哈佛結(jié)構(gòu)。 (3) 采用先行控制技術(shù)。 先行控制技術(shù)的關(guān)鍵是緩沖技術(shù)和預(yù)處理技術(shù)。 緩沖技術(shù)是在工作速度不固定的兩個功能部件之間設(shè)置緩沖棧,用以平滑它們的工作。 在采用了緩沖技術(shù)和預(yù)處理技術(shù)之后,運算器能夠?qū)P挠跀?shù)據(jù)的運算,從而大幅度提高程序的執(zhí)行速度。,(2) 兩個獨立的存儲器:獨立的指令存儲器和數(shù)據(jù)存儲器。 如果再規(guī)定,執(zhí)行指令所需要的操作數(shù)和執(zhí)行結(jié)果只寫到通用寄存器,那么,取指令、分析指令和執(zhí)行指令就可以同時進行。 在許多高性能處理機中,有獨立的指令Cache和數(shù)據(jù)Cache。 這種結(jié)構(gòu)被稱為哈佛結(jié)構(gòu)。 (3) 采用先行控制技術(shù)。 先行控制技術(shù)的關(guān)鍵是緩沖技術(shù)和預(yù)處理技術(shù)。 緩沖技術(shù)是在工作速度不固定的兩個功能部件之間設(shè)置緩沖棧,用以平滑它們的工作。 在采用了緩沖技術(shù)和預(yù)處理技術(shù)之后,運算器能夠?qū)P挠跀?shù)據(jù)的運算,從而大幅度提高程序的執(zhí)行速度。,計算機系統(tǒng)結(jié)構(gòu) (第16講),第五章 標量處理機,5.1 先行控制技術(shù) 5.2 流水線技術(shù) 5.3 超標量處理機 5.4 超流水線處理機 5.5 超標量超流水線處理機,5.2 流水線技術(shù) 5.2.1 流水線工作原理 5.2.2 流水線的分類 5.2.3 線性流水線的性能分析 5.2.4 非線性流水線的調(diào)度技術(shù),5.2 流水線技術(shù) 空間并行性: 設(shè)置多個獨立的操作部件 多操作部件處理機 超標量處理機 時間并行性: 采用流水線技術(shù)。 不增加或只增加少量硬件就能使運算速度提高幾倍 流水線處理機 超流水線處理機,5.2.1 流水線工作原理 1、簡單流水線 流水線的每一個階段稱為流水步、流水步驟、流水段、流水線階段、流水功能段、功能段、流水級、流水節(jié)拍等。,分析器 分析k+1,流水 鎖存器,執(zhí)行部件 執(zhí)行k,流水 鎖存器,輸 入,輸 出,t1,t2,在每一個流水段的末尾或開頭必須設(shè)置一個寄存器,稱為流水寄存器、流水鎖存器、流水閘門寄存器等。會增加指令的執(zhí)行時間。 為了簡化,在一般流水線中不畫出流水鎖存器。 2、一種指令流水線,取指,形成操 作數(shù)地址,譯碼,取操 作數(shù),執(zhí)行,保存 結(jié)果,一般4至12個流水段,等于及大于8個流水段的稱為超流水線處理機 3、流水線的時空圖 一條簡單流水線的時空圖:,分析k,分析k+1,分析k+2,分析k+3,執(zhí)行k,執(zhí)行k+1,執(zhí)行k+2,執(zhí)行k+3,時間,空間,0,t1,t2,t3,t4,t5,一個浮點加法器流水線的時空圖(由求階差、對階、尾數(shù)加和規(guī)格化4個流水段組成):,ED1,時間,空間,0,t1,t2,t3,t4,t5,ED2,ED3,ED4,ED5,EA1,EA2,EA3,EA4,EA5,MA1,MA2,MA3,MA4,MA5,NL1,NL2,NL3,NL4,NL5,t6,t7,t8,NL:規(guī)格化,MA:尾數(shù)加,EA:對階,ED:求階差,4、流水線的主要特點 只有連續(xù)提供同類任務(wù)才能充分發(fā)揮流水線的效率: 對于指令流水線:要盡量減少因條件分支造成的“斷流” 對于操作部件:主要通過編譯技術(shù),盡量提供連續(xù)的同類操作 在流水線的每一個流水線段中都要設(shè)置一個流水鎖存器 時間開銷:流水線的執(zhí)行時間加長 是流水線中需要增加的主要硬件之一,各流水段的時間應(yīng)盡量相等 流水線處理機的基本時鐘周期等于時間最長的流水段的時間長度 流水線需要有“裝入時間”和“排空時間”,5.2.2 流水線的分類 1、線性流水線與非線性流水線 流水線的各個流水段之間是否有反饋信號 線性流水線(Linear Pipelining) 每個流水段都流過一次,且僅流過一次 非線性流水線(Nonlinear Pipelining) 在流水線的某些流水段之間有反饋回路或前饋回路 線性流水線能夠用流水線連接圖唯一表示 非線性流水線必須用流水線連接圖流水線預(yù)約表等共同表示,S1,輸入,S2,S3,輸出,前饋回路,反饋回路,一種簡單的非線性流水線,計算機系統(tǒng)結(jié)構(gòu) (第17講),2、按照流水線的級別來分 處理機級流水線, 又稱為指令流水線 (Instruction Pipelining) 例如:在采用先行控制器的處理機中,各功能部件之間的流水線,先行指令 緩沖棧,輸入,先行控制方式 中的指令流水線,先行指令 分析器,先行讀數(shù)棧 先行操作棧,取指,譯碼,取操作數(shù),指令執(zhí) 行部件,后行 寫數(shù)棧,輸出,執(zhí)行,寫結(jié)果,部件級流水線(操作流水線),如浮點加法器流水線 處理機之間的流水線稱為宏流水線 (Macro Pipelining) 每個處理機對同一個數(shù)據(jù)流的不同部分分別進行處理,求階差,輸入,輸出,t1,對階,尾數(shù)加,規(guī)格化,t2,t3,t4,P1,輸 入,任務(wù)1,M,M,P2,任務(wù)2,M,P3,任務(wù)3,輸 出,3、單功能流水線與多功能流水線 單功能流水線: 只能完成一種固定功能的流水線 Cray-1計算機中有12條;YH-1計算機有18條;Pentium有一條5段的定點和一條8段的浮點流水線;Pentium有三條指令流水線,其中兩條定點指令流水線,一條浮點指令流水線。,多功能流水線: 流水線的各段通過不同連接實現(xiàn)不同功能 Texas公司的ASC計算機中的8段流水線,能夠?qū)崿F(xiàn):定點加減法、定點乘法、浮點加法、浮點乘法、邏輯運算、移位操作、數(shù)據(jù)轉(zhuǎn)換、向量運算等。,4、靜態(tài)流水線與動態(tài)流水線 靜態(tài)流水線: 同一段時間內(nèi),多功能流水線中的各個功能段只能按照一種固定的方式連接,實現(xiàn)一種固定的功能。 只有連續(xù)出現(xiàn)同一種運算時,流水線的效率才能得到充分的發(fā)揮。 動態(tài)流水線: 在同一段時間內(nèi),多功能流水線中的各段可以按照不同的方式連接,同時執(zhí)行多種功能。,1,時間,空間,0,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,1,2,3,4,1,2,3,1,2,1,輸入,求階差,對階,尾數(shù)加,規(guī)格化,尾數(shù)乘,累加,輸出,靜態(tài)流水線時空圖,浮點加法,定點乘法,1,時間,空間,0,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,輸入,求階差,對階,尾數(shù)加,規(guī)格化,尾數(shù)乘,累加,輸出,動態(tài)流水線時空圖,1,2,3,5,4,6,1,2,3,5,4,1,2,3,4,1,2,3,浮點加法,定點乘法,5、流水線的其他分類方法 按照數(shù)據(jù)表示方式: 標量流水線和向量流水線 按照控制方式:同步流水線和異步流水線 順序流水線與亂序流水線: 亂序流水線又稱為無序流水線、錯序流水線或異步流水線等,S1,就緒,回答,S2,就緒,回答,S3,就緒,回答,輸出,就緒,回答,輸入,5.2.3 線性流水線的性能分析 衡量流水線性能的主要指標有: 吞吐率、加速比和效率 1、吞吐率(Though Put) 求流水線吞吐率的最基本公式:TP = n / Tk n為任務(wù)數(shù), Tk為完成n個任務(wù)所用時間 各段執(zhí)行時間相等,輸入連續(xù)任務(wù)情況下完成n個連續(xù)任務(wù)需要的總時間為: Tk= (k+n-1) t k為流水線的段數(shù), t為時鐘周期,1,時間,空間,S1,2,3,n-1,n,S2,S3,S4,1,2,3,n-1,n,1,2,3,n-1,n,1,2,3,n-1,n,kt,(n-1) t,nt,(k-1)t,T,吞吐率: 最大吞吐率為: 各段執(zhí)行時間不相等、輸入連續(xù)任務(wù)情況下: 吞吐率為: 最大吞吐率為:,流水線各段執(zhí)行時間不相等的解決辦法,S1,輸 入,t1=t,S2,t2=3t,S3,t3=t,S4,t4=t,輸 出,1,時間,空間,S1,S2,S3,S4,ti,(n-1)t2,Tk,2,3,n,1,2,3,n,1,2,3,n,1,2,3,n,一是將“瓶頸”流水段細分(如果可分的話): 二是將 “瓶頸”流水段重復(fù)設(shè)置:,S1,輸入,輸出,t,S2-1,t,S2-2,t,S2-3,t,S3,t,S4,t,S2(3t),S1,輸入,輸出,t1=t,S2-1,S2-1,S2-1,S3,S4,t3=t,t4=t,t2=3t,1,時間,空間,2,3,n,S1,流水段重復(fù)設(shè)置的流水線,S2-1,4,5,6,1,4,-2,-1,n-2,2,5,n-1,3,6,n,1,2,3,n,4,5,6,-2,-1,1,2,3,n,4,5,6,-2,-1,S2-2,S2-3,S3,S4,2、加速比(Speedup) 計算流水線加速比的基本公式: S = 順序執(zhí)行時間T0 / 流水線執(zhí)行時間Tk 各段執(zhí)行時間相等,輸入連續(xù)任務(wù)情況下 加速比為: 最大加速比為: 各段執(zhí)行時間不等,輸入連續(xù)任務(wù)情況下實際加速比為:,計算機系統(tǒng)結(jié)構(gòu) (第18講),5.2.3 線性流水線的性能分析 衡量流水線性能的主要指標有: 吞吐率、加速比和效率 1、吞吐率(Though Put) 求流水線吞吐率的最基本公式:TP = n / Tk n為任務(wù)數(shù), Tk為完成n個任務(wù)所用時間 各段執(zhí)行時間相等,輸入連續(xù)任務(wù)情況下完成n個連續(xù)任務(wù)需要的總時間為: Tk= (k+n-1) t k為流水線的段數(shù), t為時鐘周期,1,時間,空間,S1,2,3,n-1,n,S2,S3,S4,1,2,3,n-1,n,1,2,3,n-1,n,1,2,3,n-1,n,kt,(n-1) t,nt,(k-1)t,T,吞吐率: 最大吞吐率為: 各段執(zhí)行時間不相等、輸入連續(xù)任務(wù)情況下: 吞吐率為: 最大吞吐率為:,2、加速比(Speedup) 計算流水線加速比的基本公式: S = 順序執(zhí)行時間T0 / 流水線執(zhí)行時間Tk 各段執(zhí)行時間相等,輸入連續(xù)任務(wù)情況下 加速比為: 最大加速比為: 各段執(zhí)行時間不等,輸入連續(xù)任務(wù)情況下實際加速比為:,K=6,K=10,任務(wù) 個數(shù),加速比,10,2,4,6,8,1,1,2,4,8,16,32,64,128,3、效率(Efficiency) 計算流水線效率的一般公式: 各流水段執(zhí)行時間相等,輸入n個連續(xù)任務(wù) 流水線的效率為: 流水線的最高效率為: 各流水段執(zhí)行時間不等,輸入n個連續(xù)任務(wù) 流水線的效率為:,流水線各段的設(shè)備量或各段的價格不相等時: 流水線的效率為: 即: 其中,ai k,且,流水線的吞吐率、加速比與效率的關(guān)系: 因為 因此:E=TP t ,S=kE 5、流水線性能分析舉例 對于單功能線性流水線,輸入連續(xù)任務(wù)的情況,通過上面給出的公式很容易計算出流水線的吞吐率、加速比和效率。 例5.2:用一條4段浮點加法器流水線求8個浮點數(shù)的和: ZABCDEFGH,解: Z = (A+B) + (C+D) + (E+F) + (G+H),1,時間,空間,2,3,求階差,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,對階,尾數(shù)加,規(guī)格化,加數(shù),A,C,E,G,A+B,E+F,B,D,F,H,C+D,G+H,A+B+C+D,E+F+G+H,結(jié)果,A+B,C+D,E+F,G+H,A+B+C+D,E+F+G+H,7個浮點加法共用了15個時鐘周期。 流水線的吞吐率為: 流水線的加速比為: 流水線的效率為:,第五章 標量處理機,5.1 先行控制技術(shù) 5.2 流水線技術(shù) 5.3 超標量處理機 5.4 超流水線處理機 5.5 超標量超流水線處理機,5.3 超標量處理機 5.3.1 基本結(jié)構(gòu) 5.3.2 單發(fā)射與多發(fā)射,超標量處理機: Intel公司的i860, i960, Pentium處理機Motolora公司的MC88110 IBM公司的Power 6000 SUN公司的SuperSPARC等。 超流水線處理機: SGI公司的MIPS R4000, R5000, R10000等。 超標量超流水線處理機: DEC公司的Alpha等。,k段流水 線基準標 量處理機,m度 超標量,n度超 流水線,(m,n)度 超標量 超流水,機器類型,機器流水 線周期,同時發(fā)射 指令條數(shù),指令發(fā)射 等待時間,指令級并 行度ILP,1個時 鐘周期,1條,1個時 鐘周期,1,1,m,1,m,1/n,1,1/n,n,1/n,m,1/n,mn,超標量、超流水、超標量超流水處理機的主要性能,5.3.1 基本結(jié)構(gòu) 一般流水線處理機: 一條指令流水線, 一個多功能操作部件,每個時鐘周期平均執(zhí)行指令的條數(shù)小于1。 多操作部件處理機: 一條指令流水線, 多個獨立的操作部件,操作部件可以采用流水線,也可以不流水。多操作部件處理機的指令級并行度小于1。,超標量處理機典型結(jié)構(gòu): 多條指令流水線 先進的超標量處理機有:定點處理部件CPU,浮點處理部件FPU,圖形加速部件GPU 大量的通用寄存器,兩個一級高速Cache 超標量處理機的指令級并行度大于1,Motorola公司的MC88110: 10個操作部件 兩個寄存器堆:整數(shù)部件通用寄存器堆,32個32位寄存器;浮點部件擴展寄存器堆,32個80位寄存器。每個寄存器堆有8個端口,分別與8條內(nèi)部總線相連接,有一個緩沖深度為4的先行讀數(shù)棧和一個緩沖深度為3的后行寫數(shù)棧。 兩個獨立的高速Cache中,各為8KB,采用兩路組相聯(lián)方式, 轉(zhuǎn)移目標指令Cache,在有兩路分支時,存放其中一路分支上的指令,計算機系統(tǒng)結(jié)構(gòu) (第19講),Motorola公司的MC88110: 10個操作部件 兩個寄存器堆:整數(shù)部件通用寄存器堆,32個32位寄存器;浮點部件擴展寄存器堆,32個80位寄存器。每個寄存器堆有8個端口,分別與8條內(nèi)部總線相連接,有一個緩沖深度為4的先行讀數(shù)棧和一個緩沖深度為3的后行寫數(shù)棧。 兩個獨立的高速Cache中,各為8KB,采用兩路組相聯(lián)方式, 轉(zhuǎn)移目標指令Cache,在有兩路分支時,存放其中一路分支上的指令,整數(shù) 部件,整數(shù) 部件,位 操作,浮點 加,乘法 部件,除法 部件,圖形 部件,圖形 部件,內(nèi)部總線,讀數(shù)存 數(shù)部件,通用寄 存器堆,擴展寄 存器堆,目標 指令,指令分配 轉(zhuǎn)移部件,數(shù)據(jù)Cache (8KB),指令Cache (8KB),系統(tǒng)總線,32位地址總線,32位數(shù)據(jù)總線,超標量處理機MC88110的結(jié)構(gòu),5.3.2 單發(fā)射與多發(fā)射 單發(fā)射處理機: 每個周期只取一條指令、只譯碼一條指令,只執(zhí)行一條指令,只寫回一個運算結(jié)果 取指部件和譯碼部件各設(shè)置一套 可以只設(shè)置一個多功能操作部件,也可以設(shè)置多個獨立的操作部件 操作部件中可以采用流水線結(jié)構(gòu),也可以不采用流水線結(jié)構(gòu) 設(shè)計目標是每個時鐘周期平均執(zhí)行一條指令,ILP的期望值1,IF,時鐘 周期,指令,I1,I2,I3,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,1,2,3,4,5,6,單發(fā)射處理機的指令流水線時空圖,IF,ID,FA1,FA2,FA3,MD1,MD2,MD3,AL,LS,浮點加法部件,乘除法部件,定點ALU部件,取數(shù)存數(shù)部件,WR,來自指 令Cache,通用寄存器 后行寫數(shù)棧,多發(fā)射處理機: 每個周期同時取多條指令、同時譯碼多條指令,同時執(zhí)行多條指令,同時寫回多個運算結(jié)果 需要多個取指令部件,多個指令譯碼部件和多個寫結(jié)果部件 設(shè)置多個指令執(zhí)行部件,復(fù)雜的指令執(zhí)行部件一般采用流水線結(jié)構(gòu) 設(shè)計目標是每個時鐘周期平均執(zhí)行多條指令,ILP的期望值大于1,IF,時鐘 周期,指令,I1,I2,I3,ID,EX,WR,1,2,3,4,5,6,多發(fā)射處理機的指令流水線時空圖,I4,I5,I6,IF,ID,EX,WR,I7,I8,I9,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,FA1,FA2,FA3,MD1,MD2,MD3,AL,LS,浮點加法部件,乘除法部件,定點ALU部件,取數(shù)存數(shù)部件,WR,IF,ID,WR,超標量處理機: 一個時鐘周期內(nèi)能夠同時發(fā)射多條指令的處理機稱為超標量處理機 必須有兩條或兩條以上能夠同時工作的指令流水線 先行指令窗口: 能夠從指令Cache中預(yù)取多條指令 能夠?qū)Υ翱趦?nèi)的指令進行數(shù)據(jù)相關(guān)性分析和功能部件沖突的檢測 窗口的大?。阂话銥?至8條指令 采用目前的指令調(diào)度技術(shù),每個周期發(fā)射2至4條指令比較合理,例如: Intel公司的i860、i960、Pentium處理機,Motolora公司的MC88110處理機,IBM公司的Power 6000處理機等每個周期都發(fā)射兩條指令 TI公司生產(chǎn)的SuperSPARC處理機以及Intel的Pentium III處理機等每個周期發(fā)射三條指令 操作部件的個數(shù)多于每個周期發(fā)射的指令條數(shù)。4個至16個操作部件 超標量處理機的指令級并行度:1ILPm;m為每個周期發(fā)射的指令條數(shù)。,IF,ID,FA1,FA2,FA3,MD1,MD2,MD3,AL,LS,浮點加法部件,乘除法部件,定點ALU部件,取數(shù)存數(shù)部件,WR,IF,ID,WR,IF,ID,先行指 令窗口,第五章 標量處理機,5.1 先行控制技術(shù) 5.2 流水線技術(shù) 5.3 超標量處理機 5.4 超流水線處理機 5.5 超標量超流水線處理機,5.4 超流水線處理機 兩種定義: 一個周期內(nèi)能夠分時發(fā)射多條指令的處理機稱為超流水線處理機 指令流水線有8個或更多功能段的流水線處理機稱為超流水線處理機 提高處理機性能的不同方法: 超標量處理機是通過增加硬件資源為代價來換取處理機性能的 超流水線處理機則通過各硬件部件充分重疊工作來提高處理機性能,兩種不同并行性: 超標量處理機采用的是空間并行性 超流水線處理機采用的是時間并行性,5.4.1 指令執(zhí)行時序 每隔1/n個時鐘周期發(fā)射一條指令,流水線周期為1/n個時鐘周期 在超標量處理機中,流水線的有些功能段還可以進一步細分 例如:ID功能段可以再細分為譯碼、讀第一操作數(shù)和讀第二操作數(shù)三個流水段。也有些功能段不能再細分,如WR功能段一般不再細分。因此有超流水線的另外一種定義:有8個或8個以上流水段的處理機稱為超流水線處理機,IF,時鐘 周期,指令,I1,I2,I3,ID,EX,WR,1,2,3,4,5,6,每個時鐘周期分時發(fā)送3條指令的超流水線,I4,I5,I6,IF,ID,EX,WR,I7,I8,I9,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,5.4.2 典型處理機結(jié)構(gòu) MIPS R4000處理機每個時鐘周期包含兩個流水段,是一種很標準的超流水線處理機結(jié)構(gòu)。指令流水線有8個流水段 有兩個Cache,指令Cache和數(shù)據(jù)Cache的容量各8KB,每個時鐘周期可以訪問Cache兩次,因此在一個時鐘周期內(nèi)可以從指令Cache中讀出兩條指令,從數(shù)據(jù)Cache中讀出或?qū)懭雰蓚€數(shù)據(jù)。 主要運算部件有整數(shù)部件和浮點部件,指令 Cache,MIPS R4000處理機的流水線操作,IF:取第一條指令 IS:取第二條指令 RF:讀寄存器堆,指令譯碼 EX:執(zhí)行指令 DF:取第一個數(shù)據(jù) DS:取第二個數(shù)據(jù) TC:數(shù)據(jù)標志 校驗;WB:寫回結(jié)果,指令 譯碼,讀寄 存器堆,ALU,數(shù)據(jù) Cache,標志檢驗,寄存 器堆,IF,IS,RF,EX,DF,DS,WB,TC,IF,流水線周期,當前CPU周期,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,IF,IS,RF,EX,DF,DS,TC,WB,主時 鐘 周期,MIPS R4000正常指令流水線工作時序,如果在LOAD指令之后的兩條指令中,任何一條指令要在它的EX流水級使用這個數(shù)據(jù),則指令流水線要暫停一個時鐘周期 采用順序發(fā)射方式,暫停,IF,IS,RF,EX,DF,DS,TC,WB,MIPS R4000正常指令流水線工作時序,IS,RF,EX,DF,DS,TC,WB,RF,EX,DF,DS,TC,WB,EX,DF,DS,TC,WB,EX,DF,DS,TC,WB,DF,DS,TC,WB,IF,IS,RF,I1,I2,I3,I4,I5,I6,運行,運行,Load指令,使用Load數(shù)據(jù),5.4.3 超流水線處理機性能 指令級并行度為(1,n)的超流水線處理機,執(zhí)行N條指令所的時間為: 超流水線處理機相對于單流水線普通標量處理機的加速比為:,即: 超流水線處理機的加速比的最大值為:S(1,n)MAX = n,第五章 標量處理機,5.1 先行控制技術(shù) 5.2 流水線技術(shù) 5.3 超標量處理機 5.4 超流水線處理機 5.5 超標量超流水線處理機,5.5 超標量超流水線處理機 把超標量與超流水線技術(shù)結(jié)合在一起,就成為超標量超流水線處理機 5.5.1 指令執(zhí)行時序 5.5.2 典型處理機結(jié)構(gòu) 5.5.3 超標量超流水線處理機性能 5.5.4 三種指令級并行性處理機性能比較,5.5.1 指令執(zhí)行時序 超標量超流水線處理機在一個時鐘周期內(nèi)分時發(fā)射指令n次,每次同時發(fā)射指令m條,每個時鐘周期總共發(fā)射指令m n條。,IF,時鐘周期,指令,I1,I2,I3,ID,EX,WR,1,2,3,4,5,I4,I5,I6,I7,I8,I9,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,IF,ID,EX,WR,I10,I11,I12,每時鐘周期發(fā)射3次,每次3條指令,5.5.2 典型處理機結(jié)構(gòu) DEC公司的Alpha處理機采用超標量超流水線結(jié)構(gòu)。主要由四個功能部件和兩個Cache組成:整數(shù)部件EBOX、浮點部件FBOX、地址部件ABOX和中央控制部件IBOX。 中央控制部件IBOX可以同時從指令Cache中讀入兩條指令,同時對讀入的兩條指令進行譯碼,并且對這兩條指令作資源沖突檢測,進行數(shù)據(jù)相關(guān)性和控制相關(guān)性分析。如果資源和相,關(guān)性允許,IBOX就把兩條指令同時發(fā)射給EBOX、ABOX和FBOX三個指令執(zhí)行部件中的兩個。 指令流水線

溫馨提示

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

評論

0/150

提交評論