ARM Cortex microcontrollers are a series of low-power and high-performance 32-bit and 64-bit RISC processor cores designed by ARM Holdings for embedded systems and the Internet of Things. The ARM Cortex-M series targets microcontroller applications while the Cortex-R series is for embedded real-time applications and the Cortex-A series aims for higher-performance computing.
Overview of ARM Cortex Microcontrollers
ARM Cortex microcontrollers are based on the RISC architecture which emphasizes simplified instructions and higher clock speeds for improved performance. The key features of ARM Cortex cores include:
- High performance 32-bit and 64-bit processor cores
- Power efficiency with support for multi-core configurations
- Scalable solutions ranging from low-cost microcontrollers to application processors
- Royalty-free licensing model for faster time-to-market
- Supported by extensive software and hardware ecosystems
The ARM Cortex series is divided into three families targeting different applications:
- Cortex-M – For deeply embedded and real-time applications such as IoT devices, wearables, medical devices, industrial control systems etc.
- Cortex-R – For embedded systems requiring real-time mixed criticality such as ADAS, networking, robotics, aerospace etc.
- Cortex-A – High performance computing requirements for applications like machine learning, computer vision, gateways, servers etc.
ARM Cortex-M Series
The ARM Cortex-M series is the most widely used 32-bit ARM processor targeted for microcontroller applications. The key features include:
- High performance 32-bit RISC core up to 1 GHz clock speed
- Memory Protection Unit (MPU) for improved security
- Nested Vectored Interrupt Controller (NVIC)
- Low power consumption down to nanoWatts in sleep mode
- Single cycle digital signal processing instructions
- Thumb-2 instruction set for improved code density
- Debug and trace support for faster system development
The Cortex-M series is divided into various cores optimized for different applications:
- Cortex-M0/M0+ – Ultra low power cores for cost-sensitive and size-constrained applications.
- Cortex-M3 – Entry level core with balance of power and performance.
- Cortex-M4 – Digital signal control with floating point unit and DSP extensions.
- Cortex-M7 – Highest performance core with superscalar architecture.
- Cortex-M23/M33 – Enhancements for machine learning workloads.
Popular microcontrollers based on Cortex-M cores include STM32, NXP Kinetis, Atmel SAM, TI Tiva C Series, Silicon Labs EFM32 etc. They are used in a wide range of embedded systems such as industrial automation, robotics, IoT devices, wearables, medical devices, aerospace systems and consumer electronics.
ARM Cortex-R Series
The ARM Cortex-R series targets real-time safety-critical applications that require reliability and predictability. The key features include:
- Deterministic real-time performance with multicore support
- Reliability features like lock-step cores and ECC protection
- ISO 26262 ASIL D safety certification up to ASIL D
- Virtualization support for consolidated systems
- DSP and SIMD instructions for signal processing
- Memory management unit for OS support
The Cortex-R series includes the following cores:
- Cortex-R5 – Entry-level safety critical applications
- Cortex-R7 – Mid-range real-time performance
- Cortex-R8 – Highest single core real-time performance
- Cortex-R52 – Dual core lock-step for functional safety
Cortex-R based microcontrollers are used in ADAS, industrial control, robotics, aerospace, medical, networking and communication systems. Popular Cortex-R based MCUs include Renesas RH850, TI Hercules TMS570, STMicroelectronics STM32H7.
ARM Cortex-A Series
The ARM Cortex-A series targets high-performance computing requirements for embedded and edge devices. The key features include:
- 32-bit and 64-bit application processor cores
- Speeds up to 4 GHz with multi-core support
- Advanced multi-issue superscalar architecture
- NEON SIMD engine for multimedia and signal processing
- Virtualization for secure partitioning of systems
- Large physical address space up to 48 bits
The Cortex-A series offers a wide range of cores optimized for different performance levels:
- Cortex-A5/A7/A35 – Power-efficient entry level cores
- Cortex-A15/A17 – Mid-range application processor performance
- Cortex-A57/A72 – Higher performance cores supporting 64-bit
- Cortex-A73/A75/A76 – Latest high-end cores for mobile and compute
Cortex-A cores are used in application processors powering smartphones, tablets, embedded devices, wireless modems, gaming consoles, servers and supercomputers. Popular Cortex-A based processors are Samsung Exynos, Apple A-series, Qualcomm Snapdragon, MediaTek Helio P.
Designing with ARM Cortex Microcontrollers
Engineers have several options when designing embedded systems using ARM Cortex cores and microcontrollers:
- Use reference design platforms from ARM and partners as starting point
- License IP cores from ARM and integrate with custom logic
- Purchase off-the-shelf microcontrollers from vendors
- Use development kits and evaluation boards for rapid prototyping
- Leverage extensive software ecosystems such as mbed, CMSIS packs
- Choose hardware ecosystem for peripherals, tools and accessories
The comprehensive software support for ARM Cortex enables rapid development using industry standard tools and RTOSes. Debugging is assisted by CoreSight debug and trace architecture. Vast developer resources, training materials, and community support further simplify designing with the ARM Cortex series.
Conclusion
ARM Cortex microcontrollers offer high-performance and energy-efficient 32-bit and 64-bit processor cores scalable for a wide range of embedded and IoT applications. The Cortex-M, Cortex-R and Cortex-A series target different performance points optimized for microcontrollers, real-time systems and application processors respectively. With their advantages of power efficiency, customizability and software ecosystem support, ARM Cortex cores will continue to power the next generation of smart connected devices.