改善8051系统用电效率的微控制器
摘要:一种改进架构的高性能8051设计、外围功能集成、选用合适的时钟源以降低功耗;并介绍节省电能的软件技术及采用待机模式降低功耗的技巧。
关键词:停机模式 空闲模式 功率管理模式
便携式产品的功能和性能日新月异。javascript:window.open(this.src);" style="cursor:pointer;"/>消费者对产品性能的要求也越来越高,需要更强大的运算能力支持;另一方面,希望产品具有更低的功耗。
尽管已经出现了很多功耗处理器,但它们的性能通常很有限。Dallas公司的系列高速微控制器在性能和功耗之间取得了一个很好的折衷,采用了8051架构——世界上最流行的微控制器之一。简单易用、丰富的I/O资源使这种微控制器深受设计者的喜爱,并被广泛接受。它的流行势头已蔓延到了便携式领域,在很多应用中都有其用武之地。
本文旨在探讨使用8051控制器时,如何降低功率的消耗,重点介绍一种改进架构的高性能8051设计。
1 时钟频率
任何微控制器设计中,决定功耗的一个首要因素就是系统的时钟频率。互补金属氧化物半导体(CMOS)工艺的器件功耗直接正比于时钟频率。因此,从省电的角度考虑,将处理器运行于尽可能低的频率比较有利。
图1表示一个普通的8051微控制器的典型功率曲线,一个被所有便携系统设计得所熟知的关系。一般来讲,电流随频率的变化曲线为线性,具有一定的DC偏移。这个静态电流由片由的静态电路所消耗,例如比较器、运算放大器等。其数值一般很小(<1mA),是一个不可忽略的固定吸收电流。
任何功率受限的设计都应该考虑采用尽可能慢的运行速度。决定最低系统频率,也就是最低功耗的,有很多因素,包括期望得到的系统性能、javascript:window.open(this.src);" style="cursor:pointer;"/>中断响应延尽等。不管采用什么标准,最终目标是相同的:使器件的工作频率尽可能地靠近应用的需求。
2 高速内核
要降低基于8051系统的功率消耗,最直接的办法就是改善微控制器的效率。8051最初的设计采用了一个12时钟周期、每机器周期两次取指的架构。然而,高速微控制器采用的是每机器周期4个、甚至1个时钟的内核。它们具有更高的运算效率,执行一个指令需要很少的时钟周期,具有更快的运行速度和更高的时钟频率。
尽管高速核的优势通常考虑其处理能力,它们在降低功耗方面有很重要的意义。当处理器的运行指令经过优化后,执行同一任务所需的时间很短。很多便携式产品工作在猝发模式,其特点是只很短的活动时间,例如记录环境数据或扫描一个条码,而在随后的很长时间内都处于非活动状态。减少处理器的活动时间可以相应地降低功耗。
效率提升带来的另一个好处是,获得相同的性能所需的时钟频率可以更低。如果一个经过重新设计的内核采用4时钟机器周期而非12时钟,这就意味着完成同样的工作,只需更低的晶振频率。由于功率正比于晶振频率,这样,不必牺牲性能即可降低功耗。
图2显示三种微控制器以同样的速度完成同一任务时的功耗情况。其中两种是标准80C3X的衍生产品:一种是工作于每机器周期12个外部时钟方式;另外一种是DS80C320微控制器,工作于4时钟机器周期。测出各个器件的消耗电流,然后进行对比,保守地估计DS80C320具有250%(2.5倍)的速度提升。正如图2所显示的,每周期时钟数减少后的处理器内核工作于同样的吞吐率时,消耗的电流显著降低,高速运行时尤其显著。
3 集成化
将外围功能集成于芯片内部是节省电能的方法之一。javascript:window.open(this.src);" style="cursor:pointer;"/>在向芯片外部驱动一个信号时,每周期时钟数减少后的处理器内核工作于同样的吞吐率时,以便驱动外部负载和补偿DC损耗。开关功率是数字信号过渡过程中消耗的功能。开关功率可根据下面的公式估算:
PSW∝CV2/T (1)
其中C是接收门输入电容和连线电容的总和,T是时钟信号周期。一个CMOS门的典型输入电容为10pF。尽管很难精确计算出系统的开关功率,但有一点是显然的,每个额外的外部负载或引脚都会给微控制器造成额外的功耗。
基于微控制器的系统通常都会有一定数量的外围器件,例如从餐部的UART和上电昨位电路到看门狗定时器。8051系列的优势之一便是将大量的外围功能集成于片内。除了减少元件数量、简化设计外,外围功能的集成化也有利于降低功耗。可以认为任何外围器件的核心功能消耗的功率是相同的,与它位于处理器的内部还是外部没有关系。然而,将功能放在片内无疑节省了驱动外部总线所需的开关功率。
3.1 内部程序存储器
8051另外一个通常不被视作外设功能单元是程序存储器。所有8051的衍生产品都包含了不同容量的片内程序存储器。这是许多系统设计所期望的,以便减少外围元件数量和印制板面积,同时改善了便携系统的电源寿命。正如前面提到的,集成的程序存储器由于免去了外部总线驱动,因而降低了功耗。采用片内存储器还有另外一个省电的原因。8051架构必须采用一个74373类型的锁存器,以便锁存低字节地址。图3显示采用内部和外部程序存储器时的功耗情况对比。前者采用DS87C520高速微控制器和一个74AC573锁存器,以及一片27C256EPROM,访问时间70ns。第二个系统采用同样的微控制器,工作于内部存储器。两个系统均工作在11.0592MHz,执行一个简单、普通的程序。从图3可以明显看到,高频运行的系统中省掉外部EPRO