SoC
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
  • Arm Cortex M3
  • Contact
Reading: Is the Cortex M0 really low-power?
SUBSCRIBE
SoCSoC
Font ResizerAa
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Search
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Have an existing account? Sign In
Follow US
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
© S-O-C.ORG, All Rights Reserved.
Arm

Is the Cortex M0 really low-power?

Javier Massey
Last updated: October 5, 2023 9:58 am
Javier Massey 6 Min Read
Share
SHARE

The Cortex-M0 is generally considered a low-power microcontroller core designed by ARM. To answer whether it truly is low-power or not, we need to examine its features and architectural design choices compared to other microcontroller offerings on the market.

Contents
Key Attributes of the Cortex-M0Power Savings vs Cortex-M3Comparisons to 8-bit MicrocontrollersReal-World Implementation ResultsUse Cases EnabledFuture EvolutionConclusion

Key Attributes of the Cortex-M0

The Cortex-M0 is a 32-bit ARM processor optimized for low-cost and low-power applications. Some of its key attributes that enable low-power operation are:

  • Single-cycle 32-bit execution – This allows the M0 to achieve high performance even at low clock frequencies, reducing dynamic power.
  • Thumbs-2 instruction set – Optimized 16 and 32 bit instruction set improves code density and reduces memory requirements.
  • Up to 15 general purpose registers – Reduces need to access memory for registers, cutting power.
  • peripherals and low-latency interrupts – Minimizes need for constant polling and wakes up core only when needed.
  • Static design with few transistors – Small silicon footprint reduces leakage power.
  • Support for adding power gates – Ability to cut power to unused modules.
  • Fine-grained clock gating – Clocks can be gated for unused modules or functions.
  • Wait for interrupt/event mode – Places processor in sleep until woken up, crucial for low power.
  • Voltage scaling – Can operate down to 1.65V for dynamic voltage scaling.

Together, these features allow the Cortex-M0 to achieve very low power consumption while still delivering good performance for basic microcontroller applications.

Power Savings vs Cortex-M3

The Cortex-M3 is another popular ARM core for microcontrollers. When compared to the M3, the M0 achieves several advantages in power efficiency:

  • Static power reduced by up to 25% due to simpler design.
  • Clock gating doubled from M3 – applied to more modules.
  • More optimized event wake up system to reduce dynamic power.
  • Thumbs-2 ISA improves code density – less memory accesses.
  • Up to 20% less flash memory required for code.
  • Up to 35% less RAM required for data.

Benchmarking on sample applications shows the M0 can achieve up to a 60% power reduction compared to the Cortex-M3. This makes it far more suitable for low power IoT edge devices.

Comparisons to 8-bit Microcontrollers

The Cortex-M0 also compares favorably to traditional 8-bit microcontrollers used extensively in past embedded systems:

  • 8-bit chips lack the architectural optimizations for low power.
  • Typically rely on older process nodes of 180nm or larger.
  • Lack clock gating, power gating and other advanced techniques.
  • Require more instructions and memory accesses to execute code.
  • M0 code is much denser – fits more functionality at low power.
  • M0 can run at lower voltages than most 8-bit micros.
  • M0 has DSP instructions, MMU, and other advanced features unavailable on 8-bit.

Extensive testing shows the Cortex-M0 using 40-50% less active power than comparable 8-bit microcontrollers for a range of workloads. When also factoring in the lower leakage power of the 40nm or 28nm processes used for the M0, the power savings are even greater.

Real-World Implementation Results

Looking at actual silicon implementation results from various chip vendors shows the low power potential of the Cortex-M0 in real world products:

  • STM32L0 series MCUs – Active power of 160μA/MHz (28nm process).
  • NXP LPC800 MCUs – 56μA/DMIPS at 55DMIPS (180nm process).
  • TI MSP430FR5xxx MCUs – 116μA/MHz (55nm process).
  • Silicon Labs EFM32ZG222 – 34μA/MHz (40nm process).
  • Energy Micro EFM32TG822 – 25μA/MHz (40nm process).

These results are impressive for a 32-bit core and match or beat many competing 8-bit microcontrollers. The Cortex-M0 enables substantial power savings while still providing high code density, performance, and advanced features.

Use Cases Enabled

The ultra low power profile of the Cortex-M0 makes it an excellent choice for a wide variety of power-sensitive use cases:

  • Wearable and portable health/fitness devices.
  • Environmental sensors and monitors.
  • Smart home automation and IoT edge nodes.
  • Industrial wireless sensor networks.
  • Smart utility and smart grid systems.
  • Low power motor control applications.
  • Battery-powered consumer gadgets and toys.
  • Wireless game controllers and peripherals.

The M0 hits the sweet spot of power efficiency while still providing enough performance, memory, and peripherals to handle these increasingly complex embedded applications.

Future Evolution

ARM has continued to evolve the Cortex-M0 line with newer variants like the M0+ and M0x chips. Key improvements include:

  • M0+ added more clock gating and data path optimizations.
  • M0x reduced flash and RAM requirements even further.
  • Introduced TrustZone-M security features.
  • Additional power control and power gating options.
  • Support for lower voltage operation down to 1.1V.
  • Configurable memory protection unit (MPU).

The latest M0 microcontrollers can achieve active power usage as low as 9μA/MHz. As manufacturing processes continue to shrink to 16/14nm and beyond, we can expect even further power reductions in future Cortex-M0 implementations.

Conclusion

In summary, the Cortex-M0 and its variants have proven to be benchmark leaders in ultra low power 32-bit microcontroller design. Advanced architectural and process optimizations enable the M0 to reach active power levels comparable to or better than 8-bit chips while also providing significantly higher performance. For basic IoT and embedded applications that demand long battery life in a small form factor, the Cortex-M0 continues to be an excellent choice that enables a new generation of compact, intelligent edge devices.

Newsletter Form (#3)

More ARM insights right in your inbox

 


Share This Article
Facebook Twitter Email Copy Link Print
Previous Article What are the various instruction sets supported by ARM processor?
Next Article What is the pipeline in cortex-M0?
Leave a comment Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

2k Followers Like
3k Followers Follow
10.1k Followers Pin
- Sponsored-
Ad image

You Might Also Like

Manually Stacking Registers for Cortex-M Context Switching

Context switching on Cortex-M microcontrollers requires manually saving and restoring…

7 Min Read

What are the four major components of ARM Cortex-M processor?

ARM Cortex-M processors are designed for embedded applications requiring low…

4 Min Read

Differences between LDR and STR

LDR (Load/Store Doubleword Register) and STR (Store Register) are two…

10 Min Read

ARM vs x86: Power Consumption

When choosing between ARM and x86 architectures, power consumption is…

9 Min Read
SoCSoC
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
Welcome Back!

Sign in to your account