一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

微控制器提高基于8051设计的功耗效率

来源:analog 发布时间:2023-12-18

摘要: 本应用说明着眼于通过选择有效的时钟源和时钟速度,使用停止模式,空闲模式和突发模式来降低功耗的方法。

高速微控制器广泛应用于便携式设备中。通过正确使用电源管理模式,设计人员可以优化当今新系统中使用的电池的寿命。本应用说明着眼于通过选择有效的时钟源和时钟速度,使用停止模式,空闲模式和突发模式来降低功耗的方法。Maxim高速微控制器和超高速闪存微控制器系列为用户提供了电池支持应用的先进功能。

便携式产品在特性和功能上不断进步。客户对产品的性能要求越来越高,这就需要更强的计算能力。与此同时,他们想要更低功耗的产品。这些竞争需求的核心是微控制器,它通常是便携式仪器中最大的功耗消费者之一。

虽然存在低功耗处理器,但它们的性能往往有限。Maxim的高速微控制器系列是功耗和性能的良好折衷。它基于8051架构,这是世界上最流行的微控制器之一。设计人员对其易用性、丰富的I/O结构和广泛的接受度表示赞赏。它的流行已经延续到便携式领域,在许多应用中找到了一个家。

本文介绍了使用8051控制器最小化功耗的方法,重点介绍了可以延长基于高性能8051设计的电池寿命的新架构改进。讨论了芯片上集成外设和选择合适的时钟源等降低功耗的方法。介绍了节能软件技术,以及在使用停止模式的系统中降低功耗的方法。

时钟速度

在任何微控制器设计中,决定功耗的最重要因素是系统时钟速度。互补金属氧化物半导体(CMOS)器件的功耗与时钟速度成正比。因此,从功率的角度来看,以尽可能慢的速度运行处理器是有益的。

图1显示了通用8051微控制器的典型功率曲线,这是所有便携式系统设计人员都知道的关系。一般来说,电流对频率的特性是线性的,带有直流偏置。这种静态电流是由芯片上的静态电路引起的,如比较器、运算放大器等。虽然这个数字通常很小(<1mA),这是一个需要考虑的恒定损耗。


图1所示。通用8051微控制器的典型功率曲线。

任何具有功耗意识的设计都将尝试尽可能慢地运行。最小系统频率和最小功耗的确定取决于许多因素,包括期望的性能和中断延迟。然而,无论使用何种标准,最终目标都是相同的:使设备的工作频率尽可能接近应用程序的要求。

高速核心

降低基于8051的设计功耗的最直接方法是提高微控制器的效率。8051的原始设计是基于12时钟、每台机器2次提取周期的架构。然而,高速微控制器家族使用每个机器周期内核的4或1时钟。它的计算效率更高,执行一条指令所需的时钟周期更少,从而提高了执行时间和最大时钟速率。

尽管高速核心的优势通常是在性能方面考虑的,但它们对功耗也有重要的影响。当处理器的指令执行得到优化时,完成同样的任务所花费的时间就会更少。许多便携式产品以突发模式工作,其特点是活动时间短,例如记录环境数据或扫描条形码,然后长时间不活动。减少处理器必须处于活动状态的时间可以实现相应的能耗降低。

这种效率提高的另一个结果是,在降低时钟速度的同时可以实现相当的性能。如果重新设计的核心每个周期使用4个时钟而不是12个,这意味着可以以降低的晶体速度完成相同的工作。由于功耗与晶体速度成正比,因此可以在不牺牲性能的情况下降低功耗。

图2显示三个微控制器以相同的性能水平执行相同任务的功耗。两个微控制器是标准的80C3x衍生产品,每个机器周期运行12个外部时钟,而第二个是DS80C320微控制器,每个机器周期运行4个时钟。测量所有器件的电流消耗,然后进行比较,假设DS80C320的保守性能提高250%(2.5倍)。从图中可以明显看出,在相同的吞吐量下,每个周期核心减少的时钟显示出显着的电流减少,特别是在高性能水平上。


图2。减少时钟周期核心使用更少的电流为相同的整个。

集成

将外设集成在片上是一种节能方法。当驱动信号离开芯片时,发电设备必须处理驱动外部负载所需的开关功率和任何直流损耗。开关功率(PSW)是数字信号变化时所消耗的功率。开关功率可近似为:

P (SW)α简历²/ T
(1)


式中,C为接收门输入缓冲器和两门互连的集总电容,T为信号的时钟周期。CMOS输入的典型输入电容为10pF。虽然很难计算系统开关功率的精确值,但很明显,微控制器必须驱动的每个额外的外部负载或引脚都要消耗额外的功率。

基于微控制器的系统通常使用许多外设。这些范围从外部uart和上电复位电路到看门狗计时器。8051产品家族的优势之一是在片上提供大量外围功能。除了通过消除组件来简化设计之外,集成外设还可以降低功耗。可以假设,无论位于处理器内部还是外部,任何外设的核心功能都消耗相同的功率。然而,定位外围芯片将消除与驱动外部总线相关的开关功率损耗。

内部程序存储器

另一个通常不被视为外设的8051特性是程序存储器。所有8051衍生产品都包含不同数量的片上程序存储器。这是许多系统设计人员所期望的,作为减少组件数量和电路板面积的方法,但它也提高了便携式系统的电池寿命。如前所述,这将通过消除驱动外部总线的需要来降低功耗。当使用片上存储器时,有一个额外的电力节省。8051架构要求使用74373型锁存器来解复用地址的下位字节。图3比较内部和外部程序内存的使用情况。第一种使用DS87C520高速微控制器,带有74AC573锁存器和27C256 EPROM,访问时间为70ns。第二个系统使用相同的微控制器,但从内部存储器操作。两个系统都工作在11.0592MHz,执行一个简短的通用程序。从图中可以明显看出,通过消除系统中的外部EPROM和锁存器,可以在高频下节省多达49mA。


图3。使用内部存储器可以显著降低电流消耗。

内部数据存储器

如前所述,使用片上存储器而不是外部RAM将节省电力。80C32衍生产品的扩展刮擦板(256字节)足以用于堆栈操作和小程序中的一些数据存储,从而消除了对外部RAM的需求。

然而,对于需要更多数据存储器或需要实现外部堆栈的设计,可能需要额外的SRAM。虽然有低功耗sram,但它们的功耗还必须包括与74373系列锁存器相关的功耗以及驱动外部总线的电容损耗。这可以通过使用带有扩展片上RAM的设备来缓解。图4显示了两个系统使用映射到8051 MOVX数据空间的SRAM的功耗。第一种使用DS87C520高速微控制器,带有74AC573锁存器和DS2064 SRAM。第二个系统使用相同的微控制器,但使用1Kbyte的内部MOVX数据存储器。两个微控制器都工作在11.0592MHz,执行一个简短的通用程序,读取和写入MOVX数据存储器。从图中可以明显看出,通过消除系统中的外部SRAM和锁存器,可以在高频下节省多达9mA。

时钟脉冲源

从电源的角度来看,另一个关键的系统组件是时钟源。标准8051设计通常要么用内部振荡器放大器激发外部石英晶体,要么使用外部晶体振荡器。如果使用外部晶体振荡器,时钟的波形会影响功耗。XTAL1引脚的输入级用于将外部时钟信号驱动到8051,通常采用互补驱动器。当输入时钟在高电平和低电平之间转换时,驱动器将暂时同时打开,导致显著的电流涌。使用方波,高、低状态之间的转换几乎是瞬时的,并且两个器件都打开的时间是最小的。上升和下降时间较慢的波形,如正弦波或三角波,将需要更长的时间来完成转换,并且将花费更多的时间与两个驱动器在一起。这将增加电流和功率消耗。


图4。消除外部SRAM和锁存器节省电力。

图5显示电流消耗与波形形状的关系。时钟源是一个可编程的波形发生器,能够输出正弦波、三角波或方波。显示的电流消耗是四个器件的平均值,包括传统和高速核心。比较表明,电流消耗与时钟波形的上升(和下降)时间成正比。三角波的斜率最小,方波的斜率最大。方波比三角波平均小0.75毫安。这意味着外部时钟振荡器设计中的电流消耗可以通过使用具有快速上升和下降时间的振荡器来减少。这在较低的频率下变得更加重要,因为设备在转换中花费的时间更长。


图5。具有更锐利边缘的振荡器波形可降低功耗。

一些8051衍生产品包含片上内部环形振荡器。这通常是一串在其周围传播脉冲的逆变器。这提供了一个大约2MHz到4MHz的内部时钟源,能够操作设备。因为它不需要使用晶体,所以它是一个非常低功耗的时钟源。DS87C520高速微控制器的特性表明,环形振荡器在大约3.6mA的情况下可以提供与7MHz 8051相当的性能。尽管环形振荡器不具有压电晶体的稳定性,但其低功耗和可忽略不计的上电延迟使其成为电源管理方案中的重要因素。

时钟管理

如前所述,微控制器的工作频率是影响器件功耗的最大因素。虽然系统时钟频率主要是硬件功能,但8051有能力对其进行有限的控制。这些方法依赖于减慢或停止所有或部分设备的内部工作频率。传统的8051架构使用两种时钟控制模式:空闲和停止。

改进停止模式

停止模式是8051设计人员可用的最低功耗状态。在这种模式下,内部晶体放大器停止,停止设备的操作。退出停止模式通常由外部重置启动。一些变体还支持使用外部中断退出停止模式。

与停止模式相关的缺点之一是在晶体恢复工作的“死区时间”期间消耗的功率。晶体振荡器依靠石英晶体的运动来工作。物理限制要求晶体振荡在有限的时间内达到器件运行所需的足够幅度。无论时钟源是外部晶体还是内部晶体放大器,或者是否使用外部晶体振荡器,都会遇到这个预热期。这个时间可以在3ms到12ms之间,这取决于晶体和相关放大器的特性。

预热期对功耗的影响是,虽然设备在此期间没有执行任何有用的工作,但它仍在消耗功率。如果设备频繁地进入和退出停止模式,或者退出停止模式以执行短任务,这可能会变得很重要。事实上,如果任务很短(<5毫秒),晶体重启周期消耗的能量比任务本身还要多。如果使用环形振荡器从停止模式执行“快速启动”,则可以避免这种延迟。这将大大减少停止模式时的电量。

图6显示两个系统从停止模式退出并执行一个短任务的操作。一种器件采用内部环形振荡器,另一种采用传统的外部晶体。没有环形振荡器的器件必须经受一段晶体预热期。在此期间,设备继续消耗电力,但没有完成有用的工作。第二个器件是DS87C520高速微控制器,它集成了一个内部环形振荡器。这允许设备在退出停止模式时立即恢复操作。在本例中,要执行的例程在大约2MHz时持续时间小于4ms。从图中可以看出,在退出Stop模式时,使用环形振荡器执行短任务可以大大降低能耗。


图6。停车模式出口带环和不带环的比较。

在某些应用中,在退出停止模式后不久,可能需要晶体振荡器的稳定性。在这种情况下,环形振荡器仍然是有利的。一旦退出停止模式,器件应立即重启晶体振荡器。然后,该设备可以初始化任何数据或寄存器,而晶体仍在升温。大多数高速微控制器都包含一个状态位,表示晶体振荡器是否稳定。一旦晶振代码的初始化程序完成,软件就可以轮询状态位,以确定何时可以开始高精度定时操作。

另一种提高停止模式效率的方法是使用中断退出而不是重置。这使得处理器可以根据停止位设置后的指令立即恢复操作,而不必从复位向量重新启动。这消除了确定复位原因的需要,并允许处理器在更短的时间内开始执行有用的工作。

空闲模式

空闲模式是原始8051架构中使用的第二种时钟管理模式。此模式停止CPU的操作,但保持片上通用定时器的操作。在对功率敏感的应用程序中,这些计时器用于定期唤醒设备以执行任务或轮询是否应该执行任务。

由于标准8051定时器被限制为16位,这允许在16MHz时钟速率下的最大超时时间为31ms。如果需要更长的周期,则需要多个计时器溢出。这将消耗额外的功率,因为设备必须偶尔恢复完全操作以增加计数器,但不执行任何有用的工作。

对于较长的周期,使用具有较长周期的内部计时器。一些8051衍生产品包含一个看门狗定时器,它也可以用来唤醒设备。看门狗定时器可以被编程为长超时周期,大约226个时钟周期。这将允许在16MHz时的最大超时时间为4.2s。例如,假设应用程序希望每隔3秒从低功耗状态唤醒一次以执行任务。如果使用内部计时器对操作进行计时,则设备将不得不退出空闲模式96次而不做有用的工作。如果使用了长超时的看门狗定时器,设备将只退出一次Idle模式,执行任务,然后返回到低功耗状态。

另一种选择是使用带有实时时钟(RTC)的微控制器。DS87C530高速微控制器包含一个能够产生长达24小时报警周期的RTC。由该告警产生的内部中断会导致设备退出Idle或Stop模式。使用RTC退出停止模式是长时间暂停设备操作的最有效方法。

电源管理模式

虽然空闲模式通过停止程序执行来降低功耗,但内部计时器继续以外部时钟频率工作。考虑到计时器基本上处于“待机”状态,这将消耗相当多的功率。

更好的方法是降低整个设备的时钟速率。这可以通过内部时钟除数来实现,它在外部时钟频率进入CPU之前将其除数。该方案已在DS87C520高速单片机上实现。本设备采用电源管理模式1和电源管理模式2两种时钟除法功能,电源管理模式1将输入时钟源除以64,电源管理模式2将输入时钟源除以1024。通过在特殊功能寄存器中设置适当的位来启用这些模式。

图7显示了DS87C520高速微控制器上的时钟除数和时钟控制模式的比较。该图对比了全速(除以4)、电源管理模式1(除以64)、电源管理模式2(除以1024)、空闲模式和停止模式下的电流消耗。正如预期的那样,停止模式消耗的电流最少,因为所有内部时钟都停止了。这种比较的一个有趣结果是,两种电源管理模式比空闲模式消耗更少的电流。这不仅允许设备节省电力,而且允许它在低水平操作下连续工作。在传统的8051体系结构中,执行任何类型的CPU活动都是“全有或全无”。设备被迫以最高性能水平持续运行,即使只需要短时间的高性能。这不必要地增加了电力消耗。电源管理模式(PMM)的使用允许设备(和系统)将其功耗与所需的性能水平相匹配。


图7。Full/Idle/Power管理模式比较。

在PMM中使用中断

使用内部时钟除数的一个可能后果是中断延迟可能会大大增加。此外,减慢内部计时器会影响8051串行端口生成标准波特率或与标准波特率同步的能力。这可能会严重干扰设备对外部刺激的反应能力。一种解决方案是合并一个功能,当识别到外部中断或串行端口活动时,自动恢复设备到完全运行状态。这种机制已经在DS87C520中实现。该设备的Switchback功能允许设备快速响应外部中断。一旦中断被确认,设备将自动切换回全速(除以4),无需软件干预。

串行端口以类似的方式操作。在接收到串行端口接收引脚上的下降沿(起始位)后,设备将自动切换回全速(除以4)。因为这在传输开始时立即发生,设备将以全速正确接收传输的其余部分。对于传统的8051体系结构,在低功耗配置中使用串行端口的唯一方法是使用Idle模式。电源管理模式的使用提供了一个低功耗的替代方案。

改进突发模式操作

在功率意识设计中,一种常见的操作模式是让系统从停止模式唤醒,执行一系列活动,然后返回到停止模式。在这种系统中,降低功耗的一种方法是提高工作频率。乍一看,这似乎有悖直觉。在设备运行的时间内,它将比在较低频率下运行的系统消耗更多的功率。然而,系统运行时消耗的静态电流不是频率的函数。在最后的系统设计中,通常评估能量以确定电池寿命。在评估高性能微控制器时,这种区别很重要,因为它结合了时间和处理能力的概念。如果一个给定系统的功率和时间的乘积较小,那么它将需要更少的能量,不管单独的项是什么。在许多情况下,可以证明高速微控制器实际上可以通过在短时间内快速运行来减少能耗,而不是在较长时间内更慢地运行。

这可以通过重新检查图7来证明。假设从停止模式恢复后,DS87C520必须读取I/O端口,执行数学计算,并将结果输出到另一个端口,需要500个机器周期的CPU时间。从图中可以看出,10MHz时的电流消耗为12.4mA, 30MHz时为34.6mA。表1总结了两种速度下的任务结果。从表中可以看出,在30MHz下运行是最节能的,能耗降低了6%以上。

抓紧时间等待

在许多应用程序中,停止模式的超时时间并不完全依赖于速度。通常,设备必须访问具有固定响应时间的外设,例如a /D转换器或恒温器。在这种情况下,微控制器将有一个活动爆发,通常是启动一个进程,然后是一个很少或没有活动的时期。在这种情况下,节能技术的组合可能是有效的。

一个实际的例子可以说明高速微控制器与PMM在这种系统中的优势。假设DS87C520与DS1620数字温度计和恒温器相连。该设备使用标准8051串行端口在模式0下进行串行寻址。主机处理器偶尔会使用外部中断将DS87C520从停止模式唤醒,并请求它从DS1620读取温度。数据被检索后,DS87C520将其存储在内部存储器中稍后传输。DS1620的功能类似于许多A/D转换器:发出命令开始转换,然后在转换完成时有延迟,然后数据被移出。在DS1620的情况下,转换时间约为1秒。轮询设备以确定转换何时完成。DS87C520非常适合这样的任务,因为它可以快速执行初始化和计算功能。然后,该设备可以在等待转换完成时将自己置于PMM中。在传统的8051中,一旦转换开始,空闲模式将用于将传统8051置于低功耗状态。使用这种模式允许一个内部16位定时器来测量转换周期。在16MHz工作时,传统的8051可能需要在转换完成之前退出空闲模式多达32次。

表1。500个机器周期任务的能耗与处理器速度

时钟频率
机器周期
机器周期要求
总时间
我(CC)
当前时间积
10 mhz
400纳秒
500
200年代
12.41马
2.48
30兆赫
133纳秒
500
66.5秒
34.66马
2.30


在这个例子中还可以做进一步的改进。由于DS1620被定位为同步器件,因此不需要高精度的定时操作。因此,微控制器可以在启动和返回转换结果时从环形振荡器操作。通过消除稳定外部晶体所需的死区时间,从而进一步节省功率。

图8举例说明两个8051系统执行上述“急、等”方案的运作。从图中可以看出,退出停止模式后,在程序执行期间可以节省大量电力。除了使用PMM2而不是Idle模式节省的功率外,消除晶体预热期意味着例程可以更快地返回到停止模式。在1s转换延迟期间从环形振荡器运行会进一步降低处理器的速度,从而节省更多的功率。


图8。实施8051“抓紧等待”计划。

总结

8051微控制器家族仍然是世界上最流行的处理器之一。它的易用性和相对较高的性能使其成为许多应用的理想选择,包括便携式和手持产品。Maxim高速微控制器的引入为现有8051设计提供了一种方法,可以提高其功率效率,而无需进行昂贵的重新设计。

高速微控制器降低功耗的好处可以总结如下:

  • 高性能CPU允许放慢处理器时钟,从而以更低的功耗获得相同水平的性能。或者,可以在不增加功耗的情况下提高现有系统的性能。

  • 高速微控制器集成了看门狗定时器、附加uart和精确复位电路等功能。外部组件功耗更高。

  • 两种新的低功耗模式的引入为Idle模式提供了一种低功耗的替代方案。除了降低电流消耗外,DS87C520中使用的电源管理模式允许处理器在低电平状态下执行诸如轮询之类的任务。传统的8051架构要求处理器以最大的时钟速率运行,即使只需要最小的处理能力。

  • 可编程时钟速率和高性能核心的优点可以与停止模式相结合,以大大降低功耗。已经给出了一些例子,说明如何通过将器件的时钟速率与期望的性能水平相匹配来降低能耗。

声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: