




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Tomasulo辦法實(shí)驗(yàn) 姓名:王宇航 學(xué)號(hào):09283020Tomasulo辦法實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)浚和ㄟ^本實(shí)驗(yàn),理解指令流水化過程中亂序執(zhí)行和寄存器重命名辦法。二、實(shí)驗(yàn)內(nèi)容:1、用dlxView模仿器或Tomasulo算法模仿器執(zhí)行浮點(diǎn)指令程序段。2、指出指令亂序執(zhí)行和寄存器重命名過程。三、實(shí)驗(yàn)環(huán)境操作系統(tǒng):Windows7旗艦版解決器:Intel(R)Core(TM)i3雙核內(nèi)存:2.00GB軟件:Tomasulo算法模仿器四、實(shí)驗(yàn)過程:1、設(shè)立Tomasulo算法模仿器參數(shù)其中Load部件執(zhí)行時(shí)間不能設(shè)立為1,至少為2,故不作修改;加/減法部件執(zhí)行時(shí)間為4個(gè)時(shí)鐘周期,乘法部件執(zhí)行時(shí)間為7個(gè)時(shí)鐘周期,除法部件執(zhí)行時(shí)間為15個(gè)時(shí)鐘周期。2、分析Tomasulo算法模仿器中指令亂序執(zhí)行過程Tomasulo算法模仿器中默認(rèn)設(shè)立指令下圖所示:執(zhí)行該指令序列,重點(diǎn)觀測(cè)指令狀態(tài)寫成果一欄,便會(huì)發(fā)現(xiàn)執(zhí)行過程中存在亂序執(zhí)行現(xiàn)象,共有兩處亂序執(zhí)行,分別如下列圖所示:圖中顯示,在第10周期時(shí),位于MULT.D指令之后SUB.D指令通過4個(gè)周期已經(jīng)執(zhí)行完畢并已經(jīng)將成果寫回寄存器,而MULT.D指令仍在執(zhí)行中。在第13周期時(shí),MULT.D指令通過7個(gè)周期執(zhí)行完畢,才將成果寫回。此外,還可以看到,位于DIV.D指令之后ADD.D指令在第11周期時(shí)就已經(jīng)開始執(zhí)行,而DIV.D指令直至當(dāng)前都未開始執(zhí)行。在第15周期時(shí),ADD.D指令通過4個(gè)周期執(zhí)行完畢,先于DIV.D指令寫回成果;而DIV.D指令仍在執(zhí)行中。在第29周期時(shí),DIV.D指令通過15個(gè)周期終于執(zhí)行完畢,將成果寫回寄存器。以上分析證明,在Tomasulo算法中存在亂序執(zhí)行并且不會(huì)影響執(zhí)行成果對(duì)的性。這是由于,Tomasulo算法采用分布保存站,沖突檢測(cè)和指令執(zhí)行控制是分布。3、分析Tomasulo算法模仿器中寄存器重命名過程在Tomasulo算法中通過寄存器重命名來消除WAR沖突,這一過程是通過保存站來完畢。當(dāng)指令流出到保存站時(shí),若其操作數(shù)已經(jīng)就緒,則將該指令中相應(yīng)寄存器號(hào)換為該數(shù)據(jù)自身;若其操作數(shù)尚未計(jì)算出來,則將該指令中相應(yīng)寄存器號(hào)重命名為將產(chǎn)生這個(gè)操作數(shù)保存站標(biāo)記,從而使得該指令與此寄存器不再關(guān)于系,背面指令對(duì)此寄存器寫入操作也不也許對(duì)該指令導(dǎo)致WAR沖突了。(1)將指令中相應(yīng)寄存器號(hào)換為數(shù)據(jù)自身執(zhí)行Tomasulo算法模仿器中默認(rèn)設(shè)立指令序列,容易看出最后一條指令A(yù)DD.D和前一條指令DIV.D之間存在一種WAR沖突,即DIV.D指令要讀寄存器F8中值,ADD.D要寫寄存器F8中值,由于亂序執(zhí)行,ADD.D指令會(huì)先于DIV.D指令完畢;但是執(zhí)行成果卻不會(huì)發(fā)生錯(cuò)誤,是由于Tomasulo算法通過寄存器重命名將這一沖突消除了。可以看到在第5周期時(shí),DIV.D指令流出到保存站中,此時(shí)F8中值已經(jīng)由前面L.D指令得出,為M1,但是模仿器并沒有將相應(yīng)寄存器號(hào)R[F8]寫入Vk字段中,而是將其換為了F8中數(shù)據(jù)自身M1,從而使得該指令與寄存器F8不再關(guān)于聯(lián),無論背面指令如何改寫F8也都不會(huì)影響該指令對(duì)的執(zhí)行了。此外,由于前面MULT.D指令尚未得出F2值,故DIV.D指令將寄存器F2重命名為MULT.D指令保存站標(biāo)記Mult1,寫入Qj字段中。如下圖所示:在這個(gè)周期中,ADD.D指令已經(jīng)執(zhí)行完畢,并且已經(jīng)將寄存器F8中值由M1改寫成了M5,但此時(shí)DIV.D指令仍在對(duì)的執(zhí)行著,并沒有發(fā)生任何錯(cuò)誤,并且通過15個(gè)執(zhí)行周期可以對(duì)的完畢執(zhí)行過程,第15周期如下圖所示:由此闡明了將指令中相應(yīng)寄存器號(hào)換為數(shù)據(jù)自身這一寄存器重命名辦法成功地消除了WAR沖突。(2)將指令中相應(yīng)寄存器號(hào)重命名為將產(chǎn)生該操作數(shù)保存站標(biāo)記對(duì)Tomasulo算法模仿器中默認(rèn)設(shè)立指令進(jìn)行重排,將第一條L.D指令后移兩個(gè)位置,重排后指令如下圖所示:可以看到,在該指令序列中,最后一條指令A(yù)DD.D和前一條指令DIV.D之間依然存在一種WAR沖突。執(zhí)行該指令序列,觀測(cè)執(zhí)行過程。可以發(fā)當(dāng)前第5周期時(shí),DIV.D指令流出到保存站中,而此時(shí)前面L.D指令尚未得出F8值,但是模仿器并沒有將相應(yīng)寄存器號(hào)R[F8]寫入Vk字段中,而是將其換為了L.D指令保存站標(biāo)記Load2寫入了Qk中,從而使得該指令與寄存器F8不再關(guān)于聯(lián),無論背面指令如何改寫F8也都不會(huì)影響該指令對(duì)的執(zhí)行了,如下圖所示: 對(duì)寄存器F2解決和前一種狀況相似。在第6周期時(shí),保存站Load2完畢計(jì)算,得出F8值M2,就會(huì)通過CBD將F8值直接傳送到DIV.D指令保存站Mult2Vk字段中,如下圖所示: 在第12周期時(shí),MULT.D指令得出F2值后也會(huì)通過CDB將其直接送到DIV.D指令保存站中,DIV.D指令便可以開始執(zhí)行了。(3)分析WAW沖突消除辦法寄存器重命名辦法不但可以消除WAR沖突,還可以配合使用對(duì)目的寄存器預(yù)約辦法消除WAW沖突。這一辦法思想是,在一條指令流出到保存站時(shí),將成果寄存器Qi字段設(shè)立為該指令保存站標(biāo)記,表達(dá)到果寄存器將要接受該指令成果,這樣其實(shí)相稱于提前完畢了寫操作。由于指令是按程序順序流出,當(dāng)浮現(xiàn)多條指令寫同一種成果寄存器時(shí),最后留下預(yù)約成果必然是最后一條指令,因而可以消除WAW沖突。為了演示消除WAW沖突過程,改寫上述指令最后一條指令,將目的寄存器由F8改為F12,如下圖所示:在該指令序列中,DIV.D指令和最后ADD.D指令之間存在WAW沖突,即DIV.D指令要寫寄存器F12,ADD.D指令也要寫寄存器F12,由于亂序執(zhí)行,ADD.D指令會(huì)先于DIV.D指令完畢,寫成果至寄存器F12。若沒有任何防范辦法,當(dāng)DIV.D指令完畢后又會(huì)寫其執(zhí)行成果至寄存器F12,修改剛才ADD.D指令執(zhí)行成果,導(dǎo)致成果錯(cuò)誤。但Tomasulo算法通過寄存器重命名和對(duì)目的寄存器預(yù)約辦法將這一沖突消除了。執(zhí)行修改后指令序列,觀測(cè)執(zhí)行過程。可以看到,在第5周期時(shí),DIV.D指令流出到保存站中,同步將寄存器F12Qi字段中設(shè)為DIV.D指令保存站標(biāo)記Mult2,完畢預(yù)約工作。如下圖所示:在第6周期時(shí),ADD.D指令流出到保存站中,同步將寄存器F12Qi字段中改寫為該指令保存站標(biāo)記Add2,這樣就表達(dá)寄存器F12最后接受是ADD.D指令執(zhí)行成果,雖然DIV.D指令在ADD.D指令之后執(zhí)行完,也無法再改寫寄存器F12了,從而保證了F12中成果對(duì)的性。如下圖所示:為了驗(yàn)證這一辦法有效性,可以看一下第16周期和第28周期。在第16周期,ADD.D指令先于DIV.D指令完畢執(zhí)行過程,將成果寫入寄存器F12中,值為M5;在第29周期,DIV.D指令也完畢執(zhí)行過程,但是再也無法寫寄存器F12了,F(xiàn)12中值依然為ADD.D指令執(zhí)行成果M5,如下圖所示:第16周期第28周期由此闡明寄存器重命名和對(duì)目的寄存器預(yù)約辦法成功地消除了WAW沖突。五、實(shí)驗(yàn)總結(jié):本
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 英語教育行業(yè)專業(yè)術(shù)語練習(xí)題
- 五年級(jí)語文古詩賞析與背景知識(shí)
- 網(wǎng)絡(luò)運(yùn)營(yíng)服務(wù)協(xié)議條款說明
- 《物理公式記憶與實(shí)際應(yīng)用教案》
- 數(shù)學(xué)公式與計(jì)算能力測(cè)試卷
- 教育經(jīng)費(fèi)投入情況統(tǒng)計(jì)表格(年度)
- 零售商店經(jīng)營(yíng)數(shù)據(jù)表
- 地理自然環(huán)境保護(hù)練習(xí)題
- 電力電氣工程基礎(chǔ)習(xí)題集萃
- 一氧化碳中試平臺(tái)的經(jīng)濟(jì)效益評(píng)估與投資回報(bào)分析
- GB/T 14536.12-2024電自動(dòng)控制器第12部分:能量調(diào)節(jié)器的特殊要求
- 門診部醫(yī)療糾紛預(yù)防與處理
- 美學(xué)原理學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 《實(shí)踐論》(原文)毛澤東
- 貴州省遵義市道德與法治中考試卷及答案指導(dǎo)(2025年)
- 2023-2024學(xué)年內(nèi)蒙古呼和浩特市回民區(qū)高二下學(xué)期期中考試生物試題(解析版)
- 歷史人教部編版八年級(jí)(上冊(cè))第13課五四運(yùn)動(dòng)課件(23張)2024版新教材
- 文化在社會(huì)發(fā)展中的作用
- DB15-T 3651-2024 光伏項(xiàng)目防沙治沙技術(shù)規(guī)程
- 《賞書法之韻》教學(xué)課件
- 廣告物料、標(biāo)識(shí)牌、宣傳品投標(biāo)方案
評(píng)論
0/150
提交評(píng)論