Architecture of an ARM embedded device / Embedded System Hardware

An ARM embedded device combines an ARM processor with peripherals, memory, and controllers, connected by internal buses. It is commonly used in mobile phones, tablets, embedded systems, and IoT devices due to its low power consumption, high performance, and modularity.

Main Components of the ARM Embedded Architecture


1. ARM Processor Core

  • Heart of the system.
  • Executes instructions and performs data processing.
  • Includes:
    • Execution Core
    • Cache (for fast memory access)
    • MMU (Memory Management Unit)
  • Acts as the Bus Master (initiates data transfers).

2. System Bus (AHB/APB)

  • Used to interconnect the processor, memory, and peripherals.
  • Two types of buses:
    • AHB (Advanced High-performance Bus) – For high-speed peripherals.
    • APB (Advanced Peripheral Bus) – For low-speed peripherals (low power).
  • Multi-layer AHB allows multiple masters (e.g., DMA).
  • AHB-Lite supports a single master (commonly used in microcontrollers).

3. Controllers

  • Manage internal system functionalities.

Memory Controller

  • Connects RAM, ROM, Flash to processor.
  • Sets refresh rates and memory timings for DRAM.

Interrupt Controller

  • Handles interrupt signals from peripherals.
  • Two types:
    • Standard Interrupt Controller – Detects and masks interrupts.
    • Vector Interrupt Controller (VIC) – Prioritizes and directly calls interrupt handlers.

4. Memory Subsystem

a) Cache

  • Fastest memory located near the core.
  • Stores frequently accessed instructions/data.

b) Main Memory (DRAM, SRAM)

  • Holds program code and runtime data.
  • Size: from 256KB to hundreds of MB.

c) Secondary Storage

  • For permanent storage (e.g., Flash, SD card).
  • Used to store firmware or large datasets.

d) Types of Memory

TypeDescription
ROMPermanent storage, cannot be rewritten
Flash ROMRewritable, used for firmware
DRAMCost-effective RAM, needs refresh
SRAMFast, no refresh needed, expensive
SDRAMSynchronous DRAM, high-speed

5. Peripherals

  • Enable I/O operations like communication, sensing, or actuation.

Examples:

  • GPIO (General Purpose Input Output)
  • ADC (Analog-to-Digital Converter)
  • UART, SPI, I2C (Communication)
  • Timers, PWM (Control systems)
  • Connected via APB (for slow peripherals) or AHB (for fast ones).
  • All peripherals are memory-mapped (i.e., they are accessed using memory addresses).

6. Bus Master and Slaves

  • Bus Master: The ARM processor core initiates data transfer.
  • Bus Slaves: Peripherals and memory respond to requests from the master.

7. External Bus Interface (Optional)

  • Allows communication with off-chip memory or external devices.
  • Useful in complex systems needing more memory or advanced peripherals.

Leave a Reply

Your email address will not be published. Required fields are marked *