资源描述:
《用在HCL中表示指令.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、SEQCPUImplementationWhatwewilldiscusstoday?TheimplementationofasequentialCPU----SEQEveryInstructionfinishedinonecycle.InstructionexecutesinsequentialNotwoinstructionexecuteinparalleloroverlapAnrevisedversionofSEQ----SEQ+ModifythePCUpdatestageofSEQtoshowthedifferenceb
2、etweenISAandimplementationSomeMacrosNameValueMeaningINOP0CodefornopinstructionIHALT1CodeforhaltinstructionIRRMOVL2CodeforrrmovlinstructionIIRMOVL3CodeforirmovlinstructionIRMMOVL4CodeforrmmovlinstructionIMRMOVL5CodeformrmovlinstructionIOPL6Codeforintegeropinstructions
3、IJXX7Codeforjumpinstructions……………………………………………IPOPLBCodeforpoplinstructionRESPRENONE68RegisterIDfor%espIndicatesnoregisterfileaccessALUADD0FunctionforadditionoperationInstructionmemoryInstructionmemoryPCincrementPCincrementCCCCALUALUDatamemoryDatamemoryFetchDecodeExec
4、uteMemoryWritebackicode,ifunrA,rBvalCRegisterfileRegisterfileABMERegisterfileRegisterfileABMEPCvalPsrcA,srcBdstA,dstBvalA,valBaluA,aluBBchvalEAddr,DatavalMPCvalE,newPCvalMSEQHardwareStructureStagesFetchReadinstructionfrommemoryDecodeReadprogramregistersExecuteCompute
5、valueoraddressMemoryReadorwritedataWriteBackWriteprogramregistersPCUpdateprogramcounterInstructionFlowReadinstructionataddressspecifiedbyPCProcessthroughstagesUpdateprogramcounterInstructionmemoryInstructionmemoryPCincrementPCincrementCCCCALUALUDatamemoryDatamemoryFe
6、tchDecodeExecuteMemoryWritebackicode,ifunrA,rBvalCRegisterfileRegisterfileABMERegisterfileRegisterfileABMEPCvalPsrcA,srcBdstA,dstBvalA,valBaluA,aluBBchvalEAddr,DatavalMPCvalE,valMnewPCDifferencebetweensemanticsandimplementationISAEverystagemayupdatesomestates,theseup
7、datesoccursequentiallySEQAllthestateupdateoperationsoccursimultaneouslyatclockrising(exceptCC)SEQHardwareKeyBlueboxes:predesignedhardwareblocksE.g.,memories,ALUGrayboxes:controllogicDescribeinHCLWhiteovals:labelsforsignalsThicklines:32-bitwordvaluesThinlines:4-8bitva
8、luesDottedlines:1-bitvaluesFetchLogicPredefinedBlocksPC:RegistercontainingPCInstructionmemory:Read6bytes(PCtoPC+5)Split:Divideinstr