我们探讨过在每种Arm Cortex-M处理器上可以找到的低功耗模式的基本原理,以及如何使用WFI和WFE指令让处理器进入睡眠模式。实际上我们真正要了解的是,低功耗模式如何在真正的微控制器上实现?这些模式是如何影响嵌入式系统的?在这篇文章中,我们将更详细探讨如何让微控制器进入睡眠状态并看看到底能够节省多少能耗。

在我的上一篇文章《ARM Cortex-M低功耗模式基本原理》中,我们探讨了在每种Arm Cortex-M处理器上可以找到的低功耗模式的基本原理,以及如何使用WFI和WFE指令让处理器进入睡眠模式。实际上我们真正要了解的是,低功耗模式如何在真正的微控制器上实现?这些模式是如何影响嵌入式系统的?在这篇文章中,我们将更详细探讨如何让微控制器进入睡眠状态并看看到底能够节省多少能耗。

低功耗模式实验

探索低功耗模式的最佳方法是选择一个微控制器并以各种低功耗模式实际运行该处理器。本文中,我决定翻出积尘已久的NXP Kinetis-L Freedom电路板,我曾经不仅用它进行过实验,而且还应用于许多产品、应用和课程。无论对错,我决定不仅要测量微控制器的能耗,还要测量整个开发板的能耗。MCU通常是电路板上的耗能大户之一,但测量整个系统的电流经常提醒我它并不是电路板上唯一的耗电器件。微控制器的优化长路迢迢,但其实它并不是唯一需要优化能耗的器件。

从基线测量开始

每当我努力优化一个产品的能耗时,我首先会从基线能量测量开始。通常我会通过分析几秒或几分钟内设备的电流消耗来了解应该从哪里开始。在我的开发板实验中,将Kinetis-L置于运行模式,无睡眠模式,所有外设均运行并设置电路板定期切换LED。通过采用IAR嵌入式工作台的I-Jet调试器以及I-Scope,我可以为该电路板配置一个简单基线,即LED关闭时电流消耗大约为16.9mA,LED打开时大约为18.0mA,如图1所示。显然,从哪里开始进行测量很重要,否则分析结果可能明显偏离。

20190806-200.png

图1:开发板的电流测量,LED每秒切换一次。 (来源:作者)

采用等待模式和深度睡眠模式优化能耗

节省能耗最快的方法是执行等待或深度睡眠模式。研究Kinetis-L处理器的数据表可以得出,等待模式的能耗在3伏电压下的电流介于3.7和5.0mA之间。在此模式下,CPU和外设时钟被禁用,而闪存处于休眠模式,此时允许处理器在中断时间范围内(12-15个时钟周期)仍然可以被唤醒。等待模式易于实现,设置进入等待模式的代码如下所示:

void Sleep_Wait(void)
{
SCB_SCR &=~ SCB_SCR_SLEEPDEEP_MASK;
asm(“WFI”);
}

只需这两行代码,开发板的电流消耗就从18.0mA降至15.9mA。电流消耗减少了11.6%! 如果电路板由680mA电池供电,则该设备的电池寿命将从37.8小时变为42.8小时!两行代码就可以将电池寿命延长五小时!

这些高级电源模式的好处在于我们可以轻松地再向前迈一步。我们可以使用以下代码将处理器置于深度睡眠等待模式,而不仅仅是等待模式:

void Sleep_Deep(void)
{
SCB_SCR |= SCB_SCR_SLEEPDEEP_MASK;
asm(“WFI”);
}

我们所做的仅仅是调整了SCB_SCR寄存器中的一位,就已经将最初的18mA电流消耗减少为14.8mA。电流消耗减少了17.8%!同样,假设电路板由680mA电池供电,电池寿命现在已经从37.8小时增长为46小时!只需几行代码就可以节省大量能耗,而这只是冰山一角!

利用Stop模式和VLLS模式实现微安级电流消耗

采用停止模式可以禁用内核和系统时钟,这有可能将MCU电流消耗再进一步降低两毫安。 你会发现,功耗模式越低,实现它所需的代码就越多,而唤醒系统恢复工作的代码就越复杂。令Kinetis-L进入停止模式的代码如下所示:

void Sleep_Stop(void)
{
volatile unsigned int dummyread = 0;
SMC_PMCTRL &=~ SMC_PMCTRL_STOPM_MASK;
SMC_PMCTRL |= SMC_PMCTRL_STOPM(0);
dummyread = SMC_PMCTRL;
Sleep_Deep();
}

请注意,停止模式通过电源管理控制寄存器控制,一旦状态被设置,就会调用Sleep_Deep函数来完成电源模式的设置并执行WFI。

到目前为止,我们一直在谈论1~2mA的MCU能耗。现代微控制器将提供仅消耗微安甚至毫微安的电源模式!Kinetis-L处理器于2013年左右首次亮相,其超低漏电停止(VLLS)模式仅耗能135至496微安!初始化此电源模式的代码如下所示:

void Sleep_VLLS1(void)
{
volatile unsigned int dummyread = 0;
SMC_PMCTRL &=~ SMC_PMCTRL_STOPM_MASK;
SMC_PMCTRL |= SMC_PMCTRL_STOPM(0x4);
SMC_VLLSTRL = SMC_VLLSCTRL_LLSM(1);
dummyread = VLLS_CTRL;
Sleep_Deep();
}
讲到这里,你会发现微控制器已经几乎不消耗任何能量了!

低功耗模式对唤醒延迟的影响

正如我们目前所看到的那样,将处理器设置为越来越低的电源模式是节省能源的好方法,但这是需要付出代价的。处理器的能量状态越低,唤醒处理器恢复工作所需的时间就越长。例如,如果我使用标准停止模式,则处理器被唤醒并再次开始执行代码需要2μs加上中断延迟,这还可以接受。但是,如果在Kinetis-L上设置了其中一种VLLS模式,将需要启动处理器的唤醒延迟再加上额外的53到115微秒!有些应用可能无法接受这种状况。图2显示了Kinetis-L从低功耗模式到运行状态的各种转换。



图2:Kinetis-L从低功耗模式到各种模式的转换时间。 (来源:Kinetis-L数据表)

结论

Arm微控制器都具有标准的低功耗模式,但每个芯片厂商都会定制开发人员可用的更多低功耗模式。正如我们所看到的,芯片供应商通常会提供几种容易实现的模式,对唤醒延迟的影响最小。他们还会提供几种超低功耗模式,几乎可以关闭处理器并且仅消耗几百微安或更少能量!开发人员通常需要在能耗和系统被唤醒需要的时长以及响应事件的速度之间进行权衡。而权衡一定是基于应用的,所以不要指望能够在每个产品和应用上都执行最低功耗模式。

本文同步刊登于电子工程专辑杂志2019年8月刊

阅读全文,请先
您可能感兴趣
SiC的特定特性要求对MOSFET器件和栅极驱动电路进行仔细选择,以确保安全地满足应用需求,并尽可能提高效率。在本文中,我们将讨论为SiC MOSFET选择栅极驱动器时应考虑的标准。
由于在满足所有要求方面存在不同的权衡,因此很难采用一种适用于所有情况的电流检测方法。
宽禁带半导体(例如SiC和GaN)在可靠性、能效、功率密度和降低成本方面具有重要优势。
ITSA报告对当前的V2X应用进行了分析,并对两个关键的V2X部分进行了展望——使用5.9GHz频谱的直连V2X和使用4G LTE和5G蜂窝通信的网联V2X。此外,该报告还对未来在5.9GHz当前30MHz带宽限制之外的扩展进行了展望。
提升功率密度的需求给功率器件及其封装与冷却技术带来了特定的挑战。
在电气设计过程中,需要做出某些设计选择。其中一个例子是使用跨接式连接器的USB C型连接器设计。在这种情况下,使用跨接式连接器时,PCB的整体厚度受到限制,因为跨接式连接器的厚度决定了整体厚度。
目前,智能终端NFC功能的使用频率越来越高,面对新场景新需求,ITMA多家成员单位一起联合推动iTAP(智能无感接近式协议)标准化项目,预计25年上半年发布1.0标准,通过功能测试、兼容性测试,确保新技术产业应用。
中科院微电子所集成电路制造技术重点实验室刘明院士团队提出了一种基于记忆交叉阵列的符号知识表示解决方案,首次实验演示并验证了忆阻神经-模糊硬件系统在无监督、有监督和迁移学习任务中的应用……
C&K Switches EITS系列直角照明轻触开关提供表面贴装 PIP 端子和标准通孔配置,为电信、数据中心和专业音频/视频设备等广泛应用提供创新的多功能解决方案。
投身国产浪潮向上而行,英韧科技再获“中国芯”认可
今日,长飞先进武汉基地建设再次迎来新进展——项目首批设备搬入仪式于光谷科学岛成功举办,长飞先进总裁陈重国及公司主要领导、嘉宾共同出席见证。对于半导体行业而言,厂房建设一般主要分为四个阶段:设备选型、设
点击蓝字 关注我们安森美(onsemi)在2024年先后推出两款超强功率半导体模块新贵,IGBT模块系列——SPM31 IPM,QDual 3。值得注意的是,背后都提到采用了最新的FS7技术,主要性能
来源:观察者网12月18日消息,自12月2日美国发布新一轮对华芯片出口禁令以来,不断有知情人士向外媒透露拜登政府在卸任前将采取的下一步动作。美国《纽约时报》12月16日报道称,根据知情人士以及该报查阅
12月18日,珠海京东方晶芯科技举行设备搬入仪式。插播:加入LED显示行业群,请加VX:hangjia188在10月31日,珠海京东方晶芯科技有限公司发布了Mini/Micro LED COB显示产品
对于华为来说,今年的重磅机型都已经发完了,而明年的机型已经在研发中,Pura 80就是期待很高的一款。有博主爆料称,华为Pura 80将会用上了豪威OV50K传感器,同时电池容量达到5600毫安时。至
有博主基于曝光的信息绘制了iPhone 17系列渲染图,对比iPhone 16系列,17系列最大变化是采用横置相机模组,背部DECO为条形跑道设计,神似谷歌Pixel 9系列,这是iPhone六年来的
万物互联的时代浪潮中,以OLED为代表的新型显示技术,已成为人机交互、智能联结的重要端口。维信诺作为中国OLED赛道的先行者和引领者,凭借自主创新,实现了我国OLED技术的自立自强,成为中国新型显示产
万物互联的时代浪潮中,以OLED为代表的新型显示技术,已成为人机交互、智能联结的重要端口。维信诺作为中国OLED赛道的先行者和引领者,凭借自主创新,实现了我国OLED技术的自立自强,成为中国新型显示产
 “ 担忧似乎为时过早。 ”作者 | RichardSaintvilus编译 | 华尔街大事件由于担心自动驾驶汽车可能取消中介服务,Uber ( NYSE: UBER ) 的股价在短短几周内从 202
扫描关注一起学嵌入式,一起学习,一起成长在嵌入式开发软件中查找和消除潜在的错误是一项艰巨的任务。通常需要英勇的努力和昂贵的工具才能从观察到的崩溃,死机或其他计划外的运行时行为追溯到根本原因。在最坏的情