版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第1章 計算機系統(tǒng)設(shè)計基礎(chǔ)第2章 數(shù)據(jù)表示與指令系統(tǒng)性能分析第3章 通道處理機第4章 流水技術(shù)和向量處理 第5章 陣列計算機 第6章 多處理機系統(tǒng)第7章 其它計算機結(jié)構(gòu)7/24/20221第4章 流水技術(shù)與向量處理 4.1 標(biāo)量流水工作原理4.2 標(biāo)量流水中的障礙及控制 4.3 流水線的調(diào)度技術(shù)4.4 先進的流水技術(shù)4.5 Pentium微處理器中的流水技術(shù)4.6 向量流水技術(shù)7/24/20222本章學(xué)習(xí)要求掌握標(biāo)量流水的性能分析及障礙的處理方法掌握非線性流水調(diào)度技術(shù)掌握向量流水機的結(jié)構(gòu)特征、向量指令并行性分析了解標(biāo)量流水、超標(biāo)量流水、超流水及超長指令字計算機的基本工作原理7/24/20223
2、提高指令執(zhí)行速度的主要途徑:(1) 提高處理機的工作主頻(2) 采用更好的算法和設(shè)計更好的功能部件(3) 采用指令級并行技術(shù)三種指令級并行處理機:(1) 流水線處理機和超流水線(Super-pipelining)處理機(2) 超標(biāo)量(Superscalar)處理機(3) 超長指令字(VLIW: Very Long Instruction Word)處理機7/24/202244.1 標(biāo)量流水工作原理什么是流水線?考慮設(shè)計一個洗衣機的工作流程,假定它有三道工序:洗滌、清洗、甩干。每個環(huán)節(jié)為5分鐘。需要完成的任務(wù)為3批,則考慮下述工作方式的工作效率:第一種:串行工作方式,即按照如下方式工作:第1批洗
3、滌第1批清洗第1批甩干第2批洗滌第2批清洗第2批甩干第3批洗滌第3批清洗第3批甩干3批衣服的整個工作時間為3*3*5=45分鐘7/24/20225第二種:重疊工作方式,設(shè)計三個部件,可以同時工作,每個部件只做一樣工作,操作方式如下圖:第1批洗滌第1批清洗第1批甩干第2批洗滌第2批清洗第2批甩干第3批洗滌第3批清洗第3批甩干Tttttt3批衣服的工作時間為5*5=25分鐘,節(jié)省20分鐘。7/24/20226引出下述關(guān)于洗衣機工作的有關(guān)性能特點: 吞吐率:單位時間內(nèi)完成的任務(wù)數(shù)TP=n/T 加速比:串行方式與流水線方式的時間比:上述為 45/25=1.8 效率:即洗衣機的利用率,上述洗衣機的效率是
4、9/15=3/5=60%將一條指令的執(zhí)行分為幾個階段,讓幾條指令按重疊或流水方式工作,以提高程序的執(zhí)行速度。這就引出了計算機中的流水線技術(shù)。7/24/20227指令的重疊解釋與先行控制計算機系統(tǒng)中廣泛存在著重疊工作方式指令的解釋方式一般只有三種:順序、重疊和流水重疊和流水給指令的執(zhí)行帶來了高的吞吐率和加速比,同時也給系統(tǒng)增加了障礙7/24/20228指令的解釋過程ALULOAD/STOREIF取指取指ID譯碼、讀寄存器堆譯碼、讀寄存器堆EX執(zhí)行計算訪存有效地址MEM-訪存(讀或?qū)懀¦B結(jié)果寫回寄存器堆將讀出的數(shù)據(jù)寫入寄存器堆7/24/20229一、指令的重疊解釋方式1、順序執(zhí)行方式 一條指令的
5、執(zhí)行過程:取指令-分析-執(zhí)行執(zhí)行n條指令所用的時間為: 如每段時間都為t,則執(zhí)行n條指令所用的時間為:T=3nt主要優(yōu)點:控制簡單,節(jié)省設(shè)備。主要缺點:執(zhí)行指令的速度慢,功能部件的利用率很低。取指令k分析k執(zhí)行k取指令k+1分析k+1執(zhí)行k+17/24/202210 2、重疊執(zhí)行方式(最簡單的流水線方式) 如果每個過程的時間相等,則執(zhí)行n條指令的時間為:T=(1+2n)t 主要優(yōu)點: 指令的執(zhí)行時間縮短 功能部件的利用率明顯提高 主要缺點: 需要增加一個IBR取指分析執(zhí)行取指分析執(zhí)行取指分析執(zhí)行7/24/2022113、更高重疊度的重疊解釋方式把取第k+1條指令提前到分析第k條指令同時執(zhí)行如果
6、三個過程的時間相等,執(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í)行k7/24/2022121訪存沖突 分析與取指均要訪問主存 解決: 1)采用兩個獨立編制的存貯器 數(shù)據(jù)/指令 但增加了復(fù)雜性 2)采用多體交叉存貯器 3)指令緩沖寄存器2功能部件的沖突 解決:設(shè)置獨立的分析部件和執(zhí)行部件 重疊方式對計算機組成的要求7/24/2022133同步 分析與執(zhí)行所需的時間不同,要求的是一次重疊 一次重疊:任何時間都是“分析K+1”與“執(zhí)行K”的重疊 =相鄰兩
7、條指令的重疊分析K執(zhí)行K分析K+1執(zhí)行K+1T=(n+1)t7/24/2022144轉(zhuǎn)移 無條件轉(zhuǎn)移/條件轉(zhuǎn)移當(dāng)轉(zhuǎn)移成功時,重疊預(yù)取無效,變?yōu)轫樞驁?zhí)行 應(yīng)盡可能不使用或少使用條件轉(zhuǎn)移指令5相關(guān) 鄰近指令之間出現(xiàn)某種關(guān)聯(lián),為避免出錯而不能同時執(zhí)行的現(xiàn)象。 局部性相關(guān)、全局性相關(guān)7/24/2022157/24/202216先行控制技術(shù)基本思想:使分析和執(zhí)行部件分別連續(xù)不斷地運行,使部件空閑狀態(tài)減至最低。(a)重疊方式分析k+1分析k執(zhí)行k執(zhí)行k+1分析k+2執(zhí)行k+2分析部件空閑執(zhí)行部件空閑分析k+1分析k執(zhí)行k分析k+2(b)先行控制執(zhí)行k+1執(zhí)行k+27/24/202217關(guān)鍵:緩沖技術(shù)預(yù)處理
8、技術(shù)緩沖技術(shù):在工作速度不固定的兩個功能部件之間設(shè)置緩沖棧,用以平滑它們的工作預(yù)處理技術(shù):把進入運算器的指令都預(yù)處理成R-R型指令,與緩沖技術(shù)相結(jié)合,為進入運算器的指令準(zhǔn)備好所需的全部操作數(shù)先行控制方式使運算器可專注于運算,從而可大幅度提高程序的執(zhí)行速度 硬件要求:增設(shè)指令緩沖棧,消除取指過程;增設(shè)數(shù)據(jù)緩沖棧,保證不同指令的讀、寫操作并行;增設(shè)先行操作棧,保證執(zhí)行部件能連續(xù)執(zhí)行。7/24/202218工作原理主 存存 控指令分析器 先行指令棧先行讀數(shù)棧后行寫數(shù)棧執(zhí)行部件先行操作棧數(shù)據(jù)緩沖棧 棧的深度要求:D指緩D操作 D讀棧 D寫棧7/24/202219二、標(biāo)量流水工作原理基本思想:流水是重疊
9、的進一步延伸,使指令解釋過程進一步細化,提高各部件的利用率,以提高指令執(zhí)行速度。流水線的表示方法:連接圖、時空圖、預(yù)約表7/24/2022201、簡單流水線的連接圖表示 流水線的每一個階段稱為流水段、流水線階段、流水功能段、功能段、流水級、流水節(jié)拍等。一個流水階段與另一個流水階段相連形成流水線。 有些復(fù)雜指令,在執(zhí)行階段也采用流水線方式工作,稱為操作流水線。取指訪存執(zhí)行譯碼寫回IFIDEXMEMWBS1S2S3S4S5輸入輸出7/24/202221 一種指令流水線一般4至12個流水段,等于及大于8個流水段的稱為超流水線處理機2、流水線的時空圖采用“時空圖”表示流水線的工作過程。一條簡單流水線的
10、時空圖:取指形成操作數(shù)地址譯碼取操作數(shù)執(zhí)行保存結(jié)果7/24/202222一個浮點加法器流水線的時空圖(由求階差、對階、尾數(shù)加和規(guī)格化4個流水段組成):ED1時間空間0t1t2t3t4t5ED2ED3ED4ED5EA1EA2EA3EA4EA5MA1MA2MA3MA4MA5NL1NL2NL3NL4NL5t6t7t8NL:規(guī)格化MA:尾數(shù)加EA:對階ED:求階差EDEAMANLmt7/24/2022233、流水線的預(yù)約表 時間流水段1234567S1XXXS2XXS3XXS4X7/24/202224三、流水線工作方式取指訪存執(zhí)行譯碼寫回IFIDEXMEMWBS1S2S3S4S5輸入輸出指令的流水處理
11、 流水線的基本結(jié)構(gòu)中主要包括三大部分:鎖存器、時鐘、功能段。 流水線中每個段都是由一些執(zhí)行算術(shù)和邏輯功能的組合邏輯線路組成的,它們可以互相獨立地對流過的信息進行某種操作,相鄰兩站由高速鎖存器(latch)隔開,信息在各段間的流動靠同時送到各站的時鐘信號來控制。1、流水線的結(jié)構(gòu)7/24/202225S1S2Sm輸入 輸出流水線的基本結(jié)構(gòu).時鐘7/24/202226121321nn-1.43215432.543.54.5nn-1.n-1.nn-1n1234t0 t0 t0 t0T0=m t0n t0T(m-1) t0(n-1) t0填入 正常 排空 流水時空圖空間時間建立時間、正常流動時間、排空時
12、間。2、流水線工作的三個時間7/24/2022273、流水線的分級、分類分級:(處理的級別分類) 部件級(操作流水線):將復(fù)雜的算邏運算組成流水工作方式;指令級:把一條指令解釋過程分成多個子過程 ;處理機級:每個處理機完成某一專門任務(wù),各個處理機所得到的結(jié)果需存放在與下一個處理機所共享的存儲器中 7/24/202228其他分類: 功能:單功能流水線(如CRAY-1)、多功能流水線(如TI-ASC) 工作方式:靜態(tài)流水線、動態(tài)流水線 連接方式:線性、非線性 處理數(shù)據(jù):標(biāo)量流水、向量流水1234出入非線性流水線7/24/2022291)ASC算術(shù)運算流水線(多功能)輸入減階對階移位相加規(guī)格化相乘累
13、加輸出123456784、流水線舉例輸入減階對階移位相加規(guī)格化輸出123458加輸入相乘累加輸出1678乘7/24/202230.1234.n-1n.1234.n-1n.1234.n-1n.1234.n-1n12345867.1234.n-1n.1234.n-1n時間空間(段號)加法一二三四二三一二一一乘法.靜態(tài)多功能流水線時-空圖靜態(tài)流水線:只有當(dāng)進入的是一串相同運算的指令時,流水的效能才得以發(fā)揮,才能使各個功能段并行地對多條指令的數(shù)據(jù)進行流水處理。 7/24/202231區(qū)別:如果從軟硬功能分配的觀點上來看,靜態(tài)流水線其實是把功能負擔(dān)較多地加到軟件上,以簡化硬件;動態(tài)流水線則是把功能負擔(dān)較
14、多地加在硬件上,以提高流水的效能。.12345.n-1n.12345.n-1n.12345.n-1n.12345.n-1n12345867.12345.n-1n.12345.n-1n時間加法乘法一二三四五六一二三四五六七一二三四五一二三四動態(tài)多功能流水線時-空圖m7/24/202232四、標(biāo)量流水線性能分析衡量流水線處理機的性能主要是吞吐率、加速比和效率。 1吞吐率:單位時間內(nèi)能處理的指令條數(shù)或能輸出的數(shù)據(jù)量。吞吐率越高,計算機系統(tǒng)的處理能力就越強。就流水線而言,吞吐率就是單位時間內(nèi)能流出的任務(wù)數(shù)或能流出的結(jié)果數(shù)。最大吞吐率:流水線達到穩(wěn)定狀態(tài)后可獲得的吞吐率。(1)Tpmax=1/t (2)
15、TPmax=1/ maxt1,t2,t3,t4 “瓶頸”子過程: 1234t t 3t t 7/24/202233子過程3為瓶頸段的時空圖最大吞吐率TPmax=1/3t mTS1S2S3S4t1t2t3t4t5t6t7t8t9t10t12t13t14t151234t11123412341234輸出7/24/202234131232334 2 1 4 3a 3b 3c 333瓶頸段細分重復(fù)設(shè)置瓶頸流水段解決瓶頸有兩種方法A:B:7/24/202235T重復(fù)設(shè)置瓶頸流水段后的工作時空圖mS1S2S3aS3cS3bS412354678910111212354678910111214710258113
16、6912123546789101112t1t12t177/24/202236實際吞吐率(1)完成n條指令的解釋共需時間 可以看出不僅實際的吞吐率總是小于最大的吞吐率,而且只有當(dāng)nm時,實際的吞吐率才能接近于理想的最大吞吐率。(2)各功能段時間不相等7/24/2022372.效率:設(shè)備的利用率,直接反映了處理機結(jié)構(gòu)有效程度。流水線有建立時間、排空時間,不總是滿負載工作。各段時間相等:各段時間不等:7/24/202238各段時間相等:各段時間不等:加速比:M段流水線的速度與等效的非流水線的速度之比。7/24/202239K=6K=10任務(wù)個數(shù)加速比10246811248163264128因為因此:
17、E=TP t ,S=kE流水線的吞吐率、加速比與效率的關(guān)系7/24/202240例1. 有一四段線性流水線,每功能段延時時間分別是: t1=t3=t4=t, t2=3t?,F(xiàn)在這個流水線上分別執(zhí)行4個任務(wù)和40個任務(wù)。求實際吞吐率、效率和加速比。解法一:時空圖分析法時間12343111223234123123123444443t3t空間157/24/202241Tp=4/(15t)E=24 t /(4*15t)=40%Sp=4*6 t /15t=1.6完成4個任務(wù)時:完成40個任務(wù)時,如何畫時空圖呢?方法二,公式分析法。當(dāng)流水線中各功能段的執(zhí)行時間不相等時,有7/24/2022427/24/20
18、2243例2、以浮點加法運算為例(四段)各段時間相等,求Z=A+B+C+D+E+F+G+H的TP、E、Sp。 時間空間Z=A+B+C+D+E+F+G+H1234567TP=7/15tE=7*4/(15*4)=7/15Sp=4*7/15=28/15=1.871111222233334444555566667777157/24/202244例3. ASC計算機功能算術(shù)運算流水線各段時間相等,6次浮點加、 5次定點乘的吞吐率、效率和加速比。 1,2,3,4,5,8組成加法流水1,6,7,8組成乘法流水12345678對階減階輸出相加規(guī)格化相乘累加輸入ASC計算機的流水線7/24/202245分析:T
19、加=6+(6-1)*1=11 T乘=4+(5-1)*1=8 TP= 11/(11+8)t =11/19 tE= (6*6+5*4) t /(19*8t)=11.54%Sp= 56 t /19 t =2.9412345612345612345612345612345867123456123456時間浮加定點乘一二三四五一二三四五一二三四五一二三四五7/24/2022464.2 標(biāo)量流水中的障礙及控制保持流水線性能條件:不能停頓或斷流。影響流水線性能因素:相關(guān)和功能切換。相關(guān)類型:全局相關(guān):轉(zhuǎn)移指令引起的相關(guān)結(jié)果:流水線斷流,流水線中后續(xù)指令全部作廢。局部相關(guān):資源或結(jié)構(gòu)相關(guān);指令相關(guān);數(shù)據(jù)相關(guān)。
20、結(jié)果:流水線停頓,流水線中后續(xù)指令有效。7/24/202247一、資源相關(guān)資源相關(guān):功能部件、主存資源當(dāng)有多條指令進入流水線后在同一機器周期內(nèi)爭用同一功能部件所引起的相關(guān)(沖突)當(dāng)有多條指令進入流水線后在同一機器周期內(nèi)同時訪問主存資源7/24/202248例1:兩條指令同時要用一個加法器ALULOAD/STOREIF取指取指ID譯碼、讀寄存器堆譯碼、讀寄存器堆EX執(zhí)行計算訪存有效地址MEM-訪存(讀或?qū)懀¦B結(jié)果寫回寄存器堆將讀出的數(shù)據(jù)寫入寄存器堆指 令流水段不同類型指令中各流水段進行的操作7/24/202249兩條指令同時訪存造成資源相關(guān)MEMEXIDIF指令i+4WBMEMEXIDIF指令
21、i+3WBMEMEXIDIF指令i+2WBMEMEXIDIF指令i+1WBMEMEXIDIFLoad指令87654321 時鐘指令沖突取指 譯碼 執(zhí)行 訪存 寫回例2:7/24/202250EXIDIF指令i+4MEM EXIDIF停頓指令i+3WBMEMEXIDIF指令i+2WBMEMEXIDIF指令i+1WBMEMEXIDIFLoad指令87654321 時鐘指令9WBMEM使i+3指令停頓一拍進入流水線,以解決訪存相關(guān);或重復(fù)設(shè)置一個存儲器;采用先行控制技術(shù)解決方法:7/24/202251二、指令相關(guān)后續(xù)指令的內(nèi)容取決于當(dāng)前指令執(zhí)行的結(jié)果,即指令允許修改引起的相關(guān)解決相關(guān):不準(zhǔn)修改指令、
22、變指令相關(guān)為數(shù)據(jù)相關(guān)EXR1D2B2X2IBM370中的“執(zhí)行”指令7/24/202252三、數(shù)據(jù)相關(guān)由于流水線中的各條指令間的重疊解釋,使得原來對操作數(shù)的訪問順序發(fā)生了變化,從而導(dǎo)致了數(shù)據(jù)之間的相關(guān)。這種相關(guān)有三類:先寫后讀(改用相關(guān)) 、先讀后寫(用改相關(guān)) 、寫寫相關(guān)(改改相關(guān)) 。設(shè)有i 和j兩條指令,i指令在前,j指令在后,則三種不同類型的數(shù)據(jù)相關(guān)的含義為:7/24/202253 RAW讀寫(先寫后讀) - 指令 j 試圖在指令 i 寫入寄存器前就讀出該寄存器內(nèi)容,這樣,指令j就會錯誤地讀出該寄存器舊的內(nèi)容。 i: R1+R2-R3 j: R3*R4-R5 WAR寫讀(先讀后寫) -
23、 指令 j 試圖在指令 i讀出寄存器之前就寫入該寄存器,這樣,指令i就錯誤地讀得該寄存器新的內(nèi)容。 i: R3*R4-R5 j: R1+R2-R3 WAW寫寫(先寫后寫) - 指令j試圖在指令i寫寄存器之前就寫入該寄存器,這樣,兩次寫的先后次序被顛倒,就會錯誤地使由指令i寫入的值成為該寄存器內(nèi)容。 i: R1*R2-R3 j: R4+R5-R37/24/202254解決數(shù)據(jù)相關(guān)的辦法用軟件和硬件技術(shù):時間推后法旁路技術(shù)或相關(guān)專用通路技術(shù)例: n : load A IF ID EX WR n+1: load B IF ID EX WR n+2: add A,B IF ID 氣泡 EX WR n+
24、3: store C IF ID 氣泡 EX WR n+4 : jump K IF ID EX WR n+5: load E 停頓 停頓 停頓。 n+6 停頓。 K: IF ID EX 例中有資源相關(guān)、有控制轉(zhuǎn)移相關(guān),這將影響流水線的性能。7/24/202255IF ID EX MEM WB IF ID EX WB IF ID EX WB IF ID EX WB IF ID EX WB ADD R1,R2,R3SUB R4,R1,R5AND R6,R1,R7OR R8,R1,R9XOR R10,R1,R11定向傳遞R1值數(shù)據(jù)相關(guān)和定向傳遞指令寫R1完成MEM MEM MEM MEM 7/24/
25、202256ALU運算結(jié)果寫RF RF讀RFALU操作數(shù)寄存器專用通路(旁路)旁路RFALUBufferMultMult7/24/202257四、全局性相關(guān)由轉(zhuǎn)移指令(條件/無條件)引起的相關(guān)轉(zhuǎn)移指令在程序中所占比例約為20-25%,不可忽視解決這種相關(guān)的方法:猜測法、加快和提前形成條件碼、加快短循環(huán)程序的處理、采用延遲轉(zhuǎn)移技術(shù)7/24/2022581、猜測法:選取發(fā)生概率較高的分支為猜測方向,若猜對,繼續(xù)執(zhí)行;否則,作廢猜測方向的執(zhí)行,返回實際轉(zhuǎn)移處。(1)如何提高猜測命中率 靜態(tài)猜測法:猜測不成功方向。由程序員和編譯程序把發(fā)生概率高的分支安排在猜測方向。 動態(tài)猜測法:根據(jù)轉(zhuǎn)移歷史猜測。I-
26、1I-2I+4I+1I+2I+3 I K+3K+2K+1 k branch成功不成功7/24/202259轉(zhuǎn)移目標(biāo)緩沖器(BTB) 利用BTB(Branch Target Buffer)硬件,動態(tài)地預(yù)測轉(zhuǎn)移方向轉(zhuǎn)移指令地址轉(zhuǎn)移目標(biāo)地址狀態(tài)欲取指令的PC查找預(yù)測PC值=按正常順序執(zhí)行NY7/24/202260轉(zhuǎn)移預(yù)測原理:用2位二進制數(shù)記錄實際轉(zhuǎn)移狀態(tài)(歷史位),高位為1時預(yù)測轉(zhuǎn)移發(fā)生,高位為0時預(yù)測轉(zhuǎn)移不發(fā)生。注意:初始狀態(tài)、狀態(tài)修改、猜測方向表示預(yù)測發(fā)生11預(yù)測發(fā)生10預(yù)測不發(fā)生01預(yù)測不發(fā)生00轉(zhuǎn)移1不轉(zhuǎn)移0不轉(zhuǎn)移0不轉(zhuǎn)移0轉(zhuǎn)移1轉(zhuǎn)移1轉(zhuǎn)移1不轉(zhuǎn)移07/24/202261(2)猜測的后續(xù)處
27、理 分支現(xiàn)場的保護及恢復(fù): 猜測執(zhí)行只完成譯碼、取操作數(shù)或執(zhí)行但不寫結(jié)果; 采用后援寄存器保存可能被破壞的狀態(tài)。 預(yù)防猜不中時的加速處理: 預(yù)取猜測方向的另一方向的前幾條指令,放到緩沖器中,加速猜不中時回頭速度。I-1I-2I+4I+1I+2I+3 I K+3K+2K+1 k branch成功不成功7/24/2022622、加快和提前形成條件碼單條指令的條件碼并不一定要等執(zhí)行完成得到運算結(jié)果后才能形成循環(huán)程序判斷的提前形成 3、優(yōu)化延遲轉(zhuǎn)移技術(shù) a.將轉(zhuǎn)移指令前的那條指令調(diào)度到延遲槽中; b.將轉(zhuǎn)移目標(biāo)處的那條指令調(diào)度到延遲槽中; c.將轉(zhuǎn)移不發(fā)生時該執(zhí)行的那條指令調(diào)度到延遲槽中。4、加快短循
28、環(huán)處理7/24/202263五、流水線中的中斷處理流水機器處理中斷的關(guān)鍵不在于如何縮短斷流時間,而是如何處理好斷點現(xiàn)場及中斷后的恢復(fù)問題不精確斷點法:不論第i條指令在流水線的哪一段發(fā)出中斷申請,都不再允許那時還未進入流水線的后續(xù)指令再進入。斷點就是最后進入流水線的那條指令7/24/202264S1S8S7S6S5S4S3S2輸入輸出i+5ii-1i+1i+2i+3i+4i-2PC:不精確斷點申請中斷精確斷點特點:硬件開銷小,控制簡單,適用于常規(guī)的I/O操作。7/24/202265 精確斷點法:不論第i條指令是在流水線中哪一段發(fā)出的中斷申請,給中斷處理程序的現(xiàn)場全都是對應(yīng)第i條的。適用于程序性錯
29、誤和機器故障等產(chǎn)生的中斷精確斷點法中對原有現(xiàn)場的恢復(fù),要增加后援寄存器,以保留各功能段狀態(tài)i: FADD R1, R2 ;(R1)+(R2) R1i+1: FMUL R3,R1 ;(R3)*(R1) R3S6:加法結(jié)果溢出精確斷點法有利于程序調(diào)試7/24/202266例4 在一條單流水線處理機上執(zhí)行下面的程序。每條指令都要經(jīng)過“取指”,“譯碼”,“執(zhí)行”和“寫結(jié)果”4個流水段。每個流水段的延遲時間都是5ns。 在“執(zhí)行”流水段,LS部件完成LOAD或STORE操作,其它操作都在ALU部件中完成,兩個操作部件的輸出端有直接數(shù)據(jù)通路與任一操作部件的輸入端相連,ALU部件產(chǎn)生的條件碼也能夠直接送入控
30、制器。7/24/202267 1: SUB R0, R0 ;R00 2: LOAD R1,#8 ;向量長度8 3:LOOP:LOAD R2,A ;R2 A向量的一個元素 4: MUL R2,R1 ;R2 (R2)*(R1) 5: ADD R0,R2 ;R0 (R0)+(R2) 6: DJNE R1,LOOP;R1 (R1)-1若(R1)0則轉(zhuǎn) 7: STORE R0,S ;保存結(jié)果(1)采用靜態(tài)分支預(yù)測技術(shù),每次都預(yù)測轉(zhuǎn)移不成功。畫出指令流水線的時空圖。計算流水線的吞吐率和加速比。并分別計算出譯碼部件和ALU部件的使用效率。(2)采用靜態(tài)分支預(yù)測技術(shù),每次都預(yù)測轉(zhuǎn)移成功。計算指令流水線的吞吐率
31、和加速比。并分別計算出譯碼部件和ALU部件的使用效率。7/24/20226852112112322333454445556666取指寫回ALULS譯碼3333444455556666333344445555666633334444555566667777.重復(fù)8次m(1)解:每次預(yù)測轉(zhuǎn)移不成功,流水線時空圖如下:7/24/202269112112322333454445556666取指寫回ALULS譯碼333344445555666633334444555566667777.重復(fù)8次m(2)解:每次預(yù)測轉(zhuǎn)移成功,流水線時空圖如下:7/24/2022704.3 流水線的調(diào)度技術(shù)靜態(tài)調(diào)度:借助軟件
32、對指令執(zhí)行順序進行調(diào)度,以減少由于流水線中存在相關(guān)沖突而引起流水線的停頓時間。動態(tài)調(diào)度:通過硬件重新安排指令的執(zhí)行順序以減少流水的停頓。有集中式和分布式兩種。7/24/202271一、靜態(tài)調(diào)度技術(shù)靜態(tài)調(diào)度:借助軟件對指令執(zhí)行順序進行調(diào)度,以減少由于流水線中存在相關(guān)沖突而引起流水線的停頓時間。非線性流水線中存在著前(反)饋回路,必然會引起功能段的沖突而發(fā)生流水線停頓。調(diào)度方法會減少停頓時間。調(diào)度方案是基于二維預(yù)約表和狀態(tài)圖來進行分析7/24/202272非線性流水線的連接圖 時間流水段1234567S1XXXS2XXS3XXS4X非線性流水線的預(yù)約表S1S2S3S4輸出輸入反饋線7/24/202
33、273某流水線結(jié)構(gòu)如下:非線性流水線調(diào)度舉例 S1S2S3S4S5入出 流水線調(diào)度方案如下:7/24/202274(1)形成預(yù)約表指令總拍數(shù)為n,流水線有k個段,則形成nk的預(yù)約表,段的使用情況用“”表示。 預(yù)約表如下:543 2198765438271tS7/24/202275(2)由預(yù)約表形成禁止表FF=各段中沖突間隔拍數(shù) -功能段1的禁止間隔拍數(shù)為8; -功能段2的禁止間隔拍數(shù)為5和6; -功能段3的無禁止間隔拍數(shù); -功能段4的禁止間隔拍數(shù)為1; -功能段5的禁止間隔拍數(shù)為1。 F=1,5,6,8(3)由禁止表F形成初始沖突向量C0C0 =(10110001), ci=1沖突,0不沖突
34、。 7/24/202276(4)由初始沖突向量C0形成狀態(tài)轉(zhuǎn)換圖a. 取C0分別間隔2、3、4、7拍,且將C0分別邏輯右移2、3、4、7位,高位補0后再與C0按位“或”,形成新的沖突向量C1 、C2 和C3 ;10110001101101111011110110111011初始狀態(tài)3427C0C1C2C37/24/202277b. 再分別取C1間隔2、7拍;取C2間隔4、7拍;取C3間隔3、7拍。方法同上,直至全部完成。 注意:向量Ci右移后,總是與原始向量C0作邏輯加。1011000110110111101111011011101110111111初始狀態(tài)34422777C0C1C2C3C4
35、777/24/202278(5)根據(jù)狀態(tài)圖寫出調(diào)度方案 每一個閉合回路就是一個調(diào)度方案(策略)1011000110110111101111011011101110111111初始狀態(tài)34422777C0C1C2C3C47737/24/202279本例中調(diào)度方案如下:調(diào)度策略平均間隔拍數(shù)調(diào)度策略平均間隔拍數(shù)(2, 7)4.50(4, 3)3.50(2, 2, 7)3.67(4, 3, 7)4.67(3, 4)3.50(4, 7)5.00(3, 7)5.00(7)7.00(3, 4, 7)4.67 平均延時最小的調(diào)度方案為最佳調(diào)度方案,本例為(3,4)和(4,3)。 對非C0開始的調(diào)度方案由流水線
36、控制器完成控制的過渡。7/24/202280調(diào)度方案的驗證原理:二維預(yù)約表方法:給定任務(wù)數(shù),使用每一種可能的調(diào)度方案進行調(diào)度驗證:調(diào)度過程中有無功能段的沖突?7/24/202281123456789101112131415S1S2S3S4S5例如,按(3,4)調(diào)度方案,連續(xù)輸入3個任務(wù)的調(diào)度過程如下:7/24/202282按(4,3)調(diào)度方案連續(xù)輸入6個任務(wù)的時空圖S1S2S3S4S5mt7/24/202283性能分析設(shè)共輸入8個任務(wù),按最佳調(diào)度方案(平均時延最小3.5拍)(3,4)進行調(diào)度,計算流水調(diào)度的最大和實際吞吐率7/24/202284例5 設(shè)有一4段流水線處理機如下圖所示。此流水線的
37、總值時間為6個時鐘周期,所有相繼段必須在每個時鐘周期之后才能使用。(1)列出這一流水線的4行6列的預(yù)約表;(2)列出禁止表和畫出狀態(tài)圖;(3)求出平均延遲最小的調(diào)度方案和最大吞吐率。S1S2S3S4輸出輸入7/24/202285功能段123456S1S2S3S4解法一:4行6列的預(yù)約表(一)禁止表的原始沖突向量為:F=4,C=(1000)7/24/20228610001100111011111010100110111101111212333223解法一的狀態(tài)轉(zhuǎn)移圖平均延遲最小的調(diào)度方案是:(1,2,3,2)。最小平均延遲是:2t。最大吞吐率是:TPmax=1/2t。7/24/202287功能段
38、123456S1S2S3S4解法二:4行6列的預(yù)約表(二)禁止表的原始沖突向量為:F=2,4,C=(1010)7/24/20228810101111101113355解法二的狀態(tài)轉(zhuǎn)移圖平均延遲最小的調(diào)度方案是:(3)。最小平均延遲是:3t。最大吞吐率是:TPmax=1/3t。7/24/202289二、動態(tài)調(diào)度技術(shù)動態(tài)調(diào)度:通過硬件重新安排指令的執(zhí)行順序以減少流水的停頓。有集中式和分布式優(yōu)點: (1)能處理某些在編譯時無法知道的相關(guān)情況 (2)能簡化編譯程序設(shè)計 (3)使代碼有可移植性缺點:相應(yīng)的硬件較為復(fù)雜。7/24/2022901、集中式動態(tài)調(diào)度靜態(tài)調(diào)度中的指令是按序( In-order )
39、執(zhí)行,如果一條指令在流水線中發(fā)生停頓,后續(xù)指令就不再前進了動態(tài)調(diào)度可使指令按無序( Out-order )方式工作集中式動態(tài)調(diào)度:依靠硬件在程序運行過程中對可能出現(xiàn)的相關(guān)情況加以檢測,從而保證流水線中的各個功能部件能最大限度地重疊工作7/24/202291EX MEMWB 集中式動態(tài)調(diào)度IF ID整數(shù)部分浮點加浮點乘浮點除RF記錄控制器指令控制/狀態(tài)控制/狀態(tài)狀態(tài)記錄控制器(記分牌)記錄與控制在流水線的EX段開始。7/24/202292檢測功能:功能部件(資源)沖突; 源、目的REG引起的RAW、WAR、WAW相關(guān)??刂乒δ埽河袥_突或相關(guān)的指令推后進入流水線的執(zhí)行部件,否則正常指令進入流水線的
40、執(zhí)行部件;記錄功能部件、REG、指令的狀態(tài);根據(jù)記錄的狀態(tài),控制后續(xù)指令的進入。7/24/2022932、分布式動態(tài)調(diào)度 此方法是由Tomasulo于1967年提出來的,已在IBM360/91機中采用。IBM360/91的浮點運算器主要部件:(1)運算部件:一個加法部件和一個乘除部件。(2)保存站:加法部件中有A1A3三個保存站,乘除部件有M1和M2兩個保存站,用來保存當(dāng)前參加運算的數(shù)據(jù)。7/24/202294(3) 指令操作緩沖棧:存放經(jīng)分析后由指令部件送來的指令,譯碼后, 產(chǎn)生相應(yīng)的控制信號送到各個部件。(4)浮點操作數(shù)寄存器(FLB):存放由主存預(yù)取來的操作數(shù)。(5)浮點寄存器(FLR)
41、:存放操作數(shù)的寄存器。(6)存儲數(shù)據(jù)緩沖站(SDB):存放將寫入存儲器的結(jié)果數(shù)據(jù),也有站號。(7)公共數(shù)據(jù)總線(CDB):以上各部件間的連接總線。7/24/202295浮點操作數(shù)緩沖器(FLB)控浮點操作棧(FLOS)忙制位站號源1控制站號源2站號源1站號源2控制控制號站存數(shù)緩沖器(SDB)加法器乘/ 除法器譯碼器站號浮點寄存器(FLR)M1M2A1A2A3101010111100FLB 總線FLR總線10001001CDB公共數(shù)據(jù)總線指令處理部件存儲器總線654321站號: 01100001F76543F21F0保存站 IBM360/91的浮點運算部件結(jié)構(gòu)框圖7/24/202296S1:(F
42、LB1)F0S2: (F0)*(FLB2)F0S3: (F0) AS4: (FLB3)F0S5: (F0)+(FLB4)F0;F0站號置為0001;F0置忙位為1,M1源1為0001,源2為0010,F(xiàn)0站號為1000;C1站號置1000;F0站號置為0011;F0置忙位為1,A1源1為0011, 源2為0100,F(xiàn)0站號為1010調(diào)度方法特點:通過FLR的“忙”位,檢測RAW相關(guān);通過修改站號(重命名),消除WAR、WAW相關(guān);通過設(shè)置保存站,減少資源相關(guān)沖突;借助CDB作相關(guān)專用通路。7/24/2022974.4 先進的流水技術(shù)流水中指令級并行性的進一步開發(fā)粗粒度并行性:在多處理機上分別運
43、行多個進程,由多臺處理機合作完成一個程序;細粒度并行性:指在一個進程中進行操作一級或指令一級的并行處理。RISC機進一步開發(fā)細粒度并行性7/24/202298一、超標(biāo)量流水處理技術(shù)每個時鐘周期平均執(zhí)行指令的條數(shù)大于或等于2超標(biāo)量處理機典型結(jié)構(gòu):多條指令流水線、多個功能部件先進的超標(biāo)量處理機有:定點處理部件CPU,浮點處理部件FPU,圖形加速部件GPU,大量的通用寄存器,兩個一級高速Cache超標(biāo)量處理機的指令級并行度ILP大于17/24/202299超標(biāo)量流水線處理機的一般結(jié)構(gòu)IFIDFA1FA2FA3MD1MD2MD3ALLS浮點加法部件乘除法部件定點ALU部件取數(shù)存數(shù)部件WRIFIDWR7
44、/24/2022100整數(shù)部件整數(shù)部件位操作浮點加乘法部件除法部件圖形部件圖形部件內(nèi)部總線讀數(shù)存數(shù)部件通用寄存器堆擴展寄存器堆目標(biāo)指令指令分配轉(zhuǎn)移部件數(shù)據(jù)Cache (8KB)指令Cache (8KB)系統(tǒng)總線32位地址總線32位數(shù)據(jù)總線超標(biāo)量處理機MC88110的結(jié)構(gòu)7/24/2022101IFIDFA1FA2FA3MD1MD2MD3ALLS浮點加法部件乘除法部件定點ALU部件取數(shù)存數(shù)部件WRIFIDWRIFID先行指令窗口注:先行指令窗口除了能夠做數(shù)據(jù)相關(guān)性分析和功能部件沖突的檢測之外,還至少有一套取指令部件和一套指令譯碼部件7/24/2022102IF時鐘周期指令I(lǐng)1I2I3IDEXWR
45、123456I4I5I6IFIDEXWRI7I8I9IFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWR超標(biāo)量流水處理機的時空圖7/24/2022103超標(biāo)量流水線的調(diào)度按序發(fā)射:當(dāng)指令按策劃功能序的次序發(fā)射時,稱之為按序發(fā)射(in-order issue)無序發(fā)射:為改善流水線性能,可以將有相關(guān)的指令推后發(fā)射,而將后面的無相關(guān)性的指令提前發(fā)射,即不按程序原有次序發(fā)射指令,稱之為無序發(fā)射(out-of-order)按序完成:完成順序與發(fā)射順序一致無序完成:完成順序與發(fā)射順序不一致7/24/2022104按序發(fā)射按序完成靜態(tài)調(diào)度策略;(
46、Pentium)按序發(fā)射無序完成動態(tài)調(diào)度策略;( PentiumII/III )無序發(fā)射無序完成動態(tài)調(diào)度策略。無論那種調(diào)度策略,都要保證程序運行的最終結(jié)果是正確的,發(fā)射策略由譯碼控制器完成,完成策略由執(zhí)行控制器完成。常用的調(diào)度方法7/24/2022105IF1ID1L/SWR1IF2ID2部件FA1WR2FA3FA2順序(RAW)順序(WAW)順序順序(RAW)MD1MD2MD3WR1IF2ID2FA1FA2FA3ID1IF1WR2ID1ALIF1WR1ID2MD1MD2MD3I1WR2IF2I2I3I4I5I6指令時鐘周期1 2 3 4 5 6 7 8 9 10流水線2流水線1 I1: LO
47、AD R1,A ;主存單元A R1 I2: FADD R2,R1 ;(R1)+( R2) R2 I3: FMUL R3,R4 ;(R3)(R4) R3 I4: FADD R4,R5 ;(R4)+( R5) R4 I5: DEC R6 ;(R6)-1 R6 I6: FMUL R6,R7 ;(R6)(R7) R6按序發(fā)射按序完成之調(diào)度過程7/24/2022106IF1ID1L/SWR1IF2ID2部件FA1WR2FA3FA2(RAW)(RAW)MD1MD2MD3WR1IF2ID2FA1FA2FA3ID1IF1WR2ID1ALIF1WR1ID2MD1MD2MD3I1WR2IF2I2I3I4I5I6指
48、令時鐘周期1 2 3 4 5 6 7 8 9 流水線2流水線1 I1: LOAD R1,A ;主存單元A R1 I2: FADD R2,R1 ;(R1)+( R2) R2 I3: FMUL R3,R4 ;(R3)(R4) R3 I4: FADD R4,R5 ;(R4)+( R5) R4 I5: DEC R6 ;(R6)-1 R6 I6: FMUL R6,R7 ;(R6)(R7) R6按序發(fā)射無序完成之調(diào)度過程7/24/2022107IF1ID1L/SWR1IF2ID2FA1WR2FA3FA2MD1MD2MD3WR1IF1ID1FA2FA3FA1ID3IF3WR2ID2ALIF2WR1ID2MD
49、2MD3MD1I1WR2IF2I3I4I2I5I6指令時鐘周期1 2 3 4 5 6 7 8 流水線2流水線1 I1: LOAD R1,A ;主存單元A R1 I2: FADD R2,R1 ;(R1)+( R2) R2 I3: FMUL R3,R4 ;(R3)(R4) R3 I4: FADD R4,R5 ;(R4)+( R5) R4 I5: DEC R6 ;(R6)-1 R6 I6: FMUL R6,R7 ;(R6)(R7) R6無序發(fā)射無序完成之調(diào)度過程先行控制7/24/2022108超標(biāo)量流水線的資源沖突在先進的超標(biāo)量流水機中,有多個操作(執(zhí)行)部件,如:ALU、FADD、FMUL、GPU
50、、LSU等操作部件必須采用流水結(jié)構(gòu),可減少資源沖突7/24/2022109I1:FADD R0,R1 ;(R0)+(R1)R0 I2:FMUL R2,R3 ;(R2)(R3)R2I3:FADD R4,R5 ;(R4)+(R5)R4I4:FMUL R6,R7 ;(R6)(R7)R6IF1IF2ID1ID2FADDIF1ID1IF2ID2WR1FMULWR2FADDFMULWR1WR2I1I2I3I41234567891011雙流水線超標(biāo)量處理機(操作部件非流水結(jié)構(gòu))7/24/2022110I1:FADD R0,R1 ;(R0)+(R1)R0 I2:FMUL R2,R3 ;(R2)(R3)R2I3
51、:FADD R4,R5 ;(R4)+(R5)R4I4:FMUL R6,R7 ;(R6)(R7)R6IF1IF2ID1ID2FA1IF1ID1IF2ID2WR1FM1WR2WR1I1I2I3I412345678t雙流水線超標(biāo)量處理機(操作部件流水結(jié)構(gòu))FA2FA3FM2FM3FM4FA1FA2FA3FM1WR2FM2FM3FM47/24/2022111二、超流水線處理機兩種定義: 一個周期內(nèi)能夠分時發(fā)射多條指令的處理機稱為超流水線處理機。 指令流水線有8個或更多功能段的流水線處理機稱為超流水線處理機。提高處理機性能的不同方法: 超標(biāo)量處理機是通過增加硬件資源為代價來換取處理機性能的。 超流水線處
52、理機則通過各硬件部件充分重疊工作來提高處理機性能。兩種不同并行性: 超標(biāo)量處理機采用的是空間并行性 超流水線處理機采用的是時間并行性7/24/2022112指令執(zhí)行時序每隔1/n個時鐘周期發(fā)射一條指令,流水線周期為1/n個時鐘周期在超標(biāo)量處理機中,流水線的有些功能段還可以進一步細分,例如:ID功能段可以再細分為譯碼、讀第一操作數(shù)和讀第二操作數(shù)三個流水段。也有些功能段不能再細分,如WR功能段一般不再細分。因此有超流水線的另外一種定義:有8個或8個以上流水段的處理機稱為超流水線處理機7/24/2022113IF時鐘周期指令I(lǐng)1I2I3IDEXWR123456I4I5I6IFIDEXWRI7I8I9
53、IFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWR每個時鐘周期分時發(fā)送3條指令的超流水線7/24/2022114MIPS R4000處理機的流水線操作指令CacheIF:取第一條指令I(lǐng)S:取第二條指令RF:讀寄存器堆,指令譯碼EX:執(zhí)行指令DF:取第一個數(shù)據(jù)DS:取第二個數(shù)據(jù)TC:數(shù)據(jù)標(biāo)志校驗;WB:寫回結(jié)果指令譯碼讀寄存器堆ALU數(shù)據(jù)Cache標(biāo)志檢驗寄存器堆IFISRFEXDFDSWBTC7/24/2022115IF流水線周期當(dāng)前CPU周期ISRFEXDFDSTCWBIFISRFEXDFDSTCWBIFISRFEXDFDSTCW
54、BIFISRFEXDFDSTCWBIFISRFEXDFDSTCWBIFISRFEXDFDSTCWBIFISRFEXDFDSTCWBIFISRFEXDFDSTCWB主時鐘周期MIPS R4000正常指令流水線工作時序7/24/2022116三、超標(biāo)量超流水線處理機把超標(biāo)量與超流水線技術(shù)結(jié)合在一起,就成為超標(biāo)量超流水線處理機指令執(zhí)行時序 超標(biāo)量超流水線處理機在一個時鐘周期內(nèi)分時發(fā)射指令n次,每次同時發(fā)射指令m條,每個時鐘周期總共發(fā)射指令m n條。7/24/2022117IF時鐘周期指令I(lǐng)1I2I3IDEXWR12345I4I5I6I7I8I9IFIDEXWRIFIDEXWRIFIDEXWRIFID
55、EXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRI10I11I12每時鐘周期發(fā)射3次,每次3條指令7/24/2022118不同結(jié)構(gòu)計算機的性能分析標(biāo)量處理機的并行度(1,1)超標(biāo)量處理機的并行度(m,1)超流水處理機的并行度(1,n)超標(biāo)量超流水處理機的并行度(m,n)7/24/2022119標(biāo)量流水處理機上執(zhí)行N條指令的時間:超標(biāo)量流水處理機上執(zhí)行N條指令的時間:7/24/2022120超流水處理機上執(zhí)行N條指令的時間:超標(biāo)量超流水處理機上執(zhí)行N條指令的時間:7/24/2022121四、超長指令字(VLIW)計算機VLI
56、W是以一條長指令實現(xiàn)多個操作的并行執(zhí)行,減少存儲器訪問。主要特點:(1)單一的控制流。只有一個控制器,每個周期啟動一條指令。(2)超長指令字被分成多個控制字段,每個字段直接獨立地控制每個功能部件。(3)在編譯階段完成超長指令中多個可并行執(zhí)行操作的調(diào)度。7/24/2022122 超長指令字計算機舉例如完成以下運算:C=A+B、K=I+J、 L=M-K、Q=CK需以下13條指令完成: (需花14個T )LOAD A、LOAD B、C=A+B、STORE C、LOAD I、LOAD J、K=I+J、STORE K、LOAD M、L=M-K、STORE L、Q=CK、STORE Q7/24/20221
57、23主存RF (寄存器堆)LD/ST2FADDFMULLD/ST1LD/ST1LD/ST2FADDFMUL存/取1存/取2浮點加浮點乘操作并行度4LOAD A LOAD BLOAD I LOAD J C=A+BLOAD M STORE C K=I+J STORE K L=M-K Q=CK STORE LSTORE Q用VLIW則只需6個T7/24/2022124例6 在下列不同結(jié)構(gòu)的處理機上運行88的矩陣乘法C=AB,計算所需要的最短時間。只計算乘法指令和加法指令的執(zhí)行時間,不計算取操作數(shù)、數(shù)據(jù)傳送和程序控制等指令的執(zhí)行時間。加法部件和乘法部件的延遲時間都是3個時鐘周期,另外,加法指令和乘法指
58、令還要經(jīng)過一個“取指令”和“指令譯碼”的時鐘周期,每個時鐘周期為20ns,C的初始值為“0”。各操作部件的輸出端有直接數(shù)據(jù)通路連接到有關(guān)操作部件的輸入端,在操作部件的輸出端設(shè)置有足夠容量的緩沖寄存器。7/24/2022125(1)處理機內(nèi)只有一個通用操作部件,采用順序方式執(zhí)行指令。解:需要完成的乘法次數(shù)為888=512次需要完成的加法次數(shù)為887=448次執(zhí)行完成總時間為:7/24/2022126(2)單流水線標(biāo)量處理機,有一條兩個功能的靜態(tài)流水線,流水線每個功能段的延遲時間均為一個時鐘周期,加法操作和乘法操作各經(jīng)過3個功能段。解:IFIDAD1AD2AD3MU1MU3MU27/24/2022
59、127(3)單流水線標(biāo)量處理機,處理機內(nèi)有兩條獨立的操作流水線,流水線每個功能段的延遲時間均為一個時鐘周期。解:IFIDAD1AD2AD3MU1MU3MU27/24/2022128(4)超標(biāo)量處理機,每個時鐘周期同時發(fā)送一條乘法指令和一條加法指令,處理要內(nèi)有兩條獨立的操作流水線,流水線的每個功能段的延遲時間均為一個時鐘周期。(不考慮數(shù)據(jù)之間的相關(guān)性,下同。)解:7/24/2022129(5)超流水處理機,把一個時鐘周期分為兩個流水級,加法部件和乘法部件的延遲時間都為6個流水級,每個時鐘周期能夠分時發(fā)射兩條指令,即每個流水級能夠發(fā)射一條指令。IFIDAD1AD2AD3MU1MU3MU2解:1 2
60、 3 4 5 6 7 8 9 107/24/2022130(6)超標(biāo)量超流水線處理機,把一個時鐘周期分為兩個流水級,加法部件和乘法部件延遲時間都為6個流水級,每個流水級能夠同時發(fā)射一條乘法指令和一條加法指令。解:7/24/20221314.6 向量流水技術(shù)向量流水的基本原理CRAY-1型向量處理機增強向量處理性能的方法7/24/20221324.6.1 向量流水的基本原理提高流水性能方法:增加流水線段數(shù),以減少t;每個時鐘同時啟動多條指令;減少相關(guān),減少功能變換次數(shù),增加處理指令條數(shù)。向量操作特點1.向量元素間操作相互獨立,且為相同操作。2.相當(dāng)于標(biāo)量循環(huán),對指令帶寬的訪問要求不高。3.可采用
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建師范大學(xué)《學(xué)校團體心理輔導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年二級建造師實務(wù)集訓(xùn)模擬題二-答案
- 財務(wù)管理-旅行社清算報告模板
- 診所虧損原因財務(wù)分析報告模板
- 福建師范大學(xué)《環(huán)境工程學(xué)》2022-2023學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《公共管理類專業(yè)導(dǎo)論》2021-2022學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《德育原理》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江省杭州市2022年中考英語真題(含答案)
- 規(guī)范學(xué)習(xí)考試題目(低壓電器)
- 特色活動教學(xué)論文評比活動方案總結(jié)
- 國網(wǎng)新安規(guī)培訓(xùn)考試題及答案
- 5.1+走近老師(課件)2024-2025學(xué)年七年級道德與法治上冊統(tǒng)編版
- 湖南省長沙市2023-2024學(xué)年八年級上學(xué)期期中考試數(shù)學(xué)試卷(含答案)
- 山西省運城市2024-2025學(xué)年高二上學(xué)期10月月考英語試題
- 【班主任工作】2024-2025學(xué)年秋季安全主題班會教育周記錄
- 2024年云南合和(集團)股份限公司招聘3人高頻500題難、易錯點模擬試題附帶答案詳解
- 2024-2030年中國蛋及蛋制品行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- +陜西省渭南市富平縣2023-2024學(xué)年九年級上學(xué)期摸底數(shù)學(xué)試卷
- 2023年法律職業(yè)資格《客觀題卷一》真題及答案
- 《探究與實踐 交通運輸在全球經(jīng)濟發(fā)展中的作用》課件-2024-2025學(xué)年七年級地理上冊湘教版
- 《信息技術(shù)基礎(chǔ)與應(yīng)用(第2版)(上冊)》高職全套教學(xué)課件
評論
0/150
提交評論