Professional Documents
Culture Documents
BasicsofCISC
andRISCmachines
171005EmbeddedSystems
Lecture3
9/7/2013
CISCProcessordetails
Beforedecidingwhichprocessor,designershouldthinkwhich
architecturefortheprocessortobeselected?
CISCandRISCarethepopulararchitecturewithmeritsand
demerits.
CISCwereprovidingakindofinstructionsthathelpedincompiler
designeasy!Andthatswhytheinstructionsetwassupportedwith
instructionsforcomplextaskandhencethetaskofcompileris
simplertoconverthighlevellanguageintomachinecodes!
Henceprocessorsweresoldearlierbasedonthecomplexitiesthey
canhandlewithinstructions,addressingmodesanddatatypes.
Butthisrequireshighernumberofgatesonthedietoimplement
complexinstructions.
Eventheexecutiontimeforalltheinstructionsarenotremaining
same!
9/9/2013
ThekindofactivitieshandledbyourCPUare:
InstructionandDatamovementbetweenCPUand
memory.
Executionofinstructions
ALUoperations
DatamovementbetweenCPUandmemoryasapartof
executionoftheinstructions.
DatamovementsbetweenregistersintheCPU
Wemustconsiderthedynamicuseofinstructions
inourprogram.
DynamicInstructionUsage
Around33%instructionsforALUoperationsand67%for
DatamovementandControlflowoperation!
Thistellsthatthemostimportantinstructionstooptimize
arethosewhicharedealingwithdatamovement.
9/9/2013
TypicalSequenceofOperationinCPU
Pipelining
WhatisPipelining?
Pipelininghelpsinfasterexecutionofthe
instructions.
9/9/2013
Read WritePipelineHazard
BranchPipelineHazard
9/9/2013
Problemsinpipeliningduringbranch
instructions.
Pipeliningprovesbetterifexecutiontimeofall
instructionsareuniform.
Itisdifficulttoimplementpipeliningforthe
complexinstructions.
HenceCISCarchitectureisnotinfavorof
achievingfasterexecutiononarchitecture
level.
Tobringuniformityinexecutiontimeforthesupportofpipelining:
Allinstructionweredesignedofbeingfixedlengthinamodified
architecture
Allinstructionsweredesignedsuchthattheyallexecuteinsametime
thatissinglecycleexecutionforpipelinebenefits.Thisleadtoavoiding
Complexinstructionandusingsimpleinstructions(Thatiswhy
ReducedInstructionSet).
Itisnotpossibletoachieveakindofexecutionwherememorydatais
read,processedandagainmodifiedinasinglecycleexecution.
HenceLoad StoreArchitecturewasdesignedwhichsupports
instructionswhichloadsamemorydataintoCPUorstoresCPU
registertomemoryinseparateinstructions.
Largeregisterwindowbankswasrequiredtooperateload store
instructionsefficiently.
Thewholedesignwascarriedoutbasedon32bitarchitecture.
9/9/2013
RISCAdvantages
CISCrequiredhighernumberofgatesondielevelfor
complexinstructionexecution.ButRISCsupports
simplerinstructionset.Henceitdealswithsmalldie
size.
Thishelpsinachievingreducedpowerconsumption.
Shorterdevelopmenttimeforthecpu.
Asimplerprocessorallowshighclockrateonthe
board;whileaCISCkindofmachineisrestrictedfor
theirhigherfrequencyofoperations.
CISCmachinesarehavingmicrocodeROMstodecode
theinstruction;whileRISCprocessorusingHardwired
logicwhichismuchfaster.
DisadvantagesofRISC
PoorcodedensityascomparedtoCISC.So,
highermemoryrequirementswillbetherein
turnhighermemorypowerconsumption.
X86codesarenotportable.
9/9/2013
ARMArchitecture
AcornRISCMachine(ARM)utilizedtheRISCarchitectureforembedded
applicationdevelopment.
FeaturesusedfromRISCarchitecture
ALoadstoreArchitecture
Fixedlength32bitinstructions
3addressinstructionformat(eg.addr0,r1,r2)
FeaturesRejected
RegisterWindows
DelayedBranches
Singlecycleexecutionofallinstruction(Thisisfoundtobepossibleonlyif
dataandinstructionmemoriesareseparate.InitiallyARMwasdesignedwith
VonNeuman Architecturewheredataandinstructionmemoriesare
different)
Featuresadded
ThumbInstructionsettoachievehighercodedensity