新闻中心

EEPW首页>嵌入式系统>设计应用> 嵌入式系统低功耗设计研究

嵌入式系统低功耗设计研究

作者: 时间:2009-12-22 来源:网络 收藏

2.8 降低处理器的时钟频率
处理器的与时钟频率密切相关。以SAM-SUNG S3C2410x(32 b ARM 920T内核)为例,它提供了四种工作模式:正常模式、空闲模式、休眠模式、关机模式.各种模式的如表1所示。

本文引用地址://m.amcfsurvey.com/article/152201.htm

由表1可见,CPU在全速运行的时候比在空闲或者休眠的时候消耗的功率大得多。省电的原则就是让正常运行模式远比空闲、休眠模式少占用时间。在类似PDA的设备中,在全速运行的时候远比空闲的时候少,所以可以通过设置,使CPU尽可能工作在空闲状态,然后通过相应的中断唤醒CPU,恢复到正常工作模式,处理响应的事件,然后再进入空闲模式。因此时,如果处理能力许可,可尽量降低处理器的时钟频率。
另外,可以动态改变处理器的时钟,以降低的总。CPU空闲时,降低时钟频率;处于工作状态时,提高时钟频率以全速运行处理事务,实现这一技术的方法。通过将I/O引脚设定为输出高电平,加入电阻R1,将增加时钟频率;将I/O引脚输出低电平,去掉电阻R1,可降低时钟频率,以降低功耗。
2.9 降低持续工作电流
在一些系统中,尽量使系统在状态转换时消耗电流,在维持工作时期不消耗电流。例如。IC卡水表、煤气表、静态电能表等,在打开和关闭开关时给相应的机构上电,开关开和关状态通过机械机构或磁场机制保持开关的状态,而不通过电流保持,可以进一步降低电能的消耗。


3 软件低功耗
3.1 编译低功耗优化技术
编译技术降低系统功耗是基于这样的事实:对于实现同样的功能,不同的软件算法,消耗的时间不同,使用的指令不同,因而消耗的功率也不同。对于使用高级语言,由于是面向问题的,很难控制低功耗。但是,如果利用汇编语言开发系统(如对于小型的系统开发),可以有意识地选择消耗时间短的指令和设计消耗功率小的算法来降低系统的功耗。
3.2 硬件软件化与软件硬件化
通常的硬件电路一定消耗功率,基于此,可以减少系统的硬件电路,把数据处理功能用软件实现,如许多仪表中用到的对数放大电路、抗干扰电路,测量系统中用软件滤波代替硬件滤波器等。
需要考虑,软件处理需要时间,处理器也需要消耗功率,特别是在处理大量数据的时候,需要高性能的处理器,这可能会消耗大量的功率。因此,系统中某一功能用软件实现,还是用硬件实现,需要综合计算后进行设计。
3.3 采用快速算法
数字信号处理中的运算,采用如FFT和快速卷积等,可以大量节省运算时间,从而减少功耗;在精度允许的情况下,使用简单函数代替复杂函数作近似,也是减少功耗的一种方法。
3.4 软件设计采用中断驱动技术
整个系统软件设计成处理多个事件,在系统上电初始化时,主程序只进行系统的初始化,包括寄存器、外部设备等,初始化完成后,进入低功耗状态,然后CPU控制的设备都接到中断输入端上。当外设发生了一个事件,产生中断信号,使CPU退出节电状态,进入事件处理,事件处理完成后,继续进入节电状态。
3.5 延时程序设计
延时程序的设计有两种方法:软件延时和硬件定时器延时。为了降低功耗,尽量使用硬件定时器延时,一方面提高程序的效率,另一方面降低功耗。原因为:大多数处理器在进入待机模式时,CPU停止工作,定时器可正常工作,定时器的功耗可以很低,所以处理器调用延时程序时,进入待机方式,定时器开始计时,时间一到,则唤醒CPU。这样一方面CPU停止工作,降低了功耗,另一方面提高了CPU的运行效率。

4 结 语
系统的设计涉及到软件设计和硬件设计两个方面,在实际系统应用时,低功耗的设计并非是一蹴而就的事情,需要综合考虑各种可能的因素、条件和状态,需要对各种细节进行认真的斟酌和分析,需要对各种可能的方案和方法进行计算和分析,这样才可能取得较为满意的效果,达到降低系统功耗的目的。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭