Choosing the Right ARM Microcontroller
Have you ever wondered what powers your smart watch, game controller, or dash cam? Inside each of these Internet of Things (IoT) devices, there is a small computer chip embedded called a microcontroller. Microcontrollers are different from PC CPUs in several key ways: they are lower cost, lower speed, lower power consumption, and most importantly, they can provide real-time processing, which is essential for time-critical applications. For example, you wouldn't want your game controller to have high latency when playing a first-person shooter game.
The goal of a microcontroller is to provide specific functionality at low cost, low area, ultra-low power consumption, and deterministic output with low latency.
MicroController System Overview
Clock generator: it provides all the clocks with various speed needed for the internal system such as processor, memory, and I/O interfaces.
Source can be from an external crystal clock or internal RC resonator clock
Note: external clock is generally used when accurate timing such as timestamp is needed.
Popular ARM architectures.
Twp popular types: R class ARM Archiecture and M Class ARM Archiecture
M Class ARM Archiecture: There are generally 3 M class micro-architectures that iare used namely:
M0 (ARMv6-M Archtecture)
This contains the most basic ARM instruction sets that is generally powerful enough to run very specific functions such used for network processor for Bluetooth stack.
16 bits instructions
General I/O controls and data processing
More richer ARM instruction sets
32 bits instruction
Contains more advance arithmetic logic such as divider, multiply and accumulate (MAC) dedicated hardware blocks (used for signal processing).
Limited DSP instructions
Contains debug interface
It has the same feature as that of M3 but with additional richer digital signal processing instructions set
For example sensor fusion algorithm such as objection orientation detection can used the DSP instructions.
It has the same feature as that of M4 but with additional float point unit that can be used to process float instead of integers.
floating point allows higher dynamic range that is needed to represent data such as signal from GPS which can be very weak and need higherinput dynamic data format to capture.
Benefits of M Class ARM Microcontrollers:
R class ARM Archiecture: R class ARM microcontrollers are a family of microcontrollers based on the ARMv7-M architecture. They are designed for embedded applications that require low power consumption and real-time performance.
Benefits of R Class ARM Microcontrollers:
Comparision between R and M class ARM MCU
MCU Selection Consieration
Top criteria when selecting a MCU
required peripherals: The required peripherals are the peripherals that the microcontroller needs to connect to.
internal memory (SRAM)
Internal storage (Flash)
DSP and Floating point Unit
Processor clock speed.
I.e if trustzone is needed for secure data storage then memory protection units (MPU) is needed.
Popular Vendors and low power series.
NXP LPC series
STM32 L series
TI MSP430 series
Summary and Conclusion
Microcontrollers are small, low-cost, and low-power computers that are used in a wide variety of applications. They have a number of benefits, including real-time data processing, low interrupt latency, onboard memory and storage, and comprehensive system interfaces.