1.系统工作状态几乎所有的ARM处理器设计都有空闲模式。在空闲模式状态下,处理器的时钟停止,以减少处理器在空闲状态下的功耗。当嵌入式操作系统发现处理器当前没有可执行的任务时,便将处理器置于空闲状态。当系统发生中断时,处理器从空闲状态被唤醒。大多数系统都有操作系统计时器中断,因此,处理器在一秒钟之内可能几千次地进出空闲状态。值得注意的是,处理器空闲模式仅影响处理器本身,对系统的其他硬件不产生任何影响。系
1. 系统工作状态
几乎所有的ARM处理器设计都有空闲模式。在空闲模式状态下,处理器的时钟停止,以减少处理器在空闲状态下的功耗。当嵌入式操作系统发现处理器当前没有可执行的任务时,便将处理器置于空闲状态。当系统发生中断时,处理器从空闲状态被唤醒。大多数系统都有操作系统计时器中断,因此,处理器在一秒钟之内可能几千次地进出空闲状态。
值得注意的是,处理器空闲模式仅影响处理器本身,对系统的其他硬件不产生任何影响。系统的各状态切换如图1所示。
图1 系统的状态切换
图1显示了基本的电源管理和工作状态,分别如下所示。
a.系统挂起模式
在系统挂起模式(也称睡眠模式)下,只有以下部件继续工作:SDRAM、处理器功耗管理电路、唤醒电路。
因为SDRAM里面的内容受到保护,系统的运行状态可以存入SDRAM里保存。以下是进入
睡眠模式的典型步骤。
(1)用户指定、超时、低电量状态等因素启动了挂起模式。
(2)操作系统调用驱动程序把外设调整到节电状态。
(3)处理器未保存的寄存器存入SDRAM。
(4)SDRAM进入自刷新模式。
(5)处理器进入挂起模式。在该模式下,处理器的时钟停止,系统中各供电模块关闭。
重新恢复的次序与挂起次序相反,由处理器的唤醒信号或处理器内部唤醒信号源(如实时计时警报)启动。系统执行挂起模式是个庞大的任务,必须了解如何将系统中所有的外设切换到节电状态。
b.系统关闭状态
对ARM系统来说,挂起状态虽然己大大减小了功耗,但系统在挂起状态下也消耗能量,因而需要一种关闭模式,像系统没有电源一样。这种模式在电池耗尽时可以有效地保护电池不被损坏;同时可使系统在安装有电池的情况下进行传输和储存。
c.软启动
大多数系统需要一种软启动功能,软启动时,处理器被复位,但是SDRAM里面的内容仍旧保持。目前,大部分便携式系统都选择在SDRAM中存储用户文件,这是一项非常有用的功能。
2.外设耗电者虑
有许多外设硬件需要对功耗管理做特殊考虑。
a.显示及背光
在ARM系统中,显示设备的耗电最多。目前,有许多类型的显示设备,但大多数现代产品都选用反射式薄膜晶体管(TFT)显示加背光灯来作为显示设备。虽然在光线充足的情况下可以看清屏幕上的内容,但是考虑到阅读的舒适度,还是需要把背光灯打开。
LED背光灯耗电较少,但是有许多其他缺点。若在短时间内没有任何输入,系统一般都会把背光关闭。在许多应用里(如音乐播放器),关闭显示器是可以接受的。
b.低功耗SDRAM
许多ARM系统都使用低功耗的SDRAM,工作电压为1.8~2.5V(而不是通常的3.3V)。如表所示为64MB RAM存储器分别在3.3V和2.5V电压下的耗电比较。计算所用的数据来自Micron 256MB SDRAM存储器产品的数据手册。
表 不同供电下的功耗
在运行时(100%整循环和挂起模式时)用到2片SDRAM芯片,表中的数据是手册中数据的两倍。对于表12-1中SDRAM在不同工作电压下的功耗比较,用1.8V代替3.3V,将大大延长便携式系统的运行时间和挂起时间。
SDRAM支持多种低功耗状态。当系统处于挂起状态时,SDRAM将进入自刷新状态。在该状态下,除了CKE,所有对SDRAM的信号都无效,SDRAM自己管理自身的刷新。当系统处于运行或空闲状态时,SDRAM也可进入电源关闭状态。
c.音频
应选择具有低功耗模式的音频元件,否则,在系统挂起模式下要切断该元件的电源。另外,应注意避免在音频电路的功耗模式切换中发出刺耳的噪声。
d.备用电源
如果系统的主供电电池是可移动的,则还需要设计某种类型的备用电源。备用电源能在挂起状态下进行主电池替换时对系统继续供电。多数系统使用一个小电池做备用电源,以满足系统挂起状态下的供电需要。
e.紧急情况
一般硬件需要能够支持一些紧急情况。最重要的事件是电池缺电,在此状态下,操作系统必须被告知系统电量低,然后操作系统无条件将系统转入挂起状态。另一种危急事件是电池耗尽,此时电池的电能还没有真的全部耗尽,但为了保护电池,电池将不再对外放电。这种事件由少数极低功耗硬件处理,硬件电路监测到这种状态后,将把主电池从系统中断开。需要注意的是,断电后所有SDRAM存储器里的内容都将丢失。
f.漏电问题
漏电问题可能是当系统进入挂起状态后的一大问题。当集成电路断电后,若某个输入信号仍维持为高电平,就会产生漏电问题。
如图2所示,集成电路在输入端有一个保护二极管,电流将经过保护二极管直接进入集成电路的电源引脚。这将导致电源电压不可预知地上升,同时在系统应该使用极小能量的情况下浪费了大量的电能。解决这个问题的方法是:在集成电路断电前,确定每个输入信号(有保护二极管的)的电平为低,在挂起状态下不能驱动转为低信号的则必须加缓冲器。
图2 漏电情况
欢迎转载,信息来源维库电子市场网(www.dzsc.com)