在最熟知的芯片,解析最不为人知的秘密--Nordic的蓝牙芯片nRF52832。

2023年05月17日 16:35    发布者:15816861002
在IOT领域,BLE占据了不可替代的位置,其影响力非常大,而NORDIC也凭借着一系列的蓝牙芯片,坐稳了全球蓝牙芯片一哥的位置。nRF52832是NORDIC发布的BLE 5.0的旗舰型蓝牙芯片,芯片一出,它将BLE SoC带到了一个新的高度,它带来了更高的性能、更低的功耗以及更多的功能,当即引爆全球,众多蓝牙产品用户为之欢欣雀跃,而今天,笔者就为大家剖析其中一二。 从nRF51822/nRF51422升级而来,nRF52832是Cortex-M4F内核,并且拥有非常大的RAM和Flash,还有更多的功能以及更好的RF性能。nRF52832性能参数:功耗每一代新的BLE SoC出来,必定在功耗上面做些优化,nRF52832更是在nRF51822的基础上几乎将功耗降低了一半:Active-mode RX:5.5 mA
Active-mode TX @ 0dBm: 5.5mA
Active-mode TX @ 4dBm: 7.7mA这些功耗数据对比TI的CC26XX很有优势,即使是对比其他家的产品也是如此。真正使用时的功耗还依赖于很多其他因素,比如运行的频率或者BLE的参数(连接或者广播的间隔)Cortex-M4F 内核新一代的nRF52832加入了很多新的功能。比如Cortex-M4F的内核,它能够更强大的运算能力以及浮点运算的技术。现在很多的穿戴设备或者工业化设备需要内置非常复杂的算法,所以需要MCU有更快的运行速度。这颗Cortex-M4F的内核运行期64Mhz,比其他厂家的芯片提高了很多。这颗SoC有512KB的Flash和64KB的RAM,这也超出其他厂家的芯片一大截。Nordic称将会有400KB的Flash可以用于应用程序。如果你曾经开发过BLE的产品就会知道,BLE的协议栈至少要占80KB以上的Flash。如果像大多数的BLE SoC那样只提供128KB的Flash的话,应用程序只有大概40KB的空间,不过对于一般的传感器采集的任务来说是差不多的。之前的nRF51822最高提供256KB的Flash,这在当时也是比较少见的,我们很高兴看到Nordic再次提升了Flash的空间。额外的Flash和RAM空间也意味着nRF52832可以支持多协议,并且在运行时自动切换。BLE协议栈Nordic将Cortex-M0内核升级到Cortex-M4F内核,可以保证BLE协议栈无需更改。这就意味着开发者可以使用一个更加稳定的协议栈,并且直接运行之前的几十种例程。Nordic目前没有提到关于Bluetooth 4.2方面的事情,不过可以肯定是,既然新的硬件已经出来了,通过升级软件来做到更多的事情是肯定的。Bluetooth 4.2提供了更快的传输速度、更高的安全性以及更低的功耗。RF效率我们必须谈一下RF的部分,毕竟所有的数据都是要通过这里的。新的nRF52832提供了-96dBm的灵敏度,这个数据非常接近于TI的-97dBm,更高的灵敏度意味着更远的传输距离。另外一项改进就是内置了Balun芯片。在之前的nRF51822设计中,必须加入Balun匹配电路,或者分立的或者Balun芯片,来匹配天线的50欧姆阻抗。现在nRF52832集成了这个功能,既节省了空间又节约了成本。并不适合只有Nordic一家这么干,dialog和TI都一样,都把能够集成进来的全部弄进来。外部只需要一个额外的电感和一个电容,用来微调这些参数。总之,内置Balun大概能节约5-6个外部阻容器件。多协议支持和NFC现在很多的这类芯片都能提供多协议的支持,比如BLE, ANT, zigbee这些协议。目前在物联网领域还没有绝对的王者,因为每种无线协议都有自己的优势。现在看来实际的应用中更加趋向于不同的应用场景使用不同的技术,多协议支持就解决了这个问题。因为无线的硬件是一样的,只需要更换协议栈就行了,或者把多个协议集成进一个协议栈,对用户来说就像是同时运行这几个无线协议一样。nRF52832支持Bluetooth Smart (Low Energy), ANT/ANT+ and proprietary 2.4GHz多种协议,这样就可以连接 nRF51, nRF24AP and nRF24L之类的产品。不过,它不支持Zigbee or Thread ,这两个协议在长距离传输上有更大的优势。Google正在力推Thread技术,Thread也慢慢的在智能家居的应用场景下变成BLE的对手之一。不过也许Bluetooth的Mesh网络技术能够解决这个问题。Nordic同时引进了NFC技术,它支持NFC-A,也就是可以作为“标签”(Tag)来使用。配合智能手机可以用于近距离的安全连接工作,毕竟有一些应用中需要这种安全的方法,集成进来之后对整体成本和体积都有好处。不过新的Bluetooth 4.2协议中已经有了新的安全规范。nRF52832适合我们的产品吗?回答这个问题比较复杂,不过有以下几个关键点可供参考:Only part with 512kB flash and 64kB RAM
64MHz processor with Floating point support
Very low power – 5.5mA
Mature stack with Central and peripheral Mode
Concurrent Multiprotocol Timeslot support
A slew of peripherals for many applications还有其他几个事情:更多的Flash和RAM而价格不变
没有ZigBee或Thread的支持
开启BLE之后有些功能会受限(比如系统的实时性)Flash的容量增加会增加芯片的制造成本,不过长期看来nRF52832的价格会和现在nRF51822的价格差不多。nRF52832还是一颗单核的SoC,也即是说启动BLE协议栈之后,协议栈处于最高的优先级。而应用程序优先级会比协议栈低,在如电机控制这样的实时性要求很高的应用中可能会影响性能。在穿戴设备的市场中需要更强的计算能力,但是在其他应用中,比如仅仅是传感器采集和简单的处理nRF51822也是很好的选择。