资料介绍
嵌入式系统的应用随着各种智能控制系统、智能玩具、工业控制、掌上设备(Portable)等的需求而不断扩大和流行。特别是近几年来,随着手机、PDA、MP3等掌上系统的流行,使得系统功耗成为产品的设计瓶颈,也成为产品设计的关键技术之一。当然,功耗的问题本身是一个系统的问题,要想有效地降低整体功耗,不但需要在硬件上要充分考虑,而且在软件的设计上更需要认真对待。一个真正高效的低功耗系统,软硬件的相互配合和优化才是极为关键的。
一般来讲,低功耗嵌入式系统的设计包括如下的几个关键的步骤:
1. 方案的确定:方案是设计的关键,是项目成功的基本条件。方案选择错了就等于一个人走错了路,要么达不到要求,要么事倍功半,有时虽然满足了设计的要求,但却在时间、预算和成本等方面增加了更多的投入。例如在玩具行业,一般均选择4位系列的MCU来进行产品的设计,若采用8位甚至16位MCU,则无论是在成本,功耗等方面都将是得不偿失的选择;
2. 器件的选型:不同的芯片,不同的厂家其所提供的产品的特性均存在差异,特别是在功耗方面,有时差别很大,比如在4位MCU领域,EPSON、OKI等的公司的Microcontroller的功耗就比Samsung以及台湾厂家的相同系列MCU要低几倍甚至是一个数量级。因此确定了方案之后,如何选择合理的器件和MCU,也是保证产品功耗能够达到要求的关键;
3. 硬件设计:我们知道外围电路有时是整个系统的功耗“大户”,比如ADC、背光、蜂鸣器、外部Memory、各种传感器等。因此如何合理设计外围电路模块,合理使用和控制相关的外围电路模块将是系统设计的重点。当然硬件的设计必须与软件的设计相结合。
4. 软件的设计:软件的设计是整个系统设计的重中之重,系统整体功耗的控制、外围电路模块的使用、调度和切换等,均需要通过软件的编程来实现。一般来讲,低功耗软件设计包括如下的几个方面:
a) 初始化:初始化是嵌入式系统设计的基本步骤,也是控制整个系统功耗的重要的步骤,何以如此呢?我们知道,一般来讲在初始化部分,我们需要对整个系统进行配置,比如IO口的设置、外围功能的配置等,而其中最容易被设计者所忽略的一步就是对在项目设计中未被使用MCU的功能的配置,有时正是这些资源的配置不合理,从而导致系统整体功耗出现意想不到的结果。
b) 系统时钟的控制:合理使用系统时钟,会在功耗方面带来意想不到的效果。我们知道,CPU的系统时钟与CPU的功耗成正比,时钟越快,其功耗也越大。因此,对于一些具有多个系统时钟的Microcontroller,软件的设计时必须根据系统需求来选择合理的CPU时钟,例如某些带有外部Memory的运动手表,在正常的运行下可以采用32768Hz作为其CPU时钟,以获得最低的整体功耗;而在访问外部Memory时,由于外部Memory的访问电流在几个毫安甚至更高,而长时间的访问势必导致功耗的增加,因此为了有效地降低由于Memory访问而导致的电流的损耗,则可以切换到1Mhz或更高的CPU时钟下,以求在最短的时间里完成对Memory的访问。当然,在进行时钟切换的时候必须进行全面的考虑,因为选择较高的CPU时钟,其MCU本身的功耗也会增加,因此我们必须要在各种因素下找到其平滑点。对于一个给定的系统,由于电压是固定的,而且电池的容量也是固定的(设位WBatt),因此系统的功耗可以用下式来进行表示:
WBatt = ∑Ik*Tk (k = 0.。..。.n)
其中,Ik为系统在不同的状态或条件下的电流,而Tk则为系统在此状态或条件下所维持的时间。
从上式可以看出,若要获得最低的功耗,要求Ik*Tk必须最小,对于一些模式来讲,时间有时是不可控制的,比如待机模式,此时只有更小的电流才能获得最地的功耗,而反应在芯片上就是一款芯片的Power Down Current;相反,对于电流是固定的情况,则必须让系统尽可能短地停留在该状态下。
c) IO口的控制:IO口的控制主要集中在上拉、下拉电阻的选择,待机状态下的电平输入输出设置等。对于IO口的控制,必须记住一个原则:任何情况下,都必须尽可能保证在IO口上不存在电流的流动。电流即意味着能量的损耗,因此在软件设计是必须根据实际的情况来合理配置IO口的状态和其输入输出电平;
d) MCU工作模式的使用:对于大多数低功耗MCU,均存在多种工作模式,一般包括如下几个运行模式:
i. 正常运行模式:CPU和Clock均在工作,此时MCU处于最大功耗状态;
ii. 停机模式:CPU停止工作,但系统时钟仍在工作,此时MCU处于较低的功耗状态;
iii. 掉电模式:CPU和系统时钟均停止工作,此时MCU处于最低功耗状态;
e) 外围功能模块或电路模块的管理:大多数系统的外围功能模块都是处于一种低频度使用状态,而且有时其功能的开启是有条件的,因而合理的使用和调度外围模块也是降低功耗的重要方法。例如在含有传感器的系统中,可以根据传感器数据增量的变化来提高或降低其开启的频率,就以环境温度的检测为例,由于环境的温度变化是非常缓慢的一个过程,应此对其的检测可以以一种相对较长的时间间隔来进行,入一分钟或若干分钟,若在某一次检测出现有别于常规的温度变化时,为了保证数据的可靠性,则可以在短时间内对其进行若干次的重复测量,以确认其温度的变化是否时正常的还是由于其他的干扰所导致。
总之,低功耗的设计并非是一蹴而就的事情,需要综合考虑各种可能的因素、条件和状态,需要对各种细节进行认真的斟凿和分析,对各种可能的方案和方法进行计算和分析,才可能取得较为满意的效果。
一般来讲,低功耗嵌入式系统的设计包括如下的几个关键的步骤:
1. 方案的确定:方案是设计的关键,是项目成功的基本条件。方案选择错了就等于一个人走错了路,要么达不到要求,要么事倍功半,有时虽然满足了设计的要求,但却在时间、预算和成本等方面增加了更多的投入。例如在玩具行业,一般均选择4位系列的MCU来进行产品的设计,若采用8位甚至16位MCU,则无论是在成本,功耗等方面都将是得不偿失的选择;
2. 器件的选型:不同的芯片,不同的厂家其所提供的产品的特性均存在差异,特别是在功耗方面,有时差别很大,比如在4位MCU领域,EPSON、OKI等的公司的Microcontroller的功耗就比Samsung以及台湾厂家的相同系列MCU要低几倍甚至是一个数量级。因此确定了方案之后,如何选择合理的器件和MCU,也是保证产品功耗能够达到要求的关键;
3. 硬件设计:我们知道外围电路有时是整个系统的功耗“大户”,比如ADC、背光、蜂鸣器、外部Memory、各种传感器等。因此如何合理设计外围电路模块,合理使用和控制相关的外围电路模块将是系统设计的重点。当然硬件的设计必须与软件的设计相结合。
4. 软件的设计:软件的设计是整个系统设计的重中之重,系统整体功耗的控制、外围电路模块的使用、调度和切换等,均需要通过软件的编程来实现。一般来讲,低功耗软件设计包括如下的几个方面:
a) 初始化:初始化是嵌入式系统设计的基本步骤,也是控制整个系统功耗的重要的步骤,何以如此呢?我们知道,一般来讲在初始化部分,我们需要对整个系统进行配置,比如IO口的设置、外围功能的配置等,而其中最容易被设计者所忽略的一步就是对在项目设计中未被使用MCU的功能的配置,有时正是这些资源的配置不合理,从而导致系统整体功耗出现意想不到的结果。
b) 系统时钟的控制:合理使用系统时钟,会在功耗方面带来意想不到的效果。我们知道,CPU的系统时钟与CPU的功耗成正比,时钟越快,其功耗也越大。因此,对于一些具有多个系统时钟的Microcontroller,软件的设计时必须根据系统需求来选择合理的CPU时钟,例如某些带有外部Memory的运动手表,在正常的运行下可以采用32768Hz作为其CPU时钟,以获得最低的整体功耗;而在访问外部Memory时,由于外部Memory的访问电流在几个毫安甚至更高,而长时间的访问势必导致功耗的增加,因此为了有效地降低由于Memory访问而导致的电流的损耗,则可以切换到1Mhz或更高的CPU时钟下,以求在最短的时间里完成对Memory的访问。当然,在进行时钟切换的时候必须进行全面的考虑,因为选择较高的CPU时钟,其MCU本身的功耗也会增加,因此我们必须要在各种因素下找到其平滑点。对于一个给定的系统,由于电压是固定的,而且电池的容量也是固定的(设位WBatt),因此系统的功耗可以用下式来进行表示:
WBatt = ∑Ik*Tk (k = 0.。..。.n)
其中,Ik为系统在不同的状态或条件下的电流,而Tk则为系统在此状态或条件下所维持的时间。
从上式可以看出,若要获得最低的功耗,要求Ik*Tk必须最小,对于一些模式来讲,时间有时是不可控制的,比如待机模式,此时只有更小的电流才能获得最地的功耗,而反应在芯片上就是一款芯片的Power Down Current;相反,对于电流是固定的情况,则必须让系统尽可能短地停留在该状态下。
c) IO口的控制:IO口的控制主要集中在上拉、下拉电阻的选择,待机状态下的电平输入输出设置等。对于IO口的控制,必须记住一个原则:任何情况下,都必须尽可能保证在IO口上不存在电流的流动。电流即意味着能量的损耗,因此在软件设计是必须根据实际的情况来合理配置IO口的状态和其输入输出电平;
d) MCU工作模式的使用:对于大多数低功耗MCU,均存在多种工作模式,一般包括如下几个运行模式:
i. 正常运行模式:CPU和Clock均在工作,此时MCU处于最大功耗状态;
ii. 停机模式:CPU停止工作,但系统时钟仍在工作,此时MCU处于较低的功耗状态;
iii. 掉电模式:CPU和系统时钟均停止工作,此时MCU处于最低功耗状态;
e) 外围功能模块或电路模块的管理:大多数系统的外围功能模块都是处于一种低频度使用状态,而且有时其功能的开启是有条件的,因而合理的使用和调度外围模块也是降低功耗的重要方法。例如在含有传感器的系统中,可以根据传感器数据增量的变化来提高或降低其开启的频率,就以环境温度的检测为例,由于环境的温度变化是非常缓慢的一个过程,应此对其的检测可以以一种相对较长的时间间隔来进行,入一分钟或若干分钟,若在某一次检测出现有别于常规的温度变化时,为了保证数据的可靠性,则可以在短时间内对其进行若干次的重复测量,以确认其温度的变化是否时正常的还是由于其他的干扰所导致。
总之,低功耗的设计并非是一蹴而就的事情,需要综合考虑各种可能的因素、条件和状态,需要对各种细节进行认真的斟凿和分析,对各种可能的方案和方法进行计算和分析,才可能取得较为满意的效果。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 嵌入式系统系列丛书-时间触发嵌入式系统设计模式 0次下载
- 嵌入式Linux的低功耗策略
- 嵌入式选择填空考点
- 嵌入式单片机应用系统的低功耗技术 12次下载
- 如何进行低功耗设计详细资料概述 2次下载
- 如何使用ARM进行嵌入式系统设计详细方法研究 9次下载
- 低功耗嵌入式系统在智能计量终端中的应用案例 5次下载
- AN1416 - 低功耗设计指南 19次下载
- 嵌入式系统的组成及其低功耗的设计 9次下载
- 基于μC/OS-II嵌入式系统丌发中低功耗系统的设计 0次下载
- 基于i.MX1硬件平台的嵌入式处理器系统级低功耗方法论文
- 关于安富利嵌入式系统中的低功耗无线技术讲座的PPT 0次下载
- 一种改进算法的低功耗嵌入式系统代码压缩设计 0次下载
- 超低功耗嵌入式系统设计技巧 3次下载
- 基于嵌入式系统的低功耗设计
- 什么是嵌入式系统?嵌入式系统的具体应用 2096次阅读
- 低功耗设计的未来挑战 389次阅读
- 如何实现嵌入式系统远程调试 5077次阅读
- 如何使用嵌入式操作系统实现MCU的低功耗工作 1991次阅读
- 基于μC/OS-II嵌入式系统开发中低功耗系统的设计 2984次阅读
- 从嵌入式系统到嵌入式操作系统 698次阅读
- 低功耗嵌入式系统设计有哪些步骤? 1248次阅读
- 嵌入式系统的特点大汇总 5742次阅读
- 嵌入式主板品牌有哪些_6大嵌入式主板品牌盘点 3.4w次阅读
- 基于嵌入式系统的低功耗软件特征及其功能实现 1910次阅读
- 典型的嵌入式系统设计 2650次阅读
- 嵌入式系统低功耗设计研究 1206次阅读
- 如何利用嵌入式降低电池功耗 1364次阅读
- 一种利用实时时钟降低嵌入式系统功耗的方法 1575次阅读
- 设计超低功耗的嵌入式应用(一):如何降低电池功耗 1299次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1489次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 91次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 9次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 3次下载 | 免费
- 8基于单片机的红外风扇遥控
- 0.23 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30319次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多