Page 42 - ARM Based Microcontroller Projects Using MBED
P. 42
28 3. THE ARM MICROCONTROLLERS
Classic Embedded Application
ARM processors cortex processors cortex processors
Cortex-A15
Cortex-A9
Performance, functionality ARM11 Cortex-A5 Cortex-A8
Cortex-A7
Cortex-R4
Cortex-M4
ARM9
Cortex-M3
Cortex-M1
ARM7 Cortex-M0
Capability
FIG. 3.1 Overview of the ARM processor family.
Over the last 20 years or so ARM had developed many 32-bit processors. Fig. 3.1 shows
some of the popular members of the ARM processor family. Around 2003 ARM decided
to improve their market share by developing new series of high-performance processors
mainly for microcontroller-based applications, such as in embedded control and monitoring
applications. As a result, the Cortex family or processors were created. The Cortex family con-
sists of three processor families: Cortex-M, Cortex-R, and Cortex-A. We shall now briefly look
at these families.
Cortex-M
Cortex-M series are built around the ARMv6-M architecture (Cortex-M0 and Cortex-M0+)
and the ARMv7-M architecture (Cortex-M3 and Cortex-M4). These processors are specifically
designed for the microcontroller market, offering quick and deterministic interrupt re-
sponses, low power consumption, low cost, fairly high performance, and ease of use. The
Cortex-M3 and Cortex-M4 are very similar in architecture and have the same instruction sets
(Thumb 2) with the difference that the Cortex-M4 offers digital signal processing (DSP) ca-
pabilities and has optional floating point unit (FPU). Cortex-M4 with its DSP and floating
point capability is an ideal processor for the IoT and wearable applications. For cost sensitive
and lower performance applications the Cortex-M0 or the Cortex-M0+ can be used. The
Cortex-M0 processor has small gate count (12K gates) and consumes only 12.5μW/MHz.
The Cortex-M0+ consumes only 9.85μW/MHz and is based on a subset of the Thumb 2
instruction set and its performance is slightly above that of Cortex-M0 and below that of
the Cortex-M3 and Cortex-M4. Cortex-M7 is a high-performance processor that can handle
fast DSP and single or double precision floating point operations and is mainly used in
applications where higher performance than the Cortex-M4 is required. In this book we will
be using a microcontroller development board based on the Cortex-M4 architecture.