版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
WilliamStallings
ComputerOrganization
andArchitecture
5thEditionChapter13InstructionLevelParallelismandSuperscalarProcessors淘寶刷信譽(yù)WhatisSuperscalar?Thetermsuperscalarreferstoamachinethatdesignedtoimprovetheperformanceoftheexecutionofscalarinstructions.Therearemultipleindependentinstructionpipelinesinasuperscalarprocessor.Eachpipelineconsistsofmultiplestages,canhandlemultipleinstructionsatatime.Multiplepipelinesintroduceanewlevelofparallelism,enablingmultiplestreamsofinstructionstobeprocessedatatime.WhatisSuperscalar?AsuperscalarprocessorfetchesmultipleinstructionsatatimeAttemptstofindnearbyinstructionsthatareindependentofoneanotherandcanbeexecutedinparallel.Theessenceofthesuperscalarapproachistheabilitytoexecuteinstructionsindependentlyindifferentpipelines.WhatisSuperscalar?Commoninstructions(arithmetic,load/store,conditionalbranch)canbeinitiatedandexecutedindependentlyinasuperscalarprocessorEquallyapplicabletoRISC&CISCInpracticeusuallyRISCWhySuperscalar?Mostoperationsareonscalarquantities(seeRISCnotes)ImprovetheseoperationstogetanoverallimprovementGeneralSuperscalarOrganizationTwointeger,twofloating-point,andonememory(eitherloadorstore)operationscanbeexecutingatthesametime.SuperpipelinedManypipelinestagesneedlessthanhalfaclockcycleDoubleinternalclockspeedgetstwotasksperexternalclockcycleSuperscalarv
SuperpipelineSuperscalarvSuperpipelineBasemachineSuperscalarvSuperpipelineSuperpipelineSuperscalarvSuperpipelineSuperscalarLimitationsInstructionlevelparallelismCompilerbasedoptimisationHardwaretechniquesLimitedbyTruedatadependency 數(shù)據(jù)相關(guān)Proceduraldependency 過程相關(guān)Resourceconflicts 資源沖突Outputdependency 輸出相關(guān)Antidependency 反相關(guān)TrueDataDependencyADDr1,r2(r1:=r1+r2;)MOVEr3,r1(r3:=r1;)CanfetchanddecodesecondinstructioninparallelwithfirstCanNOTexecutesecondinstructionuntilfirstisfinishedAlsocalledflowdependency
orwrite-readdependencyTrueDataDependencyProceduralDependencyCannotexecuteinstructionsafterabranchinparallelwithinstructionsbeforeabranchAlso,ifinstructionlengthisnotfixed,instructionshavetobedecodedtofindouthowmanyfetchesareneededThispreventssimultaneousfetchesProceduralDependencyResourceConflictResourcesMemories,caches,buses,register-file,ports,functionalunitsTwoormoreinstructionsrequiringaccesstothesameresourceatthesametimee.g.twoarithmeticinstructionsCanduplicateresourcese.g.havetwoarithmeticunitsResourceConflictEffectof
DependenciesDesignIssuesInstructionlevelparallelismInstructionsinasequenceareindependentExecutioncanbeoverlappedGovernedbydataandproceduraldependencyMachineParallelismAbilitytotakeadvantageofinstructionlevelparallelism處理器提供指令級并行性支持能力的度量GovernedbynumberofparallelpipelinesE.g.LoadR1R2(23) AddR3R3,”1”AddR3R3,”1” AddR4R3,R2AddR4R4,R2 Store[R4]R0InstructionIssuePolicy(指令發(fā)射策略)Orderinwhichinstructionsarefetched取指令的順序Orderinwhichinstructionsareexecuted指令執(zhí)行的順序Orderinwhichinstructionschangeregistersandmemory指令改變寄存器和存儲器內(nèi)容的順序In-OrderIssue
In-OrderCompletionIssueinstructionsintheordertheyoccurNotveryefficientMayfetch>1instructionInstructionsmuststallifnecessaryIn-OrderIssueIn-OrderCompletion(Diagram)In-OrderIssue
Out-of-OrderCompletionOutputdependencyR3:=R3+R5;(I1)R4:=R3+1;(I2)R3:=R5+1;(I3)I2dependsonresultofI1-datadependencyIfI3completesbeforeI1,theresultfromI1willbewrong-output(read-write)dependencyIn-OrderIssueOut-of-OrderCompletion(Diagram)Out-of-OrderIssue
Out-of-OrderCompletionDecoupledecodepipelinefromexecutionpipelineCancontinuetofetchanddecodeuntilthispipelineisfullWhenafunctionalunitbecomesavailableaninstructioncanbeexecutedSinceinstructionshavebeendecoded,processorcanlookaheadOut-of-OrderIssueOut-of-OrderCompletion(Diagram)AntidependencyWrite-writedependencyR3:=R3+R5;(I1)R4:=R3+1;(I2)R3:=R5+1;(I3)R7:=R3+R4;(I4)I3cannotcompletebeforeI2startsasI2needsavalueinR3andI3changesR3RegisterRenamingOutputandantidependenciesoccurbecauseregistercontentsmaynotreflectthecorrectorderingfromtheprogramMayresultinapipelinestallRegistersallocateddynamicallyi.e.registersarenotspecificallynamedRegisterRenamingexampleRegisterrenamingR3b:=R3a+R5a(I1)R4b:=R3b+1(I2)R3c:=R5a+1(I3)R7b:=R3c+R4b(I4)WithoutsubscriptreferstologicalregisterininstructionWithsubscriptishardwareregisterallocatedNoteR3aR3bR3cMachineParallelismThreehardwaretechniquesDuplicationofResourcesOutoforderissueRenamingFigure13.5showssimulationresultsNotworthduplicationfunctionswithoutregisterrenamingRegisterrenamingeliminatesantidependenciesandoutputdependenciesNeedinstructionwindowlargeenough(morethan8)BranchPrediction80486fetchesbothnextsequentialinstructionafterbranchandbranchtargetinstructionGivestwocycledelayifbranchtakenRISC-DelayedBranchCalculateresultofbranchbeforeunusableinstructionspre-fetchedAlwaysexecutesingleinstructionimmediatelyfollowingbranchKeepspipelinefullwhilefetchingnewinstructionstreamNotasgoodforsuperscalarMultipleinstructionsneedtoexecuteindelayslotInstructiondependenceproblemsReverttobranchpredictionSuperscalarExecutionSuperscalarImplementationSimultaneouslyfetchmultipleinstructionsLogictodeterminetruedependenciesinvolvingregistervaluesMechanismstocommunicatethesevaluesMechanismstoinitiatemultipleinstructionsinparallelResourcesforparallelexecutionofmultipleinstructionsMechanismsforcommittingprocessstateincorrectorderPentium480486-CISCPentium–somesuperscalarcomponentsTwoseparateintegerexecutionunitsPentiumPro–FullblownsuperscalarSubsequentmodelsrefine&enhancesuperscalardesignPentium4BlockDiagramPentium4OperationFetchinstructionsformmemoryinorderofstaticprogramTranslateinstructionintooneormorefixedlengthRISCinstructions(micro-operations)Executemicro-opsonsuperscalarpipelinemicro-opsmaybeexecutedoutoforderCommitresultsofmi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024裝修合同樣填寫簡單裝修合同樣本
- 2024年婁桂與前配偶共同撫養(yǎng)子女合同
- 2024年度鮮花花藝設(shè)計(jì)合同
- 2024年度文化創(chuàng)意產(chǎn)品設(shè)計(jì)合同
- 2024年廢紙回收合同范本下載
- 2024年建筑工程木工長期勞務(wù)合同
- 2024年雙方協(xié)商一致停薪留職具體條款協(xié)議
- 課件彩虹2教學(xué)課件
- 2024年度貨物銷售合同標(biāo)的:電子產(chǎn)品銷售
- 2024年度項(xiàng)目托管合同
- 鈉與水的反應(yīng)
- 議論文寫作技巧
- 教科版五年級科學(xué)上冊(風(fēng)的作用) 教學(xué)課件
- 二年級下冊語文試題 -“詩詞大會(huì)”題庫二 (word版有答案) 人教部編版
- GB/T 7702.20-2008煤質(zhì)顆粒活性炭試驗(yàn)方法孔容積和比表面積的測定
- 新歷史主義文藝思潮
- GB/T 40120-2021農(nóng)業(yè)灌溉設(shè)備灌溉用熱塑性可折疊軟管技術(shù)規(guī)范和試驗(yàn)方法
- GB/T 3903.2-1994鞋類通用檢驗(yàn)方法耐磨試驗(yàn)方法
- GB/T 10801.2-2018絕熱用擠塑聚苯乙烯泡沫塑料(XPS)
- 12J5-1 平屋面建筑標(biāo)準(zhǔn)設(shè)計(jì)圖
- 中印邊境爭端
評論
0/150
提交評論