




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三章第三章 多指令流出技術(shù)多指令流出技術(shù) 指令級(jí)并行性指令級(jí)并行性:程序中的指令是順程序中的指令是順序安排的,當(dāng)這些指令間不存在序安排的,當(dāng)這些指令間不存在相關(guān)而能在流水線(xiàn)中通過(guò)時(shí)間重相關(guān)而能在流水線(xiàn)中通過(guò)時(shí)間重疊方法來(lái)并行執(zhí)行時(shí),則存在指疊方法來(lái)并行執(zhí)行時(shí),則存在指令級(jí)并行性令級(jí)并行性. 指令級(jí)并行度指令級(jí)并行度ILP:它定義為在一它定義為在一個(gè)時(shí)鐘周期內(nèi)流水線(xiàn)上流出的指?jìng)€(gè)時(shí)鐘周期內(nèi)流水線(xiàn)上流出的指令數(shù)。令數(shù)。 第三章第三章 多指令流出技術(shù)多指令流出技術(shù)第一節(jié) 超標(biāo)量處理機(jī)第二節(jié) 超流水線(xiàn)處理機(jī)第三節(jié) 超標(biāo)量超流水線(xiàn)處理機(jī)第四節(jié) 超長(zhǎng)指令字處理機(jī)第五節(jié) DLX處理器的超標(biāo)量技術(shù)三種主流處理
2、機(jī):三種主流處理機(jī): 超標(biāo)量處理機(jī):超標(biāo)量處理機(jī):IntelIntel公司的公司的i860i860、i960i960、PentiumPentium處理機(jī),處理機(jī), MotoloraMotolora公司的公司的MC88110MC88110,IBMIBM公司的公司的Power 6000Power 6000, SUNSUN公司的公司的SPARCSPARC、 SuperSPARCSuperSPARC、 UltraSPARCUltraSPARC等。等。 超流水線(xiàn)處理機(jī):超流水線(xiàn)處理機(jī):SGISGI公司的公司的MIPS R4000MIPS R4000、R5000R5000、R10000R10000等。等。
3、 超標(biāo)量超流水線(xiàn)處理機(jī):超標(biāo)量超流水線(xiàn)處理機(jī):DECDEC公司的公司的AlphaAlpha等。等。以以一一臺(tái)臺(tái) k k 段段流流水水線(xiàn)線(xiàn)的的普普通通標(biāo)標(biāo)量量處處理理機(jī)機(jī)為為基基準(zhǔn)準(zhǔn)超超標(biāo)標(biāo)量量處處理理機(jī)機(jī)、超超流流水水線(xiàn)線(xiàn)處處理理機(jī)機(jī)和和超超標(biāo)標(biāo)量量超超流流水水線(xiàn)線(xiàn)處處理理機(jī)機(jī)的的主主要要性性能能:機(jī)器類(lèi)型k 段流水線(xiàn)基準(zhǔn)標(biāo)量處理機(jī)m 度超標(biāo)量處理機(jī)n 度超流水線(xiàn)處理機(jī)(m,n)度超標(biāo)量超流水線(xiàn)處理機(jī)機(jī)器流水線(xiàn)周期1 個(gè)時(shí)鐘周期11n1n同時(shí)發(fā)射指令條數(shù)1 條m1m指令發(fā)射等待時(shí)間1 個(gè)時(shí)鐘周期11n1n指令級(jí)并行度 ILP1mnmn超標(biāo)量處理機(jī)超標(biāo)量處理機(jī) 超標(biāo)量處理機(jī)典型結(jié)構(gòu):超標(biāo)量處理機(jī)
4、典型結(jié)構(gòu): 多條指令流水線(xiàn)。多條指令流水線(xiàn)。 先進(jìn)的超標(biāo)量處理機(jī)有:先進(jìn)的超標(biāo)量處理機(jī)有:定點(diǎn)處理部件定點(diǎn)處理部件CPUCPU,浮點(diǎn),浮點(diǎn)處理部件處理部件FPU,FPU,圖形加速部圖形加速部件件GPUGPU,大量的通用寄存,大量的通用寄存器,兩個(gè)一級(jí)器,兩個(gè)一級(jí)CacheCache。 超標(biāo)量處理機(jī)指令級(jí)并超標(biāo)量處理機(jī)指令級(jí)并行度行度ILPILP大于大于1 1。整整 數(shù)數(shù)部部 件件整整 數(shù)數(shù)部部 件件位位 操操作作浮浮 點(diǎn)點(diǎn)加加乘乘 法法部部 件件除除 法法部部 件件圖圖 形形部部 件件圖圖 形形部部 件件內(nèi)內(nèi) 部部 總總 線(xiàn)線(xiàn)讀讀 數(shù)數(shù) 存存 數(shù)數(shù)部部 件件通通 用用 寄寄存存 器器 堆堆擴(kuò)擴(kuò)
5、 展展寄寄 存存 器器 堆堆目目 標(biāo)標(biāo)指指 令令指指 令令 分分 配配 轉(zhuǎn)轉(zhuǎn) 移移 部部 件件數(shù)數(shù) 據(jù)據(jù) C Ca ac ch he e( 8 8K KB B)指指 令令 C Ca ac ch he e( 8 8K KB B)3 32 2 位位 地地 址址 總總 線(xiàn)線(xiàn)6 64 4 位位 數(shù)數(shù) 據(jù)據(jù) 總總 線(xiàn)線(xiàn) 系系 統(tǒng)統(tǒng) 總總 線(xiàn)線(xiàn)超超 標(biāo)標(biāo) 量量 處處 理理 機(jī)機(jī) M MC C8 88 81 11 10 0 的的 結(jié)結(jié) 構(gòu)構(gòu) Motorola公司的MC88110。有10個(gè)操作部件。 兩個(gè)寄存器堆:整數(shù)部件通用寄存器堆,32個(gè)32位寄存器; 浮點(diǎn)部件擴(kuò)展寄存器堆,32個(gè)80位寄存器。 緩沖深度
6、為4的先行讀數(shù)棧,緩沖深度為3的后行寫(xiě)數(shù)棧。 兩個(gè)獨(dú)立的高速Cache中,各為8KB,采用兩路組相聯(lián)方式, 轉(zhuǎn)移目標(biāo)指令Cache,存放一條分支上的指令。單發(fā)射與多發(fā)射單發(fā)射與多發(fā)射 單發(fā)射處理機(jī):?jiǎn)伟l(fā)射處理機(jī): 每個(gè)周期只取一條指令、只每個(gè)周期只取一條指令、只譯碼一條指令,只執(zhí)行一條指譯碼一條指令,只執(zhí)行一條指令,只寫(xiě)回一個(gè)運(yùn)算結(jié)果。令,只寫(xiě)回一個(gè)運(yùn)算結(jié)果。 取指令部件和指令譯碼部件取指令部件和指令譯碼部件各設(shè)置一套;各設(shè)置一套; 只設(shè)置一個(gè)多功能操作部件只設(shè)置一個(gè)多功能操作部件或設(shè)置多個(gè)獨(dú)立的操作部件;或設(shè)置多個(gè)獨(dú)立的操作部件; 操作部件中可以采用流水線(xiàn)操作部件中可以采用流水線(xiàn)結(jié)構(gòu),也可以
7、不采用流水線(xiàn)結(jié)結(jié)構(gòu),也可以不采用流水線(xiàn)結(jié)構(gòu)。構(gòu)。 目標(biāo)是每個(gè)時(shí)鐘周期平均執(zhí)目標(biāo)是每個(gè)時(shí)鐘周期平均執(zhí)行一條指令,行一條指令,ILPILP的期望值為的期望值為1 1。 多發(fā)射處理機(jī):多發(fā)射處理機(jī): 每個(gè)周期同時(shí)取多條指令、每個(gè)周期同時(shí)取多條指令、同時(shí)譯碼多條指令,同時(shí)執(zhí)行同時(shí)譯碼多條指令,同時(shí)執(zhí)行多條指令,同時(shí)寫(xiě)回多個(gè)運(yùn)算多條指令,同時(shí)寫(xiě)回多個(gè)運(yùn)算結(jié)果。結(jié)果。 需要多個(gè)取指令部件,多個(gè)需要多個(gè)取指令部件,多個(gè)指令譯碼部件和多個(gè)寫(xiě)結(jié)果部指令譯碼部件和多個(gè)寫(xiě)結(jié)果部件。件。 設(shè)置多個(gè)指令執(zhí)行部件,有設(shè)置多個(gè)指令執(zhí)行部件,有些指令執(zhí)行部件采用流水線(xiàn)結(jié)些指令執(zhí)行部件采用流水線(xiàn)結(jié)構(gòu)。構(gòu)。 目標(biāo)是每個(gè)時(shí)鐘周期平
8、均執(zhí)目標(biāo)是每個(gè)時(shí)鐘周期平均執(zhí)行多條指令,行多條指令,ILPILP的期望值大于的期望值大于1 1。單單發(fā)發(fā)射射處處理理機(jī)機(jī)的的指指令令流流水水線(xiàn)線(xiàn)時(shí)時(shí)空空?qǐng)D圖 1 2 3 4 5 6 I1 IF ID EX WR 時(shí)時(shí)鐘鐘周周期期 I2 IF ID EX WR I3 IF ID EX WR 指指令令 多多發(fā)發(fā)射射處處理理機(jī)機(jī)的的指指令令流流水水線(xiàn)線(xiàn)時(shí)時(shí)空空?qǐng)D圖 1 2 3 4 5 6 I1 IF ID EX WR 時(shí)時(shí)鐘鐘周周期期 I2 IF ID EX WR I3 IF ID EX WR I4 IF ID EX WR I5 IF ID EX WR I6 IF ID EX WR I7 IF ID
9、 EX WR I8 IF ID EX WR I9 IF ID EX WR 指指令令 超標(biāo)量處理機(jī):一個(gè)時(shí)鐘周期能同時(shí)發(fā)射多條指令的處理機(jī)超標(biāo)量處理機(jī):一個(gè)時(shí)鐘周期能同時(shí)發(fā)射多條指令的處理機(jī) 必須有兩條或兩條以上能夠同時(shí)工作的指令流水線(xiàn)。必須有兩條或兩條以上能夠同時(shí)工作的指令流水線(xiàn)。 先行指令窗口:能夠從指令先行指令窗口:能夠從指令CacheCache中預(yù)取多條指令,中預(yù)取多條指令, 能夠?qū)Υ翱趦?nèi)的指令進(jìn)行數(shù)據(jù)相關(guān)性分析和功能部件沖突檢測(cè)。能夠?qū)Υ翱趦?nèi)的指令進(jìn)行數(shù)據(jù)相關(guān)性分析和功能部件沖突檢測(cè)。 先行指令窗口的大?。阂话銥橄刃兄噶畲翱诘拇笮。阂话銥? 2至至8 8條指令。條指令。 目前的指令調(diào)度
10、技術(shù),每個(gè)周期發(fā)射目前的指令調(diào)度技術(shù),每個(gè)周期發(fā)射2 2至至4 4條指令比較合理。條指令比較合理。 例如:例如:IntelIntel公司的公司的i860i860、i960i960、PentiumPentium,MotoloraMotolora公司的公司的MC88110MC88110,IBMIBM公司的公司的Power 6000Power 6000等每個(gè)周期都發(fā)射兩條指令;等每個(gè)周期都發(fā)射兩條指令; TITI公司生產(chǎn)公司生產(chǎn)SuperSPARCSuperSPARC,Pentium IIIPentium III每個(gè)周期發(fā)射三條指令。每個(gè)周期發(fā)射三條指令。 操作部件的個(gè)數(shù)一般多于每個(gè)周期發(fā)射的指令條
11、數(shù)。通常為操作部件的個(gè)數(shù)一般多于每個(gè)周期發(fā)射的指令條數(shù)。通常為4 4 個(gè)至個(gè)至1616個(gè)操個(gè)操作部件。作部件。 超標(biāo)量處理機(jī)的指令級(jí)并行度:超標(biāo)量處理機(jī)的指令級(jí)并行度:1 1ILPILPm m。 m m為每個(gè)周期發(fā)射的指令條數(shù)。為每個(gè)周期發(fā)射的指令條數(shù)。超標(biāo)量處理機(jī)性能超標(biāo)量處理機(jī)性能單流水線(xiàn)普通標(biāo)量處理機(jī)的指單流水線(xiàn)普通標(biāo)量處理機(jī)的指令級(jí)并行度記作令級(jí)并行度記作(1,1)(1,1),超標(biāo)量處理機(jī)的指令級(jí)并行度超標(biāo)量處理機(jī)的指令級(jí)并行度記作記作(m,1)(m,1),超流水線(xiàn)處理機(jī)的指令級(jí)并行超流水線(xiàn)處理機(jī)的指令級(jí)并行度記作度記作(1,n)(1,n),而超標(biāo)量超流水線(xiàn)處理機(jī)的指而超標(biāo)量超流水線(xiàn)處
12、理機(jī)的指令級(jí)并行度記作令級(jí)并行度記作(m,n)(m,n)。在理想情況下,在理想情況下,N N條指令在單條指令在單流水線(xiàn)標(biāo)量處理機(jī)上的執(zhí)行流水線(xiàn)標(biāo)量處理機(jī)上的執(zhí)行時(shí)間為:時(shí)間為:T(1,1)T(1,1)(k kN N1 1)t t在每個(gè)周期發(fā)射在每個(gè)周期發(fā)射m m條指令的超條指令的超標(biāo)量處理機(jī)上執(zhí)行的時(shí)間為:標(biāo)量處理機(jī)上執(zhí)行的時(shí)間為: T(m,1)T(m,1)(k k )t t超標(biāo)量處理機(jī)相對(duì)于單流水線(xiàn)超標(biāo)量處理機(jī)相對(duì)于單流水線(xiàn)標(biāo)量處理機(jī)的加速比為:標(biāo)量處理機(jī)的加速比為: S(m,1)S(m,1)超標(biāo)量處理機(jī)的加速比的最大超標(biāo)量處理機(jī)的加速比的最大值為:值為:S(m,1)MAXS(m,1)MAX
13、m mNmmTT mm kNNm k( , )(, )()()11111超流水線(xiàn)處理機(jī)超流水線(xiàn)處理機(jī) 兩種定義:兩種定義: 在一個(gè)周期內(nèi)能夠分時(shí)發(fā)射多條指令的處理機(jī)在一個(gè)周期內(nèi)能夠分時(shí)發(fā)射多條指令的處理機(jī) 指令流水線(xiàn)的功能段數(shù)為指令流水線(xiàn)的功能段數(shù)為8 8段或超過(guò)段或超過(guò)8 8段的流水線(xiàn)處理機(jī)段的流水線(xiàn)處理機(jī) 提高處理機(jī)性能的不同方法:提高處理機(jī)性能的不同方法: 超標(biāo)量處理機(jī):通過(guò)增加硬件資源來(lái)提高處理機(jī)性能超標(biāo)量處理機(jī):通過(guò)增加硬件資源來(lái)提高處理機(jī)性能 超流水線(xiàn)處理機(jī):通過(guò)各部分硬件的重疊工作來(lái)提高超流水線(xiàn)處理機(jī):通過(guò)各部分硬件的重疊工作來(lái)提高 處理機(jī)性能。處理機(jī)性能。 兩種不同并行性:兩種
14、不同并行性: 超標(biāo)量處理機(jī)采用的是空間并行性。超標(biāo)量處理機(jī)采用的是空間并行性。 超流水線(xiàn)處理機(jī)采用的是時(shí)間并行性。超流水線(xiàn)處理機(jī)采用的是時(shí)間并行性。指令執(zhí)行時(shí)序指令執(zhí)行時(shí)序每隔每隔1/n1/n個(gè)時(shí)鐘周期發(fā)射一條指令,個(gè)時(shí)鐘周期發(fā)射一條指令, 即處理機(jī)的流水線(xiàn)周期為即處理機(jī)的流水線(xiàn)周期為1/n1/n個(gè)時(shí)鐘周期。個(gè)時(shí)鐘周期。在超標(biāo)量處理機(jī)中,流水線(xiàn)的有些在超標(biāo)量處理機(jī)中,流水線(xiàn)的有些功能段還可以進(jìn)一步細(xì)分,功能段還可以進(jìn)一步細(xì)分, 例如:例如:IDID功能段,可以再細(xì)分為:功能段,可以再細(xì)分為:譯碼、讀第一操作數(shù)和讀譯碼、讀第一操作數(shù)和讀 第二操作數(shù)三個(gè)流水段。第二操作數(shù)三個(gè)流水段。每每個(gè)個(gè)時(shí)時(shí)鐘
15、鐘周周期期分分時(shí)時(shí)發(fā)發(fā)射射 3 3 條條指指令令的的超超流流水水線(xiàn)線(xiàn)處處理理機(jī)機(jī)的的指指令令執(zhí)執(zhí)行行時(shí)時(shí)空空?qǐng)D圖 1 1 2 2 3 3 4 4 5 5 6 6 I1 IF I ID D EX WR 時(shí)時(shí)鐘鐘周周期期 I2 IF ID EX W WR R I3 IF ID EX WR I4 IF ID EX WR I5 IF ID EX WR I6 IF ID EX WR I7 IF ID EX WR I8 IF ID EX WR 指指令令 I9 IF ID EX WR 典型處理機(jī)結(jié)構(gòu) MIPS R4000處理機(jī),每個(gè)時(shí)鐘周期包含兩個(gè)流水段, 是一種很標(biāo)準(zhǔn)的超流水線(xiàn)處理機(jī)結(jié)構(gòu)。 指令流水線(xiàn)有8
16、個(gè)流水段。 有兩個(gè)Cache,指令Cache和數(shù)據(jù)Cache的容量各8KB, 每個(gè)時(shí)鐘周期可以訪(fǎng)問(wèn)Cache兩次, 因此在一個(gè)時(shí)鐘周期內(nèi)可以從指令Cache中讀出兩條指令, 從數(shù)據(jù)Cache中讀出或?qū)懭雰蓚€(gè)數(shù)據(jù)。 主要運(yùn)算部件有整數(shù)部件和浮點(diǎn)部件。譯譯 碼碼 數(shù)數(shù) 據(jù)據(jù) C C a a c c h h e e 標(biāo)標(biāo) 志志 標(biāo)標(biāo) 志志 指指 令令 C C a a c c h h e e 譯譯 碼碼 存存 入入 緩緩 沖沖 對(duì)對(duì) 準(zhǔn)準(zhǔn) 器器 IB U S 寫(xiě)寫(xiě) 入入 緩緩 沖沖 器器 數(shù)數(shù) 據(jù)據(jù) 標(biāo)標(biāo) 志志 地地 址址 D B U S 系系 統(tǒng)統(tǒng) 控控 制制 浮浮 點(diǎn)點(diǎn) 存存 儲(chǔ)儲(chǔ) 管管 理理 部
17、部 件件 寄寄 存存 器器 堆堆 指指 令令 快快 表表 浮浮 點(diǎn)點(diǎn) 流流 水水 線(xiàn)線(xiàn) 專(zhuān)專(zhuān) 用用 通通 路路 指指 令令C a c h e 控控 制制 快快 表表T L B 浮浮 點(diǎn)點(diǎn) 控控 制制 寄寄 存存 器器 D V A 浮浮 點(diǎn)點(diǎn) 乘乘 法法 部部 件件 地地 址址 部部 件件 浮浮 點(diǎn)點(diǎn) 除除 法法 部部 件件 數(shù)數(shù) 據(jù)據(jù)C a c h e 控控 制制 程程 序序 計(jì)計(jì) 數(shù)數(shù) 器器 浮浮 點(diǎn)點(diǎn) 加加 法法 部部 件件 流流 水水 線(xiàn)線(xiàn) 通通 用用 寄寄 存存 器器 堆堆 轉(zhuǎn)轉(zhuǎn) 換換 部部 件件 控控 制制 算算 術(shù)術(shù) 邏邏 輯輯 部部 件件A L U 求求 平平 方方 根根 部部
18、件件 裝裝 入入 對(duì)對(duì) 準(zhǔn)準(zhǔn) 器器 / / 存存 入入 驅(qū)驅(qū) 動(dòng)動(dòng) 器器 整整 數(shù)數(shù) 乘乘 法法 除除 法法 部部 件件 M M I I P P S S R R 4 4 0 0 0 0 0 0 超超 流流 水水 線(xiàn)線(xiàn) 處處 理理 機(jī)機(jī) 結(jié)結(jié) 構(gòu)構(gòu) MIPS R4000MIPS R4000 處理機(jī)的流水線(xiàn)操作處理機(jī)的流水線(xiàn)操作 IF IS RF EX DF DS TC WB 指令指令 指令譯碼指令譯碼 Cache 數(shù)據(jù)數(shù)據(jù) 寄存寄存 讀讀寄寄存存器器 ALU Cache 標(biāo)標(biāo) 志志 檢檢 驗(yàn)驗(yàn) 器堆器堆 IF:取第一條指令;:取第一條指令;IS:取第二條指令;:取第二條指令;RF:讀寄存器堆,指
19、令譯碼;:讀寄存器堆,指令譯碼; EX:執(zhí)行指令;:執(zhí)行指令;DF:取第一個(gè)數(shù)據(jù);:取第一個(gè)數(shù)據(jù);DS:取第二個(gè)數(shù)據(jù);:取第二個(gè)數(shù)據(jù);TC:數(shù)據(jù)標(biāo)志檢驗(yàn);:數(shù)據(jù)標(biāo)志檢驗(yàn); WB:寫(xiě)回結(jié)果:寫(xiě)回結(jié)果 M MI IP PS S R R4 40 00 00 0 正正常常指指令令流流水水線(xiàn)線(xiàn)工工作作時(shí)時(shí)序序 主主時(shí)時(shí)鐘鐘周周期期 當(dāng)當(dāng)前前 CPU 周周期期 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 I
20、S 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:執(zhí)執(zhí)行行指指令令;DF:取取第第一一個(gè)個(gè)數(shù)數(shù)據(jù)據(jù);DS:取取第第二二個(gè)個(gè)數(shù)數(shù)據(jù)據(jù);TC:數(shù)數(shù)據(jù)據(jù)標(biāo)標(biāo)志志檢檢驗(yàn)驗(yàn); WB:寫(xiě)寫(xiě)回回結(jié)結(jié)果果 流流水水 線(xiàn)線(xiàn) 周周期期 超流水線(xiàn)處理機(jī)性能超流水線(xiàn)處理機(jī)性能指令級(jí)并行度為指令級(jí)并行度為(1,n)(1,n)的超流水的超流水線(xiàn)處理機(jī),執(zhí)行線(xiàn)處理機(jī),執(zhí)行N N條指令條指令 所的時(shí)間為:所的時(shí)間為:超流水線(xiàn)
21、處理機(jī)相對(duì)于單流水超流水線(xiàn)處理機(jī)相對(duì)于單流水線(xiàn)普通標(biāo)量處理機(jī)的線(xiàn)普通標(biāo)量處理機(jī)的 加速比為:加速比為: 即:即:超流水線(xiàn)處理機(jī)的加速比的最超流水線(xiàn)處理機(jī)的加速比的最大值為:大值為:S(1,n)MAXS(1,n)MAXn nTnkntN( , )()11tnNktNknTTnS)1()1(), 1 ()1 , 1 (), 1 (1) 1(), 1 (NnkNknnS超標(biāo)量超流水線(xiàn)處理機(jī)超標(biāo)量超流水線(xiàn)處理機(jī) 把超標(biāo)量與超流水線(xiàn)技術(shù)結(jié)合在一起,就成為超標(biāo)量超流水線(xiàn)處理機(jī) 超標(biāo)量超流水線(xiàn)處理機(jī)在一個(gè)時(shí)鐘周期內(nèi)分時(shí)發(fā)射指令n次, 每次同時(shí)發(fā)射指令m條 超標(biāo)量超流水線(xiàn)處理機(jī)每個(gè)時(shí)鐘周期總共發(fā)射指令m n條
22、指令執(zhí)行時(shí)序指令執(zhí)行時(shí)序每個(gè)時(shí)鐘周期發(fā)射每個(gè)時(shí)鐘周期發(fā)射 3 3 次,每次同時(shí)發(fā)射次,每次同時(shí)發(fā)射 3 3 條指令的條指令的 超標(biāo)量超流水線(xiàn)處理機(jī)的指令執(zhí)行時(shí)空?qǐng)D超標(biāo)量超流水線(xiàn)處理機(jī)的指令執(zhí)行時(shí)空?qǐng)D 1 1 2 2 3 3 4 4 5 5 6 6 I1 IF ID EX WR 時(shí)鐘周期時(shí)鐘周期 I2 IF ID EX WR I3 IF ID EX WR I4 IFIF ID EX WR I5 IF ID EX WR I6 IF ID EX WR I7 IF ID EX WR I8 IF ID EX WR I9 IF ID EX WR I10 IF ID EX WR I11 IF ID EX W
23、R I12 IF ID EX WR 指令指令 IFIF:取指令,:取指令,IDID:指令譯碼,:指令譯碼,EXEX:執(zhí)行指令,:執(zhí)行指令,WRWR:寫(xiě)回結(jié)果:寫(xiě)回結(jié)果 典型處理機(jī)結(jié)構(gòu)典型處理機(jī)結(jié)構(gòu) DECDEC公司的公司的AlphaAlpha處理機(jī)采用超標(biāo)處理機(jī)采用超標(biāo)量超流水線(xiàn)結(jié)構(gòu)。量超流水線(xiàn)結(jié)構(gòu)。 主要由四個(gè)功能部件和兩個(gè)主要由四個(gè)功能部件和兩個(gè)CacheCache組成。組成。 四個(gè)功能部件是:整數(shù)部件四個(gè)功能部件是:整數(shù)部件EBOXEBOX、浮點(diǎn)部件浮點(diǎn)部件FBOXFBOX、 地址部件地址部件ABOXABOX和中央控制部件和中央控制部件IBOXIBOX。 中央控制部件中央控制部件IBOX
24、IBOX能夠同時(shí)讀出能夠同時(shí)讀出兩條指令,兩條指令, 同時(shí)對(duì)兩條指令進(jìn)行譯碼,作資同時(shí)對(duì)兩條指令進(jìn)行譯碼,作資源沖突檢測(cè),進(jìn)行數(shù)據(jù)相關(guān)性源沖突檢測(cè),進(jìn)行數(shù)據(jù)相關(guān)性 和控制相關(guān)性分析。如果資源和和控制相關(guān)性分析。如果資源和相關(guān)性允許,相關(guān)性允許,IBOXIBOX就把兩條指就把兩條指 令同時(shí)發(fā)射給令同時(shí)發(fā)射給EBOXEBOX、ABOXABOX和和FBOXFBOX三個(gè)執(zhí)行部件中的兩個(gè)。三個(gè)執(zhí)行部件中的兩個(gè)。 指令流水線(xiàn)采用順序發(fā)射亂序完指令流水線(xiàn)采用順序發(fā)射亂序完成的控制方式。成的控制方式。 在指令在指令CacheCache中有一個(gè)轉(zhuǎn)移歷史中有一個(gè)轉(zhuǎn)移歷史表,實(shí)現(xiàn)條件轉(zhuǎn)移的動(dòng)態(tài)預(yù)測(cè)。表,實(shí)現(xiàn)條件轉(zhuǎn)移
25、的動(dòng)態(tài)預(yù)測(cè)。 在在EBOXEBOX內(nèi)還有多條專(zhuān)用數(shù)據(jù)通路,內(nèi)還有多條專(zhuān)用數(shù)據(jù)通路,可以把運(yùn)算結(jié)果直接送到執(zhí)行部件??梢园堰\(yùn)算結(jié)果直接送到執(zhí)行部件。指指 令令 Cache( 8KB)轉(zhuǎn)轉(zhuǎn) 移移 歷歷 史史區(qū)區(qū) 號(hào)號(hào)指指 令令 地地 址址 總總 線(xiàn)線(xiàn)EBOXIBOXFBOX 3 3 4 4 位位乘乘 法法 器器預(yù)預(yù) 取取 器器乘乘 法法 器器 / /加加 法法 器器資資源源沖沖突突檢檢測(cè)測(cè)加加 法法 器器移移 位位 器器P P C C 計(jì)計(jì) 算算 數(shù)數(shù) 據(jù)據(jù) 總總 線(xiàn)線(xiàn)邏邏 輯輯 單單 元元指指 令令 快快 表表除除 法法 器器 1 1 2 2 8 8 位位流流 水水 線(xiàn)線(xiàn)控控 制制定定 點(diǎn)點(diǎn) 寄
26、寄 存存 器器 堆堆( 3 3 2 2 6 6 4 4 )浮浮 點(diǎn)點(diǎn) 寄寄 存存 器器 堆堆( 3 3 2 2 6 6 4 4 )ABOX總總線(xiàn)線(xiàn)接接口口部部外外 部部 Cache寫(xiě)寫(xiě) 數(shù)數(shù) 緩緩 沖沖 器器地地 址址 發(fā)發(fā) 生生 器器數(shù)數(shù) 據(jù)據(jù) 快快 表表讀讀 數(shù)數(shù) 緩緩 沖沖 器器 控控 制制件件數(shù)數(shù) 據(jù)據(jù) Cache( 8KB)區(qū)區(qū) 號(hào)號(hào)數(shù)數(shù) 據(jù)據(jù)A A l l p p h h a a 2 2 1 1 0 0 6 6 4 4 處處 理理 機(jī)機(jī) 結(jié)結(jié) 構(gòu)構(gòu)除 法 器 Alpha 21064處理機(jī)共有三條指令流水線(xiàn), (1)整數(shù)操作流水線(xiàn)為7個(gè)流水段,其中, 取指令為2個(gè)流水段 分析指令為2
27、個(gè)流水段 運(yùn)算為2個(gè)流水段 寫(xiě)結(jié)果1個(gè)流水段 (2)訪(fǎng)問(wèn)存儲(chǔ)器流水線(xiàn)為7個(gè)流水段, (3)浮點(diǎn)操作流水線(xiàn)分為10個(gè)流水段,其中, 浮點(diǎn)執(zhí)行部件FBOX的延遲時(shí)間為6個(gè)流水段。 因?yàn)槿龡l指令流水線(xiàn)的平均段數(shù)為8,且每個(gè)時(shí)鐘周期發(fā)射兩 條指令。因此,Alpha 21064處理機(jī)是超標(biāo)量超流水線(xiàn)處理機(jī) 所有指令執(zhí)行部件,包括EBOX、IBOX、ABOX和FBOX中都設(shè)置 有專(zhuān)用數(shù)據(jù)通路。7 7 個(gè)流水段的整數(shù)操作流水線(xiàn)個(gè)流水段的整數(shù)操作流水線(xiàn)(0)(0)(1)(1)(2)(2)(3)(3)(4)(4)(5)(5)(6)(6)IFSWAPI0I1A1A2WRIFIF:取指令;:取指令;SWAPSWAP
28、:交換雙發(fā)射指令,轉(zhuǎn)移預(yù)測(cè);:交換雙發(fā)射指令,轉(zhuǎn)移預(yù)測(cè);I0I0:指令譯碼;:指令譯碼;I1I1 訪(fǎng)問(wèn)通用寄存器堆,發(fā)射校驗(yàn);訪(fǎng)問(wèn)通用寄存器堆,發(fā)射校驗(yàn);A1A1:計(jì)算周期:計(jì)算周期 1 1,IBOXIBOX 計(jì)算新的計(jì)算新的 PCPC 值;值;A2A2:計(jì)算周期:計(jì)算周期 2 2,查指令快表;,查指令快表;WRWR:寫(xiě)整數(shù)寄存器堆,指令:寫(xiě)整數(shù)寄存器堆,指令 CacheCache 命中檢測(cè)。命中檢測(cè)。7 7 個(gè)流水段的訪(fǎng)問(wèn)存儲(chǔ)器流水線(xiàn)個(gè)流水段的訪(fǎng)問(wèn)存儲(chǔ)器流水線(xiàn) (0) (0)(1)(1)(2)(2)(3)(3)(4)(4)(5)(5)(6)(6)IFSWAPI0I1ACTBHMACAC:AB
29、OXABOX 計(jì)算有效數(shù)據(jù)地址;計(jì)算有效數(shù)據(jù)地址;TBTB:查數(shù)據(jù)快表;:查數(shù)據(jù)快表;HMHM:寫(xiě)讀數(shù)緩沖棧,數(shù)據(jù):寫(xiě)讀數(shù)緩沖棧,數(shù)據(jù) CacheCache 命中命中/ /不命中檢測(cè)。不命中檢測(cè)。 10 10 個(gè)流水段的浮點(diǎn)操作流水線(xiàn)個(gè)流水段的浮點(diǎn)操作流水線(xiàn) (0) (0)(1)(1)(2)(2)(3)(3)(4)(4)(5)(5)(6)(6)(7)(7)(8)(8)(9)(9)IFSWAPI0I1F1F2F3F4F5FWRF1F1F5F5:浮點(diǎn)計(jì)算流水線(xiàn);:浮點(diǎn)計(jì)算流水線(xiàn);FWRFWR:寫(xiě)回浮點(diǎn)寄存器堆。:寫(xiě)回浮點(diǎn)寄存器堆。超標(biāo)量超流水線(xiàn)處理機(jī)性能超標(biāo)量超流水線(xiàn)處理機(jī)性能 指令級(jí)并行度為指令
30、級(jí)并行度為(m,n)(m,n)的超標(biāo)量超流水線(xiàn)的超標(biāo)量超流水線(xiàn)處理機(jī),處理機(jī), 連續(xù)執(zhí)行連續(xù)執(zhí)行N N條指令所需要的時(shí)間為:條指令所需要的時(shí)間為: 超標(biāo)量超流水線(xiàn)處理機(jī)相對(duì)于單流水線(xiàn)超標(biāo)量超流水線(xiàn)處理機(jī)相對(duì)于單流水線(xiàn)標(biāo)量處理機(jī)的標(biāo)量處理機(jī)的 加速比為:加速比為: 在理想情況下,超標(biāo)量超流水線(xiàn)處理機(jī)在理想情況下,超標(biāo)量超流水線(xiàn)處理機(jī)加速比的最大值為:加速比的最大值為: S(m,n)MAXS(m,n)MAXm nm nT m nkNmm nt( , )()mNknmNknmnmS) 1(),(tmnmNktNknmSSnmS)()1(),()1 , 1(),(例:計(jì)算100條指令分別在k=4的標(biāo)量
31、流水處理機(jī)和m=2,k=4的超標(biāo)量流水處理機(jī)上執(zhí)行所需的時(shí)間T,吞吐率P,效率E和加速比 S.DLX處理器的超標(biāo)量技術(shù) 兩路超標(biāo)量指令流: 一條指令可以是取指令,存指令,分支指令或整數(shù)運(yùn)算指令. 另一條指令可以是任意的浮點(diǎn)指令.例:下面是前面我們使用的循環(huán)程序段,在超標(biāo)量DLX流水線(xiàn)上將如何調(diào)度?for (i=1; i=1000; i+) x(i) = x(i) + s; Loop:LDF0,0(R1) ; F0=vector element ADDD F4,F0,F2 ;add scalar from F2 SD0(R1),F4 ;store result SUBI R1,R1,8 ;dec
32、rement pointer 8B (DW) BNEZ R1,Loop ;branch R1!=zero 1 Loop:LD F0,0(R1) 2 LD F6,-8(R1) 3 LD F10,-16(R1) 4 LD F14,-24(R1) 5 LD F18,-32(R1) 6 ADDD F4,F0,F2 7 ADDD F8,F6,F2 8 ADDD F12,F10,F2 9 ADDD F16,F14,F2 10 ADDD F20,F18,F2 11 SD 0(R1),F4 12 SD -8(R1),F8 13 SD -16(R1),F12 14 SUBI R1,R1,#40 15 SD -24(R1),F12 16 BNEZ R1,LOOP 17 SD 8(R1),F20; 循環(huán)展開(kāi)5次調(diào)度后的代碼:整數(shù)指令浮點(diǎn)指令時(shí)鐘周期 LOOP:LD F0,0(R1)1LD F6,-8(R1)2LD F10,-16(R1)ADDD F4,F0,F23LD F14,-24(R1)ADDD F8,F6,F24LD F18,-32(R1)ADDD F12,F10,F25SD 0(R1),F4ADDD F16,F14,F26SD -8(R1),F8ADDD F20,F18,F27SD-16(R1),F128SUBI R1,R1,#409
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024營(yíng)養(yǎng)師資格證題庫(kù)及答案解析
- 企業(yè)品牌與演出經(jīng)紀(jì)人資格證試題及答案
- 2024年?duì)I養(yǎng)師考試核心概念試題及答案
- 競(jìng)爭(zhēng)對(duì)手分析演出經(jīng)紀(jì)人資格證試題及答案
- 房地產(chǎn)宣傳材料設(shè)計(jì)試題及答案
- 營(yíng)養(yǎng)師考試常見(jiàn)試題及答案大全
- 演出經(jīng)紀(jì)人考試復(fù)習(xí)資料:試題及答案
- 演出經(jīng)紀(jì)人資格證復(fù)習(xí)方法探討及試題及答案
- 2024年?duì)I養(yǎng)師考試易錯(cuò)試題及答案
- 附錄營(yíng)養(yǎng)師資格證試題及答案
- GSA《5G NTN衛(wèi)星連接報(bào)告(2023.8)》 Non-Terrestrial 5G Networks and Satellite Connectivity
- 專(zhuān)題11 以小見(jiàn)大-【幫作文】初中語(yǔ)文之從課文中學(xué)習(xí)寫(xiě)作 課件(共25張PPT)
- 天溯EMS能源管理系統(tǒng)V1.3安裝配置手冊(cè)
- 垃圾清運(yùn)處理方案書(shū)及報(bào)價(jià)
- 《儀器分析》完整全套教學(xué)課件(共17章)
- 二級(jí)建造師之二建建設(shè)工程施工管理強(qiáng)化訓(xùn)練打印大全
- 灰場(chǎng)排水斜槽廊道及下灰場(chǎng)清灰施工方案
- 依戀的形成:母嬰關(guān)系如何塑造我們一生的情感
- 蘇科版三年級(jí)勞動(dòng)下冊(cè)第06課《陀螺》公開(kāi)課教案
- MRAS系統(tǒng)標(biāo)準(zhǔn)用戶(hù)手冊(cè)
- 2023年?yáng)|方航空職能類(lèi)儲(chǔ)備人才中國(guó)聯(lián)合航空有限公司招聘筆試題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論