A head-to-head comparison of the ARM Cortex-M4 and –M0 processor cores by Jack Ganssle

Jack Ganssle has just published the latest edition of his Embedded Muse newsletter with a very informative, hands-on look at the ARM Cortex-M4 and –M0 processor cores in the NXP LPC4350. In particular, Jack looked at processing speed and power consumption of both processors in the deual-core microcontroller. The results are very interesting.

First, Jack broke needed a way to measure just the microcontroller power consumption on the Hitex eval board he used for tests. He did this by adding a 5-ohm resistor in series with the microcontroller’s ground lead and then measuring the voltage drop across the resistor.

Then he wrote a series of tests to exercise the two processors. The processors take turns running these tests and a couple of GPIO pins go high or low to indicate which processor is operating. This 3-trace scope image shows you what the output of the test setup looks like.

The yellow trace shows the active periods for the ARM Cortex-M4 processor core. The Green trace shows the active periods for the ARM Cortex-M0 core. Note that it takes the ARM Cortex-M0 core a lot longer to run the same code, as you’d expect.

The blue trace shows the voltage across the 5-ohm resistor, which is proportional to the amount of current flowing through the NXP dual-core microcontroller. As you’d expect, the chip draws much less power when the ARM Cortex-M0 core is running and the ARM Cortex-M4 core is sleeping than vice versa.

The ARM Cortex-M4 with its SIMD and floating-point capabilities ran the tests 12 to 174 times faster than the ARM Cortex-M0 core and consumed 2x to 9x more power. Consequently, the ARM Cortex-M4 core proved to be more energy efficient than the ARM Cortex-M0 core.

This series of tests demonstrates that you can often get more energy efficiency from a fast processor core that sleeps a lot instead of a slower processor core that draws less power while running all or most of the time. Yet another example of how system-level considerations come into play when developing a low-power or low-energy design.

(Many thanks to my good friend Jack Ganssle for permission to reprint his results.)

Advertisement

About sleibson2

EDA360 Evangelist and Marketing Director at Cadence Design Systems (blog at https://eda360insider.wordpress.com/)
This entry was posted in ARM, Cortex-M0, Cortex-M4, System Realization and tagged , , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s