嵌入式系统的性能优化设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

嵌入式系统的低功耗设计内容低功耗设计概述功耗控制技术Moblin的功耗控制技术8.1低功耗设计概述嵌入式低功耗的重要性嵌入式系统的功耗组成CMOS电路的基本功耗模型8.1.1嵌入式低功耗的重要性11010010001980199020002010PowerDensity(W/cm2)HotPlateNuclearReactor386486PentiumPentiumProPentium2Pentium3Pentium4(Prescott)Pentium4为什么功耗问题这么重要?电池容量不遵循摩尔定律增长Processor(MIPS)HardDisk(capacity)Memory(capacity)Battery(energystored)012345616x14x12x10x8x6x4x2x1xImprovement(comparedtoyear0)Time(years)8.1.2嵌入式系统的功耗组成CPU不再是唯一的功耗的组成处理器、无线通信、屏幕是嵌入式系统的3个主要功耗部件8.1.3CMOS电路的基本功耗模型分为静态功耗和动态功耗——回顾第3章关于处理器的知识,实际上这一点对所有CMOS电路都适用。静态功耗曾经微不足道,但现在随着工艺制程(130nm、90nm、60nm)向深纳米发展,问题已经变得非常突出。动态功耗=aCFV2a为与电路有关的一个调整参数;C为一个时钟周期内的总栅电容,对于一个处理器来说它是固定的。V最关键,因为动态功耗与其平方成正比。此外随着工艺制程(130nm、90nm、60nm)的发展,工作电压要求越来越低。F为时钟频率。V与F的制约关系V越高,可以支持的F越高8.2功耗控制技术功耗控制可以从不同层次来实现,根据实现效果,从高到低可分为:系统设计软件算法设计硬件的设计8.2.1系统设计的低功耗考虑待机模式的设计卸载计算密集任务到专用硬件动态电源管理(DynamicPowerManagement)动态电压/频率调整(DynamicVoltage/FrequencyScaling)时钟门控(ClockGating)技术8.2.1.1待机模式的设计对于大多数家电希望能用遥控器控制开关所以待机时,不能完全断电。常用的实现方法包括两种:伪待机方案待机时就是程序不运行,关闭显示待机功耗很大备份MCU方案用一个非常低功耗的MCU来负责遥控器的响应,并且控制主CPU的电源待机时主CPU完全断电8.2.1.2卸载计算密集任务到专用硬件通过把复杂的计算卸载(offloading)到专门的硬件上,放低对主处理器的主频要求比如一视频播放器里的YUV→RGB转换环节如果用CPU来做,对于720p的可能要用掉一个嵌入式处理器(400Mhz左右)的全部计算能力,功耗10瓦左右。但是如果用一个专门的硬件电路来做(并行的多个乘加单元),可能10Mhz的工作频率就够了,也许几十个mW功耗就够了采用具有专门对你的计算密集应用有专门加速模块的SoC比如TIOMAP2420里的Imaging/VideoAccelerator模块如果价格不敏感,可以直接利用FPGA设计加速模块8.2.1.3动态电源管理(DynamicPowerManagement)很多处理器或者外设支持多种不同的睡眠模式一般是通过关断部分电路的电源实现睡眠不同的睡眠模式下,关断的范围不一样,从而从睡眠恢复所需的时间也不一样尽量让系统在没有活动任务时进入尽可能深的睡眠模式需要操作系统和应用软件的配合才能实现模式切换的频度的折中从睡眠模式恢复到正常状态的这个过程往往比正常模式还要费电比如硬盘从静止→启动到规定的转速过于激进的切换,可能导致频繁的恢复,所以反而更耗电过于保守的切换,节电效果也不好8.2.1.3动态电源管理处理器功耗管理策略处理器的运行方式可以用一个电源状态机来描述:运行睡眠ttststPsleepPrun8.2.1.3动态电源管理处理器功耗管理策略(续)处理器的电源(即功耗)有两种不同类型的管理策略:一种是静态电源管理机制。它由用户调用,不依赖于处理器活动。一个静态机制的例子是通过节电模式来节省电源。这种方式用一条指令来进入,通过接收一个中断或其他事件来结束。另一种是动态电源管理机制。它是基于处理器的动态活动来对功耗来进行控制的。例如,当指令运行时,如果处理器某些部分的逻辑不需运行,那么处理器也许会关掉这些特定部分。8.2.1.3动态电源管理APM、ACPI标准实现嵌入式计算系统的低功耗,需要硬件和操作系统协同地工作。为协调操作系统和硬件对功耗和电源的管理,需要为两者制定一套统一的接口规范。最早的规范是APM(Advancedpowermanagement,高级功耗管理),它是由Intel和微软联手发布的一组API,使运行于与IBM兼容的个人计算机上的操作系统能与BIOS协同实现功耗管理。目前的规范是ACPI(AdvancedConfigurationandPowerInterface,高级配置和电源接口),它是从APM发展过来的。ACPI是一个电源管理服务的开放工业标准。它与多种操作系统兼容,最初目标是针对个人计算机的。ACPI提供了一些电源管理的基本工具并抽象出硬件层。操作系统有自己的电源管理模型,它通过ACPI向硬件发送需求控制,然后观察硬件状态将其作为电源管理的输入,从而实现对计算机和外围设备的电源的控制。8.2.1.3动态电源管理APM、ACPI标准应用硬件平台设备驱动程序内核ACPI驱动程序AML(高级管理语言)解释器ACPIACPI表ACPI寄存器ACPIBIOS电源管理ACPI在整个计算机系统中结构目前一些流行操作系统和软件平台,如WindowsXP、Moblin等,都是支持ACPI。8.2.1.3动态电源管理操作系统支持的常见低功耗状态当任务空闲(或称处于非活跃状态)时,计算机系统可通过进入各种低功耗的工作模式的方式来节能,这些低功耗的工作模式有时又统称为“睡眠”模式。系统的这些低功耗工作模式,介于系统完全启动和完全关闭状态之间,拥有多种形式,每种形式拥有自己的特点,能满足不同角度的用户需求。这些工作模式包括:待机(Standby)系统处于“待机(Standby)”模式时,将切断所用硬件组件的电源,从而减少计算机的电源消耗。“待机”可切断外围设备、显示器甚至硬盘驱动器的电源,但会保留计算机内存的电源,以不至于丢失工作数据。8.2.1.3动态电源管理操作系统支持的常见低功耗状态待机(Standby)(续)待机模式的主要优点在于恢复时间短,只需数秒时间系统就可恢复到之前的状态。缺点在于待机模式仍需要对内存供电。这样内存内容将不会被保存到文件夹中,因而也就不会因为内存重新加载而影响运行速度。但是,如果在该模式下发生电源中断,所有未保存的内存内容都将丢失。因此,待机又称为挂起到内存(SuspendtoRAM,简称STR)。处于待机状态的系统,除硬盘外,其他设备还是处于加电等待状态(也就是说唤醒时无须重新加电,通俗地说就是原地待命),所以电源、处理器、显卡等设备的风扇还是处于工作中,键盘指示灯也是亮着的。我们可以通过按键盘任意键或动一下鼠标来唤醒电脑,这时硬盘就会重新加电并启动,然后和内存、处理器等设备交换数据,从而完成返回到原来工作模式的任务。8.2.1.3动态电源管理操作系统支持的常见低功耗状态休眠(Hibernate)系统处于“休眠(Hibernate)”模式时,将保存运行状态的一份映像到外部存储器中,然后关闭计算机电源。这样重启电源时,运行就会恢复到按原来离开时的样子,如文件和文档就会按原来离开时的样子在桌面上打开。休眠模式比待机模式的脱机程度更深,因此有助于节省更多的电量,但重启时间更长。此外,休眠模式还具备更高的安全性。这是因为该模式不仅会像睡眠模式那样关闭对外设和硬盘的供电,而且还会切断对RAM内存芯片的供电。因此,又称为挂起到硬盘(SuspendtoDisk,简称STD)。8.2.1.3动态电源管理操作系统支持的常见低功耗状态休眠(Hibernate)(续)由于休眠模式会在关闭电源之前,将内存中的所有数据保存至(写入)外部存储器(一般是硬盘)上的参考文件中。退出休眠模式时,系统将恢复(读取)该文件,并将相应的数据重新加载到内存中。这样,系统就恢复到了之前的工作模式。由于休眠模式需要保存内存数据,因此与睡眠模式相比,该模式的恢复(唤醒)时间要更长。这种模式的优势在于其完全不耗电,因此不怕休眠后供电异常,但代价是需要一块和物理内存一样大小的硬盘空间。而这种模式的恢复速度较待机模式慢。休眠状态的计算机系统几乎和通常关机一样安静,用户还可以完全切断电源,而内存的数据(即运行状态)不会由于断电而丢失。与待机相比,休眠一般难以通过外部设备来唤醒的,它需要和正常开机一样启动系统;不过和开机相比,休眠后启动系统无需一个一个进程地来启动,只须要将硬盘中的内存镜像读取到内存中即可,因此速度较开机还是快得多。8.2.1.3动态电源管理操作系统支持的常见低功耗状态睡眠(Sleep)“睡眠(Sleep)”模式结合了待机和休眠的所有优点。将系统切换到睡眠状态后,系统会将内存中的数据全部转存到硬盘上的休眠文件中,然后关闭除了内存外所有设备的供电,让内存中的数据依然维持着。这样,当用户想要恢复的时候,如果在睡眠过程中供电没有发生过异常,就可以直接从内存中的数据恢复,速度很快;但如果睡眠过程中供电异常,内存中的数据已经丢失了,还可以从硬盘上恢复,只是速度会慢一点。不过无论如何,这种模式都不会导致数据丢失。此外,睡眠模式也不是一直不变地持续下去的,如果系统进入睡眠模式一段时间后没有被唤醒,那么还会自动被转入休眠状态,并关闭对内存的供电,进一步节约能耗。8.2.1.3动态电源管理操作系统支持的常见低功耗状态实现这些低功耗状态节能,一方面需要操作系统的支持,另一方面也要求硬件提供相应的支持,如支持高级配置和电源接口(ACPI),这样的协同才能实现上述功能。当空闲时间(又称非活跃时间)达到指定长度,或者检测出电池电量不足时,操作系统可自动将计算机系统置于各种相应的低功耗状态,从而达到整个系统节能的目的。8.2.1.4动态电压/频率调整(DynamicVoltage/FrequencyScaling)某些新的CPU可以让软件动态的改变工作电压和频率通常两者按一定比例同步的修改,电压上升,可以运行的最高频率上升某些时候CPU上执行的任务并不一定要求很快完成比如在Windows事件循环中idle阶段的一些处理此时可以将CPU频率改慢,同时CPU电压改低→两者都对降低功耗有贡献8.2.1.4动态电压/频率调整动态电压/频率调整技术实例:SpeedStep、EIST、C&Q技术SpeedStep是由Intel公司推出的,对IntelCPU进行功耗控制的一项技术。后来Intel发展了该技术,现在一般统称为EIST(EnhancedIntelSpeedStepTechnology,增强型智能变频)。此技术最早用在IntelPentium3-M处理器上,现在IntelPentium46xx、PentiumM、PentiumD、酷睿(Core)、Atom等多种系列上都采用了此技术。此技术的基本原理是通过调整处理器的电压和频率,来减少其功耗和发热,当然随着电压和频率的降低,处理器的处理速度也会随之有所降低。采用此技术的系统,不仅更加节能,而且不需要安装大功率散热器来散热,也不用担心长时间使用因温度过高导致电脑不稳定。8.2.1.4动态电压/频率调整动态电压/频率调整技术实例:SpeedStep、EIST、C&Q技术对于AMD处理器,该公司推出了两种与EIST类似的CPU节流技术。一个是C&Q(Cool'n'Quiet)技术,俗称“凉又静”。该技术用在了它的桌面和服务器处理器生产线上。其目标不是去延

1 / 48
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功