系統(tǒng)結(jié)構(gòu)試驗設(shè)計_第1頁
系統(tǒng)結(jié)構(gòu)試驗設(shè)計_第2頁
系統(tǒng)結(jié)構(gòu)試驗設(shè)計_第3頁
系統(tǒng)結(jié)構(gòu)試驗設(shè)計_第4頁
系統(tǒng)結(jié)構(gòu)試驗設(shè)計_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、成績:設(shè)計名稱:計算機系統(tǒng)結(jié)構(gòu)實踐設(shè)計設(shè)計項目:流水線與流水線沖突姓 名:馮皓明專業(yè):計算機科學(xué)與技術(shù)班 級:18-4學(xué) 號:1804010405計算機科學(xué)與技術(shù)學(xué)院實驗教學(xué)中心20 20 年 5 月15 日目 錄一二三四五六.實踐設(shè)計的目的和意義.實踐設(shè)計的內(nèi)容和要求.設(shè)計用的設(shè)備儀器.實踐設(shè)計的相關(guān)技術(shù).項目設(shè)計與實現(xiàn).結(jié)束語一實驗?zāi)康募由顚τ嬎銠C流水線基本概念的理解。理解MIPS結(jié)構(gòu)如何用段流水線來實現(xiàn),理解各段的功能和基本操作。加深對數(shù)據(jù)沖突、結(jié)構(gòu)沖突和控制沖突的理解,理解這三類沖突對CPU性能的影響。通過采用相關(guān)技術(shù)來消解各種沖突,進(jìn)一步理解解決流水線沖突的方法。二.要求學(xué)習(xí)模擬器的

2、結(jié)構(gòu)、原理和基本操作方法。運行樣例程序,觀察流水線的工作過程和沖突產(chǎn)生的情況。運用所學(xué)知識,通過對模擬器的一些功能設(shè)置來解決產(chǎn)生的結(jié)構(gòu)沖突, 數(shù)據(jù)沖突, 控制沖突。自行編寫一段程序,分別驗證各種沖突的解決方法。(程序行數(shù)不需過多,10行左右,只要包括這幾種沖突情況即可)。三實驗用設(shè)備器材計算機一臺。指令級和流水線操作級模擬器MIPS四.實踐設(shè)計的相關(guān)技術(shù)五.項目設(shè)計與實現(xiàn)(1)啟動 MIPSsim(2)根據(jù)預(yù)備知識中關(guān)于流水線各段操作的描述,進(jìn)一步理解流水線窗口中各 段的功能,掌握各流水寄存器的含義。流水線窗口如下圖:取指令(IF)、指令譯碼/讀寄存器(ID)、執(zhí)行/訪存有效地址計算(EX )

3、、存儲器訪問(MEM )、 結(jié)果寫回寄存器(WB),(用鼠標(biāo)雙擊各段,就可以看到各流水寄存器的內(nèi)容).觀察程序在流水線中的執(zhí)行情況,步驟如下:選才? MIPS的“文件”一 “載入程序”選項來加載pipelines(2)觀察比較各個執(zhí)行周期當(dāng)執(zhí)行到第13個時鐘周期時,各段分別正在處理的指令是:IF:LW $r4,60 ($r6)ID:ADDI $r3, $r0,25EX:ADDI $r1,$r1,-1MEM :ADDI $r6,$r0,8WB :ADD $r2,$r1,$r0j | E |_E3他u即營糅記 Stay亮木戰(zhàn) 對旨摘金minDX2409004CADDIU “g祥工以口gqgH口LW

4、CmOC?OOOC371-14310CO(BGEZAL frU funcasOQOOOOOCOkOOOOODaOSIL tTDr$r0F0OxDOOaODlaOxACO20 03C5日 sr2,Qjcooaoooit0*00000034I EQ frG.frOOmQOOOOOI?OmOOOOOOOO5工工.0funcOi00201020ADD (TZ.Sri.6r0ADs00a00320D120Q60D0S 裾ADDI frr$rO,locp0I2021FFFF MEM JLDDI rlr$rl,-l匕。口口二空32O:3CD1& EXADDI ;i3r;r0,25OXOOO0OO2CD15C

5、4i nRwi*Kr*!- WtaH應(yīng)C: UsersDtLLDeaktopMIPS4(19(8 x64ffstructure hz. a地址 即點穩(wěn)記 機器碼 京水段存號指令raain0 x421C0e0ADE.DSf2f0,flOiCOOOOOOl9xi21C0C0faddJWD.D63.串。41CwCDOOODOS0k4621CIC0IDABD.D專4.$CXCC000D3CDita621c14。工FAIC.D5rStO.liOaCCOODClO工AIC.DSGgfO.Vl0i0000001401c4d2101C0ADD.D,0.$白OxCOOOOQIS口NCICZQOADDOmCOOO

6、OOICDk4621C240ATE.D叱姓計匚總:占君周期總機德收執(zhí)行?3條指令硬件郡置:內(nèi)存客里:40% B加總器個數(shù):1 爰去黑個我;1除法器個數(shù);1 定向機制:不先用出行時間周期#0 : G 氏行時間周期救)? 執(zhí)行時間 國期救)10噂頓工期蔡:岫廿停在。甘中二/傅府0淳點噂戟)0占觸總數(shù)的百分比:0%結(jié)構(gòu)海頓:ft 控制作頓:0 自餡信賴:0律所用明總加占所有RW倬頓的百分比二0* 占所有RA咯K的百分比二0% 占周期總數(shù)的百分比:加 占周期總孰的百分比:頷的的連 占周明總效的百分比:M 占周期總效的百分比:以 占圖9月總翻的百分比:酶6666甘支指令:指令條數(shù):0苴市二方支財;0分支

7、失?。?占揩勺總韻的百分比:次占分支指令豹的百分比;0*占分支指令數(shù)的百分比:0前l(fā)oad/Etcirs指令:結(jié)構(gòu)沖突部件:加法寄存器對CPU性能的影響:當(dāng)發(fā)生沖突時,流水線會發(fā)生停頓,從而降低了CPU的性能。解決方法:在流水線處理機中設(shè)置相互獨立的指令存儲器和儲存器3.觀察數(shù)據(jù)沖突弁用定向技術(shù)來減少停頓,步驟如下:(1)全部復(fù)位(2)加載 data_hz.s關(guān)閉定向人能(4)單步執(zhí)行一個周期,同時查看時鐘周期圖,列出在什么時刻發(fā)生了 RAW(先 寫后讀)沖突。4、5、6、8、9、10、12、13、16、17、19、20、24、25、26、27、28、31、32、35、36、38、39周期發(fā)生

8、了 RAW沖突七 MlPS-sim 的亞IWEBt 鱉用 F) AWrtftJLnKLrwl i (uui/CyvlvKiarr $x n, 56 Kian LtJ.|a n.eg LTM KrLlrLKr sr wj.o4ia U MHfW US tirS tr W Ml tr2.frS.4(5)記錄數(shù)據(jù)沖突引起的停頓時鐘周期數(shù)及程序執(zhí)行的總時鐘周期數(shù),計算停 頓時鐘周期數(shù)占總執(zhí)行周期數(shù)的百分比。(6)復(fù)位cpu(7)打開定向功能:寫后讀)沖突,并與步驟(3)的結(jié)果進(jìn)行比較。第 4、6、8、9、10、12、13、18、20、22、24、25、30、32、34、36、37 周期發(fā)生了 RAW

9、沖突(9)比采用定向技術(shù)后性能會有大幅提升。3士“廟泉國圖口蛀:431工嘮故行了 L舜后守內(nèi)有客量:WQG a 加選w入超;I 推法署八器:】 除鉆牛H: I 定FT部不采用組吊嫡(周期做 : 5 風(fēng)行用間(用用技?T 粒用娼(用嗝整)10亨特黑密豺:I市盤;口 1其張L虱作幡;9浮點停W;D n#會干:n 結(jié)杓體癡o 冷青侑時: ? 自信再驚:上書的存k*%煤布百m 匕珀.有之狷 占所有佛汨1百分出二M占罐1曰敦的百分比:推占塞場.數(shù)的百分比;6占髓慮財1明th 4占13占所總和的白白花E不刊不HET: U .羋畤辟尋2除 中常宿1(8)單步執(zhí)行一個周期,同時查看時鐘周期圖,列出在什么時刻發(fā)

10、生了 RAW(先兩件百里二MM B加湛9+I 1系注羨十熟一 除遼嚀都;i 定畫出段卜,書住伯 (咽朝西K*M割景:0手工十二Zgdfl幡:、焉審?fù)?疲豢?4*的MR II話內(nèi)3批; 槿we抬:士 白田)詰上: i二物-HI和:1克順行時劃f.MHW e 向號RJ刊用制郡i, 陶竹0才閉門三期中 ic占用咱以4百勺bqlk HkEEK”所則由肥U寸比:DF EbF、匕幀巨3丫電硅產(chǎn)舌什比;01占罔胴以一粒卬白牙!,|4與kp叫總?cè)?1西丹 山;o*占用期君嫣刃口刀比;匕WW4 6廣I網(wǎng)再金爐向“iRF IL; J *36 海戶13地區(qū)長函徜號論:32兄5悵結(jié)果分析;當(dāng)發(fā)生結(jié)構(gòu)沖突時,流水線會出

11、現(xiàn)停頓,從而降低了 CPU的性能。要避免結(jié)構(gòu) 沖突就要在流水線處理機中設(shè)置相互獨立的指令存儲器和數(shù)據(jù)存儲器。 當(dāng)發(fā)生數(shù) 據(jù)沖突時,程序執(zhí)行并定向時的總停頓周期比沒有定向功能的時候少, 說明要降 低數(shù)據(jù)沖突的方法是對CPU復(fù)位并定向。3.控制沖突指令調(diào)度和延時分支(1)全部復(fù)位(2)加載 branch.s(3)延遲分支減少分支指令對性能的影響,關(guān)閉延遲分支功能。這是通過在“配置”菜單中去選“延遲分支”來實現(xiàn)的MH it: ft g. 4C M. IH Mtlt tri KfUR u akH.avi 4(a Irl H.l SL國4刖 1C1 七 1 |L 3, 4*,11 lil k*4 n *

12、fl 口電21 m li-l h-l.i 中M浦WiXr fa-4分支延遲的時刻:Cycle 6, 9, 13, 21, 24, 28.記錄執(zhí)行該程序所花的時鐘周期數(shù):38 假設(shè)延遲槽為一個,對 branch.s進(jìn)行指令調(diào)度,然后存到 delay-branch.s 中delay-branch.s的指令代碼:.textmain:ADDI $r2,$r0,1024ADD $r3,$r0,$r0ADDI $r4,$r0,8loop:LW $r1,0($r2)ADDI $r1,$r1,1ADDI $r3,$r3,4SUB $r5,$r4,$r3SW $r1,0($r2)BGTZ $r5,loopADD

13、 $r7,$r0,$r6TEQ $r0,$r0載入 delayed-branch.asm打開延遲分支功能執(zhí)行該程序,觀察其時鐘周期圖,保存下其時鐘周期圖對比上述兩種情況下的時鐘周期圖比較兩種情況的時鐘周期總數(shù),可知:在使用延遲槽后,指令在運行到跳轉(zhuǎn)指令 時,不會出現(xiàn)延遲等待,則能夠提高 CPU勺性能。結(jié)構(gòu)沖突:在只有一個浮點加法器的情況下,連著用浮點加法器,就會出現(xiàn)結(jié)構(gòu) 沖突ADD.D $f2,$f0,$f1/設(shè)置相互獨立的指令,存儲器和數(shù)據(jù)存儲器ADD.D $f3,$f0,$f1ADD.D $f4,$f0,$f1TEQ $r0,$r0數(shù)據(jù)沖突:相關(guān)指令靠的太近在流水線中的重疊執(zhí)行或者重新排序會改變指令讀寫操作數(shù)的順序使之不同于他們串行執(zhí)行時的順序,則發(fā)生了數(shù)據(jù)沖突DADD R1,R2,R3DSUB R4,R1,R5/采用定向技術(shù)XOR R6,R1,R7A

溫馨提示

  • 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

提交評論