动态电压调节设计技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
动态电压调节设计技术
1 低功耗设计研究的必要性和可能性
嵌入式系统是多个设备或对象的组合,其在一定限制条件下相互作用可产生特定的功能。现在已经出现了许多测试标准来对嵌入式系统的整体设计质量进行评估,如系统性能、稳定性、能耗、设计和生产费用等,其中系统的能耗问题在最近几年已经逐渐成为一个重要的设计考虑因素。能量的高效使用除了能够降低系统操作代价(例如电能消耗)和减小环境影响(例如辐射干扰、噪声)外,对延长手持设备的电池寿命来说也非常有必要。为了在系统性能得到维护的同时降低系统能耗,需要同时对硬件和软件进行设计上的优化,而嵌入式系统的组成特点和应用特性也为能耗降低带来了可能性。
1.1 必要性
系统能耗已经逐渐成为嵌入式系统设计过程中的一个重要研究点,其重要性随着手持设备的普及而越来越突出。嵌入式系统设计者在以往设计过程中,将系统的稳定性、实时性、安全性等作为设计和考虑的重点。但是对系统设计者来说,现在又产生了一个新的挑战——降低系统的能量消耗,其必要性体现在以下6个方面:
①现在越来越多的手持设备系统利用电池供电,而电池容量相对有限,因此有必要通过降低功耗来延长系统的可持续使用时间。
②半导体工业的迅速发展使得系统集成度和时钟频率得到了显著提高,但IC器件运算能力爆发性增长的同时也导致系统的功耗急剧上升,这将带来热量释放的问题,而且也给设备的封装费用带来影
响。可以通过系统功耗的降低来减小整个系统的设计和生产成本。
③电池技术的发展速度严重滞后于系统能耗需求的增长速度:在最近30年里电池容量只增长了4~8倍,但在相同的时间范围内数字IC运算能力的增长却超过了4个数量级。采用系统功耗降低技术可以弥补电池技术发展的不足。
④绿色电器理念越来越深入人心,低能耗高性能的嵌入式设备更容易得到用户的认可。
⑤人们对环境问题的关心程度越来越高。显然,系统功耗越大,外围环境所受到的辐射或者电磁干扰越严重。
⑥能量价格上浮等因素也从另外一个方面体现了降低系统功耗
的必要性。
综合以上因素可以看出,嵌入式设备或者系统能耗的大小将会从多个方面影响系统的整体性能。因此,电子设计者在进行系统设计,尤其是针对手持设备类的嵌入式系统设计过程中,系统能耗将是一个越来越重要的设计因素。
1.2 可能性
现在的嵌入式系统设计是软硬件协同设计的过程,其系统组成和应用特性为动态的低功耗策略设计与应用提供了可能,这些可能性包括设备功耗模型、工作负载、系统嵌入三方面:
(1)设备功耗模型
在嵌入式系统中,越来越多的设备除了正常功耗模式外,还支持一种或多种低功耗工作模式,这为动态的功耗管理提供了可能,即系
统可以根据工作负载变化情况合理设置目标设备的工作模式。这就是动态电源管理(DPM)技术的应用。另外,商用CMOS芯片电源供给技术的发展,使得处理器内核的工作电压在运行期间根据应用任务的时间限制发生实时变化成为可能,即动态电压调节(DVS)技术应用;而高效DC-DC电压转换器的出现也为处理器工作电压的动态调节提供了硬件设计条件。
(2)工作负载
嵌入式系统是多种本质上具有不同特征器件的集合。例如,某个便携式系统具有处理器单元、模拟单元(无线卡)、机械部分(硬盘驱动)以及光学器件(显示器)。显然,这4个单元在系统运行过程中实现的功能各不相同。系统通常是在作最坏打算的工作负载情况下为达到峰值性能而进行设计,但是系统通常处于欠负载工作状态,而且工作负载具有不均匀性。工作负载的变化性(或者不均匀性)为能耗的自适应降低提供了可能性。如果没有任务对某个目标设备产生服务请求,则该设备处于空闲状态,从而可以将其关闭,使之进入低功耗、低性能的睡眠模式;当某个运行的任务需要使用该设备时,则将其唤醒,使之进入高功耗、高性能的工作状态。
(3)系统嵌入
当设计出节能效果显著的动态低功耗策略后,还必须将其嵌入到系统程序中才能得到实际应用。动态低功耗设计技术的重要性越来越突出,这除了从文献中的研究成果可以看出之外,还可以通过系统动态功耗管理工业标准的建立明显地看出。现在主流的操作系统,如
MicrosoftWindows、Linux都支持高级电源管理(Advaneed PowerManagement,APM)、高级配置和电源接口(AdvancedConfiguration and Power InteRFace,ACPI)等模块。其
中ACPI于1997年提出,被Intel、Microsoft、Toshiba等公司推荐为系统功耗管理中的标准软硬件接口。ACPI允许设备厂家、操作系统设计者、设备驱动编程人员使用同一个标准接口,而与ACPI兼容的设备也应该能够正确响应ACPI的调用,如参数设置、工作状态的查询等。通过对APM、ACPI机制的引用或改进,可以很容易地将低功耗设计策略嵌入到系统内核中,从而减轻了低功耗策略系统嵌入的工作量。
2 静态与动态低功耗设计
在系统级,有4种主要的能量消耗源:处理单元、存储单元、显示单元、内部连接和通信单元。能量高效的系统层设计在保证各个单元交互效应达到平衡的同时,还必须使这4种类型单元的能耗最小化。
从总体上讲,功耗降低技术在嵌入式系统范畴内可以分为两大类:静态技术和动态技术。静态技术主要在系统初始设计过程中使用,其假设系统的功能定义和工作模式已知,而且将来也不会改变。在嵌入式系统软硬件设计的初期阶段,已经使用到了一些静态低功耗降低技术。例如,通过软件优化编译技术来优化所使用的指令代码,从而影响到运行程序的能耗;代码存储器和内存中的数据存取方式将影响到处理器和存储单元之间的能量平衡;数据表达方式也将影响到通信资源的功耗。另外,在参考文献中也已经提出了一些静态功耗管理策略。
在参考文献中,针对采用EDF调度方法的实时系统提出了一种寻找
最优电压调度的静态方法;在参考文献中,作者研究了一个更为通用的处理器模型,该静态方法使得在某些非常特殊的情况下能够达到能耗的最优化;在参考文献中,低能耗非抢占式调度问题被建模成一个整数线性问题,该系统包含一组具有相同到达时间和任务执行期限,但是上下文切换代价不同的任务。
与静态技术相对应,动态技术则是系统在运行阶段充分利用工作负载的变化性来动态改变设备工作模式,从而达到降低系统功耗的目的。动态技术本质上是一个系统级的设计方法,其最关键之处在于功耗管理(Power Man—agement,PM)单元:PM单元监控整个系统的工作状态,当发现系统处于欠负载或者无负载状态时,就发送命令来控制目标设备的工作模式。而嵌入式系统的组成和应用特性也为动态的低功耗策略设计与应用提供了可能。
很明显,静态功耗降低技术只需在设计阶段使用一次,在运行过程中不能根据工作负载的变化而灵活处理;动态低功耗技术在运行过程中则能够很好地自适应于工作负载变化情况,更易于执行和应用。另外,随着系统功能增强和集成度的提高,静态技术已经不能完全满足系统对功耗的要求。尽管静态技术在一定程度上能够带来能量节省,但是最近的研究都着重于动态领域的低功耗设计技术,后者通常利用底层的硬件特性来获取有效的能量节省,现已成为嵌入式系统领域中降低功耗的重要手段。