Talking about power consumption can be like running into a minefield of misconception, prejudice and marketing buzzwords. Determining what all the statements mean in reality is not always an easy task.
Power consumption measured in watt (usually in milliwatt, mW) is the correct term for low power applications but all too often the current consumption measured in ampere (usually milliamperes, mA) is used instead. As the power is just the operating voltage multiplied by the current, this is trivial for fixed voltage operations but becomes more tricky to estimate when using batteries that discharge and the voltage changes over time and loading conditions.
Power consumption is often not what matters
It is usually the energy consumption measured in Joules (usually in micro joules, µJ) that determines how much energy is actually drained from the battery to complete a specific task. The energy consumption will be the integral of the power consumption over the time needed to perform the operation. Again, with static signals this would be a simple multiplication of power consumption and the time but with varying signals this will demand more complex analysis.
Where power consumption is most relevant is when using a current-constrained power source, such as a Lithium-ion coin cell battery. Popular in small sensor gadgets and smart devices, these batteries can only source about a few mA current peaks without getting damaged. By attempting to draw a higher peak, you risk reducing the capacity of the battery permanently, potentially impacting the output voltage too. Peak power consumption will not be an issue for applications where there is enough current to support the peak.
The devil is in the detail
Product datasheets typically give the power consumption for different modules and operating conditions for the MCU (Microcontroller Unit). The numbers are easy to measure and have been documented this way for decades. But only recently are we starting to see energy consumption figures for devices.
Part of the problem is that measuring static current levels or peak current levels is easy to do. All standard qualification hardware supports this, and it provided more value in earlier days. It's also easy to understand that for running the CPU, serial bus, or another hardware module like a radio, you need to add a certain amount of mA’s to your total.
You don't have to travel far back in time to find devices designed in a way where this kind of information made it possible to get a reasonable estimation of energy consumption for a given scenario. You could estimate energy consumption for keeping the CPU awake for a given time, or energy consumption for sending or receiving data over UART or using the radio.
With a modern MCU, the combination of functions that can be enabled at the same time grows to a staggering amount very quickly so it will be impossible to cover all these combinations in a datasheet. This makes it more and more important to be able to measure these scenarios easily.
Lower power consumption with digital gates
Digital gates have become cheaper with the shrinking process geometries being introduced every year, driving more sophisticated power-saving designs. As an example, the way that most MCUs were designed in the past with the clock distributed to the entire device has now been replaced by solutions with finer clock gating.
This helps immensely with lowering the power consumption but makes it increasingly difficult to document power consumption in a way that makes it possible to estimate energy consumption. As the power consumption of a device becomes increasingly dynamic, it will change depending on what is active at any one time. Devices with a more aggressive design for energy efficiency will see a more dynamic power consumption.
A real-world example
Inside the Nordic Semiconductor nRF52 family of chips, functional blocks like regulators, oscillators and digital logic are started and stopped in the background as needed. Power consumption changes constantly so there is no ‘static’ figure to measure.
When using the TWI master, the power consumption may go from single digit µA’s in between data transmission to a few hundred µA’s when data is transmitted. If the master must wait for data to be ready from the external unit, power consumption will go to a different level, and parts of the TWI will shut down while it's idle.
The complexity in predicting the energy consumption increases, but at the same time the energy efficiency has received a big boost.
One way to estimate power consumption with these systems is to make smaller test software pieces and then power profile these with suitable tools to make a model relevant to your requirements. The Nordic Semiconductor Online Power Profiler uses data gathered from real measurements for running the radio and then extracts data from it to make the estimation on energy consumption.
Here is an example of a reading from such a measurement (click for larger version)
In a future post, I’ll look in more detail at how to optimize energy efficiency in smart devices.