Power Management APIs for Low Power Design
Software driven power management is crucial for battery operated or low power budget embedded systems. Embedded developers can now take advantage of the latest power saving features in today’s processors with the built-in Power Management Framework in the Nucleus RTOS. Developers specify application requirements with high-level hardware agnostic APIs, and Nucleus automatically discovers power-aware components to help simplify the design process, increase code reuse, and speed time to market.
With Nucleus RTOS developers can access:
- Power management services: Power-aware kernel and drivers
- Standard hardware agnostic APIs
- Automatic discovery of power-aware components
- Idle power management and tick suppression
Nucleus RTOS Power Management Services
The figure below illustrates the various Nucleus power management services available to the application and how these services map to hardware power management facilities.
Idle CPU Power Management
An application’s power consumption is directly attributed to system activity. During periods of low or no system activity, the low-power modes provided by the CPU are effectively utilized by the Nucleus kernel scheduler to achieve maximum run-time power savings.
The Nucleus power management kernel scheduler has built-in support for tick suppression, which augments the power savings achieved using idle CPU power management. Tick suppression can be used to prolong the duration of CPU idle time by “suppressing” OS timer ticks thereby multiplying the idle-time power savings that can be achieved.
Dynamic Frequency and Voltage Scaling (DVFS)
Many applications only require the peak processing capability of the underlying CPU for a small percentage of operational time. Considerable power savings can be obtained by switching the processor to a lower operating frequency and/or voltage setting when less processing power is required; this is DVFS support.
Nucleus power management DVFS abstracts the complexities of the switching frequencies in a running system and enables the developer to make application level DVFS decisions with simple API calls.
Hibernate and Stand-by Support
For embedded devices with restricted power budgets, shutting down the CPU for long periods of time is often the only option. Today’s embedded processors feature multiple deep sleep modes to facilitate various levels of hibernate and stand-by use-cases.
Nucleus power management supports these modes of operation as well. Using the same simple API calls implemented to switch frequencies and voltages, devices can placed into a suitable hibernate or stand-by mode supported by the hardware meeting the re-boot timing requirements.
Peripheral and System State Control
Power consumption can be directly attributed to the number of peripheral blocks that are active at a given point in time. Substantial power savings can be achieved by powering OFF peripherals that are not in use.
Nucleus power management peripheral and system state services eliminate the numerous complexities to enable software developers to design applications that make high-level decisions on peripheral power states without having to worry about the details.
Implementing Power Management Features on the Nucleus RTOS
White Paper: An in-depth explanation of the power management techniques that define device static power consumption, and how Nucleus RTOS reduces complexity for developers.
Nucleus RTOS user forums — discussions, design tips, sample designs and more. Visit