前 言
嵌入式应用系统中,普遍存在功耗浪费现象。如果将人比作一个嵌入式应用系统,人在行走时,系统处于连续运行状态,眼睛负责观察前方路况。通常在人行走的全过程中,眼睛都处于连续工作状态,然而,在实际行走中,并不要求对前方路况信息连续捕捉。假如眼睛对前方路况捕捉时间小于 0.5 s,人体盲目行走每米的横向偏差为0.05 m,当路面允许最大横向偏差不大于1 m时,人行走在 20 m范围内可不需要眼睛捕捉新的路况信息。这样,人便可以闭上眼睛走路,只在每行走20 m的周期中,将眼睁开0.5 s即可。当行走速度为1 m/s时,行走过程中眼睛的有效工作时间仅为0.5 s/20 s = 2.5 %。由此看来,通常行走时,眼睛的"功耗"有97.5 %都浪费了。
1 零功耗系统设计的基本概念
1.1 系统中的理想功耗
一个电子系统要运行就会有功耗。如果系统运行时没有任何功耗浪费,那么它的功耗就是系统的理想功耗。
在一个嵌入式应用系统中,由于普遍存在CPU高速运行功能和有限任务处理要求的巨大差异,会形成系统在时间与空间上巨大的无效操作。如果在系统运行中,所有时间、空间上的无效操作都没有功耗,那么系统便处于理想功耗运行之下。
1.2 应用系统中的有效操作时空占空比
如果将系统运行中,所有时间、空间上的有效操作和无效操作采用时空占空比来量化描述,那么,有效操作占空比定义为:有效操作与系统全部运行操作之比。在一个具体应用系统中,有效操作的时空占空比有:宏观时域占空比、宏观区域占空比、微观时域占空比和微观区域占空比。以下以一个嵌入式应用系统--热流量计为例来描述这4个占空比的概念。
1.2.1 有效操作的宏观时域占空比Tdc
Tdc定义为系统运行时域上有效操作时间OPact与全部运行时间OPtot之比。由于嵌入式应用中CPU的高速运行与有限任务操作的差异,常常会形成有效操作高谐小量的时域占空比现象。例如,在热流量计中,要采集、处理的物理参数有热水的入口温度、出口温度和流量计数值。由于这些参数的大惯量特征,在满足采集精度要求下,一次采集循环周期为10 min,然而系统完成一次采集、处理、存储、送显示的时间只需2 s,如图1所示。那么,该系统的有效操作时间OPact为 2 s,全部操作循环时间OPtot为600 s,系统宏观有效操作时域占空比为 

1.2.2 有效操作的宏观区域占空比Sdc


1.2.3 有效操作的微观时空占空比
在数字系统中,进入有效操作状态的一个完整电路中,也不是每一时刻、每一电路单元都处于有效操作状态,同样可以估算出微观有效操作的时域占空比和区域占空比。
(1)有效操作的微观区域占空比μSdc μSdc定义为:有效操作电路单元中,平均有效操作区域Aact与全部电路单元区域A
。
1.3 高谐小量时空占空比与零功耗设计
1.3.1 实际系统中高谐小量的时空占空比
在嵌入式应用系统中,CPU高速处理能力与实际任务操作状态以及系统中的微观静、动态的巨大差异,导致大量无谓等待状态,形成有效操作的时、空占空比现象。上述4类占空比现象,在许多嵌入式应用系统中都会存在,而且这4类占空比形成乘积效应。按照上述估算,热流量计总体有效操作的时空占空比OPdc为:

从这里揭示了一个惊人的现状,即在一个嵌入式应用系统中,有效操作只是全部运行操作的高谐小量。这一特点是嵌入式系统零功耗设计的基础。零功耗系统按照有效操作时空占空比实行精细的功耗管理,非有效操作期间没有功耗,从而使系统功耗与原来相比达到趋于零的效果。早期提出零功耗概念,并实现零功耗设计的器件有AMD公司的Flash存储器Am29SL800B。早先Am28F800B的功耗量级为100时,改进工艺并降低电压后的Am29SL800B为20,而实现零功耗管理的Am29SL800B的功耗则小于0.1。可见零功耗系统设计在降低系统功耗中的潜力。
1.3.2 零功耗系统设计基本要求
在不少实际的嵌入式应用系统中,虽然有效操作时空占空比不会是热流量计那样显著的高谐小量,但一般都会有0.1 %的量级。如果能按照系统有效操作时空占空比实施精细的功耗管理,使无效操作期间没有功耗,就可实现系统的零功耗。
零功耗是一个工程概念。零功耗系统是指该系统中没有任何功耗浪费。因此,零功耗系统设计的基本要求如下:
(1)系统中所有的电路单元都具有功耗管理功能,即该电路单元在非有效操作期间都能被关断(没有功耗)。
(2)系统具有按有效操作时空占空比实施精细功耗管理的能力,能做到"多干多吃、少干少吃、不干不吃、谁干谁吃"的系统功耗分配。
(3)对于系统无法企及的微观有效操作时空占空比的功耗管理,要求由电路静、动特性来满足功耗分配,即电路动态过程有功耗,电路静态时没有功耗。
2 零功耗系统设计的技术基础
零功耗系统设计的核心技术,是按系统中有效操作时空占空比来实现按需分配的功耗管理。不仅实现宏观有效操作时空占空比的功耗管理,还要实现微观有效操作时空占空比的功耗管理。因此,实现零功耗管理必须有相应的技术基础,这就是CMOS工艺的电路基础、嵌入式系统实时的智能化控制以及具有功耗管理功能的外围器件。这些技术基础可以满足零功耗系统设计的三个基本要求。
2.1 CMOS工艺的电路基础
数字电路从TTL工艺转向CMOS工艺,对电路功耗特性产生最大影响的是静动态(静态是"0"、"1"的恒定状态,动


图3(a)

图3(b)
2.2 嵌入式系统的实时功耗管理能力
嵌入式系统实时功耗管理能力,表现在能保证按照系统有效操作时空占空比来实现系统时空的最大静态化运行。其中核心的技术是系统中时钟与信号流的控制与调度。在系统无效操作的时间和区域上,终止时钟运行或进入,禁止开关、脉冲信号进入。
2.3 外围器件功耗管理功能的保证
零功耗系统中所有的器件,包括处理器及外围器件,都必须具备功耗管理功能。目前,CMOS的各类微处理器都具备有十分完善的低功耗模式。CMOS外围器件中,有一部分具有自动的零功耗管理,不必微处理器的介入;许多CMOS外围器件都具有外部引脚控制或编程控制的功耗管理功能。
2.4 电源管理的辅助技术
由于CMOS电路的静动态功耗特性,CMOS电路的功耗管理遵循供电状态下的最大静态化原则。无论系统中的主器件还是外围器件的功耗管理都与指令控制相匹配,不必顾虑功耗转换的过渡过程。但当系统中不可避免地出现一些非CMOS功耗特性电路(如传感器供电电路)或一些模拟电路时,这些电路的功耗管理则须依靠电源供电管理方式。即这些电路退出有效操作时,关闭电源;待进入有效操作前开启供电线路。由于电路的时间常数,这些电路电源达到额定工作值或者进而启动时钟工作时,会有一个过渡期,不能即开即用,会给应用管理程序设计带