改善8051系统用电效率的微控制器
图6对DS87C520高速微控制器的时钟分频器和时钟控制模式加以对比。图6中,全速模式(除以4)、功率管理模式1(除以64)、功率管理模式2(除以1024)、空闲模式及停机模式下的电流消耗形成鲜明对比。正如所料,停机模式吸收最低的电流,因为所内部时钟都被关掉了。两种功率管理模式消耗的电流比空闲模式还低。这不仅降低了器件的功耗,还说明可以让它以较低的水平持续运行。在传统的8051结构中,任何类型的CPU运行只有两个状态:“全部或者没有”。处理器被迫频繁地运行于最高性能水平,尽管只在很短的时间内得到高性能,这会增加一些不必要的功率浪费。功率管理模式(PMM)的使用,使处理器(如系统)能够根据实际性能需求对其功耗进行最优化管理。
6.1 中断和PMM的使用
采用内部时钟分频器可能会带来的问题是,中断延迟会大大增加;另外,内部定时器的减慢会影响8051串口产生或同步标准波特率的能力。这会严重干扰处理器响应外部激励的能力。解决方案之一就是在外部中断或串行口活动被确认后,自动使处理器恢复到完全运行状态。这种方案已经在DS87C520中得以实现。处理器的这种回切功能使其能够迅速响应外部中断。紧随着中断回答,器件将自动切回到全速(除以4)状态,并且不需要软件参与。
串行口的工作方式十分相似。当在串行口接收脚上检测到下降沿(起始位)后,器件将自动切回到全速运行(除以4)。这个过程紧接着数据传送起始,因而器件能够以全速来正确地接收余下的传送数据。对于传统的8051结构,在低功耗配置中使用串口的唯一办法是利用闲置模式。功率管理模式的使用提供了一种更低功耗的替代方案。
6.2 改进突发工作模式
在低功耗设计中,觉见的工作模式是将处理器从停机模式中唤醒,执行一个突发任务,然后再加到停机模式。在这样的系统中,降低功耗的一个手段是提高工作频率。初看起来,似乎匪夷所思。因为在正常工作期间,高频率系统要比低频率系统消耗更多的功率。然而,系统工作时消耗的静态电流与频率无关。在一个最终设计中,通常评估的是其能耗,以便确定电池工作寿命。这一点在评估一个高性能微控制器时尤为关键,因为它综合地考虑了处理时间和处理功率。对于一个给定系统,如果它具有更小功率与时间乘积,那么它的能耗更低;而不必单独考虑两种参数。很多实例显示,高速微控制器由于运行时间更短,实际能耗更低;而处理时间更长的低速处理器正好与此相反。
这一点可以通过图6提到验证。假定从停机模式恢复后,DS87C520读取一个I/O端口,经过算术运行后将结果从另一端口送出,这个过程需要500个机器周期的CPU时间。按图6所示,电流消耗在10MHz时为12.4mA,30MHz时为34.6mA。表1归纳了在两种速度下执行读任务时的能耗情况。从表1中可以看到,30MHz工作时的效率更高,能耗降低6%以上。
表1 执行一个500机器周期的任务时所消耗的能量和处理器速度对比
6.3 跑跑停停
在很多应用中,停机模式以外的时间并不完全取决于运行速度。很多情况下,处理器需要访问一个具有固定响应时间的外围设备,例如A/D转换器或温控器。此种情况下,处理器将有个突发动作。一般是触发某个过程,随后的一段时间内,则只有很少的或根本没任何操作。在这种时候,一种组合的功率节省技术会更为有效。
可以用一个实例来说明在这样一个系统中,采用具PWM的高速微处理器所带来的好处。设想的DS87C520与一片DS1620数字温度计/温控器相接口。这个器件可使用标准8051串口的工作模式0串行访问。主机处理器在某个时刻通过外部中断将DS87C520从停机模式唤醒,并要求它从DS1620中读取温度数据。获得数据后,DS87C520会将其保存于内部存储器中,备随后传送。DS1620的工作类似于很多A/D转换器:发出一个命令后
《改善8051系统用电效率的微控制器(第4页)》