近年来,蓝牙凭借自身低功率、易部署、低成本及高度灵活的优势从传统设备市场延伸到非传统设备市场,大举进军智能穿戴、智能楼宇、智慧工业等新兴领域。随着蓝牙应用市场的蓬勃发展,技术和应用得到源源不断的创新,因此也更趋向于多样性。Dialog 、ST、Nordic等知名供应商都基于蓝牙核心技术为行业提供局域物联网解决方案,帮助解决物联网“最后几十米”的连接问题。
不过,在研发 BLE 产品时,很多产品经理和市场人员经常会遇到这些问题:主流 BLE 芯片的功耗到底哪家好?好在哪个具体的点?
我从上文提及的三家供应商中各挑出一款主流的BLE芯片产品来进行实际测试以及对比,详细分析在其各个方面的功耗情况。 这三款主流BLE芯片分别是:Dialog DA14585, ST BlueNRG-2 , Nordic 52832。
测试硬件和测试工具
被测硬件:
Dialog:DA145850ATDEVKTP + DA14585-01ATDB
修改测试的工程:
DA14585_SDK_6.0.10.511_0DA14585_SDK6.0.10.511projectsarget_appsble_examplesprox_reporter
备注: Dialog 的测试只包含 Daughter(即小板)的功耗,不包含片外 Flash 的功耗,片外Flash 不加三极管处理大概会消耗 0.4uA。
被测硬件:
ST:STEVAL-IDB008V2
修改的测试工程:
STMicroelectronicsBlueNRG-1_2 DK 3.1.0FirmwareBLE_ExamplesBLE_BeaconBlueNRG-2
STMicroelectronicsBlueNRG-1_2 DK 3.1.0FirmwareBlueNRG1_Periph_ExamplesMicroSleep_TestBlueNRG-2
被测硬件:
Nordic: 52832 official EVB
修改的测试工程:
nRF5_SDK_15.0.0_a53641aexamplesble_peripheralble_app_templatepca10040s132arm5_no_packs
测试电流工具:
KEITHLEY DMM7510
测试手机: Hornor 8 Light + Android APP Lightblue
3. 影响总体功耗的各项指标,各家资料标称参数:
Dialog DA14585 资料标称参数:
Supply current at VBAT3V
TX: 3.4 mA, RX: 3.7 mA (with ideal DCDC, 0dB)
ST BlueNRG 资料标称参数:
Average advertisement current consumption 15.34 μA (advertisement interval 1000 ms)
Average connection current consumption 7.059 μA (connection interval 1000ms)
TX: 8.3 mA, RX: 7.7 mA (with ideal DC-DC, -2dB) (除了 RF 外,还加上 CPU, retention RAM, Flash 激活等)
Nordic nRF 52832 资料标称参数:
在 DC-DC 3V 情况下:
0.3 μA – No RAM retention
1.2 uA – All peripherals in IDLE mode
1.6 uA – All peripherals IDLE mode (32 kHz + RTC)
20 nA per 4 KB - RAM retention
5.3 mA – TX at 0 dBm output power(备注:这部分只包含 Radio 的电流消耗)
5.4 mA – RX at 1 Mbps(备注:这部分只是 Radio 的电流消耗)
CPU efficiency 58 μA/MHz(主频可以到 64MHz)
从各家资料宣称看 Da14585 的 Radio(TX: 3.4 mA, RX: 3.7 mA)遥遥领先另外的两家。需要注意的一点是 BlueNRG-2 的 Radio 标称的是整机部分的,除去 CPU 等的 1.9mA 大概就是单单Radio 部分的(TX: 6.4 mA, RX: 5.8 mA)。nRF52832(TX :5.3 mA, RX:5.4mA)的在 RF 参数上这点上略胜一点 BlueNRG-2。
4. 实际测量对比分析:
各家由于本身硬件条件不一样,标称也不一样。为了对比,这里选用了一些工程项目实际常用的比较条件进行对比。
对比条件:0dB(ST 的 BlueNRG-2 由于没有 0dB 这个点的发射功率,选取一个接近的-2dB进行对比测试), +3.0V 电池供电,DC-DC 模式,统一使用带 32K 外部晶振,以带协议栈正常跑起来为准。
下面选择三个方面进行功耗比对。
1. 一直广播
2. 保持连接(payload=0)
3. 睡眠模式下
为什么选取这三个方面作为比较呢? 因为一直广播的测试可以分析 RF 开始发射时的功耗; 保持连接主要分析接收和部分发送数据的 RF 作用时系统的综合功耗; 睡眠模式下可以测试分析系统的待机能力。
广播模式下,各类芯片功耗比对:
测试条件:供电+3.3V,广播 31 个字节数据,不带响应的非可连接广播
各芯片广播时实时电流图
(x 轴:时间,单位为 1mS; Y 轴:电流,单位 1mA △X:广播一次芯片的唤醒时长; △Y: 开 RF 时整机的峰值电流; 左一 Da14585 中间:BlueNRG -2 右一: nRF52832)
在广播模式下,BlueNRG-2 和 nRF52832 的平均功耗相当。在 0.7S 和 1S 这两个广播间隔保持比较低的功耗。在市场上很多人会认为 Da14585的功耗会比较低,因为 Da14585 是M0 内核+比较低的发射功耗。从表格数据,可以很明确的看出各家芯片在功耗这块的优缺点,以及后续可以改善的地方。Dialog 的 Da14585 的 Radio 这块确实做得不错,发射电流远远低其他两者。但是在从睡眠到唤醒到发广播,这里消耗了太多的时间。ST 的 BlueNRG-232发射电流虽然比较高,但是在从睡眠到到高速晶振稳定这点上,比其他两家要快很多,加上它的底电流也远小于另外两种芯片,所以能在这么高的发射电流中保持较好的功耗。这点是大多数人在评估功耗容易单纯看射频参数下结论,忽略了底电流和高速晶振启动稳定时间。Nordic 的 nRF 52832 在高速晶振起振稳定时间上发射功耗上都有优化的空间。
保持连接模式下,各家功耗对比:
测试条件与结果:Connection payload=0 TX/RX
Test Conditions
Da14585(uA)
BlueNRG-232(uA)
nRF52832(uA)
30ms connection interval
131.66
168.65
120.40
160ms connection interval (Typically for messages)
30.554
33.042
25.179
1000ms connection interval
11.385
7.0838
7.1806
从测试结果看,在 30ms 短连接间隔时,nRF52832 功耗最低,比较优秀。BlueNRG-232由于发射功率比较高,在很 30ms 这种很频繁发送数据时会低于另外两家。预估在 120 多毫秒左右连接间隔会和 Da14585 功耗相当。在预计差不多到 1S 的连接间隔时,功耗会和nRF52832 功耗想相当。当连接间隔越大,BlueNRG-232 的底电流作用越明显。
睡眠模式下, 各家功耗对比:
从测试结果分析,ST 的 BlueNRG-2 在这块上表现优秀。两三个 uA 其实差距比较大,因为休眠在大部分应用来说是占大部分的时间,这部分的功耗差别一点点,乘上待机时间,都会放大很多倍。Dialog 的 Da14585 在这块上可能会让很多人意外,为什么参数会是 3.9089uA的待机电流这么大的一个值。详细分析还是有理有迹可循的,Da14585 采用的是从片外Flash 中的加载 code 到 RAM 运行的机制,片外的 FLASH 和代码区占的内存也需要消耗了部分待机电流。
(备注:Da14585 典型应用代码是从片外 Flash 加载到 RAM 里面的,使用时保持了 2 个32K 的 RAM,故这里如果在保持时 RAM 占的功耗理论值是 2.8uA)。
DA14585 内存使用分配如下:
Da14585 最简单蓝牙的 Demo 工程也得使用两块 32K 的 SvsRAM.测试和理论值差别不大。BlueNRG-232(标称 0.9uA) 和 nRF52832(标称2.0uA)的待机电流和规格标称的差别不大。顺便补充一个小点,测试到这三个芯片复位电流数据:BlueNRG-232 也是nA 级别的,nRF52832 有470uA 电流,Da14585 有 3.2mA. 在有些应用场合,这个参数也
会比较关键。
综述实际应用场合,各家功耗对比:
前面分析了那么多,那功耗综合在实际应用到底怎么估算呢?为了简化,罗列了一个公式来评估综合功耗(weighting==权重 所处状态所占时间比例)。
Power Consumption = ADV current * weighting1 + CON current *weighting2 + Standby* weighting3.
100% = weighting1 + weighting2 + weighting3。
其中大部分应用 weighting3 往往占高达 99%以上的时间。如果是待机一直广播的应用,三家差别不大(其实连接比广播更省设备的点,一直广播有时未必会比一直保持连接好)。
举个小例子算一下大概量化一下数据。
P(DA14585) = ADV*W1 + CON(快)* W21 + CON(慢)*W22+ Sleep*W3
P(BlueNRG-232) = ADV*W1 + CON(快)* W21 + CON(慢)*W22+ Sleep*W3
P(nRF52832) = ADV*W1 + CON(快)* W21 + CON(慢)*W22+ Sleep*W3
100% = W1 + W21+ W22 + W3
使用典型值功耗估算公式:
P(DA14585) = 13.646*W1 + 30.554* W21 + 11.385*W22+ 3.9089*W3
P(BlueNRG-232) = 11.703*W1 + 33.042* W21 + 7.0838*W22+ 0.8524*W3
P(nRF52832) = 11.759*W1 + 25.179* W21 + 7.1806*W22+ 2.0729*W3
100% = W1 + W2 + W3
如果不同的应用,W1,W2,W3 这部分比例的时间会不同。
综述:Da14585 的 RF 性能比较好;BlueNRG-232 的高速晶振启动稳定时间快,睡眠待机电流低;nRF52832 各项性能比较综合。我个人认为对来说对于大多数的应用 W1 和 W22占的比例会比较大, BlueNRG-232 的综合功耗占优势,nRF52832 次之,DA14585 最后。
各家同类型产品功耗:
同一厂家,相近的芯片功耗很相似。Dialog 的 DA14585 是 DA14580 的升级版本,DA14580 的功耗可以参考 DA14585 的,实际上会比 DA14585的功耗更差一点点,DA14580这款芯片在当时刚出来时功耗属于业界标杆,现在来说已经被很多同行新产品赶超了。ST 的BlueNRG-1 和 BlueNRG-2的体系结构几乎没啥改动,功耗也一样。Nordic 的 nRF52810 属
于 nRF52832 的 cost down 版本,功耗也差别不大。
欢迎更多工程师或FAE来投稿,凡是未经发布的首发原创稿必有重金酬谢!投稿请联系快包微信管理员包工头(微信ID:kuaibao52)
方案超市都是成熟的量产方案和模块,欢迎合作:
智能楼宇音视频对讲设备
http://www.52solution.com/facs/4518
楼宇自控中传感器解决方案
http://www.52solution.com/facs/2843
楼宇人脸识别门禁解决方案
http://www.52solution.com/facs/2254
快包任务,欢迎技术服务商承接:
楼宇对讲话机加装无线开锁模块 ¥100000.00
http://www.52solution.com/kb/14395
楼宇人脸识别可视对讲系统 ¥100000.00
http://www.52solution.com/kb/14294
数字楼宇可视对讲系统 ¥60000.00
http://www.52solution.com/kb/12646