What is a Low-Power Microcontroller?

Par Steve Leibson

Avec la contribution de Electronic Products


Every microcontroller vendor claims to have low-power devices. Several claim to have the “lowest-power” devices. They can’t all be right, can they? No, they can’t. However, different microcontrollers will exhibit different power consumption characteristics in different applications. That bit of information isn’t too helpful unless you know what to look for and can generalize the operation of your embedded design. So here are some tips on what to look for in a low-power microcontroller.

Cut active-mode power
The first and most obvious thing to do to cut a microcontroller’s energy consumption is to find ways of reducing the amount of power drawn by the microcontroller when it is running in active mode. This is especially important if your application keeps the microcontroller active much of the time. To do this select microcontrollers that have low active-mode power, run them at the lowest possible clock speed, and then run them at he lowest possible core voltage based on the selected clock rate. If the microcontroller can run at various programmable clock rates, write your firmware so that it is aware of the processing load in all operating modes and run the processor at the slowest possible block rate for each mode.

Buy only the memory you need
Contrary to popular belief, a microcontroller’s memory draws power – especially in microcontrollers that run at higher clock rate – and the more memory in your selected microcontroller, the more power it burns. Thus, be sure to select a processor with only as much memory as your application needs if you want to keep power consumption as low as possible. Develop and debug code on a pin-compatible microcontroller with added memory if needed but then switch to the minimum memory needed for production.

Execute code efficiently
Next, use a processor core that executes code efficiently so that the microcontroller spends less time in active mode. Generally speaking, 32-bit processor cores will crunch data more efficiently than 8- or 16-bit processors, because they can operate on large data chunks in one clock cycle. Back when most data types used byte-wide chunks, 8-bit processors made a lot of sense. Image, audio, and video data do not come in 8-bit chunks, so 32-bit processors are likely to be more efficient for applications dealing with such data types. In addition, 32-bit processors will likely be fabricated in more advanced semiconductor process technologies, and these technologies promise lower operating power – if they are properly utilized. If you have an application that resembles one in the EEMBC benchmark suites (http://www.eembc.org), you may be able to use one of the EEMBC benchmark programs to evaluate processor efficiency for your specific application.

Wake up fast
Next, you want to look for a processor that wakes up from sleep mode and starts executing code quickly. The transition time between sleep mode  and active mode is dead time when the processor is not doing anything useful but is still burning power. During this time, the microcontroller draws way more current than it does in sleep mode, and that power is essentially wasted with respect to “getting the work done.” Some processors do not wake up very fast, so they waste a non-negligible amount of power while waking up. This factor is extremely important if your design takes the processor between sleep and wake modes frequently.

Look at all the sleep modes
Many embedded applications that have extremely low power and energy consumption requirements tend to put processors to sleep most of the time to save battery power. However, some microcontrollers have multiple sleep and deep sleep modes. The difference among these modes often involves the number of function units left powered on. For example, a light sleep mode may keep processor peripherals such as a UART and the interrupt controller awake, and the processor goes active when an interrupt occurs. A deep-deep-sleep mode may require a reset to bring the processor out of sleep mode. The microcontroller you choose should have extremely low current consumption for the sleep mode you plan to use for your specific application.

Get smarter peripherals
Some microcontrollers have “smart” autonomous peripherals that allow the processor core to spend more time sleeping while the peripherals are working. Peripheral blocks draw significantly less power than the processor core. Intelligent on-chip peripherals can be time- or data-triggered, waking the processor only when actual processing is required. This mode of operation can save a significant amount of power over weeks and months of system operation.

Based on the above recommendations, you can see that there is no single way to determine the microcontroller with the “lowest” power. The true winner will be the microcontroller that delivers no more features than you need, runs at the lowest possible clock frequency and at the lowest possible core voltage. Do your homework. Research the long list of available parts, and you will find the microcontroller that best fits your needs.

Avertissement : les opinions, convictions et points de vue exprimés par les divers auteurs et/ou participants au forum sur ce site Web ne reflètent pas nécessairement ceux de DigiKey ni les politiques officielles de la société.

À propos de l'auteur

Image of Steve Leibson

Steve Leibson

Steve Leibson a été ingénieur système pour HP et Cadnetix, rédacteur en chef pour EDN et Microprocessor Report, blogger technique pour Xilinx et Cadence (entre autres), et il est intervenu en tant qu'expert technologique dans deux épisodes de "The Next Wave with Leonard Nimoy". Il a aidé les ingénieurs de conception à développer des systèmes améliorés, plus rapides et plus fiables pendant 33 ans.

À propos de l'éditeur

Electronic Products

Le magazine Electronic Products et le site ElectronicProducts.com s'adressent aux ingénieurs et aux directeurs de l'ingénierie responsables de la conception de systèmes et d'équipements électroniques.