ARM Cortex®-M Processors are the most popular processor series in the electronics industry. With over 300 licenses, the Cortex-M processors are available in over 3500 microcontroller parts from most of the microcontroller vendors, and are also used in wide range of embedded applications including sensors, wireless communication ASICs, power management ICs and as companion processors within complex SoCs.
The existing Cortex-M processors are based on two architecture versions:
• Cortex-M3, Cortex-M4 and Cortex-M7 are based on ARMv7-M architecture
• Cortex-M0, Cortex-M0+ and Cortex-M1 are based on ARMv6-M architecture
The architecture specifications define the behavior of the processors from both software and debug points of view. For example, the instruction set, programmers’ model, exception model, and debug registers, which are visible to debug tools, are all defined by the architecture specifications. Each architecture can result in multiple processor implementations, which in turn can be used in multiple SoC products.
Building on the success of the existing ARMv6-M and ARMv7-M architectures, ARM has created the ARMv8-M architecture. The ARMv8-M architecture remains a 32-bit architecture, and is highly compatible with existing ARMv6-M and ARMv7-M architectures to enable easy migration of software within the Cortex-M processor family.