系統(tǒng)結(jié)構(gòu)-第五章2課件_第1頁
系統(tǒng)結(jié)構(gòu)-第五章2課件_第2頁
系統(tǒng)結(jié)構(gòu)-第五章2課件_第3頁
系統(tǒng)結(jié)構(gòu)-第五章2課件_第4頁
系統(tǒng)結(jié)構(gòu)-第五章2課件_第5頁
已閱讀5頁,還剩93頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第5章標量處理機學習的目的:1、理解高級處理機的先進技術

2、計算機專業(yè)的學生應能設計微處理芯片問題:什么是標量?什么是標量處理機?設計處理機的任務是什么?如何提高處理機的速度?7/23/20231計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機標量:只有一個分量的數(shù)據(jù)向量:有多個分量的數(shù)據(jù)標量處理機:只有標量數(shù)據(jù)表示和標量指令系統(tǒng)的處理機。

問題:標量處理機能處理向量嗎?7/23/20232計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機設計處理機的任務任務:提高處理機處理指令的速度。方法:

1、提高處理機的主頻

2、設計更好的部件(乘、除法部件等)

3、指令并行執(zhí)行(流水線、超標量、超常指令字)7/23/20233計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機本章主要內(nèi)容5.1先行控制技術5.2流水線技術5.3相關性分析技術5.4超標量處理機5.5超流水線處理機5.6超標量超流水線處理機7/23/20234計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.1先行控制技術5.1.1指令的重疊執(zhí)行方式5.1.2先行控制方式的原理5.1.3處理機結(jié)構(gòu)5.1.4指令執(zhí)行序列5.1.5先行緩沖棧5.1.6緩沖深度的設計方法7/23/20235計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.1.1指令的重疊執(zhí)行方式1.順序執(zhí)行方式執(zhí)行n條指令所用的時間為:如果每段時間都為t,則執(zhí)行n條指令所用的時間為:T=3nt主要優(yōu)點:控制簡單,節(jié)省設備主要缺點:速度慢,功能部件的利用率低7/23/20236計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機處理機取指、分析執(zhí)行執(zhí)行取指分析順序執(zhí)行一次重疊二次重疊7/23/20237計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.一次重疊執(zhí)行方式如果兩個過程的時間相等,則執(zhí)行n條指令的時間為:T=(1+2n)t主要優(yōu)點:

指令的執(zhí)行時間縮短,功能部件的利用率明顯提高。主要缺點:

需要增加一些硬件,控制過程稍復雜。7/23/20238計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機3.二次重疊執(zhí)行方式如果三個過程的時間相等,執(zhí)行n條指令的時間為:T=(2+n)t在理想情況下,處理機中同時有三條指令在執(zhí)行。處理機的結(jié)構(gòu)要作比較大的改變,需要采用先行控制技術。

7/23/20239計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.1.2先行控制方式的原理1.采用二次重疊執(zhí)行方式必須解決兩個問題:(1)有獨立的取指令部件、指令分析部件和指令執(zhí)行部件把一個集中的指令控制器,分解成三個獨立的控制器:存儲控制器、指令控制器、運算控制器(2)要解決訪問主存儲器的沖突問題取指令、分析指令、執(zhí)行指令都可能要訪問存儲器7/23/202310計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機例如:…….MOVBX,1000HMOV[BX],AXADDAX,[BX]MOVAX,100H…….7/23/202311計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.解決訪存沖突的方法:(1)采用低位交叉存取方式:這種方法不能根本解決沖突問題。 指令、讀操作數(shù)、寫結(jié)果。(2)兩個獨立的存儲器:獨立的指令存儲器和數(shù)據(jù)存儲器。如果再規(guī)定,執(zhí)行指令所需要的操作數(shù)和執(zhí)行結(jié)果只寫到通用寄存器,則取指令、分析指令和執(zhí)行指令就可以同時進行。在許多高性能處理機中,有獨立的指令Cache和數(shù)據(jù)Cache。這種結(jié)構(gòu)被稱為哈佛結(jié)構(gòu)。7/23/202312計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機(3)采用先行控制技術采用先行控制技術的關鍵是緩沖技術和預處理技術。

緩沖技術通常用在工作速度不固定的兩個功能部件之間設置緩沖棧,其目的是用來平滑功能部件之間的工作速度。在采用了緩沖技術和預處理技術之后,運算器能夠?qū)P挠跀?shù)據(jù)的運算,從而大幅度提高程序的執(zhí)行速度。7/23/202313計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.1.3處理機結(jié)構(gòu)1.三個獨立的控制器:存儲控制器、指令控制器、運算控制器。2.四個緩沖棧:先行指令緩沖棧、先行讀數(shù)緩沖棧、先行操作棧、后行寫數(shù)棧。先行指令緩沖棧的組成作用:只要指令緩沖棧沒有充滿,就自動發(fā)出取指令的請求。設置兩個程序計數(shù)器:先行程序計數(shù)器PC1,用來指示取指令,現(xiàn)行程序計數(shù)器PC,記錄指令分析器正在分析的指令地址。7/23/202315計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機先行緩沖站的組成7/23/202316計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.1.4指令執(zhí)行時序設置了指令緩沖棧,取指令的時間就可以忽略不計。一條指令的執(zhí)行可分為2個過程分析指令和執(zhí)行指令存在的主要問題:1、各類指令“分析”和“執(zhí)行”的時間相差很大2、功能部件存在空閑7/23/202317計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

分析K分析K+3分析K+2分析K+1執(zhí)行K執(zhí)行K+2執(zhí)行K+1執(zhí)行K+37/23/202318計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.采用先行緩沖棧的指令執(zhí)行過程先行讀數(shù)棧,先行操作棧,后行寫數(shù)棧。理想情況下,指令執(zhí)行部件應該一直忙碌。連續(xù)執(zhí)行n條指令的時間為:7/23/202319計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.1.5先行緩沖棧設置先行緩沖棧的目的:使指令分析器和指令執(zhí)行部件能夠獨立工作。1.先行指令緩沖棧:處于主存儲器與指令分析器之間用它來平滑主存儲器取指令和指令分析器使用指令之間的速度差異RR型指令,不必處理,直接送先行緩沖棧RS型指令,主存有效地址送先行讀數(shù)棧,用該先行讀數(shù)棧的寄存器編號替換指令中的主存地址碼部分,形成RR*指令送先行緩沖棧7/23/202320計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機RI型指令,指令中的立即數(shù)送先行讀數(shù)棧,用該先行讀數(shù)棧的寄存器編號替換指令中的立即數(shù)部分,形成RR*指令送先行緩沖棧轉(zhuǎn)移指令,一般在指令分析器中直接執(zhí)行。2.先行操作棧處于指令分析器和運算控制器之間使指令分析器和運算器能夠各自獨立工作。采用先進先出方式工作,由指令寄存器堆和控制邏輯組成。7/23/202321計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機3.先行讀數(shù)棧處于主存儲器與運算器之間滑運算器與主存儲器的工作每個緩沖寄存器由地址寄存器、操作數(shù)寄存器和標志三部分組成。也可以把地址寄存器和操作數(shù)寄存器合為一個。當收到從指令分析器中送來的有效地址時,就向主存申請讀操作數(shù)。讀出的操作數(shù)存放在操作數(shù)寄存器中或覆蓋掉地址寄存器中的地址。7/23/202322計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機4.后行寫數(shù)棧每個后行緩沖寄存器由地址寄存器、數(shù)據(jù)寄存器和標志三部分組成。指令分析器遇到向主存寫結(jié)果的指令時,把形成的有效地址送入后行寫數(shù)棧的地址寄存器中,并用該地址寄存器的編號替換指令的目的地址部分,形成RR*指令送入先行操作棧。當運算器執(zhí)行這條RR*型寫數(shù)指令時,只要把寫到主存的數(shù)據(jù)送到后行寫數(shù)棧的數(shù)據(jù)寄存器中即可。7/23/202323計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.采用先行控制方式時一個程序的執(zhí)行情況:5.1.6緩沖深度的設計方法以靜態(tài)分析為主,通過模擬來確定緩沖深度。1.先行指令緩沖棧的設計考慮兩種極端情況:假設緩沖深度為DI(1)先行指令緩沖棧已經(jīng)充滿指令流出的速度最快,例如連續(xù)分析RR型指令,設這種指令序列的最大長度為L1,平均分析一條這種指令的時間為t1;指令流入的速度最慢,設平均取一條指令的時間為t2。從主存儲器中取到先行指令緩沖棧中的指令條數(shù)是L1-DI條。7/23/202325計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機應該滿足如下關系:L1

t1=(LI-DI)t2

計算出緩沖深度為:如果這種指令流的連續(xù)長度超過L1,則先行指令緩沖棧失去作用。(2)先行指令緩沖棧原來為空輸入端指令流入的速度最快,每次取指令的時間最短;設這種指令序列的最大長度為L2,平均取一條這種指令的時間為t2’;7/23/202326計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機輸出端指令流出的速度最慢,指令分析器連續(xù)分析最難分析的指令;設平均分析一條指令的時間為t1’。分析的指令條數(shù)是L2-DI條。應該滿足如下關系:(L2-DI)t1’=L2

t2’

計算出緩沖深度為:如果這種指令流的連續(xù)長度超過L2,先行指令緩沖棧失去緩沖作用。7/23/202327計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.設計舉例在一般處理機中連續(xù)執(zhí)行短指令的概率大。例5.1:一個采用先行控制方式的處理機,指令分析器分析一條指令用一個周期,到主存儲器中取一條指令裝入先行指令緩沖棧平均用4個周期,如果這種指令的平均長度為9,即90%的指令是執(zhí)行時間短的指令。解:計算先行指令緩沖棧的緩沖深度為:7/23/202328計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機3.先行指令緩沖棧的工作時間關系第1個周期,取走指令k+1,請求取指令第4個周期末尾,指令k+8取到先行指令緩沖棧第8個周期末尾,指令k+9取到先行指令緩沖棧第9個周期,分析指令k+9,先行指令緩沖??盏?0個周期,指令分析器等待7/23/202329計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機4.其余緩沖棧的設計原則一般有關系:DI≥DC≥DR≥DW

其中:DI是先行指令緩沖棧的緩沖深度,

DC是先行操作棧的緩沖深度,

DR是先行讀數(shù)棧的緩沖深度,

DW是后行寫數(shù)棧的緩沖深度。例如:IBM370/165機:

DI=4,DC=3,DR=2,DW=1。

我國研制的兩臺大型計算機:

DI=8,DC=DR=4,DW=2。

DI=12,DC=DR=6,DW=2。7/23/202330計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機思考:有了先行控制技術,指令的重疊技術是否就可以不間斷的一直進行下去?

遇到轉(zhuǎn)移指令怎么辦?數(shù)據(jù)相關則么辦?…..MOVAX,100JMPNEXTADDAX,BX…..…MOVBX,1000HMOVAX,[BX]…..7/23/202331計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

空間并行性:設置多個獨立的操作部件時間并行性:分時使用同一個部件的不同部分

5.2.1流水線工作原理

5.2.2流水線的分類

5.2.3線性流水線的性能分析

5.2.4非線性流水線的調(diào)度5.2流水線技術7/23/202332計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.2.1流水線工作原理1.流水寄存器流水線的每一個階段稱為流水步、流水步驟、流水段、流水線階段、流水功能段、功能段、流水級、流水節(jié)拍等。在每一個流水段的末尾或開頭必須設置一個寄存器,稱為流水寄存器、流水鎖存器、流水閘門寄存器等。加入流水寄存器,會增加指令的執(zhí)行時間。在一般流水線時空圖中不畫出流水寄存器。7/23/202333計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.一種指令流水線一般4至12個流水段,≥8個流水段的稱為超流水線處理機3.流水線時空圖7/23/202334計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機一個浮點加法器流水線的時空圖7/23/202335計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機4.流水線的主要特點只有連續(xù)提供同類任務才能發(fā)揮流水線效率盡量減少因條件分支造成的“斷流”通過編譯技術提供連續(xù)的相同類型操作每個流水線段都要設置一個流水寄存器時間開銷:流水線的執(zhí)行時間加長是流水線中需要增加的主要硬件各流水段的時間應盡量相等流水線處理機的基本時鐘周期等于時間最長的流水段的時間長度。流水線需要有“裝入時間”和“排空時間”

7/23/202336計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.2.2流水線的分類1.線性流水線與非線性流水線流水線的各個流水段之間是否有反饋信號線性流水線(LinearPipelining):每一個流水段都流過一次,而且僅流過一次非線性流水線(NonlinearPipelining):某些流水段之間有反饋回路或前饋回路。線性流水線能夠用流水線連接圖唯一表示非線性流水線必須用流水線連接圖和流水線預約表共同表示7/23/202337計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.按照流水線的級別來分

處理機級流水線,又稱為指令流水線。

例如:在采用先行控制器的處理機中,各功能部件之間的流水線7/23/202338計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機部件級流水線(操作流水線)

如浮點加法器流水線宏流水線(MacroPipelining)

處理機之間的流水線稱,每個處理機對同一個數(shù)據(jù)流的不同部分分別進行處理。7/23/202339計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機3.單功能流水線與多功能流水線單功能流水線:只能完成一種固定功能的流水線。

Cray-1計算機種有12條,YH-1計算機有18條

Pentium有一條5段定點和一條8段浮點流水線。

PentiumⅢ有兩條定點和一條浮點指令流水線。多功能流水線:

流水線的各段通過不同連接實現(xiàn)不同功能

Texas公司的ASC機,8段流水線,能夠?qū)崿F(xiàn):定點加減法、定點乘法、浮點加法、浮點乘法、邏輯運算、移位操作、數(shù)據(jù)轉(zhuǎn)換、向量運算等。7/23/202340計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機4.靜態(tài)流水線與動態(tài)流水線靜態(tài)流水線:同一段時間內(nèi),各個功能段只能按照一種方式連接,實現(xiàn)一種固定的功能。7/23/202342計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機動態(tài)流水線:在同一段時間內(nèi),各段可以按照不同的方式連接,同時執(zhí)行多種功能。7/23/202343計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.流水線的其他分類方法按照數(shù)據(jù)表示方式:標量流水線和向量流水線按照控制方式:同步流水線和異步流水線順序流水線與亂序流水線,亂序流水線又稱為無序流水線、錯序流水線或異步流水線等。7/23/202344計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.2.3線性流水線的性能分析主要指標:吞吐率、加速比和效率1.吞吐率(ThoughPut)流水線吞吐率的最基本公式:

其中:n為任務數(shù),Tk為完成n個任務所用的時間。各段執(zhí)行時間相等,輸入連續(xù)任務情況下,完成n個任務需要的總時間為:

Tk=(k+n-1)t

其中:k

為流水線的段數(shù),t為時鐘周期。7/23/202345計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

Tk=k?Δt+(n-1)Δt=(k+n-1)t

吞吐率為:最大吞吐率為:7/23/202346計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機各段時間不等,完成n個連續(xù)任務:吞吐率:最大吞吐率:流水線各段執(zhí)行時間不相等的解決辦法7/23/202347計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機(1)將“瓶頸”部分再細分(如果可分的話)7/23/202348計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.加速比(Speedup)

計算加速比的基本公式:各段執(zhí)行時間相等,輸入連續(xù)任務情況下,

加速比:最大加速比:各段時間不等,輸入連續(xù)任務情況下,實際加速比為:7/23/202350計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

當流水線段數(shù)增加時,需要連續(xù)輸入的任務數(shù)也必須增加7/23/202351計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機3.效率(Efficiency)計算流水線效率的一般公式:各流水段時間相等,輸入n個連續(xù)任務,流水線的效率為:最高效率為:各流水段時間不等,輸入n個連續(xù)任務,流水線效率為:

7/23/202352計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機流水線的吞吐率、加速比與效率的關系:7/23/202353計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.流水線性能分析舉例對于單功能線性流水線,輸入連續(xù)任務的情況,通過上面給出的公式很容易計算出流水線的吞吐率、加速比和效率。對于輸入不連續(xù)任務,或多功能流水線,通常采用基本公式計算。例5.2:

用一條4段浮點加法器流水線求8個浮點數(shù)的和:Z=A+B+C+D+E+F+G+H7/23/202354計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機解:

Z=[(A+B)+(C+D)]+[(E+F)+(G+H)]7/23/202355計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機解:7/23/202356計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.2.4非線性流水線的調(diào)度非線性流水線調(diào)度的任務是要找出一個最小的循環(huán)周期,按照這周期向流水線輸入新任務,流水線的各個功能段都不會發(fā)生沖突,而且流水線的吞吐率和效率最高。1.非線性流水線的表示線性流水線能夠用流水線連接圖唯一表示對于非線形流水線,連接圖不能唯一表示工作流程,因此,引入流水線預約表例如:7/23/202357計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

非線形流水線的連接圖和預約表7/23/202358計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機一張預約表可能與多個流水線連接圖相對應7/23/202359計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機一個流水線連接圖對應與多張預約表7/23/202360計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.非線性流水線的沖突啟動距離:連續(xù)輸入兩個任務之間的時間間隔流水線沖突:幾個任務爭用同一個流水段7/23/202362計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機3.無沖突調(diào)度方法由E.S.Davidson及其學生于1971年提出禁止向量:預約表中每一行任意兩個“×”之間距離的集合。上例中為(3,4,6)沖突向量:C=(CmCm-1…C2C1)

其中:m是禁止向量中的最大值。如果i在禁止向量中,則Ci=1,否則Ci=0。上例中C=(101100)7/23/202363計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機例5.3:一條4功能段的非線性流水線,每個功能段的延遲時間都相等,它的預約表如下:

(1)寫出流水線的禁止向量和初始沖突向量。

(2)畫出調(diào)度流水線的狀態(tài)圖。

(3)求最小啟動循環(huán)和最小平均啟動距離。

(4)求平均啟動距離最小的恒定循環(huán)。7/23/202364計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機解:(1)禁止向量為:(2,4,6)

初始沖突向量:S=101010(2)構(gòu)造狀態(tài)圖

S邏輯右移2、4、6位時,不作任何處理,邏輯右移1、3、5和大于等于7時:

S右移1位之后:010101∨101010=111111,

S右移3位之后:000101∨101010=101111,

S右移5位之后:000001∨101010=101011,

S右移7位或大于7位后:還原到它本身。7/23/202365計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機101111右移5位之后:000001∨101010=101011,101011右移3位之后:000101∨101010=101111,101011右移5位之后:000001∨101010=101011。7/23/202366計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機簡單循環(huán):狀態(tài)圖中各種沖突向量只經(jīng)過一次的啟動循環(huán)。(3)最小的啟動循環(huán)為(1,7)和(3,5),

平均啟動距離為4。(4)啟動距離最小的恒定循環(huán)為(5)7/23/202367計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機7/23/202368計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機7/23/202369計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機練習1、一條三功能段的非線性流水線及其預約表如下:(1)寫出流水線的禁止向量和初始沖突向量,畫出流水線的調(diào)度狀態(tài)圖。(2)求流水線的最小啟動循環(huán)和最小平均啟動距離。12345s1xxs2xxs3xxs1s3s2輸入輸出7/23/202370計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.5超標量處理機

5.5.1基本結(jié)構(gòu)

5.5.2單發(fā)射與多發(fā)射

5.5.3多流水線調(diào)度

5.5.4資源沖突

5.5.5超標量處理機性能7/23/202371計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機三種主流處理機:(高性能指令并行)

超標量處理機超流水線處理機超標量超流水線處理機7/23/202372計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.5.1基本結(jié)構(gòu)普通標量流水線處理機:(也稱作單發(fā)射處理機)

一條指令流水線,一個多功能操作部件,每個時鐘周期平均執(zhí)行指令的條數(shù)小于1。多操作部件標量處理機:

一條指令流水線,多個獨立的操作部件,

指令級并行度小于1。7/23/202373計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機7/23/202374計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

單發(fā)射處理機的指令流水線

取指令

指令譯碼

寫回結(jié)果

浮點加法部件

來自指令

Cache

IF

ID

MD1

MD2

MD3

WR

通用寄存器

后行寫數(shù)棧

乘除法部件

多功能流水線7/23/202375計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機單發(fā)射處理機:每個周期只取一條指令、只譯碼一條指令,只執(zhí)行一條指令,只寫回一個運算結(jié)果。取指令部件和指令譯碼部件各設置一套;只設置一個多功能操作部件或設置多個獨立的操作部件;操作部件中可以采用流水線結(jié)構(gòu),也可以不采用流水線結(jié)構(gòu)。目標是每個時鐘周期平均執(zhí)行一條指令,ILP的期望值為1。7/23/202376計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機超標量處理機典型結(jié)構(gòu):(也稱作多發(fā)射處理機)多條并行工作的指令流水線,多個獨立的操作部件,

指令級并行度(ILP)大于1。7/23/202377計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機7/23/202378計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機特點:每個周期同時取多條指令、同時譯碼多條指令,同時執(zhí)行多條指令,同時寫回多個運算結(jié)果。多個取指令部件,多個指令譯碼部件和多個寫結(jié)果部件。設置多個指令執(zhí)行部件,有些指令執(zhí)行部件采用流水線結(jié)構(gòu)。目標是每個時鐘周期平均執(zhí)行多條指令,ILP的期望值大于1。7/23/202379計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機7/23/202380計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機超標量處理機:有兩條或兩條以上能同時工作的指令流水線先行指令窗口:能夠從指令Cache中預取多條指令,能夠?qū)Υ翱趦?nèi)的指令進行數(shù)據(jù)相關性分析和功能部件沖突檢測。例如:Intel公司的i860、i960、Pentium,Motolora公司的MC88110,IBM公司的Power6000,TI公司生產(chǎn)SuperSPARC等操作部件的個數(shù)一般多于每個周期發(fā)射的指令條數(shù)。通常為4個至16個操作部件。超標量處理機的指令級并行度:1<ILP<m7/23/202381計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機7/23/202382計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.6超流水線處理機5.6.1指令執(zhí)行時序5.6.2典型處理機結(jié)構(gòu)5.6.3超流水線處理機性能7/23/202383計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機超流水線處理機的兩種定義:在一個周期內(nèi)分時發(fā)射多條指令的處理機指令流水線的段數(shù)大于等于8的流水線處理機提高處理機性能的兩種方法:通過增加硬件資源來提高處理機性能通過各部分硬件的重疊工作來提高處理機性能兩種不同并行性:超標量處理機采用的是空間并行性。超流水線處理機采用的是時間并行性。7/23/202384計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.6.1指令執(zhí)行時序每隔1/n個時鐘周期發(fā)射一條指令,即處理機的流水線周期為1/n個時鐘周期。7/23/202385計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.7超標量超流水線處理機一個時鐘周期發(fā)射m次,每次發(fā)射n條指令

5.7.1指令執(zhí)行時序5.7.3超標量超流水線處理機性能5.7.4三種處理機的性能比較7/23/202386計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機5.7.1指令執(zhí)行時序

7/23/202387計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

三種標量處理機的性能比較7/23/202388計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機

從三種標量處理機的性能曲線中,可以得出如下結(jié)論:1.三種處理機的性能關系超標量處理機的相對性能最高,其次是超標量超流水線處理機,超流水線處理機的相對性能最低,主要原因如下:(1)超標量處理機功能部件的沖突比超流水線處理機小。在指令執(zhí)行過程中的許多功能段,超標量處理機都重復設置有多個相同的指令執(zhí)行部件,而超流水線處理機只是把同一個指令執(zhí)行部件分解為多個流水級。7/23/202389計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機(2)條件轉(zhuǎn)移等操作造成的損失,超流水線處理機要比超標量處理機大。由于超流水線處理機采用深度流水線結(jié)構(gòu),對條件轉(zhuǎn)移等操作比超標量處理機敏感。(3)超流水線處理機的啟動延遲通常要比超標量處理機大。超標量處理機在每個時鐘周期的一開始就同時發(fā)射多條指令,超流水線處理機把一個時鐘周期平均分成多個流水線周期,每個流水線周期只發(fā)射一條指令。7/23/202390計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機2.實際指令級并行度與理論指令級并行度的關系當橫坐標給出的理論指令級并行度比較低時,處理機的實際指令級并行度的提高比較快。當理論指令級并行度進一步增加時,處理機實際指令級并行度提高的速度越來越慢。在實際設計超標量、超流水線、超標量超流水線處理機的指令級并行度時要適當,否則,有可能造成花費了大量的硬件,但實際上處理機所能達到的指令級并行度并不高。

目前,一般認為,m和n都不要超過4。7/23/202391計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機本章重點:1.線性流水線的性能分析及計算2.非線性流水線的調(diào)度方法3.先行緩沖技術7.超標量、超流水線處理機的結(jié)構(gòu) 練習題:5.55.65.85.155.175.187/23/202392計算機系統(tǒng)結(jié)構(gòu)第五章標量處理機[習題5.3]假設一條指令的執(zhí)行過程分為“取指令”、“分析”和“執(zhí)行”

溫馨提示

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

評論

0/150

提交評論