随着对移动和有线设备的能源效率需求的增长,系统开发人员会越来越多地使用功率智能型硬件解决方案,而更加节能的代码能使之如虎添翼。
最前沿的功率智能型硬件技术就是多核SoC,它能够工作在各种各样的频率及电压下。还有一些CPU和外设也支持多种功耗模式。我们已经看到硬件方面的进展,但是要真正地从这些进展中得到好处,还需要一种新型的操作系统。
在功率高效型嵌入式设计迎来曙光的今天,前辈们所使用的实时操作系统(RTOS)已经不再满足需要。这时所需要的是节能型RTOS,它更加注重处理CPU的各种模式,同时均衡系统总响应度及功耗。
硬件技术趋势
现在,电池的体积越来越小,但提供的容量却越来越大。而大量的电子设备开始采用比以往更大的、由触摸屏控制的、具备高级特性的背光LCD显示器,这样提高了产品的易用性,其代价是功耗更大,并且当LCD技术获得重大进展时,就会推动背光需求,这就需要更多的功率。
图1 任务的调度:未经优化的系统相对经过优化的系统
现代SoC设计采用了动态的电压和频率调节(DVFS)。在最简单的情况下,降低频率就能够降低功耗,并且系统也能够降低供给CPU的电压,给节能带来倍增的效果。CPU内核提供了各式各样的功耗状态:运行(run)、睡眠(sleep)、打盹(doze)和小睡(snooze)。
CPU功耗状态的功耗越小,唤醒CPU所需要的时间就越长。最深的节能等级会保存硬件的寄存器状态,并使DRAM进入自保持模式,但较深的节能等级也会表现为在系统刚被唤醒时反应缓慢。
今天的设计通常会加入支持DVFS中动态电压部分的电源管理IC(PMIC)。当SoC的频率达到最大时,电压也必须达到最大,以维持转换时间,并且在较低频率时,电压可以降低。
图1是经过优化和未经优化的系统示例。如果系统没有针对功耗进行调整,处理器将快速完成作业,比实际需要更快。频率的降低使得降低所需电压成为可能,这意味着能够在满足时间限制的同时节省功耗。
有了上述硬件技术的进步,软件就当仁不让地占据了控制系统总体功耗的位置。要想尽可能地节省所有嵌入式设备的功耗,就需要一套相当复杂的电源管理系统。用于电源管理的软件可以分为被动电源管理和主动电源管理。