SlideShare a Scribd company logo
1 of 15
Download to read offline
ARM programmer’s model
M. Anbuselvi
ASP/ECE
2 v 1.1
Session Objective
• To understand ARM programmer’s model
– Register set
– Memory system
– Exceptions
3 v 1.1
ARM programmer’s model
• Each instruction can be viewed as performing a defined
transformation from the state before the instruction is executed to
the state after it has completed.
• Note that although a processor will typically have many invisible
registers involved in executing an instruction,
• The values of these registers before and after the instruction is
executed are not significant;
• Only the values in the visible registers have any significance.
4 v 1.1
ARM programmer’s model
• When writing user-level programs,
• only the 15 general-purpose 32-bit registers (r0 to r14),
• the program counter (r15) and
• the current program status register (CPSR)
• The remaining registers are used only for system-level programming
and for handling exceptions (for example, interrupts).
5 v 1.1
ARM programmer’s model
6 v 1.1
ARM programmer’s model
• Modes of ARM processor
• User mode  Non-Privileged mode
• Supervisor mode
• Abort mode
• Interrupt mode
• Fast interrupt mode
• Undefined mode
Privileged mode
7 v 1.1
ARM programmer’s model
• CPSR
8 v 1.1
ARM programmer’s model
• Memory system
9 v 1.1
ARM programmer’s model
• Exceptions:
• The current state is saved by copying the PC into r14_exc and the
CPSR into SPSR_exc (where exc stands for the exception type).
• The processor operating mode is changed to the appropriate
exception mode.
• The PC is forced to a value between 0016 and 1C16, the particular
value depending on the type of exception.
10 v 1.1
ARM programmer’s model
• The instruction at the location the PC is forced to (the vector
address) will usually contain a branch to the exception handler.
• The exception handler will use r13_exc, which will normally have
been initialized to point to a dedicated stack in memory, to save
some user registers for use as work registers.
• The return to the user program is achieved by restoring the user
registers and then using an instruction to restore the PC and the
CPSR atomically.
• This may involve some adjustment of the PC value saved in r14_exc
to compensate for the state of the pipeline when the exception arose
11 v 1.1
ARM development tools
• Cross- development
12 v 1.1
Summary
• Learnt the ARM programmer’s model
13 v 1.1
Test Your Understanding
• How many modes are there in ARM processor and what
are privileged modes?
• What are exceptions? What are the registers involved in
handling the exceptions?
14
References
• Steve Furber, ‘’ARM System - On - Chip architecture”
Addision Wesley, 2000.
15 v 1.1
Thank you

More Related Content

What's hot

ARM Architecture Instruction Set
ARM Architecture Instruction SetARM Architecture Instruction Set
ARM Architecture Instruction Set
Dwight Sabio
 

What's hot (20)

Arm processor
Arm processorArm processor
Arm processor
 
ARM Architecture
ARM ArchitectureARM Architecture
ARM Architecture
 
Vliw or epic
Vliw or epicVliw or epic
Vliw or epic
 
CMOS Inverter static characterstics.pptx
CMOS Inverter static characterstics.pptxCMOS Inverter static characterstics.pptx
CMOS Inverter static characterstics.pptx
 
SOC design
SOC design SOC design
SOC design
 
Arm Development Tools
Arm Development ToolsArm Development Tools
Arm Development Tools
 
I2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingI2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacing
 
Introduction to Processor Design and ARM Processor
Introduction to Processor Design and ARM ProcessorIntroduction to Processor Design and ARM Processor
Introduction to Processor Design and ARM Processor
 
RF Circuit Design - [Ch4-1] Microwave Transistor Amplifier
RF Circuit Design - [Ch4-1] Microwave Transistor AmplifierRF Circuit Design - [Ch4-1] Microwave Transistor Amplifier
RF Circuit Design - [Ch4-1] Microwave Transistor Amplifier
 
Introduction to arm processor
Introduction to arm processorIntroduction to arm processor
Introduction to arm processor
 
Unit II arm 7 Instruction Set
Unit II arm 7 Instruction SetUnit II arm 7 Instruction Set
Unit II arm 7 Instruction Set
 
Arm modes
Arm modesArm modes
Arm modes
 
Unit 4 _ ARM Processors .pptx
Unit 4 _ ARM Processors .pptxUnit 4 _ ARM Processors .pptx
Unit 4 _ ARM Processors .pptx
 
ARM Architecture Instruction Set
ARM Architecture Instruction SetARM Architecture Instruction Set
ARM Architecture Instruction Set
 
MPMC Microprocessor
MPMC MicroprocessorMPMC Microprocessor
MPMC Microprocessor
 
Architecture of 16C6X
Architecture of 16C6XArchitecture of 16C6X
Architecture of 16C6X
 
ARM Fundamentals
ARM FundamentalsARM Fundamentals
ARM Fundamentals
 
Communication protocols - Embedded Systems
Communication protocols - Embedded SystemsCommunication protocols - Embedded Systems
Communication protocols - Embedded Systems
 
Pass Transistor Logic
Pass Transistor LogicPass Transistor Logic
Pass Transistor Logic
 
I2C Protocol
I2C ProtocolI2C Protocol
I2C Protocol
 

Similar to ARM programmer's model.pdf

WINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptx
WINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptxWINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptx
WINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptx
SoniBhavya
 
2 introduction to arm architecture
2 introduction to arm architecture2 introduction to arm architecture
2 introduction to arm architecture
satish1jisatishji
 
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuuARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
venur239
 

Similar to ARM programmer's model.pdf (20)

MPU Chp2.pptx
MPU Chp2.pptxMPU Chp2.pptx
MPU Chp2.pptx
 
Arm cm3 architecture_and_programmer_model
Arm cm3 architecture_and_programmer_modelArm cm3 architecture_and_programmer_model
Arm cm3 architecture_and_programmer_model
 
Arm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furberArm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furber
 
Mod 3.pptx
Mod 3.pptxMod 3.pptx
Mod 3.pptx
 
Introduction to ARM Architecture
Introduction to ARM ArchitectureIntroduction to ARM Architecture
Introduction to ARM Architecture
 
ARM7TDMI-S_CPU.ppt
ARM7TDMI-S_CPU.pptARM7TDMI-S_CPU.ppt
ARM7TDMI-S_CPU.ppt
 
Comparison between RISC architectures: MIPS, ARM and SPARC
Comparison between RISC architectures: MIPS, ARM and SPARCComparison between RISC architectures: MIPS, ARM and SPARC
Comparison between RISC architectures: MIPS, ARM and SPARC
 
WINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptx
WINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptxWINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptx
WINSEM2022-23_BECE204L_TH_VL2022230500861_2023-02-10_Reference-Material-I.pptx
 
EC8791 ARM Processor and Peripherals.pptx
EC8791 ARM Processor and Peripherals.pptxEC8791 ARM Processor and Peripherals.pptx
EC8791 ARM Processor and Peripherals.pptx
 
2 introduction to arm architecture
2 introduction to arm architecture2 introduction to arm architecture
2 introduction to arm architecture
 
ARM Architecture
ARM ArchitectureARM Architecture
ARM Architecture
 
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuuARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
 
Lect 2 ARM processor architecture
Lect 2 ARM processor architectureLect 2 ARM processor architecture
Lect 2 ARM processor architecture
 
Computer_Organization and architecture _unit 1.pptx
Computer_Organization and architecture _unit 1.pptxComputer_Organization and architecture _unit 1.pptx
Computer_Organization and architecture _unit 1.pptx
 
Arm
ArmArm
Arm
 
Unitii armarchitecture-130305014346-phpapp01
Unitii armarchitecture-130305014346-phpapp01Unitii armarchitecture-130305014346-phpapp01
Unitii armarchitecture-130305014346-phpapp01
 
Arm architecture
Arm architectureArm architecture
Arm architecture
 
Processor types
Processor typesProcessor types
Processor types
 
Lect 3 ARM PROCESSOR ARCHITECTURE
Lect 3  ARM PROCESSOR ARCHITECTURE Lect 3  ARM PROCESSOR ARCHITECTURE
Lect 3 ARM PROCESSOR ARCHITECTURE
 
Processor Organization and Architecture
Processor Organization and ArchitectureProcessor Organization and Architecture
Processor Organization and Architecture
 

More from Anbuselvi Mathivanan (6)

AMBA.ppt
AMBA.pptAMBA.ppt
AMBA.ppt
 
batteries-08-00266.pdf
batteries-08-00266.pdfbatteries-08-00266.pdf
batteries-08-00266.pdf
 
evaluator-report-Part-B-pg-engg-v0.pdf
evaluator-report-Part-B-pg-engg-v0.pdfevaluator-report-Part-B-pg-engg-v0.pdf
evaluator-report-Part-B-pg-engg-v0.pdf
 
CAN BUS.ppt
CAN BUS.pptCAN BUS.ppt
CAN BUS.ppt
 
Introduction to PIC.pptx
Introduction to PIC.pptxIntroduction to PIC.pptx
Introduction to PIC.pptx
 
Iteration bound
Iteration boundIteration bound
Iteration bound
 

Recently uploaded

VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoorTop Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
dharasingh5698
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 

Recently uploaded (20)

22-prompt engineering noted slide shown.pdf
22-prompt engineering noted slide shown.pdf22-prompt engineering noted slide shown.pdf
22-prompt engineering noted slide shown.pdf
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineering
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
 
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoorTop Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 

ARM programmer's model.pdf

  • 1. ARM programmer’s model M. Anbuselvi ASP/ECE
  • 2. 2 v 1.1 Session Objective • To understand ARM programmer’s model – Register set – Memory system – Exceptions
  • 3. 3 v 1.1 ARM programmer’s model • Each instruction can be viewed as performing a defined transformation from the state before the instruction is executed to the state after it has completed. • Note that although a processor will typically have many invisible registers involved in executing an instruction, • The values of these registers before and after the instruction is executed are not significant; • Only the values in the visible registers have any significance.
  • 4. 4 v 1.1 ARM programmer’s model • When writing user-level programs, • only the 15 general-purpose 32-bit registers (r0 to r14), • the program counter (r15) and • the current program status register (CPSR) • The remaining registers are used only for system-level programming and for handling exceptions (for example, interrupts).
  • 5. 5 v 1.1 ARM programmer’s model
  • 6. 6 v 1.1 ARM programmer’s model • Modes of ARM processor • User mode  Non-Privileged mode • Supervisor mode • Abort mode • Interrupt mode • Fast interrupt mode • Undefined mode Privileged mode
  • 7. 7 v 1.1 ARM programmer’s model • CPSR
  • 8. 8 v 1.1 ARM programmer’s model • Memory system
  • 9. 9 v 1.1 ARM programmer’s model • Exceptions: • The current state is saved by copying the PC into r14_exc and the CPSR into SPSR_exc (where exc stands for the exception type). • The processor operating mode is changed to the appropriate exception mode. • The PC is forced to a value between 0016 and 1C16, the particular value depending on the type of exception.
  • 10. 10 v 1.1 ARM programmer’s model • The instruction at the location the PC is forced to (the vector address) will usually contain a branch to the exception handler. • The exception handler will use r13_exc, which will normally have been initialized to point to a dedicated stack in memory, to save some user registers for use as work registers. • The return to the user program is achieved by restoring the user registers and then using an instruction to restore the PC and the CPSR atomically. • This may involve some adjustment of the PC value saved in r14_exc to compensate for the state of the pipeline when the exception arose
  • 11. 11 v 1.1 ARM development tools • Cross- development
  • 12. 12 v 1.1 Summary • Learnt the ARM programmer’s model
  • 13. 13 v 1.1 Test Your Understanding • How many modes are there in ARM processor and what are privileged modes? • What are exceptions? What are the registers involved in handling the exceptions?
  • 14. 14 References • Steve Furber, ‘’ARM System - On - Chip architecture” Addision Wesley, 2000.