低功耗MCU

提升安全防御能力

2020年3月24日 – 专注于引入新品并提供海量库存的电子元器件分销商贸泽电子 (Mouser Electronics) 即日起开始备货STMicroelectronics (ST) 的STM32L5超低功耗微控制器。STM32L5系列采用集成Arm TrustZone® 硬件安全技术的Arm® Cortex®-M33内核,并具有一组保护功能和嵌入式高速存储器,性能高,功耗低。

贸泽电子备货的STM32L5微控制器采用以Arm TrustZone为基础并支持ARMv8-M主要扩展选项的安全架构。此32位Cortex-M33内核具有浮点运算单元、一组DSP(数字信号处理)指令,以及用于提高应用安全性的存储器保护单元 (MPU)。此外,STM32L5系列还通过了Arm的PSA 1级和2级认证。

STM32L5器件内置高速存储器(高达512KB闪存和256KB SRAM),以及用于静态存储的灵活外部存储控制器(对于引脚数为100及以上的器件)。其他外设还包括八通道SPI闪存接口,以及一系列可连接两根APB总线、两根AHB总线和一个32位多AHB总线矩阵的增强型I/O和外设。此器件集成了ST的ART 加速器™,能够让64位程序闪存在以高达110 MHz的时钟速度和165 DMIPS运行时,进行零等待访问。

STM32L5微控制器采用ST的低功耗技术,让设计人员能够灵活优化功耗。根据处理需求均衡功耗的电压调节等技术以及完整的节能模式组合(包括低至62 µA/MHz的运行模式和108 nA的待机模式),有助于工程师设计出各种低功耗应用。

欲知更多详情,敬请访问:https://www.mouser.cn/new/stmicroelectronics/stm-stm32-l5-mcus/

作为授权分销商,贸泽电子始终致力于快速引入新产品与新技术,帮助客户设计出先进产品,并使客户产品更快走向市场。超过800家半导体和电子元器件生产商通过贸泽将自己的产品带向全球市场。贸泽只为客户提供通过全面认证的原厂产品,并提供全方位的制造商可追溯性。

贸泽电子拥有丰富的产品线与贴心的客户服务,积极引入新技术、新产品来满足设计工程师与采购人员的各种需求。我们库存有海量新型电子元器件,为客户的新一代设计项目提供支持。Mouser网站Mouser.cn不仅有多种高级搜索工具可帮助用户快速了解产品库存情况,而且网站还在持续更新以不断优化用户体验。此外,Mouser网站还提供数据手册、供应商特定参考设计、应用笔记、技术设计信息和工程用工具等丰富的资料供用户参考。

关于贸泽电子 (Mouser Electronics)

贸泽电子隶属于伯克希尔哈撒韦集团 (Berkshire Hathaway) 公司旗下,是一家屡获殊荣的授权电子元器件分销商,专门致力于以高效的方式,向设计工程师和采购人员提供各产品线制造商的新产品。作为一家全球分销商,我们的网站mouser.cn能够提供多语言和多货币交易支持,分销超过800家生产商的500多万种产品。我们通过遍布全球的27个客户支持中心为客户提供贴心的服务。

更多信息,敬请访问:http://www.mouser.cn

围观 3

MCU功耗明明应该只有176nA,可是测出来的硬是达到了700mA!简直是不能忍啊,想死的心都有了。

平常我们在使用MCU低功耗时经常会出现实际功耗比理论功耗偏差较大,如在某些低到微安级的功耗模式,而我们设计的低功耗怎么测都是毫安级的,电流竟然能够高出理论几百到上千倍,遇到这种情况千万不要怕,只要认真你就赢了。

下面列出在设计低功耗时需要注意的五点。

1、掐断外设命脉——关闭外设时钟

先说最直观的,也是我们都比较注意的方面,就是关闭MCU的外设时钟。对于现在大多数的MCU,其外设模块都对应着一个时钟开关,只要打开这个外设时钟,就可以正常使用该外设了,当然,该外设也就会产生相应的功耗;反之,如果想要让这个外设不产生功耗,一般只需要关闭该外设时钟即可。

2、让工作节奏慢下来——时钟不要倍频

除了外设模块功耗消耗之外,还有一个功耗大户,那就是PLL和FLL模块。PLL和FLL主要是用来对原始的时钟信号进行倍频操作,从而提高系统得整体时钟,相应的其功耗也会被提上去。所以在进入低功耗前,需要切换时钟模式,旁路掉PLL和FLL模块,等到MCU唤醒之后再把时钟切换回去。


3、围堵涓涓细流——注意IO口的电平状态

如果认为只要关闭外设时钟就能够保证外设不在耗电,那你就真的太年轻了。如果IO口没有做好处理的话,它就会在暗地里偷走功耗,而你却浑然不知。具体原因是这样的,一般IO内部或者外部都会有上下拉电阻,举个例子如下图所示,假设某个IO口有个10KΩ的上拉电阻,根据欧姆定律,此引脚就会消耗3.3V/10K=0.33mA的电流,假如有四、五个这样的IO口,那么几个毫安的电流就这样贴进去了,太可惜了。

所以在进入低功耗之前,请逐个检查IO的状态:

  • 如果该IO口带上拉,请设置为高电平输出或者高阻态输入;
  • 如果该IO口带下拉,请设置为低电平输出或者高阻态输入;


4、睦邻友好合作——注意IO与外设IC的统筹

IO口的上下拉电阻消耗电流这一因素相抵比较明显,下面咱们来说一个不明显的因素:IO口与外部IC相连时的电流消耗。假如某个IO口自带上拉,而与此IO相连的IC引脚偏偏是自带下拉的,那么无论这个引脚处于什么样的电平输出,都不可避免的会产生一定的电流消耗。所以凡是遇到这一类的情况,首先需要阅读外设IC的手册,确定好此引脚的状态,做到心中有数;然后再控制MCU睡眠前,设置好MCU的IO的上下拉模式及输入输出状态,要保证一丝儿电流都不要被它消耗掉。

5、断开调试器连接——不要被假象所迷惑

还有一类比较奇特,检测出来的电流消耗很大,可实际结果是自己杞人忧天,什么原因呢?是因为在测试功耗的时候MCU还连着调试器呢!这时候大部分电流就会被调试器给掳走,平白无故的让我们产生极度郁闷的心情。所以在测试低功耗的时候,一定不要连接着调试器,更不要边调试边测电流。

本文转自:ZLG立功科技,转载此文目的在于传递更多信息,版权归原作者所有。

围观 51

低功耗问题经常让产品设计者头痛而又不得不面对。以单片机(MCU)为核心的系统,其功耗主要由单片机功耗和单片机外围电路功耗组成。要降低单片机系统的功耗,需要从硬件和软件两方面入手。

硬件设计考虑因素

要满足单片机系统的低功耗要求,选用具有低功耗特性的单片机可以很容易实现(例如,Siliconlaboratories设计的高速C8051F系列单片机)。因为具有低功耗特性的单片机可以大大降低系统功耗,这可以从单片机的供电电压、内部结构、系统时钟和低功耗模式等几方面来考察一款单片机的低功耗特性。一般来讲,用户在选择技术供应商和产品过程中,需要对下面的一些重要硬件参数进行更加深入的考量:

选择简单的CPU内核

选择CPU内核时切忌一味追求性能,以“够用就好”为原则。8位机够用,就没有必要选用16位机、32位机;单片机的运行速度越快,往往其功耗也越大。一个CPU越复杂、集成度越高、功能越强,片内晶体管越多,总漏电流也越大,即使进入STOP状态,漏电流也会变得不可忽视;而简单的CPU内核不仅功耗低,成本也低。

选择低电压供电的单片机系统

单片机系统的供电电压低,可以有效地降低其系统功耗。由于半导体制造工艺的发展,现在单片机的供电电压从5V供电降低到3.3V、3V、2V乃至1.8V。供电电压低,不紧可以降低单片机的功耗,还可以降低单片机外围电路的功耗。

选择带有低功耗模式的单片机系统

低功耗模式指的是系统的Idle、Stop和Suspend等模式。处于这些模式下的功耗将远远小于正常运行下的功耗。Idle模式下,CPU停止工作,但内部系统时钟并不停止,单片机的外围I/O模块也不停止工作;系统功耗一般降低有限,相当于工作模式功耗的50%左右。

如果在CPU进入Stop模式时,将各个模拟外设关掉,这时的功耗可以降低到nA级。但是在Stop模式下,CPU被唤醒后要重新对系统作初始化,所有特殊功能寄存器的内容将被重新初始化。这在某些低功耗应用场合需要注意。

Suspend模式下,CPU、内部系统时钟停止工作,I/O模块等被悬挂起来,片内RAM中存储的数据将被保持,CPU的功耗可以降低到nA级,由唤醒事件唤醒。当CPU被唤醒后,系统不会被CPU复位,继续从进入Suspend模式的地方开始执行程序。这是一种非常理想的低功耗模式。

在硬件层面来说,对上面的这些参数进行仔细衡量是十分必要的,除此之外,选择合适的时钟方案和使用每MIPS功耗来衡量MCU的低功耗性能也是非常关键的。

应用软件考虑因素

应用软件设计对于一个低功耗系统的重要性常常被人们忽略。一个重要的原因是,软件设计上的缺陷并不像硬件那样容易发现,同时也没有一个严格的标准来判断一个软件的低功耗特性。但是设计者如果能尽量将应用的低功耗特性反映在软件中,就可以避免那些“看不见”的功耗损失:

用“中断”代替“查询”

在没有要求低功耗的场合,程序使用中断方式还是查询方式并不重要。但在要求低功耗场合,这两种方式相差甚远。使用中断方式,CPU可以什么都不做,甚至可以进入等待模式或停止模式;而查询方式下,CPU必须不停地访问I/O寄存器,这会带来很多额外的功耗。

用“宏”代替“子程序”

子程序调用的入栈出栈操作,要对RAM进行两次操作,会带来更大的功耗。宏在编译时展开,CPU按顺序执行指令。使用宏,会增加程序的代码量,但对不在乎程序代码量大的应用,使用宏无疑会降低系统的功耗。

尽量减少CPU的运算量

减少CPU的运算工作量,可以有效地降低CPU的功耗。减少CPU运算的工作可以从很多方面入手:用查表的方法替代实时的计算;不可避免的实时计算,算到精度够了就结束,避免“过度”的计算;尽量使用短的数据类型,例如,尽量使用字符型的8位数据替代16位的整型数据,尽量使用分数运算而避免浮点数运算等。

让I/O模块间歇运行

在系统运行过程中,不用的I/O模块要关掉,间歇使用的I/O模块要及时关掉,以节省电能。同时,不用的I/O引脚要设置成输出或设置成输入,用上拉电阻拉高。

总之,在单片机系统设计过程中,需要深入理解单片机低功耗的特性,并在硬件和应用软件的设计过程中充分利用单片机的低功耗特性,从而设计出符合低功耗要求的产品。

本文引用地址: http://power.21ic.com//poc/technical/201808/75174.html

围观 310

根据数据手册列出的电流消耗规格来比较和选择低功耗单片机(MCU)是一项比较困难的任务。在大多数情况下,选择MCU的开发人员会先初步看看数据手册第一页,作为快速获得器件信息的参考点,其中包括外设、运行速度、封装信息、GPIO引脚数量和供电特性等。这种方法对于获得器件的整体性能很有效,但是在评估低功耗特性时却不实用。

为了对低功耗操作有全面了解,开发人员还要考虑电流消耗、状态保持、唤醒时间、唤醒源,以及低功耗模式下可运行的外设等。开发人员在相同操作模式下对比同类低功耗MCU,以获得客观的逐项比较结果。另外,易用的评估工具也非常重要,因为能评估整体系统功耗的额外功能和外设,使工程师的工作更加容易。

单片机选型有诀窍:根据数值选择低功耗MCU

MCU供应商通常会在数据手册第一页列出最低功耗值。虽然器件可能实现数据手册中提到的规格,但是实际的操作模式可能在应用中不一致。某些不利的低功耗特性并未列出,包括极慢的唤醒时间、无状态保持或RAM保持功能,或者操作电压范围缩小。为了深入了解各种低功耗特性,开发人员需定义相同的操作模式,其中包括两部分:电气规格和低功耗功能。

电气规格比较

电气性能规格罗列在数据手册中,通过仔细研究才能判断哪种规格更加重要。通常电气规范依据供应商定义的电源模式组织分类,这将使评估更加困难,因为需要熟悉每种电源模式的功能。一般情况下,定义一系列操作条件并对应到一种电源模式更有意义。例如,开发人员可能会定义下面一组操作条件:

• 状态保持和RAM保持条件下的休眠模式电流消耗

o 所有其他外设禁用

• RTC启用且状态保持和RAM保持条件下的休眠模式电流消耗

o RTC启用,所有其他外设禁用

• 唤醒时间

• 供电电压范围

  一旦操作条件有明确的定义,那么就很容易判定属于何种电源模式。

  额外的低功耗特性

第二部分是低功耗特性,这在供应商文档中很难找到,其散布在数据手册和参考手册中。低功耗功能的示例包括:

• 可用的唤醒源。

• 如何恢复代码执行。

• 在休眠模式下可操作的外设。

一旦相同的操作模式明确定义,开发人员可以开始研究文档中的更多细节。

经过收集数据的过程之后,还可以通过MCU相关的特性针对应用进一步降低功耗。这些特性优化可以减少BOM成本、提供更长的产品生命周期或者提供更好的设计灵活性。例如,片上DC-DC转换器能够有效为系统提供电能,从而减少功耗,并且允许使用更小的电池、降低整体BOM成本,或者提高功率预算的灵活性。多种唤醒源可以提升设计灵活性,允许MCU尽量停留在最低功耗模式,进一步降低应用的平均电流消耗。

开发人员的另一种优化方式是允许固件改变片内电源电压范围。当MCU在低频率下运行时,可以减少供电电压,从而节省功耗。可选的时钟门控使硬件模块与活动电路断开连接,从而避免不工作的外设消耗电能。以上特性没有列举在衡量低功耗MCU的供电电流规格中,但其实是实现最低整体系统功耗的关键。

使用工具降低设计复杂度

为实现最低功耗,MCU具有越来越高的配置度,但是也导致设计越来越复杂。为了应对增加的复杂性,开发人员应当关注MCU的评估平台和易于实现的解决方案。例如,用于编程MCU的开发板和软件工具应当是直观和方便使用的。使用不便的硬件将增加固件开发难度。而从固件的角度来看,MCU供应商应该提供可以实现数据手册上规格的固件示例。如果列举的电流消耗规格无法在评估板上实现,那在定制的硬件上配置MCU来获得这些数据更加困难。为客户提供可用于代码开发起点的各种代码示例能够帮助工程师更好的学习如何使用器件,并加快产品上市时间。

图形化配置工具能够辅助开发,帮助开发人员更深入的理解MCU。在开发低功耗应用时,需要了解整体功耗的分布。只有熟悉这些信息,才能明确哪些设计可以进一步优化,也能更好理解整体架构。理想情况下,低功耗配置工具能够给出进一步降低功耗的提示,也包括配置过程中检测到的任何配置错误。例如,Silicon Labs AppBuilder图形配置工具中的功耗评估器能够显示提供配置指导的功耗提示,并且也提供功耗预算的饼图,显示有多少电能消耗,以及哪些外设正消耗电能;当配置更改时,饼图将自动更新。

为了简化MCU的比较过程,下表中列出几种常见操作模式,以及Silicon Labs基于ARM Cortex-M3内核的SiM3L1xx MCU系列产品可提供的系统级优化功能和开发工具。

小结

为低功耗应用评估和选择MCU,仅了解数据手册第一页是远远不够的。开发人员深入分析器件的供电电流规格,由此决定哪个MCU可提供最低整体系统功耗,以及减少整体电源电流的系统级优化功能。

通常各个MCU供应商指定的操作条件不同,在一些情况下,列出的低功耗数据仅出现在不实用的模式中。在相同操作模式下对比MCU将避免开发人员被供应商宣称的超低功耗数据所误解。

一旦理解和确定器件的电气特性,开发人员还应关注合适的评估平台和软件工具。MCU的选择过程中需要考虑以上因素,因为这对于工程团队的快速运作非常重要。

Silicon Labs公司单片机产品经理Evan Schulz

Evan Schulz是Silicon Labs公司单片机产品经理,专注于公司的32位单片机系列产品,此前担任公司MCU团队应用工程师。Evan先生于2008年作为助理应用工程师加入 Silicon Labs公司。他拥有德克萨斯州大学奥斯汀分校的电机工程学士学位。

来源: 电子发烧友

围观 386

作者: 新唐科技

1、前言

传统的低功耗MCU设计都是以8位MCU为主,因为8位内核逻辑门数相对较少,运行或泄露电流低,售价也相对低廉。但是,许多新兴的应用都需要比8位内核更大的处理效率。近年智能生活的抬头、物联网的建立,便携式消费性电子产品与无线功能需求越来越高、设计越来越复杂,要提高性能的同时又要兼顾低功耗,需要有一款高性能低功耗的主控MCU来作为平台。另一方面,工业上的智能化也在展开,如远程监控、数字化、网络化等。简单说来,就是人物连接(云端应用)、物物连接(物联网)需求越来越多,导致产品功能越来越复杂,计算量越来越高,2009年ARM发表了32位Cortex-M0内核,提供给MCU厂商一个强而有力的平台,加上工艺微缩技术的进步,嵌入式闪存工艺普及化及降价,主要成本来自内存大小及模拟外设和IO引脚数量,CPU内核的成本差异已大幅缩短,更促进了高性价比32位低功耗MCU的快速发展。

2、MCU功耗来自何处?

在开始讨论低功耗MCU设计前,必须先探讨MCU功耗的来源,其主要由静态功耗及运行功耗两部分组成。考虑实际的应用,最后决定系统功耗性能指针则必须计算平均功耗。

2.1 运行功耗

现代MCU已集成相当多的模拟外设,不能单纯考虑数字电路的动态功耗。MCU运行时的总功耗由模拟外设功耗和数字外设的动态功耗相加而得。模拟电路的功耗通常由工作电压及其性能要求指针来决定,例如100ns传输延迟(Propogation Delay)的比较器工作电流可能约为40微安,当允许传递延迟规格为1μs时,工作电流有机会降到几个微安。

数字电路的动态功耗主要来自开关频率、电压及等效负载电容,其计算公式如下:

PDynamic(动态功耗) ~ f(工作频率) x CL(等效负载电容) x VDD2(工作电压)

由以上公式可以理解到降低动态功耗最直接的方式是降低工作电压及工作频率。但MCU实际应用通常要求更宽广的工作电压及更高的性能。在降低工作电压方面,可以选择更新的工艺,并通过LDO让CPU内核、数字电路及与引脚输入输出电压无关的模拟外设在低压工作,IO引脚及需要与其他外部电路连接的模拟外设则在较高的系统电压工作。如此可以兼顾低功耗及宽工作电压的需求。在降低工作频率这项参数上,一个设计优良的32位MCU更能突显其性能优势,除了直觉的MIPS比较之外,32位总线也代表更高的数据存取带宽,能以更低的工作频率达到相同的性能,进而降低整体功耗。另外,如果MCU内置与工作频率相关的模拟外设,例如石英晶体振荡电路、嵌入式闪存或电流式DAC,其电流消耗与转换频率成正比,也要纳入低功耗MCU的动态功耗设计考虑。

2.2静态功耗

传统静态功耗的定义是指系统时钟源关闭时数字电路的漏电流。但是在混合信号低功耗MCU的设计中要同时考虑下列多种漏电流来源,包含数字电路漏电流、SRAM漏电流、待机时已关闭的仿真电路漏电流(例如ADC,嵌入式闪存)、待机时不关闭的仿真电路工作电流(例如LDO、BOD)及IO引脚的漏电流。因为时钟源已关闭,影响静态功耗的主要参数为工艺、电压及温度。因此,降低静态功耗必须选择超低功耗工艺,但是低功耗工艺通常伴随较高的Vt,导致低电压模拟外设设计困难。另外,以MCU待机电流1微安的规格,代表数字电路漏电 + RAM保持电流 + LDO工作电流 + BOD(掉电检测或重置电路)工作电流总和必须小于1微安,对于Flash,RAM越来越大及功能越来越多的低功耗MCU设计厂商而言,是十分艰巨的挑战。

2.3平均功耗

在系统级要兼顾低功耗及高性能,必须考虑实际应用的需求,例如无线环境传感器可能让MCU主时钟及CPU关闭,只开启低频时钟,定时唤醒外围电路进行检测,当符合设定条件的事件发生时快速启动CPU进行处理,即使没有任何事件发生,也必须定时激活CPU维持无线传感器网络的联机。在遥控器的应用中,则可能完全将所有时钟源都关闭,当用户按键时快速唤醒时钟源及CPU进行处理。另外,许多应用都会加入一个MCU作为主机处理器的协处理器,用于监控键盘或红外线输入、刷新显示器、控制主处理器电源以及智能电池管理等任务。此时平均功耗比单纯的运行功耗或待机功耗更具指标性意义。

平均功耗由下列主要参数组合而成:运行功耗及运行时间,静态待机功耗及待机时间,不同运行模式之间的切换时间。兹以下图进行说明:

32位低功耗MCU的设计

32位低功耗MCU的设计

因为进入待机模式时间很短,忽略此段时间的电流消耗,公式可以简化为:
32位低功耗MCU的设计

由以上公式观察到除了降低运行电流及静态待机电流外,降低运行时间、唤醒时间及高低速运行模式切换时间也是降低整机功耗的重要手段。另外,上图同时指出,低功耗MCU支持动态切换运行时钟频率是必要的功能。

3、低功耗MCU设计考虑

3.1 工艺选择

为了达到低功耗的运作,并能有效地在低耗电待机模式下达到极低的待机功耗,可以通过对工艺的选择而达到基本的要求门槛。在不强调速度极致的某些工艺分类,选择极低组件截止电流工艺(如下图)进行逻辑门制作,并进行数字设计是方法之一。选择这种策略的额外效益是,通常也能在降低动态工作电流上,达到较好的表现。另外,由于高温大幅增加静态电流,当温度由摄氏25度增加到摄氏85度时,一个典型比例约增加10倍的静态电流,以非低功耗0.18微米工艺开发的32位MCU,逻辑门数200K、4KB SRAM在核心电压1.8V、摄氏25度的静态耗电约为5~10微安,当温度升高到摄氏85度时,静态待机电流将会飙升到50~100微安。而低功耗工艺在摄氏85度仅约10微安静态电流。

32位低功耗MCU的设计

3.2 低功耗高性能的CPU内核

早期低功耗MCU受限于成本及工艺技术,大都选择8位CPU内核,但随着工业上的智能化也在展开,如远程监控,数字化、网络化等。简单说来,就是人物连接(云端应用)、物物连接(物联网)的需求越来越多,导致产品功能越来越复杂,计算量越来越高,8位MCU已逐渐无法满足性能需求。为了兼顾低功耗高性能,选择适用的32位CPU内核是大势所趋。

选择低功耗CPU内核,除了单位频率耗电流外,还需要综合考虑紧凑的低内存代码,相同功能所需的代码越长,除了增加内存成本,也代表更长的运行时间及功耗。另外,由于软件开发成本在后期将会越来越高,大量的参考代码及更多的第三方开发商的支持,都可以有效降低软件的开发时间及成本。所以选择一款更多人使用的CPU内核也是重要的考虑之一,ARM Cortex-M0逻辑门数仅27K,使用的电量在1.8V,超低泄漏180ULL (Ultra Low Leakage)仅约50μA/MHz。M0内核采用Thumb2指令集架构,产生出非常紧凑的低内存代码,进一步降低了电源需求。ARM自2009年发表了32位Cortex-M0内核以来,包括NXP、新唐科技、ST、Freescale等多家国内外MCU大厂相继投入Cortex-M0 MCU开发,不论供货或者品种的齐全度都已十分成熟,投入Cortex-M0的MCU开发商也在持续增加中。

3.3 低功耗数字电路

对于一般的同步数字电路设计,要使数字单元有效降低工作电流,通过控制时钟的频率或截止不需要的时钟跳动,也是重要的方法。低功耗MCU通常配备丰富的时钟控制单元,可对个别的数字外设单元依照需求做降频或升频的工作调整,在达到工作能力的同时,用最低的频率来运行。但为了达到更弹性的时钟源配置,可能导致CPU内核和外围电路时钟不同步的现象,此时必须仔细考虑电路设计,保证跨时钟领域数据存取的正确性。

另外,为了尽量降低CPU介入处理的时间或降低CPU工作频率而节省下来的功耗,可以提供DMA或外围电路相互触发电路进行数据的传递,例如Timer定时自动触发ADC或DAC,并通过DMA进行数据由ADC到RAM或者RAM到DAC的搬移,同时在ADC的输入可以增加简单的数字滤波及平滑化电路,这样可不需要CPU经常介入处理,也不会因为需要实时处理ADC或DAC事件导致中断程序占用太多时间,降低系统的实时性及稳定性。

3.4 支持多种工作模式

为了配合不同的应用需求,并达到系统平均功耗的最小化,低功耗MCU需要提供多种工作模式,让用户灵活调配应用,常见的工作模式有下列几种:

● 正常运行模式:CPU内核及外设正常工作,能实时改变CPU及外设的工作频率(On the Fly)或关闭不需要的时钟源以获得最佳的工作性能。

● 低频工作模式:CPU内核及外设工作于低频的时钟源,例如32.768K晶振或内部低频10K RC振荡器。通常此时最大的耗电来源为嵌入式闪存及LDO本身的耗电流。如果此时的执行程序不大,可以考虑将程序运作于RAM以降低平均功耗。请注意并不是所有MCU都能支持在RAM执行程序。

● Idle模式:CPU内核停止,时钟源和被致能的外围电路持续工作,直到外围电路符合设定条件唤醒CPU进行数据处理或控制执行流程。通常高频的运行模式,CPU及嵌入式闪存消耗相当大比例的电流,故Idle模式能有效降低平均功耗。

● 待机RAM保持模式:CPU内核及所有时钟源关闭,内置LDO切换到低耗电模式,但是RAM及IO引脚持续供电,维持进入待机之前的状态。

● RTC模式:CPU内核及高频时钟源关闭,内置LDO切换到低耗电模式,由于此时LDO供电能力降低,仅能提供低耗电的外围电路运行,例如32.768K晶振、RTC(实时时钟计数器)、BOD(掉点检测或重置电路)、TN单色LCD直接驱动电路等。

● 深层待机模式:CPU内核及所有时钟源关闭,关闭RAM及LDO、BOD等所有外围电路的电源,仅IO引脚(或部分IO引脚)持续供电,由IO引脚或重置(Reset)引脚唤醒CPU。因为此模式下,RAM的数据已丢失,通常会进行内部电源切割,提供数十个状态记录缓存器作为系统重启时的初始状态参考源。此模式的优点是更低的静态电流,通常仅需100nA~500nA,其缺点是并非所有的应用都可以忍受RAM数据丢失及系统重启。

3.5 电源系统的考虑

在多电源系统的应用上,必须考虑低功耗MCU的内部电源规划或自动切换,以下以市电/备用电池双电源系统及内置USB接口,但平常由电池供电的移动设备来举例说明。

● 市电/备用电池双电源系统:MCU平常由市电经由交直流转换电路供电,当市电断电时,经由连接在备用电源的独立供电引脚进行供电,同时在MCU内部进行电源切割,并提供一个可靠的备用电源自动切换开关,确保市电正常供电时备用电池不会持续被消耗。但仔细考虑,其实有两种状况可能发生,一种是备用电池仅供电给部分低耗电的外围电路,例如32.768K晶振、RTC时钟电路、数据备份寄存器等。当市电来时MCU将重新启动。另外一种状况是当市电断电时,有可能MCU及部分外围电路会被唤醒工作,然后再次进入待机模式。智能型电表就是此类应用的典型代表。在此种应用中,备用电池需要供电给整颗MCU,所以电源自动切换开关必须能承受更高的电流,相对成本也较高。

● 内置USB接口移动设备:此类设备平时由两节电池供电或锂电池供电,工作电压可能为2.2V到3V,当连接到USB时,USB接口转由VBUS供电。此类低功耗MCU如果没有内置5V转3V的USB接口LDO将会产生下列问题,当连接USB时必须由外挂的LDO将USB VBUS的5V电源转换为3V电源同时提供给MCU VDD及USB接口电路,但又必须避免LDO输出的3V电源与脱机工作时的电池电源发生冲突,将会需要外加电源管理电路,增加系统成本及复杂度。

3.6 丰富的唤醒机制及快速唤醒时间

有许多的系统应用场合,需要由外部的单一信号、键盘或甚至串行通信信号来激发MCU启动整体系统的运作。在未被激发的时候,微控制器或甚至大部分的整机需要处于最低耗电的待机状态,以延长电池的寿命。能够在各种需求下被唤醒,也成为微控制器的重要特征。MCU能拥有各式不同的唤醒方式,包括各I/O可作为激发唤醒的通道,或是由I2C、UART、SPI的信道作为被外界组件触发唤醒,或使用内、外部的超低耗电时钟源,通过Timer来计时唤醒。诸多的唤醒机制,只要运用得当,并配合微控制器的低功耗工作切换模式,可以使MCU几乎时时处于极低功耗的状况。

配有快速、高效率内核的MCU,可以在每次唤醒的当下短暂时间里,完成应有的工作与反应,并再次进入深层的低待机模式,以此达到平均耗能下降的目的。但是,如果唤醒后开始执行微指令的时间因为某些因素而拖延得很长,将会使降低总体耗电的目标大打折扣,甚至达不到系统反应的要求。因此,有些MCU,配合起振时间的改进,逻辑设计的配合,使得唤醒后执行指令的时间至少降到数个微秒之内。

3.7 低功耗模拟外设及内存

低功耗MCU在运行时除了CPU内核及被使能的数字外围电路在工作外,越来越多被集成到内部的模拟外围电路也是耗电的主要来源。以最简单的while (1);执行语句来分析运行功耗,共包含下列耗电来源:CPU内核、时钟振荡器、嵌入式闪存内存、及LDO本身的消耗电流。代入以下典型值数据将会更清楚显示各个部分对耗电的影响:

● 工作频率12MHz,MCU电压3V,LDO输出1.8V供给CPU内核、内存及其他数字电路

● 低功耗Cortex-M0内核:600μA

● 嵌入式闪存内存:1.5mA

● 低功耗12MHz晶振电路:230μA

● LDO本身的静态消耗电流:70μA

● 总和 = 0.6 + 2 + 0.23 + 0.07 = 2.4mA,平均功耗约200μA/MHz

其中耗电比例最高的是嵌入式闪存内存。如果要工作在更高频率,通常会启动内置的PLL提供更高频率的时钟源,在1.8V供电的典型PLL,12MHz输入输出48MHz工作电流约为1~2mA,如果不能有效降低PLL耗电,对高频工作的低功耗MCU将是一大电流负担。

LDO的最低静态功耗、32.768kHz晶振电路、BOD及TN LCD驱动电路的工作电流,都会大大影响到待机或RTC模式的功耗指针。以低功耗应用的热能表为例,RTC加LCD显示的功耗要求在3V/8μA以下,这代表可以预估分配给下列电路的电流预算为:LDO静态功耗0.5μA + 32.768kHz晶振及RTC电路1μA + BOD 1μA + TN LCD驱动4μA + LCD玻璃1μA + 所有数字电路及模拟外设漏电流0.5μA。这些模拟外设除了低耗电要求,同时必须兼具要求批量生产及温度变化时的一致性,这对模拟设计人员将是一大挑战。

快速唤醒这个性能指针也会影响到下列模拟外设的稳定时间。当MCU从低耗电的待机模式唤醒时,首先要将LDO快速切换到高供电模式,启动内部高速RC振荡器,使能嵌入式闪存及CPU,以上所有电路的稳定时间总和必须在数个微秒内完成,才能符合快速唤醒的需求。

另外一个容易被忽略的设计是外围电路启动电流,因为相当多的便携设备采用CR2032小型锂电池,瞬间推动力仅有数mA,尤其使用一段时间瞬间推动力会更低,当MCU被唤醒时果外围电路启动电流总和太大时,将会导致CR2032输出电压骤降而导致MCU重置(Reset)或工作不正常。为了避免此问题,除了降低外围电路的启动电流,另一种方法是分时分段启动外围电路,不要集中开启太多耗电的电路。

4、平均功耗计算范例

为了让读者更具体了解平均功耗的计算,以新唐科技的低功耗32位MCU Nano系列及血糖计应用为例,进行使用年限的预估。新唐的Nano系列低功耗32位MCU的CPU内核为Cortex-M0,具有200uA/MHz低运行功耗、待机电流仅需1uA、7uS快速唤醒、多重时钟信号来源及多种工作模式,多达128KB Flash、16K SRAM及12位ADC、12位DAC、SPI、I2C、I2S、UART、LCD、Touch Key等丰富外设,符合低功耗、高性能MCU应用需求。

此血糖计范例采用CR2032 230mAh电池,使用方式、运行功耗及静态功耗如下表所示。

32位低功耗MCU的设计

使用年限的计算方式请参考下表。量测时间比例、显示时间比例及待机时间比例可由上表求得。例如,量测时间比例为“6次 x 0.25分钟 / (60 x 24)分钟 = 0.1%”。其余时间比例依此类推。量测平均电流为“量测时间比例 x (MCU工作耗电流 + 外部量测电路耗电流 + 待机(含RTC)耗电流 + LCD耗电流 + CR2032自放电)”。显示平均电流为“显示时间比例 x (待机(含RTC)耗电流 + LCD耗电流 + CR2032自放电)”。待机平均电流为“待机时间比例 x (待机(含RTC)耗电流 + CR2032自放电)”。最后计算出使用年限约为2.77年。由于待机时间比例高达99%,故血糖计应用待机电流为延长使用年限最重要的参数。
32位低功耗MCU的设计

5、结论

低功耗MCU设计是一个需要多面向考虑的复杂工作,本文仅阐述基本设计理念。开发低功耗MCU产品时,不只要挑战电路设计的高困难度,更要由客户应用的角度考虑性价比,功能最强的不一定是最好的。往往性价比最适合的才能在市场上取得成功。由于智能电网、物联网、远程控制、自动化管理等低功耗高性能应用需求量持续增加,在可以预见的未来,32位低功耗MCU将逐渐取代8/16位低功耗MCU,成为市场主流。

转自: xiahouzuoxin

围观 395

MCU功耗明明应该只有176nA,可是测出来的硬是达到了700mA!简直是不能忍啊,想死的心都有了。

平常我们在使用MCU低功耗时经常会出现实际功耗比理论功耗偏差较大,如在某些低到微安级的功耗模式,而我们设计的低功耗怎么测都是毫安级的,电流竟然能够高出理论几百到上千倍,遇到这种情况千万不要怕,只要认真你就赢了。

下面列出在设计低功耗时需要注意的五点。

1、掐断外设命脉——关闭外设时钟

先说最直观的,也是我们都比较注意的方面,就是关闭MCU的外设时钟。对于现在大多数的MCU,其外设模块都对应着一个时钟开关,只要打开这个外设时钟,就可以正常使用该外设了,当然,该外设也就会产生相应的功耗;反之,如果想要让这个外设不产生功耗,一般只需要关闭该外设时钟即可。

2、让工作节奏慢下来——时钟不要倍频

除了外设模块功耗消耗之外,还有一个功耗大户,那就是PLL和FLL模块。PLL和FLL主要是用来对原始的时钟信号进行倍频操作,从而提高系统得整体时钟,相应的其功耗也会被提上去。所以在进入低功耗前,需要切换时钟模式,旁路掉PLL和FLL模块,等到MCU唤醒之后再把时钟切换回去。

3、围堵涓涓细流——注意IO口的电平状态

如果认为只要关闭外设时钟就能够保证外设不在耗电,那你就真的太年轻了。如果IO口没有做好处理的话,它就会在暗地里偷走功耗,而你却浑然不知。具体原因是这样的,一般IO内部或者外部都会有上下拉电阻,举个例子如下图所示,假设某个IO口有个10KΩ的上拉电阻,根据欧姆定律,此引脚就会消耗3.3V/10K=0.33mA的电流,假如有四、五个这样的IO口,那么几个毫安的电流就这样贴进去了,太可惜了。所以在进入低功耗之前,请逐个检查IO的状态:

如果该IO口带上拉,请设置为高电平输出或者高阻态输入;

如果该IO口带下拉,请设置为低电平输出或者高阻态输入;

4、睦邻友好合作——注意IO与外设IC的统筹

IO口的上下拉电阻消耗电流这一因素相抵比较明显,下面咱们来说一个不明显的因素:IO口与外部IC相连时的电流消耗。假如某个IO口自带上拉,而与此IO相连的IC引脚偏偏是自带下拉的,那么无论这个引脚处于什么样的电平输出,都不可避免的会产生一定的电流消耗。所以凡是遇到这一类的情况,首先需要阅读外设IC的手册,确定好此引脚的状态,做到心中有数;然后再控制MCU睡眠前,设置好MCU的IO的上下拉模式及输入输出状态,要保证一丝儿电流都不要被它消耗掉。

5、断开调试器连接——不要被假象所迷惑

还有一类比较奇特,检测出来的电流消耗很大,可实际结果是自己杞人忧天,什么原因呢?是因为在测试功耗的时候MCU还连着调试器呢!这时候大部分电流就会被调试器给掳走,平白无故的让我们产生极度郁闷的心情。所以在测试低功耗的时候,一定不要连接着调试器,更不要边调试边测电流

来源: elecfans.com

围观 382

随着技术的发展,各种新型的电子产品设计不断在市场上现身,包括可穿戴设备、虚拟现实(VR)眼镜和无人机等。其中,无人机的应用行业越来越广泛,不仅在玩具市场占到主导地位,在军事应用和民用上也有极大的拓展。为了应对市场的火热,强的续航能力成为提升无人机竞争力的重要因素之一。但由于电池的瓶颈,因此对无人机控制MCU有低功耗、高性能、小型化、安全性高等要求。

作为物联网的领先芯片厂商芯科科技(Silicon Labs)的中国地区代理商,世强科技特别著重在无人机应用及设计领域的布局,并通过Silicon Labs新一代基于节能Gecko技术的EFM32TM Jade Gecko MCU系列产品中具备的最先进的硬件加密引擎、灵活的低功耗模式、丰富的资源外设和可扩展的存储器容量选项等特性,进一步协助无人机开发商优化产品设计。


图说:基于Silicon Labs节能的MCU设计架构,EFM32 Jade Gecko拥有极佳的能源效率。

灵活的功耗模式为无人机提供超长续航能力

EFM32JG MCU有EM0(正常)、EM1(睡眠)、EM2(深度睡眠)、EM3(停止)、EM4(冬眠)、EM5(停机)六种不同的灵活的功耗模式。Jade Gecko功耗模式旨在实现高度的自主运行。MCU智能结合了外围设备、低漏电RAM、数据保持、DMA和互联能力、低功耗振荡器以及极短的唤醒时间,因此长时间在低能耗模式下的运行效果极具吸引力,从而降低了无人机的能耗。

EFM32JG MCU有增强的外设反射系统(PRS),该系统能够让低功耗外设自主运行,同时保持MCU内核处于休眠状态,允许可连接设备更长时间的处于休眠状态,从而延长无人机电池使用寿命。节能的低活动模式(Active-Mode)电流(63μA/MHz)可以更快执行计算密集型任务。而低睡眠模式(Sleep-Mode)电流(1.4μA,最低至30nA)和超快速唤醒/休眠转换特性进一步减少了无人机整体能耗。

JadeGecko MCU还集成了高效率的DC-DC降压型转换器。该片上转换器能够提供总计200mA的电流,除了为MCU供电之外,还可以为无人机的其他系统组件供电。这一电源管理创新技术消除了通常所需的片外DC-DC转换器,减少了物料清单(BOM)成本和电路板面积,非常适合在尺寸和重量非常有限的无人机应用中。

欲了解更多Silicon Labs EFM32 Gecko MCU产品及参考设计信息,请访问:http://cn.silabs.com/products/mcu/32-bit/efm32-jade-gecko/Pages/efm32-ja...

原文链接:http://www.sekorm.com/news/4247.html

围观 572
订阅 RSS - 低功耗MCU