3. nRF54无线子系统架构解析

nRF54系列之所以能在单芯片上同时跑BLE、Thread、Zigbee甚至私有2.4 GHz协议,关键不在于“软件把时间切开”这么简单,而在于其无线子系统从射频前端到事件互连都做了面向并发的硬件设计。理解这套架构,是后续做多协议调度、时隙分配和低延迟响应的前提。本节按信号从天线到协议栈自下而上拆解,并重点说明DPPI与PPIB如何把“外设事件”变成“无线电动作”。

一、多协议无线电前端:共享射频资源的第一道关口

nRF54的2.4 GHz无线电前端并不是为某一协议独占设计的,而是一个可被多个协议引擎分时复用的公共射频通道。它包含天线接口、匹配网络、低噪声放大器(LNA)、功率放大器(PA)以及收发切换开关。发送时,协议引擎把调制好的基带符号送入发射链,经PA放大后由天线辐射;接收时,天线信号经LNA放大后送入接收链解调。由于BLE、Thread、Zigbee都工作在2.4 GHz ISM频段,物理层调制方式相近(GFSK为主),因此前端可以共用,差异主要体现在协议引擎对数据包格式、跳频序列和时序的处理上。

这里有一个工程上必须注意的点:多协议并发时,射频前端在同一时刻只能服务一个协议。所谓“并发”,在射频层面是快速时分复用,而不是真正的同时收发。因此前端切换速度、PA ramp-up时间、频率合成器锁定时间,直接决定了协议间切换的最小间隔。nRF54通过更快的频率合成器和更短的收发切换时间,把这个间隔压到微秒级,使BLE连接事件与Thread轮询之间可以插入而不明显互相干扰。

二、2.4 GHz收发器与协议引擎的分工

收发器负责物理层:频率合成、调制解调、位同步、CRC校验、RSSI测量。协议引擎则位于收发器之上,负责链路层帧的组装与解析。nRF54内部为不同协议提供了独立的协议引擎实例,例如BLE引擎处理广播、连接事件、加密和LL控制流程;802.15.4引擎处理Thread/Zigbee的MAC帧、CSMA/CA和ACK。每个引擎有自己的寄存器组、包缓冲区和事件输出,但它们共享同一个2.4 GHz收发器。

这种“多引擎+单收发器”的结构,决定了多协议并发的核心矛盾:协议引擎可以并行准备数据,但收发器必须串行使用。因此调度器需要根据各协议的时隙需求,提前把收发器分配给某个引擎。例如BLE连接间隔为20 ms、每个连接事件占用约1 ms,Thread轮询周期为1 s、每次占用约2 ms,那么调度器只需在时间轴上为两者分配不重叠的窗口即可。若两个协议窗口发生冲突,则需要优先级仲裁或时隙微调。

nRF54 无线子系统并发支撑结构 天线 + 匹配网络 2.4 GHz 公共射频口 射频前端 LNA / PA / T-R 开关 2.4 GHz 收发器 频率合成 / 调制解调 / CRC 协议引擎(多实例) BLE 引擎:广播/连接/加密 802.15.4 引擎:MAC/CSMA/ACK 私有 2.4G 引擎:自定义帧 无线电调度器 时隙分配 / 优先级仲裁 DPPI 互连 外设事件 → 任务 直连 TIMER / RADIO / GPIOTE 无需 CPU 逐次搬运 PPIB 互连 跨域外设桥接 连接不同电源/时钟域 扩展事件路由范围 应用核 / 协议栈 调度策略 / 时隙配置 事件回调 / 状态管理 低功耗模式控制 并发时隙示意(示例参数) 0 ms 5 ms 10 ms 15 ms 20 ms BLE 15.4 BLE 15.4 BLE 15.4 BLE 15.4 BLE 与 802.15.4 交替占用收发器,窗口不重叠即可共存

三、DPPI:让外设事件直接触发无线电任务

DPPI(Distributed Programmable Peripheral Interconnect)是nRF系列中非常关键的互连机制。传统MCU中,定时器到期后需要CPU响应中断,再由CPU写寄存器启动无线电发送,这条路径的延迟通常在微秒到十几微秒量级,且受中断优先级和总线竞争影响。DPPI把“事件”和“任务”直接连线:某个外设产生事件(Event)后,硬件自动触发另一个外设的任务(Task),全程不经过CPU。

在多协议并发场景中,DPPI的价值非常直接。例如,要让BLE在连接事件开始前精确启动接收,可以配置TIMER的COMPARE事件通过DPPI触发RADIO的RXEN任务;要让发送完成后立即切换回接收,可以用RADIO的END事件通过DPPI触发RADIO的RXEN任务。这样,协议引擎只需在初始化阶段配置好DPPI通道,运行时由硬件按时序自动执行,CPU可以去做协议栈上层处理,甚至进入低功耗睡眠。对于需要严格时序的802.15.4 CSMA/CA退避和ACK响应,DPPI同样能把“定时器到期→启动CCA→启动发送”这条链路硬件化,减少软件抖动。

四、PPIB:跨域互连扩展事件路由

PPIB(Peripheral-to-Peripheral Interconnect Bridge)解决的是另一个问题:当外设分布在不同的电源域或时钟域时,DPPI通道不能直接跨域连接。PPIB作为桥接器,把一侧域的事件/任务映射到另一侧域,使跨域的事件触发仍然可以硬件完成。在nRF54的多核或分区架构中,某些外设可能归属于网络核或应用核的不同域,PPIB让“网络核的无线电事件”可以触发“应用核侧的外设任务”,反之亦然。

对并发通信而言,PPIB的意义在于:它让调度不再受限于单一域。例如,应用核可以配置一个跨域通道,让BLE引擎的广播事件触发应用核侧的GPIO翻转,用于外部功放使能或天线切换;也可以让802.15.4的接收事件触发应用核侧的DMA搬运,把收到的MAC帧直接存入共享内存。这样,多协议的数据通路和事件通路可以分布在不同域中并行推进,而互连机制保证时序仍然确定。

五、并发支撑的工程要点

把上述模块串起来看,nRF54的并发能力可以归纳为三条支撑线:射频前端共享但切换快、协议引擎独立但收发器串行、事件互连硬件化但跨域需桥接。实际配置时,建议按以下顺序检查:

  • 确认各协议的时隙窗口是否重叠。若重叠,调整连接间隔、轮询周期或使用优先级仲裁。
  • 为关键时序路径配置DPPI通道,例如“定时器比较→无线电启动”“无线电结束→无线电接收”。
  • 若事件需要跨电源域或时钟域,检查是否需要PPIB桥接,并确认桥接后的延迟是否满足协议要求。
  • 测量PA ramp-up和频率合成锁定时间,确保协议切换间隔大于硬件最小切换时间。
  • 在低功耗场景下,确认DPPI和PPIB配置不会阻止系统进入目标睡眠模式。
示例参数仅用于说明时隙分配思路:BLE连接间隔20 ms、每事件约1 ms,Thread轮询周期1 s、每次约2 ms。实际项目中应以协议规范、射频切换时间和调度器实测结果为准。

理解这套架构后,后续做多协议调度时就不会把“并发”简单理解为软件分时,而会从射频前端、协议引擎、DPPI/PPIB三个层面同时考虑资源分配和时序约束。这也是nRF54相比前代产品在多协议场景下更可控的根本原因。