如何实现更极致的超低功耗表现?STM32U5带来在Cortex-M33上更完整产品表达
扫描二维码
随时随地手机看文章
“超低功耗产品线一直以来是STM32非常重要的产品线,是战略性的产品线。”意法半导体中国区微控制器事业部市场及应用总监曹锦东先生表示,“STM32U5这一产品线在ST内部也花了漫长的时间在研发,因为不仅仅有新的工艺的创新、还有IP包括整个架构的新设计。” 关注ST的可以注意到,MCU产品家族近年来来一个方向是在做无线集成方向上铺展;另一个方向是垂直的发展:向上的多核MPU和向下的G0...而随着新一代低功耗内核M23和M33的发布之后,使用低功耗M核的MCU产品在性能和安全性上将会获得跃升。ST在沉淀了足够的技术创新和安全功能积累之后,带来新一代的超低功耗MCU的重大革新——STM32U5,这是其MCU产品线在主流低功耗产品方向上的一个重要突破。STM32U5达到了240 DMIPS/651Coremark的表现,远超之前的L4+和L5产品。并且它是ST在Cortex-M33内核上更为完整的产品表达,未来也将在从低到高的不同memory上进行型号扩充。
在外设与CPU之间新增一个“缓冲区”
作为超低功耗的旗舰级产品,STM32U5在低功耗上实现了新的技术创新——低功耗后台自主模式(Low Power Background Autonomous Mode,简称LPBAM)。首先是在CPU和外设之间新增了一块SRAM作为数据的缓存,给CPU处理外设数据的流程增加了一个缓冲。据意法半导体中国区微控制器产品市场经理彭祖年分享,“当芯片进入一个低功耗模式时,CPU是需要断电的,但产品外面可能还会搭载很多的传感器。这些传感器的数据可能会实时地输入到主控芯片这一侧来,通常情况下,这个传感器的数据传输是需要系统或CPU来进行一些操作,做一些数据处理的工作,但在STM32U5这款产品上,设置了一个独特的外设,可以将很多通用接口包括I2C、SPI、串口、ADC等等这些外设上的数据,在不唤醒CPU的情况下,搬运至单片机内部一块SRAM4,大概有16kB的空间,当这些数据累计到一定数量时,我们再唤醒Cortex-M33内核进行一次性的批处理。” 据悉SRAM4具有单独的供电开关,在其他SRAM关闭时候可以单独进行供电。通过这16KB的SRAM4来实现了传感器等外设的一个数据缓冲,使得STM32U5的CPU唤醒次数相比传统低功耗MCU的设计实现了进一步的降低,据称根据STM32U5与经典数据采集以及唤醒处理的模型的对比,差不多可以将CPU唤醒的次数变成原来的1/10。
更极致的功耗管理:丰富的功耗模式+省电技巧
有了16KB的SRAM4的增加,STM32U5实现了更丰富灵活的低功耗模式配置。从shutdown到Runmode之间, 还有4中STOP模式和两种standby模式可以供用户根据不同工作状态进行配置。据彭祖年分享,STM32U5上还有诸多省电的配置小技巧:譬如通过内部的SMPS去转换VDD和CPU内核供电的电压,让CPU供电转换效率达到更优的动态功耗,在不同的功耗模式下切换也可以达到微秒级。另外值得一提的是STM32U5内部的Flash是双bank设计的,用户可以将一个不常用的bank在低功耗模式下断电,这样又可以节省40微安左右;但当指令跳转到被断电的Flash Bank上时,系统是可以自动唤醒的,只需要等待5微秒的延时。通过损失5微秒读取速度来获得45微安的功耗节省,这也是STM32U5上的一个技巧。
4项ULPBENCH节能成绩单
对于MCU低功耗的表现,仅仅关注CPU的耗电,或者仅仅关注某一个状态下MCU的耗电,都不能完整的反映出一个MCU整体的功耗表现。彭祖年表示,如何评估MCU的功耗是一个比较系统的问题 ,ST展示了关于ULP benchmark很多不同分类的评估,每一项对于芯片低功耗表现的关注点都不太一样。有的是系统运行时的 功耗,有的是系统睡眠及唤醒时的功耗,还有一些是关注芯片外设的功耗。因为不止是CPU需要耗电,外设、包括整个时钟管理单元等等都需要耗电。根据不同客户的运营场景,实际的功耗结果是千差万别的。所以NBC官网上做了几种不同模型,用户可以参照这些模型来评估自己的应用场景的总的功耗表现是什么样的。
在TrustZone基础上集成ST独有安全功能
Arm更新的Cortex-M33的其中一大特性就是引入了成熟的TrustZone的技术,在安全功能上实现了加强,因此采用M33架构的STM32U5天生就具备了隔离架构带来的高安全性。而仅仅内核的隔离或TrustZone的支持是不够的,在STM32U5上还增加了内部存储、总线和外设上都做了个礼配置的设计。据彭祖年介绍,“除了隔离之外,STM32U5还增加了更多的安全加密的功能,以及全程可控的多层保护状态机。存储保护也做了全新的更新,针对内部存储防篡改,增加了OTP这样的空间,还有更多的主动式防侵犯的active tamper的设计。在这样的完整的安全设计下,我们的Secure Boot安全启动也可以让用户的安全架构设计能够获得不可变的稳定的信任根。最终,我们的产品可以通过PSA Level3的认证。这也是目前所有STM32产品当中首款可以通过三级安全认证的产品。”另外必不可少的,STM32U5也支持端到端的安全固件烧录工具链,确保用户在第三方进行生产烧录时的安全性。
据曹锦东分享,STM32U5在安全性上的提升,将有望实现对于可穿戴设备支付功能更好的支持。
从低到高的低功耗应用覆盖
STM32L5算是基于U5和L4之间的桥梁,它的意义是首先将Arm新一代的Cortex-M33的内核引入到STM32的平台中,确保所有的功能应用起来,可以集成到ST的整个芯片系统中,同时在安全性上也有所提升,达到Level 2级别的安全水平。而U5是新一代的低功耗旗舰型平台,因此未来的产品型号将继续拓宽,Memory的大小会实现从最低的128K~最大4M的覆盖,实现Level 3级别的安全功能。例如在对边界攻击的抵御方面, U5中新AES的模块单元相比传统的L5中的普通AES可以实现更好的安全功能。据曹锦东介绍,4M的STM32U5更多地面向的是可穿戴手表类产品,因为可穿戴手表应用需要扩展更多的Memory来存放可以即时加载的程序,在运行时将这部分数据加载到MCU中运行。而更小Memory的U5则面向一些程序量并不是很大、对于成本更敏感一些的IoT的应用。
除了优秀的安全功能设计外,ST也为用户提供了支持安全启动、固件加载和更新的相应参考代码。如果用户需要TF-M Trusted Firmware for Cortex-M架构,STM32U5也支持在在软件权限上设置管理员权限和用户权限,在管理权限下,可信区内也有PSA模块化的本地安全服务可以提供给用户,其中也包括了更多和加解密相关、安全存储相关、可信区初始化以及证书初始化等功能模块。
###
曹锦东表示,STM32U5的系统复杂性比以往更高,要保持同样的主频上实现更低功耗其实是很难的挑战。从STM32L1到L0、L4、L5,工艺的提升虽然会带来动态功耗的降低,但对于静态功耗而言却是相反的作用。所以不能只靠工艺,STM32U5上对于外设进行了更精确的设计,实现不仅仅是内核上,更是系统层面上的整体功耗的优化。STM32U5上凝结了ST超过十年的MCU低功耗设计经验,是其经验一步步叠加的成果。
从ULP的跑分中我们可以看到,在迄今为止的所有M33内核的MCU新品中,STM32U5实现了对于M33内核的设计初衷上更好的诠释和表达,做到了性能和功耗的更优解,同时也在安全功能上通过自己独有安全技术的添加实现了更好的表现。用户在STM32U5的未来实际应用的表现,同样值得我们期待。