- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于电池剩余电量的动态电压调节算法的改进
能量消耗问题是近几年在嵌入式系统设计中被广为关注的难点与热点,它严重制约着嵌入式系统的应用与发展[1]。降低能耗、延长电池寿命在军用或民用嵌入式系统中(如传感网络节点、微小卫星、PDA等)具有重要的现实意义。动态电压调节技术可以根据当前运行任务的需求来实时调节处理器工作电压,以达到任务完成时间和系统能耗之间的平衡,因而被广泛应用在嵌入式实时系统中。传统DVS(Dynamic Voltage Scaling)算法(Wiser and Govil[2])多是基于最优化的电池单元模型,而没有试图对电池的理化现象精确建模。实际上不同的电流负载对应的电池单元行为不同,对不同情况下电池单元行为进行精确建模能提高电池利用率,延长其寿命,故进一步研究与电池特性相关的DVS策略非常有意义。
1 基于电池特性DVS算法本质
DVS策略主要基于一个事实,即:处理器的确定性能量消耗与工作电压呈平方正比的关系[3]:
C为工作电源电压,V为每周期的平均开关电容,f 为时钟频率,Vbs为衬底和源极之间的电压,Ij为节点漏电,K0、K1、K2均为常数。故在保证性能前提下,可根据系统工作状态动态调整电压达到降低能耗的目的。基于电池特性的DVS算法不仅根据系统工作状态来动态调节电压,而且还以电池特性为基础设计调度策略,以对电池合理利用,进一步延长电池寿命。Luo[4]等人研究提出的DVS策略通过降低电池的峰值功率来优化能量消耗;Rakhmatov[5]提议利用电池自恢复效应增加电容以节省能量等,这些都是基于电池特性的研究成果并取得较好的节能效果。
2 已有的基于电池剩余能量的DVS算法局限性
在Sukwon Choia[6]等人提出的一种基于电池剩余能量的可选择DVS策略中,对周期性电流负载对应的电池单元行为建模,并根据自恢复效应影响因子的强弱将电池放电过程分为三个不同的阶段,在不同阶段提供不同的策略起到了降低功耗的作用。但其存在下列缺点:
(1)建立的电池单元行为模型有一定局限性,只符合周期性电流负载的特点;而更为普遍的具有非周期性电流负载对应的电池单元行为模型与之存在较大差异,故需要对电池单元行为重新建模。
(2)在rate capacity区域计算Poptimal方法:基于过去周期段处理器利用率和当前时刻预测利用率来设定最优功率,即:
其中i≥1,P0=Pmax。而对非周期性和随机任务,简单的基于处理器以往利用率的计算模型不能提供最优的动态电压调节方法,需要考虑采取符合随机任务特点的新策略。
(3)在Alarm 区域电池进入低电压报警区,调节功率为Poptimal=Pmin可以降低能耗。但是如果结合动态电源管理DPM策略,对系统单元采用合理的休眠/唤醒算法,则能更好地减少不必要的消耗。
3 电池的非理想特性
大多数有关低能耗设计的研究,都将电池隐式认为是一个理想的电荷储存器,即:存储某个固定的电荷总量,而且直到电荷全部耗尽时电压才退出标称值。然而在实际情况中,电池没有任何一处接近于理想电荷存储单元。由于电池的化学特性,电池在满电荷至临界低电荷放电期间其放电率受到很多因素的影响。其中最主要的两个因素是:the rate capacity effect和the recovery effect[7]。the rate capacity effect现象反映了电流负载和电池寿命的非线性反比关系,而且电池寿命变化率比电流负载变化率要快。这主要是由于电池在生命周期中所能释放的容量总和与放电电流有关。因为从能量转换角度看,当电流越大时,电池在将内存的化学能转变成电能时的效率越低。电池的这种非线性特征可通过Peukert公式[8]来说明;the recovery effect现象反映了当电池空闲时电池电容有自恢复效应。因为电池在没有放电时,电极——电解质周围的有效物质通过扩散的方法会被重新填充,电池容量会有恢复现象。若能利用该特性,将有利于降低系统能耗,延长电池寿命。
实验在IPAQ3600 PDA上运行Linux,并修改Linux内核控制硬件来读取电池剩余电量值。系统预设5个任务,并通过随机策略调度其运行来模拟非周性任务的执行,在整个监测过程中,系统处于随机的繁忙和空闲交替状态中。实验数据显示(图1):系统工作时间与电池剩余电量值局部呈不规则曲线状,但整体上曲线变化有一定规律,可以分为三个区域:在Recovery effect段(Lfull~LR)电容恢复现象明显,电池部分放电被恢复效应补偿,电量下降缓慢;在Rate capacity effect段(LR~Lc)恢复效应减弱补偿能力下降,电量下降加快,并与放电时间趋于线性关系;最后在Alarm段(Lc~Llow)放电行为占主导,电量急速下降。
实验结果:周期性电流负载和非周期性电流负载对应的电池电量监测曲线分别为细线条和粗线条部分。可以看到:非周期性电流负载对应的电池特性曲线仍然分为三个区域,但是其曲线波动特点很不规律。阶段1:前者曲线波动均匀,后者幅度较大;阶段2:前者呈线性下降,后者曲线围绕前者上下波动;阶段3:两者电量均迅速下降,前者下降平稳,后者有平缓部分。且由于任务的随机性,后者进入某区域的时间点相对模糊,其区域分割点与任务调度的随机过程有关。同样都是基于电池特性,但是在相同的特性区域,对应的电流负载特点不同,故在相同的特性区域应采用不同的策略以求低能耗最优。
4 基于电池非理想特性的DVS算法
4.1 DVS算法思想
根据曲线特点分析电池动态特性,从而设计合适的策略才是关键:该DVS算法根据电量余值L作出策略切换。当L∈(Lfull~LR)时,以充分利用电池恢复效应为主;L∈(LR~Lc)时,因L值持续减少,故在保证系统性能前提下尽量减少放电量;L∈(Lc~Llow)时,电池电量进入低报警区,系统单元采取关闭/唤醒的PM策略,需要牺牲部分性能以尽量延长电池寿命(Lfull、LR、Lc、Llow均为电池在某时刻的电量余值)。
4.2 确定电池状态
要根据电池剩余电量进行策略切换,首先要判断电池状态区间分割点。非周期电流负载对应的电池行为模型不像周期性电流负载对应的电池行为那么有规律,所以判断起来相对复杂。但共同之处在于:在相同的特性区域,同时间片能耗与补偿能量的大小关系类似。所以可以将处理器工作时间划分成若干时间段(如图2),task期间在单位时间段内任务的平均能耗量ΔH(式(3))和随后相邻的Idle期间单位时间段内平均能量补偿量ΔB(式(4)),设ΔM=ΔH+ΔB,若有ΔM≤0现象出现,则电池处于recovery effect区;若在一定时间内持续ΔM>0,则认为恢复效应开始模糊,电池进入rate capacity区;若ΔM>0并且数值明显增大,则认为电池进入alrm区。Lmax为电池最大放电量,Li为I时间片时电池剩余电量,两个值都可通过监测获得。B(Qk)为Qk时能耗量为:
可推得Qi时能耗量:
在连续任务时间段内,单位时间片的平均能耗量:
相邻空闲时间段内,单位时间片平均补偿能量:
4.3 DVS算法设计
若电池状态为系统所知,则系统就可以根据电池当前状态选择合理的DVS策略。在Recovery effect区域,应考虑充分利用电池的自恢复效应,故可以使处理器Ppower=Pmax,用以缩短任务执行时间,使处理器更多地处于空闲状态以最大化恢复效应。在Rate capacity区,应在保证系统性能的同时,以降低任务执行时的电池负载为主。这个求解过程可以转化为一个在相关限制条件下求目标函数最值的非线性规划问题来解决,最优化对象是每个任务所对应的工作电压,分析过程如下。
来源:电子技术应用
上一篇:新一代视频编码器
下一篇:中兴通讯NNOC解决方案