Taking advantage of new low-power modes on advanced microcontrollers
In general, describing a product as "green" means it has minimal or no harmful effect on the environment. In the case of a product that uses power, green means power use is minimal. But what is meant by "minimal" or "low power" often isn't clearly defined, partly because the requirements for a low-power microcontroller (MCU) vary, depending upon how the MCU will be used.
For example, in a battery-operated thermostat low power is primarily defined by the minimum power mode that allows the device to drive the LCD display; a reduction in power leads to extended battery life. In an electricity meter, low power refers to the active current consumed by the system during operation. An electricity meter also requires the time of day to be maintained regardless of the presence of the system’s primary power supply, for example during a power failure. Thus, MCUs with flexible power modes allow a designer to tailor system operation depending on the application.
In the past, MCUs had an active mode to allow for device operation; idle and doze modes to reduce or eliminate the CPU switching power while allowing the peripherals to operate; and sleep modes that allowed limited peripheral operation with minimal power consumption.
As today’s MCUs move to more advanced silicon processes that minimize cost and reduce active current, a number of new low-power modes are being added to increase flexibility. To explore some of the operating modes available on today’s advanced MCUs, we will examine how these new low-power operating modes are used in a variety of applications.
A software Battery Life Estimator (BLE) tool and 16-bit MCU will be used to provide a comparison of the various power modes when implemented in different applications. The BLE from Microchip is a free software tool that allows a designer to estimate the battery life of their system and to determine which of the available operating modes is best suited to their application.
Applications requiring low power MCUs
Thermostats have become more complex, needing to display more information and cover multiple regions. As a result, significant amounts of on-chip Flash program memory are often required to store their complex menus in multiple languages. In general, advanced processes are required to produce MCUs with large memories at competitive prices. As semiconductor processes advance, there tends to be a reduction in operating, or active, current with an increase in the leakage current of the transistor.
The increase in leakage current is most visible in the current specifications for low-power modes, such as sleep mode. The sleep currents on advanced MCUs are typically in the 3 to 5 µA range. The typical thermostat application spends the majority of its time doing little more than driving a segmented LCD display. The segmented LCD display is typically driven in a sleep mode that allows the driver to operate while the CPU and most peripherals are powered down. On a periodic basis, the thermostat must wake and enter an active mode, read the temperature, update the display, and perhaps signal the furnace, fan, or AC units to turn on. However, over 99% of the time only the sleep mode is required. This large amount of time in the sleep mode makes the sleep current an area where improvement can greatly benefit the battery life of the system.
New lower power modes
To provide MCUs with a sub µA power mode, suppliers have introduced new low-power "deep sleep" modes that consume 10 to 50 µA and can add a clock calendar (RTCC) with an additional 400 nA of current. Extremely low currents are achieved by shutting down the entire device with the exception of a small amount of memory, a real-time clock and perhaps a watch dog timer. However, these deep sleep modes do not allow peripheral operation or maintain the data RAM on the device. The loss of the RAM contents requires the device to execute a restart routine prior to resuming program execution when waking from deep sleep.
Other new low-power modes, such as the low-voltage sleep mode, maintain the device’s data RAM at a typical base current of 330 nA and allow the operation of additional low-power peripherals. This low-voltage sleep mode maintains the device’s RAM and lowers sleep current by reducing the output of the device’s on-chip regulator. By reducing the supply voltage to the device logic and limiting the active peripherals, the MCU’s sleep current can be reduced from 3.7 µA to 330 nA. As a subset of the MCU’s sleep mode, peripherals such as LCD drivers, timers, and the RTCC can operate with minimal additional current. The low-voltage sleep mode allows the device to return to an active state in less than half the time of a wake from deep sleep. The device then begins execution at the next instruction, rather than beginning with the restart sequence typically required by a wake from deep sleep.
Click on image to enlarge.
As shown in Figure 1, the main screen of the Battery Life Estimator tool shows the MCU and its operating voltage, battery, and operating modes. The result of the Thermostat model is an 11-year, 88-day estimated life.
Additionally, the BLE tool models the time a microcontroller will spend in each operating mode and how much power the device will consume in each mode. Figure 1 shows the output display of the BLE, which is used to set several key parameters of the system and to provide the resulting life estimate and average system current. First, the MCU and operating voltage of the system are selected. This allows the Battery Life Estimator to pull the appropriate specification parameters. A battery or battery pair is then selected - in this case, 2 AAA Alkaline batteries. The expected operating voltage of the system and the operating temperature can also be selected to pull the most appropriate specification for use in the battery-life-estimate model. Finally, the operating modes that will be used in the system are defined. In the case of our thermostat, two modes will be used.
To model the time when the thermostat is displaying only the LCD screen, an operational mode called “Display LCD” is created. The Display LCD operational mode uses the low-voltage sleep mode to provide the lowest power mode from which the LCD can be driven. The Battery Life Estimator tool is set to model the low-voltage sleep mode for 29.5 seconds out of the 30-second loop that is being used to model the operational life of the device. A second Update Temp and LCD operational mode is used to model the time the MCU will take to monitor the temperature, update the LCD screen, and communicate with the HVAC units.