嵌入式系统电源管理软件比较
引言
普适计算、智能空间等概念前所未有地扩展了嵌入式系统的应用范围。同时也对嵌入式系统的功能、可靠性、成本、体积、功耗提出了更严格的要求。各种移动终端、可穿戴设备、消费类电子产品、传感器网络节点等典型嵌入式设备对能耗越来越敏感,电源管理技术正成为这些产品设计的关键所在。电源管理技术正由传统的基于电源管理器件和外设控制为主的静态控制方式,转到以具备智能电源管理功能的嵌入式微处理器结合操作系统为核心的智能管理软件的动静态结合的综合控制模式。
为了应对电源管理技术面临的挑战,芯片厂商推出了效率越来越高的电源管理芯片以及对能耗管理功能更加强大、精细的微处理器。以此为基础,如何设计高效、智能的系统软件对嵌入式设备进行能源管理,已成为研究热点。本文将以典型硬件的电源管理功能为基础,分析几种代表性嵌入式操作系统的电源管理实现,探讨电源管理系统软件现状及研究应用前景。
电源管理基本概念与方法
在电池供电的嵌入式系统中,一般采用高效率的电源管理芯片用于供电管理,或采用大容量的电池以解决能耗需求。但这两种技术的发展还无法满足快速增加的芯片动态功耗和静态功耗。当电路工作或逻辑状态翻转时会产生动态功耗,未发生翻转时漏电流会造成静态功耗。在供电电压Vdd下消耗的功率P如公式(1)所示:
P=C*V2dd*fC+VddIQ (1)
这里C为电容,fC为开关频率,Vdd为电源电压,IQ为漏电流。C*V2dd*fC为动态功耗;VddIQ为静态功耗。随着芯片运行速度的提高和工艺尺寸的不断缩小、密度增加,其动态功耗和静态功耗也在不断增长,加剧了电源管理的复杂性。
有一种方法可以协调高性能与低功耗之间的矛盾,就是根据系统负载进行性能调节。从公式(1)中我们可以得知,对一个给定负载,动态功耗的量值与供电电压的平方成正比,与运行频率成正比。减少供电电压并同时降低处理器的时钟速度,功耗将会呈平方速度下降,代价是增加了运行时间。此外,还可以通过停止芯片模块的时钟和电源供应的办法,将能耗降至最低,代价是重新启动该模块时需要额外能耗。因此,通过有效地利用上述能耗管理方法,得到性能和功耗间的最佳平衡,达到节能最大化。
嵌入式微处理器对电源管理的支持
从8位单片机到32位高性能处理器,都在一定程度上支持电源管理功能。例如处理器支持多种电源状态,如图1所示。系统电源状态转化
系统在运行态(Run)时,设备全部正常工作。在空闲态时,处理器按照特定的模式,进行相应的节能。在挂起状态下,处理器挂起,主存储器运行在节能的自刷新模式,只有功耗管理电路、唤醒电路继续工作。现有的单片机、ARM等32位RISC处理器一般都支持以上模式,下面分别加以介绍。
单片机的电源管理支持
在传感器网络应用中,传感器节点一般采用低廉的8/16位单片机,其电池寿命至关重要。节点工作时按功率消耗由小到大有睡眠(sleep)、空闲(idle)、接收(receive)及发送(transmit)等四种模式。大多时间内,节点都处于睡眠与空闲模式,只有少量能耗。
ATMEL采用picoPower技术的AVR微控制器显著降低了功耗。这些技术包括一个超低功耗晶振、睡眠模式下自动终止和重激活欠压检测器、能完全停止对外围设备电力供应的省电寄存器以及能够关闭特定管脚输入的数字输入中断寄存器。picoPower技术使工作电流大幅度降低,减少了断电状态下不必要的功耗,使电池使用寿命得到了延长。
ARM的电源管理技术
ARM以其优秀的低功耗技术在消费类电子等领域得到广泛应用。ARM实现了不同级别的低功耗管理技术,如表1所示。表1 ARM不同级别的低功耗管理技术
电源功耗管理级别 | Architecture Level | System Level | Block Level | Logic Level | Process Level |
实现动态低功耗技术 | Clock Gating | Clocking Domains | voltage Domains | Low Voltage Cells | Low Power Library |
实现静态低功耗技术 | Sleep Mode | Power Gating | State Store/Restore | High Voltage Cells | Artisan PMK |