嵌入式系统架构软体设计.ppt
上传人:sy****28 上传时间:2024-09-14 格式:PPT 页数:179 大小:3.7MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

嵌入式系统架构软体设计.ppt

嵌入式系统架构软体设计.ppt

预览

免费试读已结束,剩余 169 页请下载文档后查看

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

嵌入式系统架构软体设计课程介绍嵌入式系统产品设计流程概观RISC精简指令集vs.CISC复杂指令集MUO一个简单的处理器MUO指令集与资料路径指令执行范例运算范例练习:MUO微处理器的运算ARM7TDMI资料流ARM的暂存器ProgramStatusRegisterProgramcounter–R15LinkRegister–R14OtherRegisterR0-R13StructureofARMAssemblyLanguageModuleCallingSubroutinesUsesBLCallingSubroutinesExampleConstantDataTypesAlmostallARMinstructionscanbeconditionallyexecuted.e.g.ADDSr0,r1,r2ADDEQr0,r1,r2ExecuteiftheN,Z,CandVflagsintheCPSRsatisfyaconditionspecifiedintheinstruction,otherwise,NOP.AlmosteveryARMinstructioncanbeexecutedconditionallyonthestateoftheALUstateflagsintheCPSR.AddanSsuffixtoanARMdataprocessinginstructiontomakeitupdatetheALUstateflagsintheCPSRE.g.ADDSr0,r1,r2;r0=r1+r2andupdateALUstatusinCPSR.InARMstate,youcan:updatetheALUstatusflagsinthePSRontheresultofadataoperationexecuteseveralotherdataoperationwithoutupdatingtheflagsexecutefollowinginstructionsornot,accordingtothestateoftheflagsupdatedinthefirstoperation.InThumbstatemostdataoperationsalwaysupdatetheflagsandconditionalexecutioncanonlybeachievedusingtheconditionalbranchinstruction(B).DonotusetheSsuffixwithCMP,CMN,TST,orTEQ.ThesecomparisoninstructionsalwaysupdatetheflagALUStatusRegisterinCPSRConditionalCodeSuffixesConditionalCodeExamplesWriteEfficientandsmallsizeCodebyConditionalInstructionExerciseARMADS1.2ImplementationIntegrationPre-configuredProjectStationaryFilesPossibleDevelopmentEnvironmentReferenceARM指令集特点Thumb指令集JazelleARM指令集分类BranchinstructionsBranchInstructionEncodingBranchinstructionsexampleData-processinginstructionsEncodingDataProcessingOpodeExampleData-processingInstructionsExampleData-processingInstructions(cont.)ShifterShifterApplicationsMultiplyinstructionbinaryencodingAssemblyFormat:CLZ{<cond>}{S}Rd,RmSetsRdtothenumberofthebitpositionofhrmostsignificant1inRm.IfRm=0Rd=32.E.g.MOVr0,#&100CLZr1,R0r1=8练习SingleWordandUnsignedByteDataTransferInstructionBinaryEncodingLoadandStoreExamplesHalf-wordandSignedByteDataTransferInstructionBinaryEncodingHalf-wordLoad/StoreExample练习:字串复制MultipleRegist