標(biāo)量處理機(jī)課件_第1頁
標(biāo)量處理機(jī)課件_第2頁
標(biāo)量處理機(jī)課件_第3頁
標(biāo)量處理機(jī)課件_第4頁
標(biāo)量處理機(jī)課件_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

標(biāo)量處理機(jī)5.1指令的重疊執(zhí)行方式5.2流水線技術(shù)5.3超標(biāo)量處理機(jī)與超流水線處理機(jī)5.4超標(biāo)量超流水線處理機(jī)5.1指令的重疊執(zhí)行方式當(dāng)有多條指令要在處理機(jī)中執(zhí)行時,可以有多種執(zhí)行方式:1、順序執(zhí)行方式執(zhí)行n條指令所用的時間為:主要優(yōu)點:控制簡單,節(jié)省設(shè)備。主要缺點:執(zhí)行指令的速度慢,功能部件的利用率很低。

如果每段時間都為t,則執(zhí)行n條指令所用的時間為:T=3nt2.一次重疊執(zhí)行方式一種最簡單的流水線方式如果兩個過程的時間相等,則執(zhí)行n條指令的時間為:T=(1+2n)t主要優(yōu)點:指令的執(zhí)行時間縮短功能部件的利用率明顯提高主要缺點:需要增加一些硬件控制過程稍復(fù)雜3、二次重疊執(zhí)行方式如果三過程的時間相等,執(zhí)行n條指令的時間為:T=(2+n)t理想情況下同時有三條指令在執(zhí)行處理機(jī)的結(jié)構(gòu)要作比較大的改變,必須采用先行控制方式5.1.2先行控制方式的原理和結(jié)構(gòu)采用二次重疊執(zhí)行方式,必須解決兩個問題:(1)有獨立的取指令部件、指令分析部件和指令執(zhí)行部件獨立的控制器:存儲控制器、指令控制器、運(yùn)算控制器(2)要解決訪問主存儲器的沖突問題取指令、分析指令、執(zhí)行指令都可能要訪問存儲器解決訪存沖突的方法:(1)采用低位交叉存取方式:這種方法不能根本解決沖突問題。取指令、讀操作數(shù)、寫結(jié)果。(2)兩個獨立的存儲器:獨立的指令存儲器和數(shù)據(jù)存儲器。如果再規(guī)定,執(zhí)行指令所需要的操作數(shù)和執(zhí)行結(jié)果只寫到通用寄存器,那么,取指令、分析指令和執(zhí)行指令就可以同時進(jìn)行。(3)采用先行控制技術(shù)。

先行控制技術(shù)的關(guān)鍵是緩沖技術(shù)和預(yù)處理技術(shù)。緩沖技術(shù)是在工作速度不固定的兩個功能部件之間設(shè)置緩沖棧,用以平滑它們的工作。在采用了緩沖技術(shù)和預(yù)處理技術(shù)之后,運(yùn)算器能夠?qū)P挠跀?shù)據(jù)的運(yùn)算,從而大幅度提高程序的執(zhí)行速度。處理機(jī)結(jié)構(gòu)

如圖5.3所示,只要在處理機(jī)內(nèi)部設(shè)置一定容量的指令緩沖棧,把指令分析器所需要的指令事件取到緩沖棧中,而不必訪問主存儲器。這樣就能夠使取指令、分析指令和執(zhí)行指令重疊起來執(zhí)行。2.指令執(zhí)行時序采用先行控制方式,在理想情況下,指令執(zhí)行部件應(yīng)該一直是忙碌的,因此,處理機(jī)連續(xù)執(zhí)行n條指令所需的時間為:

T先行=t分析1+∑t執(zhí)行i≈∑t執(zhí)行3.先行緩沖棧在采用先行控制方式的處理機(jī)中,一般要設(shè)置四個先行緩沖棧,如圖5.3所示,作用如下:

(1)先行指令緩沖棧:作為主存儲器與指令分析器之間的一個緩沖部件,用于平滑主存儲器和指令分析器的工作。(2)先行操作棧:指令分析器對已經(jīng)存放在先行指令緩沖棧里的指令進(jìn)行預(yù)處理,把處理之后的指令送入該棧。各種運(yùn)算型指令、移位指令、數(shù)據(jù)傳送指令等都要先處理成寄存器-寄存器型(RR型)指令,然后送入先行操作棧。(3)先行讀數(shù)棧:由一組緩沖寄存器和有關(guān)控制邏輯等組成。每一個緩沖寄存器由三部分組成,包括先行地址緩沖寄存器、先行操作數(shù)緩沖寄存器和標(biāo)志字段。它是主存儲器與運(yùn)算器之間的一種緩沖存儲器,把后續(xù)指令要用到的操作數(shù)“先行”取出。(4)后行寫數(shù)棧也由一組緩沖寄存器和有關(guān)控制邏輯組成。每一個緩沖寄存器必須包括后行地址緩沖寄存器、后行數(shù)據(jù)緩沖寄存器和標(biāo)志字段。其中的后行地址緩沖寄存器和后行數(shù)據(jù)緩沖寄存器不能合用。4.緩沖深度的設(shè)計“緩沖深度”即各個緩沖棧中的緩沖寄存器個數(shù)。靜態(tài)分析是通過分析兩種極端情況來計算緩沖深度。一種極端情況是:先行指令緩沖棧從完全充滿到全部被取空的過程。另一種極端情況是:先行指令緩沖棧從完全空到全部被充滿的過程。通常在一般程序中,執(zhí)行時間短的指令所占的比例要遠(yuǎn)遠(yuǎn)大于執(zhí)行時間長的指令。所以一般采用第一種情況來計算緩沖深度。5.1.3數(shù)據(jù)相關(guān)

所謂相關(guān)是指在一段程序的相近指令之間有某種關(guān)系,這種關(guān)系可能影響指令的重疊執(zhí)行。分為兩大類:數(shù)據(jù)相關(guān)和控制相關(guān)。本節(jié)主要介紹數(shù)據(jù)相關(guān),下一節(jié)介紹控制相關(guān)。數(shù)據(jù)相關(guān)分為四種:指令相關(guān)、主存操作數(shù)相關(guān)、通用寄存器相關(guān)和變址相關(guān)。1.指令相關(guān)

第k+1條指令本身的內(nèi)容取決于第k條指令的執(zhí)行結(jié)果,則產(chǎn)生指令相關(guān)。解決指令相關(guān)的根本辦法是在程序設(shè)計中不允許修改指令。2.主存操作數(shù)相關(guān)如果發(fā)生:結(jié)果地址(k)=主存操作數(shù)地址(k+1)則發(fā)生主存操作數(shù)相關(guān)。解決主存操作數(shù)相關(guān)一般采用推后處理法。3.通用寄存器數(shù)據(jù)相關(guān)看下面兩條指令:k:OPR1,A2;R1=(R1)OP(A2)k+1:OPR1,R2;R1=(R1)OP(R2)如果發(fā)生:

R1(k)=R1(k+1)則稱為R1數(shù)據(jù)相關(guān)。如果發(fā)生:

R1(k)=R2(k+1)則稱為R2數(shù)據(jù)相關(guān)。解決通用寄存器數(shù)據(jù)相關(guān)一般有如下幾種方法:(1)不設(shè)置緩沖寄存器或鎖存器。(2)分析指令推后一個周期執(zhí)行。(3)分析指令僅推后一個節(jié)拍。(4)設(shè)置專用數(shù)據(jù)通路。

4.變址相關(guān)由于在變址寄存器中存放的變址量在指令分析過程中要用它來計算有效地址,因此與通用寄存器的數(shù)據(jù)相關(guān)累死,也可能發(fā)生變質(zhì)相關(guān),解決方法也類似。

5.1.4控制相關(guān)

控制相關(guān)是指因為程序的執(zhí)行方向可能被改變而引起的相關(guān)。本節(jié)主要介紹因各種轉(zhuǎn)移指令引起的相關(guān)。(1)無條件轉(zhuǎn)移(2)一般條件轉(zhuǎn)移(3)復(fù)合條件轉(zhuǎn)移5.2流水線技術(shù)5.2.1流水線工作原理流水線方式是把一個重復(fù)的過程分解為若干個子過程,每個子過程可以與其他子過程同時進(jìn)行。由于這種工作方式與工廠中的生產(chǎn)流水線十分相似,因此,把它稱為流水線工作方式。1.從重疊到流水線一次重疊執(zhí)行方式就是一種簡單的指令流水線。2、流水線的時空圖一條簡單流水線的時空圖:一個浮點加法器流水線的時空圖(由求階差、對階、尾數(shù)加和規(guī)格化4個流水段組成):NL:規(guī)格化MA:尾數(shù)加EA:對階ED:求階差3、流水線的主要特點只有連續(xù)提供同類任務(wù)才能充分發(fā)揮流水線的效率:

對于指令流水線:要盡量減少因條件分支造成的“斷流”對于操作部件:主要通過編譯技術(shù),盡量提供連續(xù)的同類操作在流水線的每一個流水線段中都要設(shè)置一個流水鎖存器

時間開銷:流水線的執(zhí)行時間加長是流水線中需要增加的主要硬件之一各流水段的時間應(yīng)盡量相等

流水線處理機(jī)的基本時鐘周期等于時間最長的流水段的時間長度流水線需要有“裝入時間”和“排空時間”4.流水線的特點在處理機(jī)中采用流水線方式與采用傳統(tǒng)的串行方式相比具有如下特點:(1)在流水線中處理的必須是連續(xù)任務(wù),只有連續(xù)不斷地提供任務(wù)才能充分發(fā)揮流水線的效率。(2)把一個任務(wù)分解成幾個有聯(lián)系的子任務(wù),每個子任務(wù)由一個專門的功能部件來實現(xiàn)。(3)在流水線的每個功能部件的后面都要有一個緩沖寄存器,用于保存本段的執(zhí)行結(jié)果。(4)流水線中各段的時間應(yīng)盡量相等,否則將引起“堵塞”、“斷流”等。(5)流水線需要有“裝入時間”和“排空時間”。5.2.2流水線的分類1.線性流水線與非線性流水線按照流水線的各個功能段之間是否有反饋信號,可以把流水線分為線性流水線和非線性流水線兩類。2.流水線的級別按照流水線使用的不同級別,可以把流水線分為功能部件級、處理機(jī)級和處理機(jī)間級等多種類型。3.單功能與多功能流水線一條流水線只能完成一種固定的功能,稱為單功能流水線。流水線的各段可以進(jìn)行不同的連接,實現(xiàn)不同的功能稱為多功能流水線。4.靜態(tài)流水線與動態(tài)流水線按照在同一時間內(nèi)是否能夠連接成多種方式,同時執(zhí)行多種功能,可以把流水線分為靜態(tài)流水線和動態(tài)流水線。5.2.3線性流水線的性能分析衡量流水線的主要指標(biāo)有吞吐率、加速比和效率。1.吞吐率流水線的吞吐量(thoughputrate,TP)是指在單位時間內(nèi)流水線所完成的任務(wù)數(shù)量或輸出的結(jié)果數(shù)量。

TP=n/Tk2.加速比完成一批任務(wù),不使用流水線所用的時間與使用流水線所用的時間之比稱為流水線的加速比(speedupratio)。如果不使用流水線的時間為T0,使用流水線的執(zhí)行時間為Tk,則流水線的加速比為:

S=T0/Tk3.效率流水線的效率是指流水線的設(shè)備利用率。5.2.4非線性流水線的調(diào)度技術(shù)1.非線性流水線的表示2.非線性流水線的沖突3.無沖突調(diào)度方法4.優(yōu)化調(diào)度方法5.2.5局部相關(guān)

1.順序流動與亂序流動2.數(shù)據(jù)相關(guān)及其避免方法3.數(shù)據(jù)重定向5.3超標(biāo)量處理機(jī)與超流水線處理機(jī)5.3.1超標(biāo)量處理機(jī)1.基本結(jié)構(gòu)一般流水線處理機(jī):一條指令流水線,一個多功能操作部件,每個時鐘周期平均執(zhí)行指令的條數(shù)小于1。多操作部件處理機(jī):一條指令流水線,多個獨立的操作部件,操作部件可以采用流水線,也可以不流水。多操作部件處理機(jī)的指令級并行度小于1。

超標(biāo)量處理機(jī)典型結(jié)構(gòu):多條指令流水線先進(jìn)的超標(biāo)量處理機(jī)有:定點處理部件CPU,浮點處理部件FPU,圖形加速部件GPU大量的通用寄存器,兩個一級高速Cache超標(biāo)量處理機(jī)的指令級并行度大于15.3.2單發(fā)射與多發(fā)射單發(fā)射處理機(jī):每個周期只取一條指令、只譯碼一條指令,只執(zhí)行一條指令,只寫回一個運(yùn)算結(jié)果取指部件和譯碼部件各設(shè)置一套可以只設(shè)置一個多功能操作部件,也可以設(shè)置多個獨立的操作部件操作部件中可以采用流水線結(jié)構(gòu),也可以不采用流水線結(jié)構(gòu)設(shè)計目標(biāo)是每個時鐘周期平均執(zhí)行一條指令,ILP的期望值1多發(fā)射處理機(jī):每個周期同時取多條指令、同時譯碼多條指令,同時執(zhí)行多條指令,同時寫回多個運(yùn)算結(jié)果需要多個取指令部件,多個指令譯碼部件和多個寫結(jié)果部件設(shè)置多個指令執(zhí)行部件,復(fù)雜的指令執(zhí)行部件一般采用流水線結(jié)構(gòu)設(shè)計目標(biāo)是每個時鐘周期平均執(zhí)行多條指令,ILP的期望值大于15.3.3超標(biāo)量超流水線處理機(jī)為了進(jìn)一步提高處理機(jī)的指令級并行度,可以把超標(biāo)量技術(shù)與超流水線技術(shù)結(jié)合在一起,這就是超標(biāo)量流水線處理機(jī)。兩種定義:一個周期內(nèi)能夠分時發(fā)射多條指令的處理機(jī)稱為超流水線處理機(jī)指令流水線有8個或更多功能段的流水線處理機(jī)稱為超流水線處理機(jī)提高處理機(jī)性能的不同方法:超標(biāo)量處理機(jī)是通過增加硬件資源為代價來換取處理機(jī)性能的超流水線處理機(jī)則通過各硬件部件充分重疊工作來提高處理機(jī)性能兩種不同并行性:超標(biāo)量處理機(jī)采用的是空間并行性超流水線處理機(jī)采用的是時間并行性1、指令執(zhí)行時序每隔1/n個時鐘周期發(fā)射一條指令,流水線周期為1/n個時鐘周期在超標(biāo)量處理機(jī)中,流水線的有些功能段還可以進(jìn)一步細(xì)分例如:ID功能段可以再細(xì)分為譯碼、讀第一操作數(shù)和讀第二操作數(shù)三個流水段。也有些功能段不能再細(xì)分,如WR功能段一般不再細(xì)分。因此有超流水線的另外一種定義:有8個或8個以上流水段的處理機(jī)稱為超流水線處理機(jī)每個時鐘周期分時發(fā)送3條指令的超流水線2、典型處理機(jī)結(jié)構(gòu)MIPSR4000處理機(jī)每個時鐘周期包含兩個流水段,是一種很標(biāo)準(zhǔn)的超流水線處理機(jī)結(jié)構(gòu)。指令流水線有8

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論