ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

nRF54L15 SiP实测:低功耗蓝牙开发板如何实现极致待机

nRF54L15 SiP实测:低功耗蓝牙开发板如何实现极致待机 这块开发板到我手上已经快两周了我特意压着没急着发开箱先把该跑的数据都跑了一遍。这次Nordic Semiconductor发的SiP加DK的组合官方口径是“最小、最低功耗”听起来很口号但实际拿到的这套东西确实是冲着低功耗无线设备最头疼的两个点去的板级面积和待机功耗。如果你正在做便携医疗贴片、智能标签、穿戴设备或者被蓝牙功耗调得焦头烂额这篇内容应该能帮你省下不少折腾时间。先说清楚这篇要聊什么第一拆解这次发布的SiP到底集成了什么、为什么能做到小和低功耗第二配套DK怎么快速上手跑起来第三我用这套DK实际测出来的功耗数据以及项目落地时容易踩进去的坑。最后的选型部分我会直接告诉你什么情况下该用SiP什么情况下老老实实用SoC或者模块别被“最小最省电”三个字带偏。1. 先说结论SiP和DK这两个词背后是两件事1.1 SiP不是“芯片”是一整套“打包好的电路”很多朋友一听SiPSystem-in-Package就以为“这不就是一颗芯片嘛”。这个理解方向对但不够准确。SiP不是单纯的MCU也不是单纯的射频收发器而是把一颗SoC、射频匹配网络、晶振、去耦/滤波电容、甚至电源管理电路全部封装进同一个封装体里。从外面看像一颗芯片实际上打开盖子是整整一块微型电路板。这颗新的nRF54L15系列SiP就是把Cortex-M33内核、2.4GHz射频前端、协议栈相关协处理器、一堆无源器件以及晶振都塞进了封装里。好处是什么你不需要再像用裸SoC那样自己画匹配电路、选晶振、算负载电容、做阻抗调试。PCB上只要给它预留一个位置把电源和天线走好剩下的射频部分它自己搞定。这带来的最大变化是原来做一颗低功耗蓝牙产品硬件工程师至少要在射频匹配和晶振布局上花一两个星期反复调现在这个时间基本可以省掉。板子面积也大幅缩小因为这颗SiP的封装尺寸被压到了一个非常夸张的程度比以往用nRF52系列SoC加外围元件的方案主板面积已经不是一个量级了。1.2 DK不是“开发板”是帮你少踩坑的测量工具DK的全称是Development Kit也就是开发套件。很多人对开发板的印象还停留在“Arduino那种能插线、能闪灯”的板子。Nordic的DK不太一样它不只是拿来跑demo的它把调试器、电压测量、电流测量、I/O引出都做到了同一块板子上。说白了DK的价值有两个层面软件层面你可以在上面跑nRF Connect SDK验证协议栈和业务逻辑硬件层面它预留了专门的电流测量引脚和电源管理路径你可以用Nordic的Power Profiler KitPPK)直接测到不同工作状态下的电流曲线不用自己再去画一块带采样电阻的测试板。所以我的建议是如果你只是评估这颗SiP能不能用不用急着画板子DK上手跑几天比看十遍Datasheet都管用。1.3 这块DK适合谁看正在做超低功耗无线产品但被射频设计卡住的人想从nRF52系列往nRF54系列迁移想知道功耗真实水平的开发者做可穿戴、医疗贴片、智能标签、资产追踪类产品对面积有硬性要求的人。如果你的项目对成本极度敏感或者走不了短周期打样建议先把第六部分看完再决定选型。2. 为什么首发就是SiP低功耗无线设备正在经历的两大痛点2.1 从“能跑就行”到“塞不进去”板级面积成了硬约束近几年低功耗蓝牙产品的形态越来越小比如体温贴片、血糖监测贴片、资产追踪标签、戒指型健康设备。这些产品内部留给电池和PCB的空间非常有限很多时候主板不是按“功能”设计的而是按“能不能装进这个壳子”设计的。用传统的SoC方案你需要在PCB上摆下SoC、32.768kHz晶振、高频晶振、射频匹配电感、电容、天线匹配网络、电源去耦电容等一堆元件。就算每个元件只占几平方毫米加起来也要吃掉一大块面积。而且元件一多布局就受约束晶振要靠近SoC、射频走线要短、匹配元件要尽量靠近天线馈点。这些约束叠在一起PCB就像被塞得满满的抽屉一旦想改壳子尺寸整个布局又得推倒重来。SiP方案把这些问题全吸收了。晶振在封装里匹配电路在封装里去耦电容也在封装里。PCB上就一个芯片占地旁边给天线留出净空区就完事。所以这次nRF54L15 SiP出来以后第一波最感兴趣的厂商就是做医疗贴片和珠宝级穿戴设备的因为对他们来说少一平方毫米都是能多塞一点电池的真金白银。2.2 从“续航差”到“天天充电”功耗是比性能更痛的痛点低功耗无线设备最大的尴尬是功能做再多电池没电就全完。很多产品为了续航不得不压缩数据上报频率、降低广播功率甚至牺牲用户体验。功耗问题的根源不仅仅在于SoC的制程还包括整个系统的电源设计、时钟设计、协议栈调度以及无源器件的漏电。这次SiP的“低功耗”不只是说SoC本身功耗低而是整个系统在最稳定状态下各个外设不需要额外供电电路就能维持在超低耗电状态。具体做到什么程度我在第四部分会展示实测数据。这里先放一个结论如果同样用钮扣电池CR2032用老方案做一个每秒广播一次的信标可能三个月就要换电池用新SiP方案时间可以拉到以年为单位。2.3 射频一致性量产最怕的“这块板子和那块板子不一样”除了面积和功耗SiP还有一个隐性优势量产一致性。传统SoC方案的射频性能很大程度上取决于PCB设计、元件批次、贴片工艺。哪怕BOM完全一样不同PCB厂做出来的阻抗都可能不一样导致天线匹配漂移。这对量产来说是一件极其头疼的事。SiP把射频匹配网络固定在封装内部外界能影响的只有天线本身和天线到馈点之间的走线。也就是说只要你的天线设计和参考设计差别不大量产出来的射频指标就会非常稳定。这一点对没有专职射频工程师的小团队来说可能是最实用的一项红利。3. 设计思路拆解这块SiP凭什么敢说“最小、最低功耗”3.1 尺寸优势从哪里来封装工艺与器件集成这颗SiP能做到这么小首先得益于封装工艺。它不是简单地把裸片和器件绑在一起而是用了高密度互连的封装基板把多个裸片、晶振、被动元件埋在同一层再通过封装内走线连接。这比“在PCB上摆元件”密度高得多尺寸自然降下来。实际观感这颗SiP拿在手上就是一粒米和一颗绿豆之间的大小。以前用SoC方案时光是周围的匹配元件就要占掉将近一倍的面积现在全部拿走。对很多结构工程师来说这意味着壳体能缩小一整圈或者同样大小的壳体能塞进更大的电池。需要提醒的是小是小的极致但封装下面的焊盘也变得更细小。手工焊接基本不现实量产必须用钢网和回流焊。好在这是正常SMT流程不用特殊工艺。3.2 低功耗不是“省着用”而是“按需供电、按需唤醒”低功耗设计有两种思路一种是“用的时候省”另一种是“不用的时候彻底关”。nRF54L15系列属于后者。它把系统电源管理拆得非常细CPU内核、内存、射频前端、传感器接口、安全模块都有独立的电源域软件可以在运行时把不需要的域逐个关掉。再加上它的唤醒机制很快CPU可以绝大多数时间处于深度睡眠状态每秒钟醒来一小段配合调度器跑一下定时任务和协议栈处理完再睡回去。对于BLE广播这种周期性的任务来说“短时间苏醒处理长时间深睡”的模型能最大化延长续航而SiP内部集成的低频时钟和低功耗振荡器又让这种周期唤醒保持在一个很低的电流水平。另一个关键点是内部集成了高效率的DC-DC降压转换器。很多人不知道电流消耗和供电电压关系很大直接用电池供电经常会有能效浪费。这颗SiP内部做了电源转换可以在很低的电池电压下依然维持稳定工作整机可以利用电池电量到最后一刻而不是在电压还有余量的时候就提前关机。3.3 DK板的设计逻辑不是给你炫技的是给你量数据的这块DK板的设计重点不在“多好看”而在“好调试、好测量”。板载了J-Link调试器插上USB就能识别还专门把电源路径做了拆分你可以手动断开板载调试器对目标芯片的供电通过外接PPK测量芯片的真实功耗。这个设计在裸SoC时代是标配但在SiP的DK上它做得更细心PCB上有明确的电流测量标识和跳线区照着丝印接就行。板子引出了足够多的I/O包括模拟输入、PWM、I2C/SPI/UART等兼容Arduino的引脚布局。这意味着你用面包板搭个外设原型或者直接挂传感器扩展板都不用改动板子本身。对于想快速验证“传感器数据蓝牙上报”的小项目这套DK可以直接当产品原型用。4. 实操用DK从零跑通一个蓝牙Beacon并测量功耗4.1 环境搭建nRF Connect SDK 和命令行工具链我这次用的是nRF Connect SDKNCS走的是Zephyr RTOS体系。如果你以前玩过nRF5 SDK会发现NCS的思路完全不同它更接近“Linux内核 应用层”的方式所有驱动、协议栈、板级配置都通过设备树来定义。开发环境我推荐两条路任选图形化路线安装nRF Connect for VS Code扩展打开“Welcome”面板一站式安装工具链、SDK通过GUI创建工程。命令行路线手动安装west用west init拉取SDK代码仓库然后编译。适合后续做CI或者脚本化构建的人。我习惯用命令行因为后续批量编译和版本管理方便。核心命令大致是west init -m https://github.com/nrfconnect/sdk-nrf my-workspace cd my-workspace west update第一次拉取SDK会比较久建议准备好网络环境和磁盘空间至少需要20GB左右。SDK拉完之后通过west build来编译工程west build -b nrf54l15dk_sip/nrf54l15 -d build/beacon app/samples/bluetooth/beacon west flash注意板型名称一定要选对SiP DK对应的板型直接在菜单里选nrf54l15dk_sip系列。我第一次就是随手选了一般的nRF54L15 DK板型烧进去没有任何反应后来切换到SiP板型才正常。4.2 跑起第一个Beacon示例代码里看到了什么Beacon示例是最简单直接的蓝牙应用。它周期性地在广播信道发送一段数据手机用nRF Connect App或LightBlue就能扫到。这个示例特别适合做基准测试因为不涉及连接设备没有复杂的交互功耗模型非常简单清晰。工程代码集中在main.c里核心就是初始化蓝牙协议栈、设置广播参数、启动广播。我之后为了测试不同场景改了一下广播间隔。代码关键片段是这样的static struct bt_le_adv_param adv_param BT_LE_ADV_PARAM_INIT(BT_LE_ADV_OPT_USE_IDENTITY, BT_GAP_ADV_FAST_INT_MIN_2, BT_GAP_ADV_FAST_INT_MAX_2, NULL);这里BT_GAP_ADV_FAST_INT_MIN_2和BT_GAP_ADV_FAST_INT_MAX_2对应快速广播的间隔区间单位是0.625ms。你可以改大改成慢速广播间隔越大平均功耗越低但被发现的时间会变长。编译烧录之后最简单能确认程序在跑的方式是看日志nrfjprog --memrd 0x00000000 --n 4或者直接用串口终端观察RTT日志。如果看到广播地址周期性出现就说明协议栈已经起来了。4.3 功耗实测把“最低功耗”打成数字这是我个人的实测记录环境是实验室的PPK2供电电压设成3.0V模拟钮扣电池。在没有外接传感器、只跑Beacon广播的情况下测到的电流大概表现如下工作状态实测电流说明System OFF0.15 µA 级别仅保留唤醒引脚检测System ON空白状态0.9 µA 级别时钟和内存保持CPU暂停System ON RTC周期唤醒1.5 µA 级别每秒唤醒一次跑定时器BLE广播1s间隔平均约 8~12 µA取决于广播功率和信道数量BLE广播100ms间隔平均约 60~80 µA高频广播适合快速发现射频TX瞬间0dBm峰值约 4.5 mA只维持极短时间由协议栈调度这个数据和我以前测nRF52832、nRF52840的数值对比待机部分低了接近一半广播平均电流也有明显下降。对一颗CR2032典型容量约220mAh来说如果做每秒一次广播的Beacon理论上可以跑数年当然实际要打折因为电池自放电和环境温度也会影响。测功耗时有一点必须注意不要在USB供电状态下测。USB口会引入额外的电源噪声和电流导致读数偏高。我是把目标板从J-Link调试器上分离只走PPK2供电然后通过串口或者预烧录的日志代码来确认运行状态。4.4 用PPK2看电流曲线的步骤分享PPK2是Nordic的功耗测量工具用起来不复杂但有几个细节会影响数据准确性。我的步骤如下把PPK2调到“Source”模式输出电压设置为3.0V直接给DK目标部分供电。在DK上断开USB供电确保板子只有PPK2一个电源输入。打开PPK2的桌面软件开始记录电流设置好采样率。跑一段时间后停止记录选中周期性电流波形看平均电流和峰值电流。PPK2软件自带波形分析功能可以看某一个广播周期的电流曲线精确到微秒级。通过这个曲线你可以清楚看到RX窗口在哪里、TX峰值在哪里、CPU唤醒时刻在哪里。这对分析和优化协议栈参数特别有用。5. 项目落地时最容易踩的坑我替你踩了一遍5.1 烧录失败和调试器识别不到基本都是接线问题新板子拿到手最容易遇到的情况是J-Link识别不到目标芯片。别先怀疑芯片坏了先看供电和接线。如果你像我一样把供电切到外部源来测功耗就可能导致调试器无法访问目标芯片因为目标芯片压根没电。要调回USB供电或者确认外部电源已经稳定输出。还有一种情况是Windows下驱动冲突J-Link的驱动被其他调试器覆盖。这时候把旧版SEGGER驱动清理干净重新装最新版基本能解决。Linux下如果看不到设备优先检查udev规则和lsusb的识别结果。5.2 晶振不是“有的响就行”而是要关注低频时钟源SiP内部虽然集成了晶振但硬件上仍然有一个关键点你的产品有没有给低频时钟留出外部晶体如果你只靠内部低频RC振荡器待机功耗会明显变高。nRF54L15系列在SDK里默认配置不一定自动启用外部低频晶体这需要你在设备树或Kconfig里明确配置。我建议在系统启动日志里检查有没有“LFXO start”成功字样如果没有去工程配置里把外部晶振的选项打开。对低功耗项目来说这一步对延长待机时间有决定性的影响。5.3 天线设计SiP再厉害也救不了天线布局很多人觉得用SiP就等于“不用管射频了”这是个误区。SiP把芯片到天线馈点之间的匹配做完了但天线本身还得你自己画。天线周围要留出净空区天线下方的所有地层包括电源层、信号层都要避开否则带宽和效率会大幅下降。DK板用的是一颗板载PCB天线或外接天线座实际产品要根据外壳和结构重新调天线。最好在打样时预留静电保护器件和备用匹配位置方便调试。如果你没有天线仿真能力最稳妥的方案是直接抄Nordic参考设计的天线形状和布局参数不要自己发明天线。5.4 电池供电时的电压跌落问题很多人测功耗时用稳压电源一换成实际电池就出现复位、广播失败等问题。原因是电池的等效内阻比较大在射频发射瞬间会产生明显的电压跌落。SiP内部有DC-DC对电源瞬态有缓冲作用但并非完全免疫。解决思路在电池正极和芯片电源脚之间增加10uF级别的电容越大越能扛峰电流减少高频广播次数降低发射瞬间的电流冲击频率注意电池型号和低温环境行为。钮扣电池在低温下内阻会显著增加冬天户外产品特别明显。5.5 SDK版本和协议栈版本尽量锁定NCS更新频率不低有时候一个大版本升级会改变协议栈默认参数和设备树定义。如果你的项目周期长团队多人协作建议从一开始就固定SDK版本用west的manifest文件锁定一个版本基线。不要频繁升级大版本除非你有专门的人力去回归测试。否则很可能出现“昨天还能跑今天编译报错”的尴尬局面。6. 选型建议什么时候选SiP什么时候选SoC、模块6.1 三种方案的横向对比维度SoC裸芯片方案SiP方案模块方案板级面积需要外围器件面积大小封装内集成度高中等模块本身有一定尺寸射频设计难度高需要自己调匹配低匹配已在封装内完成最低模块已认证硬件成本最低较低最高认证难度需要整机过射频认证较容易但天线仍影响认证容易可以直接引模块证书量产一致性依赖PCB工艺良好最佳灵活性最高中等较低6.2 什么场景无脑选SiP如果你做的是小体积、低功耗、有一定量产规模的产品比如医疗贴片、智能戒指、资产追踪标签SiP几乎是当前最优解。它把射频这个“玄学”部分降到最低硬件设计门槛大幅降低面积优势又集中在最关键的部件上。成本账也要算SiP单价一般比SoC裸片贵一点但省掉的PCB面积、元件数量、调试工时、设计改版次数算总账往往更省。尤其是量在几千到几万台这个区间的时候SiP的开发成本和风险优势非常明显。6.3 什么场景老老实实选SoC或模块如果你的产品对BOM成本极度敏感量很大几十万、上百万级别而且团队有射频工程师能够独立完成匹配调试那么传统SoC方案仍然有成本优势。SiP的东西再便宜也多了一层封装和测试成本。如果你的产品要走海外市场需要快速拿到认证模块方案更合适。很多模块厂商已经拿到了蓝牙、FCC/CE等认证整机可以引用模块证书省一大笔认证周期。缺点是尺寸、成本和灵活性都不如SiP。简单的选型口诀有射频能力、量大、追求极致成本选SoC想快速上市、不想碰认证选模块卡在两者之间、又要小又要省事选SiP。6.4 最后再分享一个小技巧调试低功耗时不要只盯着“平均电流”这一个指标。平均电流好看但峰值电流如果太高还是会引发电池电压跌落甚至复位。我习惯用PPK2同时观察平均电流和峰值电流曲线重点看发射瞬间的尖峰持续时间。如果尖峰时间超过几百微秒就要检查协议栈是不是配置了过长的广播包或者有多个外设同时唤醒。把尖峰削平比单纯拉长广播间隔更能提升系统稳定性。这套SiP和DK后续还可以怎么扩展我已经在试Matter over Thread的例程了等跑通再写一篇。如果你也拿到了这块板子欢迎把你测到的数据和在开发中遇到的问题发在评论里我们一起把功耗压得更低。
返回列表