破解超低功耗智能设备用MCU难题,ST新一代U5靠什么制胜?
随着可穿戴、个人医疗、家庭自动化和工业传感器等智能设备的增长,对低功耗、高性能、高安全性的MCU(微控制器)的需求日益提升。今年3月,意法半导体(ST)在其经典的超低功耗L系列基础上,推出了新一代产品线——STM32U5。其在安全方面,成为首款获得PSA和SESIP 3级认证的MCU。
本文引用地址://www.cazqn.com/article/202110/429044.htmU5的制胜法宝是什么?不久前,ST中国区微控制器事业部市场及应用总监曹锦东、ST中国区微控制器产品市场经理彭祖年向电子产品世界等媒体揭开了庐山真面目及下一步规划。
ST中国区微控制器事业部市场及应用总监曹锦东(左),ST中国区微控制器产品市场经理彭祖年
1 U5的3个特点
STM32U5的定义是一个低功耗旗舰级产品线,最大的3个特点:①超低功耗。②在超低功耗平台上提升了性能,是基于高性能和超低功耗两者结合的集合。③增强了安全可靠方面的功能,适合IoT应用。
U5是在STM32L5基础上发展起来的。L5是基于L4和U5中间的产品线(如下图)。L5是ST第1颗基于Cortex-M33的产品线,采用了特殊的工艺,可谓是U5和L4之间的桥梁——确保的一些功能应用起来。
图 U5在STM32中的定位
今后的新产品会主要基于U5拓展。经典的低功耗系列L4不会继续发展,因为L4是基于90 nm工艺的;L0会继续生产,但也没有更多的产品线延伸出来。但是客户可以放心,ST官网承诺所有产品线未来10年都可以继续供货。
具体地,为了研制U5产品线,ST内部花了漫长的时间在研发,创新不仅在工艺(注:达到40nm),在IP还包括整个架构的设计,使该低功耗产品线能够支持到现在的消费电子、可穿戴以及工业控制领域。
2 为何功耗更低?
U5对超低功耗和高性能有很好的结合。其节能成绩单如下图。这是在第三方EEMBC ULP Benchmark上面得到的测试结果。该测试结果不仅包含了运行状态下对性能的评估,同时也将芯片在各种模式下的功耗水平综合体现出来。
图 STM32U5 ULP BENCH节能成绩单
这里纠正一个偏见:很多用户可能会比较关注超低功耗产品的µA/MHz参数,但该参数是在运行状态下,以及特定场景中针对CPU耗电量的评估,并不能代表系统整体的功耗水平。为了实现低功耗,我们要看什么应用方向,该应用方向里它需要什么外设的工作,所需要系统采用的功耗模式该怎么做?例如手表,佩戴后一直在采样数据,抬手时就要显示数据,但可能平常走路时没有抬手,就没有显示,CPU是睡眠的。再例如,有些表计用CPU每个月只要醒几次就可以了,但是外设也一直在做数据的采集。所以不同模式的功耗不一样。
所以,如何参考系统整体功耗水平,可以将目光转移到ULP Benchmark的评比上,它会针对不同的测试状况,去综合评估系统的运行性能、运行功耗、休眠状态和唤醒时的功耗。在一些测试的项目中,还会包括针对芯片外设功耗的评估。与前几代STM32 L系列超低功耗产品线进行对比后,可见U5系列已经达到了240DMIPS和651Coremark的性能评分(如下图)。同时,为了进一步挖掘U5性能的潜力,U5上还有数学运算加速器、ART加速器等单元,以辅助和加速整个芯片内部运算系统的效率。
其设计难点在于:对于STM32,从过去的L1到L0、L4、L5,①ST有最新的工艺,从过去的110nm到90nm,直到现在的40nm工艺,可能工艺本身也会带来动态功耗的节约。然而,静态功耗却是相反的,这是两个相悖的数据。②外设方面也做了更精确的设计,这是系统性的问题。
综合以上两点,ST一直对低功耗产品、对客户的用户体验以及能不能达到他整个系统低功耗的性能还是很有信心的。可以看到,U5的系统复杂性比以往更高,要保持同样的主频上,功耗要更低其实是很难的挑战。
1)10年余年的超低功耗历史
此次U5的诞生将继续延续ST超低功耗MCU产品路线(如下图)。ST超低功耗产品线一直以来是STM32非常重要的产品线,是战略性的产品线。ST自2007年发布第一款基于Cortex-M内核的通用单片机之后,通过2年时间的打造,将Cortex-M系列的单片机扩展到了超低功耗领域)。从2009年开始,ST陆续迭代推出了一代代的超低功耗的产品平台,其中包括入门级的STM32L0,以及基于Cortex-M4系列的L4系列产品。STM32L4+是一款在中国智能运用手表市场创造出奇迹的一款明星级产品。
2)U5新的低功耗特性
● 休眠模式下仍可工作
针对低功耗,STM32U5有一个特殊的功能:低功耗后台的自主模式。即当芯片进入低功耗模式时,CPU是需要断电的,但产品外面可能还会搭载很多的传感器。这些传感器的数据可能会实时地输入到主控芯片这一侧。通常情况下,该传感器的数据传输是需要系统或CPU来进行数据处理,但U5设置了一个独特的外设,可以将很多通用接口包括I2C、SPI、串口、ADC等外设上的数据,在不唤醒CPU的情况下,搬运至MCU内部一块SRAM4,约有16kB的空间。当这些数据累计到一定数量时,ST再唤醒Cortex-M33内核进行一次性的批处理。
这里带来的体验是:不需要频繁地唤醒CPU,只使能外设,其功耗是非常低的。因为从外部的传感器获取数据,避免了中间频繁的唤醒。ST做了大概的测试,类似于经典数据采集以及唤醒处理的模型,大约可将CPU唤醒的次数降为原来的1/10。所以,可以看到下图灰色虚线框,就是节省的能耗。
图 让功耗降低至1/10
在芯片内部功耗管理下面,有更多灵活的功耗模式可供客户选择。其中一个经典的应用场景是Stop模式,同时保存部分SRAM或全部SRAM中的数据。这样的状态下,功耗是个位数的µA级。
● U5芯片上更多省电的小技巧
可以通过内置的SMPS降低CPU的内核供电电压。
在不同功耗模式下切换,也可以达到µs级的切换速度。
SRAM和Flash都可以让用户自己去选择究竟可以保留多少的空间,这样用户可以根据自己实际应用情况来进一步避免不必要的能量损失。值得一提的是,内部的Flash是双bank设计的,可将不常用的bank在低功耗模式下把它断电,这样它的功耗可以节省40µA左右。但是当指令跳转到被断电的Flash Bank上时,系统是可以自动唤醒的,只需要等待5µs的延时。或者可以把内部的Flash通过损失一些读取速度的方式去让它进入一种低功耗的模式,大概可以减少系统45µA的能耗。
可见,结合多种多样的低功耗模式的设计,以及更多的省电小技巧,只要用户能够去玩转STM32U5中这些小设计,就可以将功耗管理做到极致。
图 U5的超低功耗考虑因素
3 为何安全性达到L3级?
U5是第一款通过PSA和SESIP 3级认证的MCU。
1)如何实现L3级?
U5设计了层层的保护。首先,它是基于Cortex-M33的内核,天生支持TrustZone这种隔离架构。然而,仅有内核的隔离/ TrustZone的支持是不够的,U5还针对内部的存储、总线以及外设做了隔离配置的设计。除了隔离之外,还增加了更多的安全加密的功能,以及全程可控的多层保护状态机。存储保护也做了全新的更新,针对内部存储防篡改,增加了OTP的空间,还有更多的主动式防侵犯的active tamper的设计等。在这样的完整的安全设计下,ST的Secure Boot安全启动也可以让用户的安全架构设计能获得稳定的信任根。最终,U5的产品可以通过PSA Level3的认证。这也是目前所有STM32产品中首款可以通过三级安全认证的产品。
U5还可以提供安全固件加载功能。很多用户把自己的软件设计好之后,可能不会将生产环节放在自己的公司里,而是授权第三方公司,在第三方公司里实现PCB的贴板、固件的烧录以及最终的组装这样的生产流程。该流程下,由于授权的第三方是不在监控范围下的,所以无法保证固件在远程生产烧录过程中的安全性。ST通过内部的SFI(安全固件加载)生产流程,可以帮助用户在第三方的烧录环境下,严格控制烧录固件的安全和烧录数量的控制。
2)什么样的客户会用到L2、L3?
L2主要针对的攻击主要来自网络的,或者产品联网之后,通过一些软件的方式来窃取芯片内部的一些信息。但L3会实现边界攻击的防御(side channel attack),例如把产品拿到实验室里,针对产品硬件周边,但不是破坏性的,只是在产品工作时,通过它周边的一些侧面信息。
因为很多的应用是基于硬件进行攻击的,例如POS机等安全交易系统容易遭到外界的,例如大电流干扰,让它的一些数据能够流出来或者让它整个系统有所崩溃。如果有很好的防外面硬件的攻击,该系统会很安全。
在U5中, AES(高级加密标准)的模块单元可以抵御边界攻击。但L5中,ST沿用的还是传统的、普通的AES,无法抵御边界攻击。
现在在L3之上还会有更高的安全等级要求,但需要做到更多的物理隔离,包括类似防开盖的设计在里面。通常情况下,是Security Element才能达到的级别。
4 存储容量更大,主频更高
作为新一代旗舰产品,U5在高性能方面的特点是存储容量更大,主频更高。
1)容量更大
作为ST超低功耗系列的旗舰产品,U5会覆盖到从128Kb一直到4Mb的Flash范围。U5家族中的第一个成员STM32U575和STM32U585基本覆盖了512Kb以上一直到2M 的Flash需求的空间。未来还会推出更大容量版本的STM32U5系列,以及更小、更精简的低成本U5的产品。
U5的规划是,下一步很快面市4Mb Flash MCU,更多的是面向可穿戴/手表类产品。因为在可穿戴产品里,需要更多地让客户存储其程序及数据等,因此要扩展更多的memory。对于一些更小的memory,未来会增加IoT相关的应用特性,因为这些应用的程序量没有那么大,成本方面需要更加有有效性。
2)主频更高
U5达到160MHz,手表用户需要那么高的主频吗?实际上,从ST现在接触手表客户的反馈来看,认为160MHz还不够,客户对性能有很多的追求,因为他们追求的是画面的流畅度和操作手表时的顺滑度。现在屏幕的分辨率越来越高,有些手表开始用视网膜屏了,其像素颗粒度需要非常精细,因此单位面积下的分辨率会越来越高。
与此同时,这对低功耗产品其实是非常大的挑战。因为性能越高,功耗自然越大。今天用户可以自己配置CPU的速度,或者µA/MHz是指系统,例如160MHz的能力,但如果运行24MHz,从CPU功耗上可以直接看到一个线性的下降,可见较低主频的更低功耗是完全没有问题的。
可穿戴产品非常注重性能,传统的做电表、水表的MCU,也不能满足做手表的需求的。特别是U5下一代产品线,从性能上要兼顾至少两个维度的,①图形软件引擎,有的MCU厂商用第三方的产品,但ST收购了一家能做屏显示和接口的软件公司——Draupner Graphics;②ST把客户的部分性能需求通过特定的IP,以硬件的形式集成在MCU里。例如硬件显示加速的效果,电脑叫GPU graphic引擎, U5增加了一个相关IP,以支持2.5D的加速器。
5 集成音频数字滤波器、轻量级AI的用途
U5中的ADF(语音活动检测)只做语音唤醒。当芯片处于休眠状态下,但麦克风还是在工作的,麦克风检测到声音之后传递到该模块来,搬运到STM32U5里去。当数据达到一定数据量之后,让CPU重新处理一次。可以用于手表/穿戴类产品里的语音唤醒。
图 U5可支持的外设
但是U5做不了语音识别。语音识别要传到云端,需要大数据支持。ST将来更多的是嵌入式端的。目标是固定范围之内的,例如检测电机控制的噪声,根据噪声判断电机是否正常;还有进行数字的识别,例如有的客户在做读表器,因为老式的水表很难改造,这时,可以在上面放了一个简单视觉芯片,把图形数字转换成可识别的数字,然后上传到云端。
因此,U5等STM32系列MCU提到的AI是轻量级的AI。可能做不了学习,需要预先训练好模型,之后可以用它来做处理。基本上它是通过服务器把模型确定好放到该MCU里来做;这部分需要通过Cube AI的工具,把程序重新转换(因为服务器云端的AI算法、语言在MCU上不通用),这时ST的Cube AI的工具可以帮助用户在一些音视频系统预先训练好该模型,检测一些文字和一些图片。
6 未来发展方向
ST在2007年发布第1个STM32到现在,迄今出货量已达20亿颗。STM32一直秉承“释放你的创造力”的口号,来驱动产品的推出,以给用户提供更多的选择。
回顾10多年的发展历程,从过去STM32F系列,延展到低功耗L系列、高性能H系列,又延展到无线W系列,以及最新的G系列,即针对工业控制的主要硬件产品线,之后,ST发布了基于STM32的MPU,今年在L基础上发布了U系列。
STM32已从高性能到低功耗以及到MPU全覆盖。未来在无线方面还会有更多的发力,并注入AI的IP机制,让用户可以实现AI的功能或者运用AI的算法。为此,ST在2020年及2021年的大部分收购聚焦在无线产品以及AI相关的方面。
评论