版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电源管理(或者说能耗管理)是芯片设计、制造工艺、系统设计和软件都在为之努力的 研究课题,大家力求在各个环节尽可能的减少静态和动态的电源消耗。传统的控制电压的调节方式和管理待机模式依然是多数电子设备正在采用的,还将继续延续下去,但是随着包括智能手机、导航和无线传感网络装置,这些对电量消耗极大且永远在线的设备的市场规模的迅速增加,电源管理已经成为整个电子设计正在面临的重要课题。市场研究机构isuppli首席分析师Jordan Seiburn说:功耗已经成为电子产品设计的首要考虑。”Linux操作系统已经证明是在嵌入式系统,尤其是消费电子产品中大量使用的一个 嵌入式操作系统。它因为丰富的特性、完善的
2、功能、最新的硬件支持和无版税的商业模式得 到包括半导体公司、设计公司和设备制造商的认可。对于消费电子产品中的Linux技术,除了进一步优化性能、压缩尺寸、提高可靠性外,构建一个完善和富有弹性的电源管理系统 已经成为越来越紧要的项目和要求,也将成为Linux取代传统 RTOS、WinCE/mobile、Symbian ,占据消费电子首席开源软件(OS)地位的重要杀手锏。Linux电源管理质量服务目前已经发表的 Linux版本是2624和2625,这两个版本包含了下面几个和嵌入 式相关的技术。LTTng( Linu xTrace工具);电源管理质量服务 (PM QoS,也称为QoSPM); Kpa
3、gemap一个在userspace的应用,可以更详尽的测量到内存消耗的情况;Latencymeasurement API个延迟测量 API,也是LatencyTOP的基础,这个工具的姐妹组合是叫做powerTop的电量分析软件,这是一个很有用的电源管理工具,可以分析出每个具体的应用对电量的消耗情况。最近商业的嵌入式Linux公司Montavista 把它移植到mobilinux5.0产品里支持 ARM结构;Smack一个简单的访问控制的安全模块,值得尝试在嵌入式系统中使用。这里重点讨论 PM QoS,构建PM QoS的目的是通过提供硬件之间可以访问的机 制,让应用在有性能需要的时候可以给出电源
4、管理的资源信息,在实现上,它是构建了一个新的内核结构以完成需要延迟和吞吐性能的驱动程序、系统和应用之间的通信。PM QoS 目前发布的版本里有三个参数(pm_qos_params.c ):cpu_dma_lantency 、network_latency 和 network_throughput 。使用 pm_qos_init()在内核里可以增加新的参数, 在userspace应用使用PM QoS就好像是驱动文件的一个特性。打开驱动文件,改变如延 迟参数等值,写入文件后,关闭文件就意味取消了对内核的请求,可以自动保护避免因为可能发生宕机而损坏内核系统。在内核API中有请求(requiremen
5、t )、告知(notifier )等接口,让需要有延迟和吞 吐性能要求的驱动代表这些参数。典型的应用包括目前In tel开源实验室开发的一个带有PM_QoS的无线网卡的驱动(IW14965 )。这个无线芯片有六个电源配置点,它们可以影响 天线的功率,设置进入无线休眠的速度和无线AP站点之间的距离等参数,这个应用使用PM QoS的延迟参数就很适合,目前这个驱动的工作还是和驱动相关,通过sysfs挂接,驱动只需要简单的注册并告知需要改变网络延迟参数的要求,然后切换到它希望的电源管理 层。PM QoS目前主要有三个方面的应用。第一是CPU的空闲管理,这可以用在如音频、硬盘、USB和显示等耗电大和动作
6、相对需要延迟的部件上。例如,图像不需要高分辨 率,那就可以关闭硬件的加速功能,而硬件加速要打开是有延迟的,设置合适延迟可以达到在不影响使用的前提下节省电量的目的。第二是 WiFi应用。第三是千兆以太网,PM QoS可以帮助控制网络的延迟和带宽的需求,以达到在可用的前提下省电的目的。例如,网络浏览器大约可以设置成2s延迟,邮件客户端0.5s的网络延迟。PM QoS目前还很初步,现在主要应用是网络和互联网终端,相信进入Linux内核后未来支持 PM QoS的驱动程序和应用将会越来越多,对于嵌入式系统装置的电源管理是一个选择。Linux内核的动态电压和电流控制接口前面已经提到半导体器件的功耗是两个部
7、分组成,一是静态功耗,一是动态功耗。静态功耗主要来自待机状态的泄漏电流,相比而言动态功耗更大,例如,音视频播放中频率和电压的增加会让电量将成线形增长,动态功耗也是电源管理要解决的主要问题,解决动态功耗的方法有几种,女口 IBM和Montavista 合作开发 DPM项目(现用在 Montavista Mobilinux 5.0产品中)和 TI OMAP3430的Linux电源管理,自 Wolfson微电子的Liam Girdwood 最 近介绍了一种称为校准器(regulator)的动态电压和电流控制的方法,很有参考意义和实际使用价值。1校准器的基本概念所谓校准器实际是在软件控制下把输入的电源
8、调节精心输出。例如电压的控制,输入时5V输出是1.8V ;电流的限制,最大20mA ;简单的切换和电源的开关等,如图1所示。Blit YLinaU古已JI图1校准器电源域是一组校准器,设备组成、输入可能是校准器,开关也许是电源域,电源域可以级联,电源约束可以和电源域配合以保护硬件。例如一个In ternet Tablet/PMP,它由CPU、NOR Flash、音频编解码器、触摸屏、LCD控制器、USB、WiFi等其他外设组成,如图2所示。gs图 2 In ternet Tablet/PMP系统结构为了实现上面的构想,需要在内核里建立一个校准器构架,目的就是设计一个可以控制电压和电流的标准内核
9、接口以节省电能,从而尽可能的延长电池的供应。这个内核的架构分为四个部分:针对设备驱动的消费接口(consumer )、校准器驱动的接口、系统配置的接口和面向应用 sysfs的userspace 接口。2 Consumer 的 APIregulator = regulator_get(dev, Vcc ”);其中,dev是设备Vcc”一个字符串代表,校准器(regulator)然后返回一个指针, 也是 regulator_put(regulator)使用的。打开和关闭校准器(regulator)API如下。int regulator_e nable(regulator);int regulato
10、r_disable(regulator);3电压的API消费者可以申请提供给它们的电压,如下所示。int regulator_set_voltage(regulator, i nt min_uV, int max_uV); 在改变电压前要检查约束,如下所示。regulator_set_voltage(regulator,100000,150000)电压值下面的设置改变如下所示。int regulator_get_voltage)struct regulator *regulator);4电流的API电流的API也是类似,需要指出的是,校准器的方法并不一定是最高的效率,效率和加载(如加载10mA
11、电流)、操作模式都有关系,通过下面的API可以改变模式设置。regulator_set_optimum_mode(requlator,10000);/10mA5校准器的驱动和系统配置在实际使用校准器之前,需要按照下面的结构写校准器的驱动程序,然后注册后通知给消费者使用。struct regulator_ops /* get/set regulator voltage */in t (*set_voltage)(struct regulator_cdev *, int uV);in t (*get_voltage)(struct regulator_cdev *);/* get/set regu
12、lator curre nt */in t (*set_curre nt)(struct regulator_cdev *, int uA);in t (*get_curre nt)(struct regulator_cdev *);/* en able/disable regulator */in t (*e nable)(struct regulator_cdev *);in t (*disable)(struct regulator_cdev *);in t (*is_e nabled)(struct regulator_cdev *);/* get/set regulator oper
13、at ing mode (defi ned in regulator.h) */in t (*set_mode)(struct regulator_cdev *, un sig ned int mode);un sig ned in t (*get_mode)(struct regulator_cdev *);/* get most efficie nt regulator operati ng mode for load */un sig ned in t (*get_optimum_mode)(struct regulator_cdev *, int in put_uV,int outpu
14、t_u V, int load_uA);;完成了校准器驱动程序之后,下一步就是系统设置(machine specific ),即匹配如电压、LD01和NAND等关系。regulator_set_supply( LDO1 ”dev, Vcc ”对于userspace,校准器的使用是通过sysfs,但是目前所有的包括电压、电流、操作模式、限制等信息多只是只读信息,应该是非常适合象powerTop这样工具的使用。6应用校准器的典型的应用包括如下:CPUfreq CPU频率的调节;CPU idle CPU空闲模式控制;LCD背光调节一一通过电流控制LED灯的亮度达到控制 LCD背光的目的; 音频单元一
15、一如FM收音机在MP3使用的时候应该是关闭的,麦克风使用的时候,扬声器 的放大器应该是关闭的;NAND/NOR存储器是耗电大户,根据不同操作方式(读/写、擦除等)优化操作模式(控制电流)达到节省电量的要求。同其他电源管理的方法比较,校准器 方法具有一定的硬件独立和抽象性,简单实用,原理上可以适合任何有电源管理芯片支持嵌入式系统电源管理,目前已经移植到Freescale MC13783 、Wolfson WM8350/8400 等几个集成度很高的电源管理器件上了基于构件的面向CPU的电源管理技术无论是PM_QoS、控制电压和电流的校准器方法,还是许许多多半导体公司支持 自己CPU和电源管理芯片的
16、 Linux BSP电源管理部分,都还没有一个构建在更高层面的构 件级嵌入式系统电源解决方案和商业产品。虽然包括CELF (消费和嵌入式Linux论坛)和In tel主导的 Mobile &ln ternet Linux项目都设立了专门的电源管理计划( power ma nager project ),但是显然距离人们的要求和实际的应用还太远了。Montavista在过去和IBM合作开发DPM (动态电源管理)技术的基础上,最近在 专门针对手机、互联网移动终端、PMP/PDN等便携消费电子设备的mobilinux5.0上提出嵌入式电源管理技术的构件方法。Mo ntavista 的构件方式主要是
17、针对以先进的多媒体应用处理器为核心的新一代嵌入式系统,比如Freescale的MX31、TI OMAP2430/3430 为核心的系统级电源管理,它包含下面几个主要的部分。1动态的电压和频率调节正如前面提到的,电压和频率的提升将会让功耗线性增加,按照设计需要和应用的指令将电压和频率调节到合适的操作点可以大大降低功耗的有效方法。要想实现动态的电压和频率调节(DVFS),在内核里CPUrefs子系统是关键的部件,如图 3所示。User spaceGo rrof图3 CPUrefs结构那么管理者(Governor )是按照什么情况改变操作点呢?性能要求、省电的要求、用户的应用以及 CPU的使用效率等
18、条件都可以让管理者改变操作模式。Mobilinux5.0提供了 userspace机制充当管理者的工作,即应用可以改变操作点。在TI OMAP3中有一个称为 SmartReflex 的技术,动态调整 VDD1和VDD2操作点 电压以适应芯片特性、温度和电压。SmartReflex 技术有四个级别:0级在工厂生产时优化校准后设置的操作点;1级一一引导时优化后校准确定的操作点;2级一一通过软件循环实时优化电压点然后由CPU的中断程序设置;3级一一完全的硬件循环优化电压点,无须CPU干预,是一种硬件控制傻瓜操作点改变方式。无论是mobilinux5.0还是TI 3430Linux distribut
19、ion 都已经支持 DVFS 和 SmartReflex 驱动。2挂起和恢复在内核里,mobilinux5.0已经提供支持挂起和恢复的驱动程序的功能,新的驱动必 须要增加回调函数以响应系统休眠中关机和再次唤醒的动作。3支持电源管理的驱动程序每一个驱动程序必须经过重新的书写支持DVFS,即当操作点改变的时候,驱动程序通过CPUrefs的告知作出响应。驱动程序还必须正确处理系统的挂起和恢复事件。4 CPU空闲调节由一个定义的处理器特定的空闲状态点的CPUidle驱动管理、内核的一个CPUidle框架和管理者组成,如OMAP3430定义7个空闲状态点。5应用设计策略4所示。包括手机在内的便携式消费电子产品主要的能耗分布如图otherCPUMemory LCDDC/OC图4便携电子产品能耗分布除了 CPU夕卜,其他主要的能耗大户是LCD背光、NOR/NAND Flash/RAM存储器、DC/DC转换和音视频放大器等,例如, MPEG
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年云计算技术与大数据分析试题
- 2026年汽车维修技师专业水平测试题库大全
- 2026年国际金融风险管理专业模拟试题及答案解析
- 2026年心理咨询师心理评估考试模拟题
- 中医护理提升急诊洗胃效率
- 天文知识大全
- 护理员患者隐私保护与权益维护
- 2026年宁夏体育职业学院单招综合素质考试备考试题含详细答案解析
- 2026年成都农业科技职业学院高职单招职业适应性测试备考试题及答案详细解析
- 2026年安徽广播影视职业技术学院单招综合素质考试模拟试题含详细答案解析
- 中广核新能源(深圳)有限公司招聘笔试题库2026
- 信息化系统运维与支持手册(标准版)
- 2026届天津市西青区数学高三第一学期期末联考模拟试题含解析
- 学校桌椅采购项目质量保障方案
- 高考英语读后续写片段小练习(中英对照+模板套用)
- 嘉宾邀请合同书
- 华电集团企业介绍
- 2025年AI时代的技能伙伴报告:智能体、机器人与我们(英文版)
- 消除艾滋病、梅毒和乙肝母婴传播乡村医生培训会-课件
- 2025年城市更新改造项目经济效益评估可行性研究报告
- 消防知识培训锦旗课件
评论
0/150
提交评论