摘要:阐述在集成传呼功能、基于嵌入式处理器EP7211开发实现的二合一铁路交通信息系统PDA中,为了降低系统的功耗,从硬件和软件两方面采取的各种措施。这些措施基于一定的低功耗设计原则,具有普遍性,适合一般的嵌入式系统开发。
关键词:PDA EP7211 低功耗 时间复杂度
引言
PDA即Personal Digital Assitant(个人数字助理)的缩写,是近年来继寻呼机和移动电话之后,在国内市场迅速崛起的便携式电子产品。目前,国内传统性能的PDA产品经过前几年的高速发展后,市场需求基本饱和。不过,经过行业应用改造后的PDA产品,如文曲星、蓝火等已经在国内市场大显身手了。分析市场需求,我们研发了集成传呼功能的、专门面向交通行业应用的铁路交通信息系统PDA。本PDA系统除了具备传统PDA的个人名片管理、辞典检索、信息速记功能外,更重要的是提供交通领域的民航各种航班查询和全国铁路列车的刻表查询,通过传呼系统及时广播铁路和民航行业应用方面的如航班晚点、车次晚点、剩余票额等相关行业信息。
PDA系统属于便携式电子产品。这类产品,性能指标日益向实用化、方便化发展。产品不仅要求功能完备,用户界面友好,操作方便简洁,而且要求产品寿命长,功耗低。
产品低功耗设计一般从硬件和软件两个角度来考虑。本文重点阐述该PDA系统所采用的降低系统功耗的各种措施。
1 铁路交通信息系统PDA的体系结构
在分析本PDA系统的功能性和非功能需求,充分了解市场硬件行性的基础上,设计了本PDA系统,其硬件体系结构框图如图1所示。
嵌入式处理器EP7211(核心模块)进行数据处理,传呼译码芯片接收传呼信息并根据传呼协议自动译码;LCD提供数据显示输出,触摸屏提供用户输入接口;Flash用来存储可执行应用程序和数据;SRAM为程序运行提供内存空间;语音录放电路完成快速语音记忆功能;串口和红外口完成相关的数据通信工作;电源电路为嵌入式处理器和各外围设备提供所需要的工作电压。
嵌入式处理器EP7211是Cirrus LogIC公司专门为低成本、超低功耗的嵌入式应用设计。它包含基于RISC体系结构的ARM7TDMI处理器内核和丰富的外围接口,如CODEC音频接口、SPI串行A/D接口、单色LCD接口、RAM接口、串行红外接口、PWM接口、实时时钟RTC以及电源检测接口等。这些丰富的外围接口,不仅降低了系统的设计难度,同时也提高了系统工作的可靠性。EP7211的内核电路工作在2.5V,而外围电路工作在3.3V。它可根据具体情况对内核的时钟进行动态编程控制,可工作在18MHz、36MHz、49MHz和74MHz。另外,EP7211还有三种基本的工作状态:正常操作(operating)、空闲(idle)和等待(standby)。在等待模式时,主时钟被关断,整个CPU及相关外围(除中断和RTC)关断,但可通过触摸屏中断、传呼中断或复位按钮来唤醒。
系统软件开发平台采用了我们自主开发研制的、专门面向嵌入式应用系统开发的XGW平台。XGW开发平台措鉴Windows消息驱动机制,是用C语言开发实现的;它功能强大,模块化设计,扩展性强,产品升级容易,而且开发人员较为熟悉,开发成本低,其总体框架如图2所示。
图2全面反应了XGW软件开发平台的体系结构,包括事件消息驱动机制(XGW软件开发平台中的消息分为鼠标消息、键盘消息和定时器消息等三类)、内存管理、字符和图形显示输出、图形组件库等。图形组件库中的编辑框、列表框、按钮、进度条等图形控件为用户应用程序开发提供了应用编程接口API。不过,XGW平台对于系统硬件的中断响应没有提供统一的入口和出口,需要开发人员单独处理。
2 硬件低功耗
硬件低功耗主要从芯片制造工艺流程和硬件体系架构的角度出发,基本原理是尽量选用能够满足功能要求的功耗低的芯片。不过,芯片自身的功耗参数由制造厂商来决定,此处主要阐述CMOS芯片动态功耗以及动态电源管理两个方面。
(1)CMOS芯片动态功耗
随着半导体制造技术的发展,数字电路从TTL工艺转向CMOS工艺。TTL工艺为电流注入型电路,静态和动态电流消耗接近。CMOS工艺是压控型的,理想情况下("0"、"1"的恒定状态)静态电流为0,实际情况下也是很小的。动态("0"、"1"间的跳变状态)电流消耗占绝对主导地位。CMOS动态功耗计算公式为
式中: Pd--CMOS芯片动态功耗;
Ce--CMOS芯片等效电容;
V--CMOS芯片工作电压;
f--CMOS芯片工作频率或工作状态的切换频率。
从式(1)及各参数含义看,CMOS芯片动态功耗的数值正比于工作电压的平方,同时正比于工作频率。在满足系统功能需求的条件下,降低芯片工作电压和工作频率,都可以极大减少芯片的动态功耗。以处理器工作频率为例,如果工作频率降低一半,则该芯片动态功耗几乎也随之减半。在本PDA系统中,尽管ARM7处理器提供了18MHz、;36MHz、49MHz和74MHz四种工作频率,但我们采用2.5V为低压供电,18MHz工作频率。这些参数在降低系统功耗的同时,也满足了系统性能的需求。
(2)动态电源管理
动态电源管理技术是指有选择地将闲置的系统模块置于低能状态。一个较为复杂的嵌入式系统,除了处理器外还有很多外设电路模块,它们协调工作,共同完成系统功能。 但在分析完成系统功能的过程中可以看出,并不是所有模块在任何时间都处在工作状态。除了嵌入式处理器外,绝大多数外设模块都是在执行某项具体功能的时候(它自己的有效操作期间)才需要供电。如音频模块,有语音输入或者输出时才需要工作;在进行串口通信时,串口芯片需要处在工作状态;而在更多的时间里,这些芯片都是不需要工作的。
为了系统功耗最小,动态电源管理的原则是系统完成某项功能,只有参与这项功能的模块才供电,其它模块设置在电源切断状态。在电路设计时,需要充分考虑到这个问题,尽可能为各外设模块提供切换供电机制的引脚控制信号,而且允许通过软件编程的措施来完成其电路开关的切换工作。
本PDA系统中,除了嵌入式处理器外,还有异步串口、语音编译码芯片、音频功放、传呼、LCD、收音机等外部设备。传呼的接收具有随机性,需要一直处在工作状态。串口、语音芯片、功放电路、LCD等可以通过一定口地址的设置来控制电源开关,使之在工作的时候提供电压,在不工作的时候切断电源。
各外设模块电源口地址配置如表1所列。
表1
3 软件低功耗
嵌入式系统开发中除了硬件低功耗措施外,也可以从软件方面来设计。嵌入式系统软件低功耗措施一般涉及到处理器工作状态间的切换、应用模块软件算法的选择和系统整体的数据调度三个方面。
(1)处理器工作状态
便携式系统工作过程中,处理器并不是任何时候都一直忙于运行,尤其是PDA来产品。如今的嵌入式处理器(包括EP7211)一般都为应用开发提供了三种工作状态:运行、空闲和休眠。大量的实际使用表明,更多情况下,大部分时间里系统是处在休眠状态的,一旦获得工作信号,会迅速切换到工作状态。当系统在工作状态下一定时间内没有获得下一次需要处理的信号时,则应该自动切空闲或者休眠状态。因为在不同的工作状态,处理器内部工作电路有所变化,功耗大小差别较大。
本PDA系统采用的ARM处理器,在不同工作条件和状态下的功耗哪表2所列。
表2
注:直流供电电压2.5V
本文关键字:信息 嵌入式系统-技术,单片机-工控设备 - 嵌入式系统-技术