版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
WilliamStallings
ComputerOrganization
andArchitecture
5thEditionChapter13InstructionLevelParallelismandSuperscalarProcessors淘寶刷信譽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)容里面會有圖紙預(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 運輸公司上墻制度
- 教鋼琴曲互動的課件
- 財務(wù)報表制度
- 試述劇毒化學(xué)品管理的五雙制度
- 2025年大學(xué)轉(zhuǎn)護(hù)理專業(yè)筆試及答案
- 2025年山東青島事業(yè)單位考試題及答案
- 2025年濟南社工招聘筆試題及答案
- 2025年齊魯工業(yè)大學(xué)研究生筆試及答案
- 2025年教師崗位大練兵學(xué)科筆試及答案
- 2025年紹興市 人事考試及答案
- 灑水車工程合同協(xié)議書
- 職業(yè)病防治工作計劃與執(zhí)行步驟
- 國有企業(yè)外部董事個人履職報告
- 服裝SKU知識培訓(xùn)課件
- 二零二五年度快遞運輸快遞網(wǎng)點加盟合作協(xié)議
- 相互抵款協(xié)議書范本
- (北師大版)八年級數(shù)學(xué)上冊(全冊)單元測試卷
- 電廠生產(chǎn)準(zhǔn)備管理制度
- 混凝土攪拌站試運行報告
- T/CCMA 0133-2022高爾夫球車
- ?;窇?yīng)急演練實操
評論
0/150
提交評論