在2018年四月份的STM32峰会上,STM32平台上的首款双核无线MCU备受关注。之后更是召开了发布会对其进行详细介绍。我们不妨来了解下STM32WB到底有何魔力。
多协议、低功耗、安全
射频集成是MCU或SoC的趋势,STM32WB最令人关注的也是其无线功能的集成。据悉,STM32WB支持蓝牙5.0协议栈,最高传输速率可以达到2Mbps,并且支持BLE Mesh的技术。同时STM32WB还支持802.15.4,因此可以支持OpenThread和Zigbee协议栈。HAKIM先生介绍,因为STM32WB上的2.4G射频可以支持多协议,所以基于+6dBm输出功率和高灵敏度的射频模块和物理层、链路层之上的协议栈,可以做不同的排列组合,比如同时使用ZigBee和蓝牙5.0,或者同时使用蓝牙5.0和Thread,又或是Thread和ZigBee以及同时支持专有协议。
双核体现的功耗优势也非常的明显,下图展示了处理器在处理不同工作任务时候的功耗消耗表现。如图所示因为单核处理器除了关闭模式外,其余模式下都要保持恒定的功率水平,因此功耗较高。而双核STM32WB则可以根据不同的工作负载来实现动态的单核双核的关断。在射频任务单独处理时,M0+内核进行网络任务的出理;在节能模式下,RAM+RTC运行的功耗仅为1.8μA,唤醒时间为5μs;在M4内核单独工作还可以分为两种状态,在批处理模式下,CPU和闪存还可以关闭;在双核同时运行的情况下,功耗也仅仅为50μA/MHz;而在超级节能模式下,功耗将小于50nA。
双核架构不仅对功耗有所提升,而且对于安全性也有更好的处理。因为M0+的射频域被做成了一个单独的封闭系统,所有进出射频域的指令都需要进行密钥验证。这种功能叫做CKS,即在M0+内核域的用户密钥存储。此外,STM32WB还延续了以前STM32的硬件加密引擎,比如说真随机数以及加密加速器、读保护、存储单元等。 另外ST还特别强调,STM32WB内部集成了一个巴伦,因此对于系统设计而言,可以缩减bom成本。
双核比单核开发更便捷
虽然是双核处理器,但是其实并不意味着会比单核开发的难度更大。相反的,因为射频功能的打包,STM32WB在射频应用开发方面相比单核的处理器更为便捷。
HAKIM表示,从STM32WB的架构来看,双核中M0+只是跑蓝牙协议栈以及安全密钥的权限,客户的应用是在M4上面运行,对于大部分客户来讲只是单核的MCU,因为M0+加上蓝牙可以类比看成是一个外设,而客户做应用是基于M4。这比过去的单核蓝牙芯片更简单,过去单核MCU需要处理应用,还需要处理协议栈,因此更加复杂。从这个角度来看,STM32WB给用户带来更简单,更容易,更方便的开发机制,并且更安全。我们是把蓝牙的协议包起来,是独立的内核,不会跟应用的内核抢占它的资源,这是非常巧妙的设计。
当然如果客户由比较高的定制需求,M0+内核域也可以交给客户进行开发。
同时在软件方面,不论是协议栈端(如射频的BLE5.0 OpenThread)还是通用的802.14.5,都免费提供给客户。除大家熟知的CubeMX外,在射频开发方面还有用于射频性能监测的STM32CubeMonRF工具提供。硬件方面,ST配套提供了nucleo的开发套件。
目前STM32WB已经全面发售,提供了9个细分产品型号,可以全面支持客户的射频开发需求。据HAKIM透露,未来ST还会继续推出支持其它无线协议的MCU。
推荐阅读