




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
(第六講)
廈門大學(xué)計(jì)算機(jī)科學(xué)系陸達(dá)
2004年n月20日
第五章標(biāo)量處理機(jī)
什么是標(biāo)量處理機(jī)?
只有標(biāo)量數(shù)據(jù)表示和標(biāo)量指令系統(tǒng)的處理機(jī)稱為標(biāo)
量處理機(jī)
提高處理機(jī)指令執(zhí)行速度的途徑有三種:
(1)、提高處理機(jī)的工作主頻
(2)、采用更好的算法和設(shè)計(jì)更好的功能部件
(3)、多條指令并行執(zhí)行,稱為指令級并行技術(shù)
a、流水線處理機(jī)、超流水線處理機(jī)
(superpipelining)
b、多操作部件處理機(jī)、超標(biāo)量處理機(jī)
(superscalar)
超標(biāo)量超流水線處理機(jī)(a+b)
c、超長指令字(VLIW)
?本章主要內(nèi)容:
(1)、流水線技術(shù)(先行控制技術(shù)、流水
線原理、流水線性能分析、非線性流水線
的調(diào)度方法、局部數(shù)據(jù)相關(guān)和全局?jǐn)?shù)據(jù)相
關(guān)的處理方法)
(2)、超標(biāo)量處理機(jī)
(3)、超流水線處理機(jī)
5」先行控制技術(shù)
?先行控制(look-ahead)技術(shù)
?超流水線處理機(jī)、超標(biāo)量處理機(jī)
?緩沖技術(shù)、預(yù)處理技術(shù)
?指令分析器、指令執(zhí)行部件
5.1.1指令的重疊執(zhí)行方式
圖5,1:一條指令的執(zhí)行過程
三個(gè)階段都可能訪問存儲器
指令的執(zhí)行方式:
(1)、順序執(zhí)行方式圖5.2(a)
T=3nt
取指令A(yù)分析卜執(zhí)行后取指令人+1分析h+1執(zhí)行上+1
(a)順序執(zhí)行方式
2)、一次重疊執(zhí)行方式圖5.2(b)
T=(l+2n)t
取指令6分析力執(zhí)行/
取指令6+1分析k+1執(zhí)行A+l
取指令歸+2分析歸+2執(zhí)行左+2
(b)一次重疊執(zhí)行方式
(3)、二次重疊執(zhí)行方式圖52(c)
T=(2+n)t
取指令G分析人執(zhí)行R
取指令力+i分析e+i執(zhí)行A+I
取指\+2分析2+2執(zhí)自+2
(C)二次重疊執(zhí)行方式
5.1.2先行控制方式的原理和結(jié)構(gòu)
?要解決兩個(gè)問題:
(1)、要有獨(dú)立的取指令部件、指令分析
部件和指令執(zhí)行部件
存儲控制器(存控)、指令控制器(指
控)、運(yùn)算控制器(運(yùn)控)
(2)、要解決訪問主存儲器的沖突問題
a、把主存儲器分成兩個(gè)獨(dú)立編制的存儲器
指令存儲器(指存)、數(shù)據(jù)存儲器(數(shù)
存)
指令Cache、數(shù)據(jù)Cache(哈佛結(jié)構(gòu))
b、指令和數(shù)據(jù)仍然混合存放在同一個(gè)主
存儲器內(nèi)
低位交叉存取方式
3、先行控制技術(shù)
緩沖技術(shù):在工作速度不固定的兩個(gè)功
能部件之間設(shè)置緩沖棧,用以平滑它們的
工作(設(shè)置四個(gè)緩沖棧)
預(yù)處理技術(shù):把進(jìn)入運(yùn)算器的指令都處
理成寄存器■寄存器型(R-R型)指令,它
與緩沖技術(shù)相結(jié)合,為進(jìn)入運(yùn)算器的指令
準(zhǔn)備好所需要的全部操作數(shù)
5.1.2.1處理機(jī)結(jié)構(gòu)
圖5.3:采用先行控制方式的處理機(jī)結(jié)構(gòu)
圖5.3采用先行控制方式的處理機(jī)機(jī)構(gòu)
圖5,4:指令緩沖棧(先行指令緩沖棧)的組成
指令緩沖寄存器(存儲器)堆、先行程序計(jì)數(shù)器PQ、
現(xiàn)行程序計(jì)數(shù)器PC
圖5.4先行指令緩沖棧的組成
圖5,5:先行控制方式的一次重疊執(zhí)行
這里的“分析”=前面的“取指令+分析”
T重疊=(l+n)t
?有三個(gè)問題需要解決:
(1)、指令分析部件和指令執(zhí)行部件經(jīng)常要
相互等待,從而造成功能部件的浪費(fèi)
(2)、數(shù)據(jù)相關(guān),控制相關(guān),變址相關(guān)
(3)、當(dāng)出現(xiàn)轉(zhuǎn)移或轉(zhuǎn)子程序指令時(shí),程序
的執(zhí)行過程就不是順序的
5.1.2.2指令執(zhí)行時(shí)序
圖5.6:分析指令和執(zhí)行指令時(shí)間不相等時(shí)的一次
重疊執(zhí)行方式
圖5.7:采用先行緩沖棧的指令執(zhí)行過程
先行緩沖棧:先行指令緩沖棧、先行讀數(shù)棧、先
行操作棧、后行寫數(shù)棧
圖5,8:采用先行緩沖棧時(shí)指令執(zhí)行過程的一種
表示方法(圖5.7的另一種表示方法)
nn
7先行"分析1+):"執(zhí)行
七乙\'t執(zhí)行
i=1i=1
5.123先行緩沖棧
先行指令緩沖棧(指令緩沖棧):用于平滑主存儲器
和指令分析器的工作
先行操作棧:指令分析器對已經(jīng)存放在先行指令緩沖
棧里的指令進(jìn)行預(yù)處理,把處理之后的指令送入先行
操作棧;先行操作棧是指令分析器和運(yùn)算控制器之間
的一個(gè)緩沖存儲器;先行操作棧采用先進(jìn)先出(FIFO)
的方式工作,它由一個(gè)先行指令寄存器堆和有關(guān)控制
邏輯等組成
預(yù)處理技術(shù)(RR型、RX型、RS型、RI型->RR*型)
先行讀數(shù)棧:是主存儲器與運(yùn)算器之間的一種緩
沖存儲器,用來平滑運(yùn)算器與主存儲器的工作;
由一組緩沖寄存器和有關(guān)控制邏輯等組成;每一
個(gè)緩沖寄存器由先行地址緩沖寄存器、先行操作
數(shù)緩沖寄存器和標(biāo)志字段等三部分組成
后行寫數(shù)棧:是主存儲器和運(yùn)算器之間的一個(gè)緩
沖存儲器;由一組緩沖寄存器和有關(guān)控制邏輯等
組成;每一個(gè)緩沖寄存器由后行地址緩沖寄存器、
后行數(shù)據(jù)緩沖寄存器和標(biāo)志字段等三部分組成
圖5S:采用先行控制方式時(shí)一個(gè)程序的執(zhí)行過程
?”令控制部件:先行控制器(先行指令緩
捺先行讀數(shù)棧、先行操作棧、后行寫
數(shù)T棧)+指令分析器
指令執(zhí)行部件:運(yùn)算器+運(yùn)算控制器
5.1.2.4緩沖深度的設(shè)計(jì)
樊渭深度問題:各個(gè)緩沖棧中的緩沖寄存器個(gè)數(shù)設(shè)置多少
?緩沖深度的靜態(tài)分析方法:
(1)、先行指令緩沖棧已經(jīng)完全充滿
Li*ti=(L/Di)*t2
Di=[L15t2七)八21
(2)、先行指令緩沖棧原來是空的
(1_2一立)七12咬2,
e=匕*(維,電')/5
除?;贾附餔強(qiáng)色要指含篁工京型旨令分析器中就直接執(zhí)
仃兀成,不需要送到運(yùn)算器中執(zhí)行
?例:
Li=9,tx=l,t2=4Dj=7
圖5.10:先行指令緩沖棧的工作時(shí)間關(guān)系圖
提高主存儲器的訪問速度,對減少緩沖深
度很有效42減少->工減少)
Di(先行指令緩沖棧)NDc(先行操縱棧)
2DR(先行讀數(shù)棧)>DW(先行寫數(shù)棧)
5.1.3數(shù)據(jù)相關(guān)
什么是/目關(guān)(correlation)?
是指在一段程序的相近指令之間有某種關(guān)系,這種關(guān)
系可能影響指令的重疊執(zhí)行
相關(guān)分為兩大類:
(1)、數(shù)據(jù)相關(guān)
(2)、控制相關(guān)
數(shù)據(jù)相關(guān):包括指令相關(guān)、主存操作數(shù)相關(guān)、通用寄
薦器相關(guān)、變址始關(guān)
解決數(shù)據(jù)相關(guān)的方法:
(1)、推后分析法
(2)、設(shè)置專用路徑
5.1,3.1指令相關(guān)
例:結(jié)果地址(k)=指令地址(k+1)
由于第k+1條指令本身的內(nèi)容取決于第k條指令的執(zhí)
行結(jié)果,從而產(chǎn)生指令相關(guān)
判斷是否發(fā)生了指令相關(guān):把每一條指令的結(jié)果地
址與先行操作棧中、指令分析器中、先行指令緩沖
棧中的所有指令地址進(jìn)行比較
解決填令相關(guān)的根本方法:在程序設(shè)計(jì)中不允許修
改指岑
IBM370,有一條“執(zhí)行”指令能夠解決指令相關(guān),
又允許在程序執(zhí)行過程中修改指令
5.1.3.2主存操作數(shù)相關(guān)
?例:結(jié)果地址(k)二主存操作數(shù)地址(k+1)
?當(dāng)指令的執(zhí)行結(jié)果寫到主存儲器,所讀取的操
作數(shù)也取自主存儲器時(shí),就有可能發(fā)生主存操
作數(shù)相關(guān)
?Ai(k)=A2(k+1)
A1(k)=A3(k+1)
解決主存操作數(shù)相關(guān)的方法:推后處理法
圖5.11:主存操作數(shù)相關(guān)及其處理方法
?對設(shè)置有先行操作棧的處理機(jī),解決操作
數(shù)相關(guān)的辦法:
對于剛進(jìn)入先行操作棧中的指令在向主
存讀操作數(shù)之前,首先要把訪問主存的地
址與后行寫數(shù)棧中的所有主存地址進(jìn)行比
較,如果發(fā)現(xiàn)有相等的,則先行操作棧的
讀操作數(shù)要暫緩進(jìn)行,等到發(fā)生操作數(shù)相
關(guān)的指令執(zhí)行完成,并把結(jié)果寫回到主存
之后再開始讀操作數(shù)
.133通用寄存器數(shù)據(jù)相關(guān)
?在RR型指令和RS型指令的執(zhí)行過程中,可
能發(fā)生通用寄存器數(shù)據(jù)相關(guān)
?Ri(k)=R(k+1),稱為《數(shù)據(jù)相關(guān)
Ri(k)=R2(k+1),稱為R2數(shù)據(jù)相關(guān)
?解決通用寄存器數(shù)據(jù)相關(guān)的方法(共有四種):
(1)、通用寄存器是用D型觸發(fā)器構(gòu)成的,而且在通用寄存
器到運(yùn)算器之間建立有直接數(shù)據(jù)通路,即不設(shè)置緩沖寄存
器或鎖存器,則不會發(fā)生通用寄存器數(shù)據(jù)相關(guān)
圖5.12:一種典型的運(yùn)算器結(jié)構(gòu)
2)、分析指令推后一個(gè)周期執(zhí)行
圖5.13:IBM370機(jī)的指令分析與執(zhí)行的時(shí)間關(guān)系
(3)、分析指令僅推后一個(gè)節(jié)拍
圖5.14:分析指令僅推后一個(gè)節(jié)拍的時(shí)間關(guān)系
(4)、設(shè)置專用數(shù)據(jù)通路
圖5.15:設(shè)置專用數(shù)據(jù)通路解決通用寄存器數(shù)據(jù)
相關(guān)
設(shè)置專用數(shù)據(jù)通路是通過增加硬件為代價(jià)來解決
寄存器數(shù)據(jù)相關(guān)
5.1.3.4變址相關(guān)
?把通用寄存器兼作變址寄存器使用,由于
在變址寄存器中存放的變址量在指令分析
過程中要用它來計(jì)算有效地址,有可能發(fā)
生變址相關(guān)
稱為一次變址相關(guān)
Ri(k)=X2(k+1),
稱為二次變址相關(guān)
Ri(k)=X2(k+2),
圖5.16:一次變址相關(guān)和二次變址相關(guān)的時(shí)間關(guān)
系(當(dāng)△ti>Zkt2時(shí),將發(fā)生二次變址相關(guān))
解決變址相關(guān)的方法:
(1)、推后分析
(2)、設(shè)置專用通路、
圖5.17:用變址相關(guān)專用通路解決變址相關(guān)
?解決各種數(shù)據(jù)相關(guān)的方法:
(1)、采用硬件或軟件的辦法盡量避免數(shù)據(jù)
相關(guān)發(fā)生
(2)、在確保指令正確執(zhí)行的前提下,推后
指令分析(推后分析法)
(3)、設(shè)置相關(guān)專用通路來解決數(shù)據(jù)相關(guān)
(設(shè)置專用路徑)
5.1.4控制相關(guān)
什么是控制相關(guān)?
因?yàn)槌绦虻膱?zhí)行方向可能改變而引起的相關(guān)稱為
控制相關(guān)
無條件轉(zhuǎn)移指令、一般條件轉(zhuǎn)移指令、復(fù)合條件
轉(zhuǎn)移指令、子程序調(diào)用指令、中斷指令
數(shù)據(jù)相關(guān):稱為局部相關(guān)
控制相關(guān):稱為全局相關(guān)
“吸收型”指令(無條件轉(zhuǎn)移指令、一般條件轉(zhuǎn)
移指令):在指令分析器就執(zhí)行完成,不需要送
入先行操作棧和指令執(zhí)行部件
5.1.4.1無條件轉(zhuǎn)移
無條件轉(zhuǎn)移指令一般能夠在指令分析器中就執(zhí)行
完成
?圖5.18:無條件轉(zhuǎn)移指令的執(zhí)行時(shí)序
(無條件轉(zhuǎn)移指令對程序執(zhí)行速度的影響很?。?/p>
5.1.4.2一般條件轉(zhuǎn)移
?條件轉(zhuǎn)移指令:
(1)、一般條件轉(zhuǎn)移指令
(2)、復(fù)合條件轉(zhuǎn)移指令
?圖5.19:一般條件轉(zhuǎn)移指令的執(zhí)行時(shí)序
一般條件轉(zhuǎn)移指令稱為“吸收型”指令
轉(zhuǎn)移不成功對先行控制器的影響不大,而當(dāng)轉(zhuǎn)移
成功時(shí),不僅指令執(zhí)行過程變成了完全串行,而
且要作廢已經(jīng)取到先行指令緩沖棧中的大量指令,
從而白白地增加了處理機(jī)與主存之間的通信量
5.1.4.3復(fù)合條件轉(zhuǎn)移
?復(fù)合型條件轉(zhuǎn)移指令不是“吸收型”指令
?圖5.20:復(fù)合型條件轉(zhuǎn)移指令的執(zhí)行時(shí)序
(如果轉(zhuǎn)移成功,對先行控制器造成的影響比一般條
件轉(zhuǎn)移指令還要大得多)
5.1.4.4轉(zhuǎn)移預(yù)測技術(shù)
?RISC關(guān)鍵技術(shù):
(1)、延遲轉(zhuǎn)移技術(shù)(pll8)
(2)、指令取消技術(shù)(pll9)
?在采用先行控制方式的處理機(jī)中,采用的
技大:
(1)、軟件“猜測法”
(2)、硬件“猜測法”
(3)、兩個(gè)先行指令緩沖棧
1、軟件“猜測法”
?要盡量降低轉(zhuǎn)移成功出現(xiàn)的概率
圖5.21:用編譯器支持條件轉(zhuǎn)移指令的執(zhí)行
2、硬件“猜測法”
在先行指令緩沖棧的入口處再增設(shè)一個(gè)簡單的指
令分析器,當(dāng)這個(gè)指令分析器檢測到轉(zhuǎn)移指令時(shí),
就把轉(zhuǎn)移目標(biāo)地址L送入先行程序計(jì)數(shù)器PC1中,
同時(shí)保留當(dāng)前PQ中的內(nèi)容到另一個(gè)寄存器中,以
備猜錯(cuò)時(shí)恢復(fù)原來的程序執(zhí)行方向
軟件“猜測法”和硬件“猜測法”共同配合,軟
件和硬件都往同一個(gè)方向去猜測
3、兩個(gè)先行指令緩沖棧
?對于普通條件轉(zhuǎn)移指令(如IF語句),轉(zhuǎn)移成功與不成功
的概率一般各為50%
?在先行指令緩沖棧中增加一個(gè)先行目標(biāo)緩沖棧,當(dāng)指令分
析器分析到條件轉(zhuǎn)移指令時(shí),按照轉(zhuǎn)移成功的方向預(yù)取指
令到這個(gè)先行目標(biāo)緩沖棧中,原來的先行指令緩沖棧仍然
按照轉(zhuǎn)移不成功的方向繼續(xù)預(yù)取指令
?AIB:新增加的先行目標(biāo)緩沖棧
?IB:原來的指令緩沖棧
?TRi、TR2:暫存寄存器
圖5.22:兩個(gè)先行指令緩沖棧的條件轉(zhuǎn)移指令執(zhí)行
流程
5.1.4.5短循環(huán)程序的處理
?對于短循環(huán)程序,一般先行指令緩沖棧的
效率很低
?短循環(huán)程序滿足的三個(gè)條件:
(1)、循環(huán)體的長度小于等于先行指令緩沖
棧的深度
(2)、循環(huán)次數(shù)的控制采用計(jì)數(shù)轉(zhuǎn)移指令實(shí)
現(xiàn)
(3)、控制循環(huán)的條件轉(zhuǎn)移指令一般是向后
轉(zhuǎn)移的指令
?必須解決好三個(gè)問題:
(1)、指令分析器如何發(fā)現(xiàn)短循環(huán)程序
(2)、如何控制短循環(huán)程序在先行指令緩沖棧中不被清除
(3)、如何控制循環(huán)體的執(zhí)行次數(shù),即處理好循環(huán)程序的
出口
?兩種方法:
(1)、在指令系統(tǒng)中設(shè)置專門的短循環(huán)程序的開門指令和
關(guān)門指令
短循環(huán)標(biāo)志觸發(fā)器「
(2)、用專門的硬件來識別短循環(huán)程序,目的是使短循環(huán)
程序的處理對程序員透明
?一級Cache:一級指令Cache、一級數(shù)據(jù)Cache
可以有效地提高循序程序的執(zhí)行速度
5.2流水線處理機(jī)
空間并行性:
在一個(gè)處理機(jī)內(nèi)設(shè)置多個(gè)獨(dú)立的操作部件,并讓
這些操作部件并行工作
多操作部件處理機(jī)和超標(biāo)量處理機(jī)
時(shí)間并行性:
采用流水線技術(shù)
流水線的基本原理、特點(diǎn)、分類、性能分析;非
線性流水線的調(diào)度問題;流水線中的局部相關(guān)和
全局相關(guān)的處理方法
5.2.1流水線工作原理
什么是流水線工作方式?
把一個(gè)重復(fù)的過程分解為若干個(gè)子過程,
每個(gè)子過程可以與其他子過程同時(shí)進(jìn)行
指令流水線
操作部件流水線
訪問主存儲器部件也可以采用流水線
在處理機(jī)之間,機(jī)器之間也可以采用流水
線
5.2.1.1從重疊到流水線
?圖5,23:一種簡單的流水線
指令分析器、指令執(zhí)行部件
圖5.24:一種指令流水線
一條指令分為6個(gè)子過程
圖5.25:浮點(diǎn)加法器流水線
圖5.24的執(zhí)行過程分解為4個(gè)小子過程
5.2-1.2時(shí)空圖
?圖5.26:描述流水線工作過程的時(shí)空圖
橫坐標(biāo):表示時(shí)間
縱坐標(biāo):表示空間,即流水線的各個(gè)子過程
“功能段”:流水線的一個(gè)子過程
圖5.27:浮點(diǎn)加法器流水線的時(shí)空圖
5.2.1.3流水線的特點(diǎn)
(1)、在流水線中處理的必須是連續(xù)任務(wù)
(2)、把一個(gè)任務(wù)(一條指令或一個(gè)操作)分解為
幾個(gè)有聯(lián)系的子任務(wù),每個(gè)子任務(wù)由一個(gè)專門的
功能部件來實(shí)現(xiàn)
(3)、在流水線的每一個(gè)功能部件的后面都要有一
個(gè)緩沖寄存器(鎖存器、閘門寄存器),用于保
存本段的執(zhí)行結(jié)果
(4)、流水線中各段的時(shí)間應(yīng)盡量相等,否則將引
起“堵塞”、“斷流”等
(5)、流水線需要有“裝入時(shí)間”和“排空時(shí)間”
5.2.2流水線的分類
5.2.2.1線性流水線與非線性流水線
線性流水線(linearpipelining)
將流水線的各段逐個(gè)串接起來,輸入數(shù)據(jù)從流水
線的一端進(jìn)入,從另一端輸出
非線性流水線(nonlinearpipelining)
在流水線的各個(gè)功能段之間除了有串行的連接之
外,還有反饋回路
非線性流水線常用于遞歸調(diào)用,或構(gòu)成多功能流
水線等
圖5.28:一種簡單的非線性流水線
圖529:非線性流水線的預(yù)約表
一條非線性流水線可以有很多張預(yù)約表,一張預(yù)約
表實(shí)際上僅表示了一條非線性流水線的一種工作方
式
5.2.2.2流水線的級別
(1)、功能部件級流水線(部件級流水線):也稱運(yùn)算操作
流水線(arithmeticpipelining),如前面的圖5.25
(2)、處理機(jī)級流水線:也稱指令流水線(instruction
pipelining)
流水線處理機(jī)或超流水線處理機(jī):
在指令執(zhí)行部件中采用了流水線的處理機(jī)
多操作部件處理機(jī)或超標(biāo)量處理機(jī):
在指令執(zhí)行部件中設(shè)置有多個(gè)操作部件的處理機(jī)
圖5.30:先行控制方式中的指令流水線
包括指令控制部件(先行控制器+指令分析器)、
指令執(zhí)行部件
(3)、處理機(jī)間流水線:也稱宏流水線(macro
pipelining)
圖5.31:一種宏流水線
5.2.2.3單功能與多功能流水線
單功能流水線(unifunctionpipelining):一條流
水線只能完成一種固定的功能
Cray-1、YH-1、Pentium>Alpha21064
多功能流水線(multifunctionpipelining):流水
線的各段可以進(jìn)行不同的連接,在不同時(shí)間內(nèi),
或在同一時(shí)間內(nèi),通過不同的連接方式實(shí)現(xiàn)不同
的功能
Texas儀器公司的ASC
?圖5.32:TI-ASC計(jì)算機(jī)的多功能流水線
圖5.32(a):8段流水線
圖5.32(b):定點(diǎn)乘法
圖5.32(c):浮點(diǎn)加法
圖5.32(d):浮點(diǎn)點(diǎn)積,實(shí)際上是一條帶有
反饋回路的非線性流水線
?多功能流水線、設(shè)置多條專門的單功能流
水線
5.2,2.4靜態(tài)流水線與動(dòng)態(tài)流水線
?靜態(tài)流水線(staticpipelining)
在同一段時(shí)間內(nèi),多功能流水線中的各個(gè)
功能段只能按照一種固定的方式連接,實(shí)
現(xiàn)一種固定的功能
圖5.33:靜態(tài)流水線時(shí)空圖
?動(dòng)態(tài)流水線(dynamicpipelining)
在同一段時(shí)間內(nèi),多功能流水線中的各段可
以按照不同的方式連接,同時(shí)執(zhí)行多種功
能
圖5.34:動(dòng)態(tài)流水線時(shí)空圖
?按照不同的數(shù)據(jù)表示方式:
(1)、標(biāo)量流水線:用于標(biāo)量處理機(jī)中
(2)、向量流水線:用于向量處理機(jī)中
?按照對流水線的控制方式不同:
(1)、同步流水線:
(2)、異步流水線:一般的宏流水線多采用異步流水線方式
圖5.35:一種異步流水線
?按照流水線輸出端流出的任務(wù)與流水線輸
入端流入的任務(wù)的順序是否相同:
(1)、順序流水線:
(2)、亂序流水線:也稱無序流水線、錯(cuò)序
流水線、異步流水線
5.2.3線性流水線的性能分析
?衡量流水線性能的主要指標(biāo)有:
(1)、吞吐率
(2)、加速比
(3)、效率
(4)、流水線的最佳段數(shù)
5.2.3.1吞吐率
?吞吐率(thoughputrate,TP):是指在單
位時(shí)間內(nèi)流水線所完成的任務(wù)數(shù)量或輸出
的結(jié)果數(shù)量
TP=n/Tk
n:任務(wù)數(shù)
處理完成個(gè)任務(wù)所用的時(shí)間
Tk:n
圖5.36:各段執(zhí)行時(shí)間均相等的流水線時(shí)空圖
TP=n/[(k+n-l)*At]
TPmax=l/At
TP=[n/(k+n-l)]*TPmax
圖5.37:各段執(zhí)行時(shí)間不相等的流水線及其時(shí)
空圖
n
TP=---------------------------------------
k
2△"+(〃—1)max(△[,△乙)
i=1
TP1
max=/max(At1,At2,■一,Atk)
TPmax=l/(3*At)
當(dāng)流水線中各個(gè)功能段的執(zhí)行時(shí)間不完全相等時(shí),
流水線的最大吞吐率與實(shí)際吞吐率主要是由流水
線中執(zhí)行時(shí)間最長的那個(gè)功能段來決定,這個(gè)功
能段就成了整個(gè)流水線的“瓶頸”
解決流水線“瓶頸”問題的方法:
(1)、將流水線的“瓶頸”部分再細(xì)分,如圖5.38
(2)、通過重復(fù)設(shè)置“瓶頸”功能段,讓多個(gè)“瓶
頸”功能段并行工作,如圖5.39
圖5.38:“瓶頸”功能段再次細(xì)分
TPmax=VAt
圖5.39:“瓶頸”功能段重復(fù)設(shè)置的流水線
TPmax=1/At
由于流水線存在有裝入和排空時(shí)間,輸入
的任務(wù)往往不是連續(xù)的,程序本身存在有
數(shù)據(jù)相關(guān),多功能流水線在完成某一種功
能時(shí)有的功能段不使用等,是流水線的實(shí)
際吞吐率要低于最大吞吐率
5.2.3.2加速比
?加速比(speedupratio):完成一批任務(wù),
不使用流水線所用的時(shí)間與使用流水線所
用的時(shí)間之比稱為流水線的加速比
?S=T0/Tk
?各個(gè)功能段執(zhí)行時(shí)間均相等的一條k段流水
線完成n個(gè)連續(xù)任務(wù)時(shí)的實(shí)際加速比為:
S=k*n*At/[(k+n-l)*At]=k*n/(k+n-l)
最大加速比:Smax=k
圖5.40:任務(wù)個(gè)數(shù)與加速比的關(guān)系
當(dāng)流水線的各個(gè)功能段的執(zhí)行時(shí)間不相等時(shí),
一條k段線性流水線完成n個(gè)連續(xù)任務(wù)時(shí)的實(shí)際
加速比為:
k
n?):△t,
i=1
S=
k
):△2.+(n-1)-max(,△晨)
i=1
5.23.3效率
效率(efficiency):是指流水線的設(shè)備利
用率;在時(shí)空圖上,流水線的效率定義為n
個(gè)任務(wù)占用的時(shí)空區(qū)與k個(gè)功能段總的時(shí)空
區(qū)之比;流水線的效率包括有時(shí)間和空間
兩方面的因素
E=n個(gè)任務(wù)占用的時(shí)空區(qū)/k個(gè)流水段的總的
時(shí)空區(qū)=T0/(k*Tk)
流水線的各段執(zhí)行時(shí)間均相等:
E=k*n*At/[k*(k+n-l)*At]=n/(k+n-l)
Emax=1
E=TP*At,TP=E/At
當(dāng)時(shí)鐘周期不變時(shí),流水線的效率與吞吐率成
正比
E=S/k,S=k*E
流水線的效率是流水線實(shí)際加速比S與它的最大加
速比k之比
流水線的各段執(zhí)行時(shí)間不相等:
n?):△t,
E=----------------------------------------------------------------------------------------------------------------------------------------
「41
n1
k-IZ+(—)?max(AZt,AZ2,---,△
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年高中物理第四章電磁波及其應(yīng)用一電磁波的發(fā)現(xiàn)練習(xí)含解析新人教版選修1-1
- 2024-2030年中國貝殼粉涂料行業(yè)市場深度分析及投資策略研究報(bào)告
- 照明燈飾項(xiàng)目可行性分析報(bào)告
- 2025年中國調(diào)頻食用油行業(yè)市場調(diào)查研究及未來發(fā)展趨勢報(bào)告
- 專用車刀刃磨機(jī)行業(yè)市場發(fā)展及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 2025年中國救生艇行業(yè)發(fā)展監(jiān)測及發(fā)展趨勢預(yù)測報(bào)告
- 中國超聲穴位治療機(jī)行業(yè)市場發(fā)展監(jiān)測及投資潛力預(yù)測報(bào)告
- 中國燙金設(shè)備市場競爭態(tài)勢及行業(yè)投資潛力預(yù)測報(bào)告
- 電子特種氣體項(xiàng)目可行性研究報(bào)告項(xiàng)目建議書
- 2025年中國數(shù)字邏輯電路行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 農(nóng)藥經(jīng)營管理知識培訓(xùn)專家講座
- 《自主創(chuàng)新對于鋼結(jié)構(gòu)發(fā)展的重要性》2400字
- 食品采購與進(jìn)貨臺賬
- GB/T 24353-2022風(fēng)險(xiǎn)管理指南
- GB/T 6284-2006化工產(chǎn)品中水分測定的通用方法干燥減量法
- GB/T 3003-2017耐火纖維及制品
- GB/T 22080-2016信息技術(shù)安全技術(shù)信息安全管理體系要求
- GB/T 13915-2013沖壓件角度公差
- 制藥工程導(dǎo)論課件
- 瑜伽師地論(完美排版全一百卷)
- 槳聲燈影里的秦淮河1-課件
評論
0/150
提交評論