The Cortex-M microprocessor

The main characteristic of the 32-bit cores in the Cortex-M family are:

  • 16 generic-purpose CPU registers
  • Thumb 16-bit only instructions for code density optimizations
  • Built-in Nested Vector Interrupt Controller (NVIC) with 8 to 16 priority levels
  • ARMv6 (M0, M0+) or ARMv7 (M3, M4, M7) architecture
  • Optional 8-region memory protection unit (MPU)

The total memory address space is 4 GB. The beginning of the internal RAM is typically mapped at the fixed address of 0x20000000. The mapping of the internal flash, as well as the other peripherals, depends on the silicon manufacturer. However, the highest 512 MB (0xE0000000 to 0xFFFFFFFF) addresses are reserved for the System Control Block (SCB), which groups together ...

Get Embedded Systems Architecture now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.