SlideShare a Scribd company logo
ARM Exceptions, Interrupts, and
Core Extensions
Detailed Explanation with Multiple
Slides per Topic
Overview of Exceptions in ARM
• • Exceptions are events that interrupt normal
execution.
• • Can be caused by software, hardware, or
external signals.
• • ARM handles exceptions using vector table
entries.
• • Examples include Reset, Undefined
Instructions, and Data Abort.
Types of Exceptions
• 1. **Reset** – Occurs on processor startup or reset
signal.
• 2. **Undefined Instruction** – Triggered when an
unknown instruction is executed.
• 3. **Software Interrupt (SWI)** – Used for OS calls
and system services.
• 4. **Prefetch Abort** – When instruction fetch fails
due to memory issues.
• 5. **Data Abort** – Occurs when an invalid memory
access happens.
Exception Handling Process
• 1. Processor saves CPSR into SPSR of the mode
handling the exception.
• 2. The processor switches to the relevant mode
(e.g., Abort mode).
• 3. Execution jumps to the corresponding address
in the vector table.
• 4. Exception handler executes necessary routines.
• 5. The handler restores CPSR and resumes normal
execution.
Exception Flow Diagram
• Shows how ARM transitions between modes when exceptions occur.
• Includes how CPSR is saved and execution branches to exception handlers.
[Insert Figure Here]
Software Interrupt (SWI) in Detail
• • SWI is a special instruction used to invoke
system calls.
• • Used to switch from user mode to
supervisor mode.
• • Common in OS kernels and embedded
system calls.
• • The processor jumps to the SWI vector in
the vector table.
Overview of Interrupts in ARM
• • Interrupts allow external devices to signal
the processor.
• • ARM supports two main types of interrupts:
• - **IRQ (Interrupt Request):** General-
purpose interrupt.
• - **FIQ (Fast Interrupt Request):** Higher
priority, faster response.
ARM Vector Table
• • The vector table is a memory-mapped table at
address 0x00000000.
• • Contains branch instructions pointing to
exception handlers.
• • Entries in the vector table:
• - Reset (0x00), Undefined Instruction (0x04),
SWI (0x08),
• - Prefetch Abort (0x0C), Data Abort (0x10), IRQ
(0x18), FIQ (0x1C).
FIQ vs IRQ – Key Differences
• • **FIQ (Fast Interrupt Request):**
• - Higher priority than IRQ.
• - Uses banked registers for faster execution.
• - Typically used for real-time applications like
motor control.
• • **IRQ (Interrupt Request):**
• - Standard interrupt with lower priority.
• - Saves context and switches to interrupt mode.
Nested Interrupt Handling
• • ARM supports **nested interrupts**, where
a higher priority interrupt can preempt a
lower one.
• • The interrupt handler must save the CPSR
before enabling other interrupts.
• • Used in real-time systems to ensure high-
priority tasks run first.
Core Extensions in ARM
• • ARM cores include hardware extensions to
improve performance and efficiency.
• • Three major core extensions:
• - Cache & Tightly Coupled Memory (TCM)
• - Memory Management (MMU, MPU)
• - Coprocessor Interface.
Cache and Tightly Coupled Memory (TCM)
• • Cache stores frequently accessed data to
speed up execution.
• • ARM processors may have **separate
instruction and data caches** (Harvard
architecture).
• • TCM is a high-speed SRAM used for real-
time tasks requiring predictable memory
access.
• Diagram comparing cache-based and TCM-based architectures.
• Shows how memory access latency is reduced.
Memory Management – MMU & MPU
• • **Memory Protection Unit (MPU):**
• - Defines memory regions with access permissions.
• - Used in embedded systems with simple memory
maps.
• • **Memory Management Unit (MMU):**
• - Provides virtual memory mapping.
• - Supports multitasking operating systems (Linux,
Android).
Coprocessors in ARM
• • ARM supports coprocessors to enhance
specific functionalities.
• • Example: Vector Floating Point (VFP)
coprocessor for floating-point arithmetic.
• • Coprocessor 15 (CP15) controls cache,
MMU, and system configuration.

More Related Content

PPTX
ARM_CPSR_Full_Detailed_Presentation.pptx
PPTX
Embedded systems 101 final
PDF
ARM® Cortex M Boot & CMSIS Part 1-3
PDF
Introduction to ARM Architecture
PDF
Advanced debugging on ARM Cortex devices such as STM32, Kinetis, LPC, etc.
PPTX
Mces MOD 1.pptx
PDF
Board support package_on_linux
PPTX
ARM-7 ADDRESSING MODES INSTRUCTION SET
ARM_CPSR_Full_Detailed_Presentation.pptx
Embedded systems 101 final
ARM® Cortex M Boot & CMSIS Part 1-3
Introduction to ARM Architecture
Advanced debugging on ARM Cortex devices such as STM32, Kinetis, LPC, etc.
Mces MOD 1.pptx
Board support package_on_linux
ARM-7 ADDRESSING MODES INSTRUCTION SET

Similar to ARM_Advanced_Exceptions_Interrupts_Extensions.pptx (20)

PPTX
1.1.2 Processor and primary storage components.pptx
PPTX
Computer Organization : CPU, Memory and I/O organization
PPTX
Introduction to arm processor
PPTX
Introduction to embedded System.pptx
PPTX
Computer Organization: Introduction to Microprocessor and Microcontroller
PPTX
Computer_Organization_and_Architecture.pptx
PPTX
Computer_Organization and architecture _unit 1.pptx
PDF
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
PDF
Virtualization Support in ARMv8+
PDF
Unit 2 processor&memory-organisation
PDF
Unit 1 processormemoryorganisation
PPT
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
PPT
Synchronization linux
PDF
Microwatt: Open Tiny Core, Big Possibilities
 
PDF
15CS44 MP & MC Module 4
PPTX
Topic 2 ARM Architecture and Programmer's Model.pptx
PPTX
MPU Chp2.pptx
PDF
PLC Programming - Working, Specifications of PLC
PPTX
Intel® hyper threading technology
PDF
PILOT Session for Embedded Systems
1.1.2 Processor and primary storage components.pptx
Computer Organization : CPU, Memory and I/O organization
Introduction to arm processor
Introduction to embedded System.pptx
Computer Organization: Introduction to Microprocessor and Microcontroller
Computer_Organization_and_Architecture.pptx
Computer_Organization and architecture _unit 1.pptx
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
Virtualization Support in ARMv8+
Unit 2 processor&memory-organisation
Unit 1 processormemoryorganisation
ARM Introduction 1.ppthhhhhhhhhhhhhuuuuuuu
Synchronization linux
Microwatt: Open Tiny Core, Big Possibilities
 
15CS44 MP & MC Module 4
Topic 2 ARM Architecture and Programmer's Model.pptx
MPU Chp2.pptx
PLC Programming - Working, Specifications of PLC
Intel® hyper threading technology
PILOT Session for Embedded Systems
Ad

Recently uploaded (20)

PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
RMMM.pdf make it easy to upload and study
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PPTX
Cell Structure & Organelles in detailed.
PDF
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
Complications of Minimal Access Surgery at WLH
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
master seminar digital applications in india
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
GDM (1) (1).pptx small presentation for students
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PPTX
Cell Types and Its function , kingdom of life
PDF
Classroom Observation Tools for Teachers
O5-L3 Freight Transport Ops (International) V1.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
VCE English Exam - Section C Student Revision Booklet
RMMM.pdf make it easy to upload and study
202450812 BayCHI UCSC-SV 20250812 v17.pptx
Cell Structure & Organelles in detailed.
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
Final Presentation General Medicine 03-08-2024.pptx
Anesthesia in Laparoscopic Surgery in India
Complications of Minimal Access Surgery at WLH
human mycosis Human fungal infections are called human mycosis..pptx
master seminar digital applications in india
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
Module 4: Burden of Disease Tutorial Slides S2 2025
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
GDM (1) (1).pptx small presentation for students
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Cell Types and Its function , kingdom of life
Classroom Observation Tools for Teachers
Ad

ARM_Advanced_Exceptions_Interrupts_Extensions.pptx

  • 1. ARM Exceptions, Interrupts, and Core Extensions Detailed Explanation with Multiple Slides per Topic
  • 2. Overview of Exceptions in ARM • • Exceptions are events that interrupt normal execution. • • Can be caused by software, hardware, or external signals. • • ARM handles exceptions using vector table entries. • • Examples include Reset, Undefined Instructions, and Data Abort.
  • 3. Types of Exceptions • 1. **Reset** – Occurs on processor startup or reset signal. • 2. **Undefined Instruction** – Triggered when an unknown instruction is executed. • 3. **Software Interrupt (SWI)** – Used for OS calls and system services. • 4. **Prefetch Abort** – When instruction fetch fails due to memory issues. • 5. **Data Abort** – Occurs when an invalid memory access happens.
  • 4. Exception Handling Process • 1. Processor saves CPSR into SPSR of the mode handling the exception. • 2. The processor switches to the relevant mode (e.g., Abort mode). • 3. Execution jumps to the corresponding address in the vector table. • 4. Exception handler executes necessary routines. • 5. The handler restores CPSR and resumes normal execution.
  • 5. Exception Flow Diagram • Shows how ARM transitions between modes when exceptions occur. • Includes how CPSR is saved and execution branches to exception handlers. [Insert Figure Here]
  • 6. Software Interrupt (SWI) in Detail • • SWI is a special instruction used to invoke system calls. • • Used to switch from user mode to supervisor mode. • • Common in OS kernels and embedded system calls. • • The processor jumps to the SWI vector in the vector table.
  • 7. Overview of Interrupts in ARM • • Interrupts allow external devices to signal the processor. • • ARM supports two main types of interrupts: • - **IRQ (Interrupt Request):** General- purpose interrupt. • - **FIQ (Fast Interrupt Request):** Higher priority, faster response.
  • 8. ARM Vector Table • • The vector table is a memory-mapped table at address 0x00000000. • • Contains branch instructions pointing to exception handlers. • • Entries in the vector table: • - Reset (0x00), Undefined Instruction (0x04), SWI (0x08), • - Prefetch Abort (0x0C), Data Abort (0x10), IRQ (0x18), FIQ (0x1C).
  • 9. FIQ vs IRQ – Key Differences • • **FIQ (Fast Interrupt Request):** • - Higher priority than IRQ. • - Uses banked registers for faster execution. • - Typically used for real-time applications like motor control. • • **IRQ (Interrupt Request):** • - Standard interrupt with lower priority. • - Saves context and switches to interrupt mode.
  • 10. Nested Interrupt Handling • • ARM supports **nested interrupts**, where a higher priority interrupt can preempt a lower one. • • The interrupt handler must save the CPSR before enabling other interrupts. • • Used in real-time systems to ensure high- priority tasks run first.
  • 11. Core Extensions in ARM • • ARM cores include hardware extensions to improve performance and efficiency. • • Three major core extensions: • - Cache & Tightly Coupled Memory (TCM) • - Memory Management (MMU, MPU) • - Coprocessor Interface.
  • 12. Cache and Tightly Coupled Memory (TCM) • • Cache stores frequently accessed data to speed up execution. • • ARM processors may have **separate instruction and data caches** (Harvard architecture). • • TCM is a high-speed SRAM used for real- time tasks requiring predictable memory access.
  • 13. • Diagram comparing cache-based and TCM-based architectures. • Shows how memory access latency is reduced.
  • 14. Memory Management – MMU & MPU • • **Memory Protection Unit (MPU):** • - Defines memory regions with access permissions. • - Used in embedded systems with simple memory maps. • • **Memory Management Unit (MMU):** • - Provides virtual memory mapping. • - Supports multitasking operating systems (Linux, Android).
  • 15. Coprocessors in ARM • • ARM supports coprocessors to enhance specific functionalities. • • Example: Vector Floating Point (VFP) coprocessor for floating-point arithmetic. • • Coprocessor 15 (CP15) controls cache, MMU, and system configuration.