公司动态

BLE链路层空口包--等时物理信道PDU

📅 2026/8/3 4:11:35
BLE链路层空口包--等时物理信道PDU
想象一下这样的场景你戴着无线耳机听音乐左耳和右耳的声音必须严格同步否则音乐就会变得支离破碎或者在一个大型会议室里多个听众的助听器需要同时接收同一声源不能有丝毫延迟。这些场景对蓝牙提出了一个传统BLE难以满足的要求——等时Isochronous传输。蓝牙5.2引入的等时物理信道Isochronous Physical Channel正是为这类“时间敏感”的数据传输而设计的。而承载这些数据的就是本文要深入剖析的主角——等时物理信道PDU。1. 什么是等时传输在深入了解PDU之前先搞清楚一个概念等时Isochronous到底是什么意思蓝牙协议中有三种数据传输方式传输类型特点典型应用异步Asynchronous数据必须可靠送达时间不重要文件传输、网页浏览同步Synchronous数据有固定的时间约束速率恒定传统蓝牙语音等时Isochronous数据有时间约束但速率可以变化LE Audio音频流等时传输的核心是数据有“保质期”——如果在规定时间内没有成功发送数据就会被丢弃因为“过期的数据”对接收端已经没有意义。等时物理信道正是为实现这种传输而设计的专用信道它独立于传统的广播信道和数据信道2. PDU的整体结构等时物理信道PDU的格式与数据信道PDU类似但也有自己的特点。它的基本结构是Header16位包含控制信息具体格式取决于PDU用于CIS还是BISPayload0-251字节实际传输的等时数据MIC可选32位当数据需要加密时存在用于消息完整性检查等时物理信道PDU分为两种类型PDU类型全称适用场景通信方式CIS PDUConnected Isochronous PDU连接型等时流点对点双向BIS PDUBroadcast Isochronous PDU广播型等时流一对多单向3. CIS PDUCISConnected Isochronous Stream是在已建立BLE连接的两个设备之间传输等时数据的逻辑传输方式。它最典型的应用就是LE Audio的“多流音频”——比如手机同时向左耳机和右耳机发送同步的音频流。3.1 CIS PDU头部格式CIS PDU的头部为16位布局如下各字段的含义如下字段位数描述LLID2 bits链路层标识符指示PDU类型SN1 bit序列号类似数据信道PDUNESN1 bit下一个期望的序列号用于ACK/重传CIE1 bit关闭等时事件Close Isochronous EventNPI1 bit空PDU指示Null PDU IndicatorRFU2 bits保留供未来使用Length8 bits有效载荷长度3.2 LLID区分数据类型与数据信道PDU类似CIS PDU也使用LLID来区分载荷类型3.3 SN与NESN有确认的重传机制CIS支持双向通信使用确认协议。SN和NESN的作用与数据信道PDU完全相同发送端每发一个新包SN翻转一次接收端通过NESN告诉发送端期望的下一个SN如果NESN与期望不符发送端会重传数据包这意味着CIS在保证时间约束的同时也提供了可靠性。3.4 CIE提前结束事件的“快捷开关”CIEClose Isochronous Event是CIS PDU独有的控制位。当接收端在某个子事件中成功收到数据后可以将CIE置1告诉发送端这个等时事件可以提前结束不需要等待所有预定的子事件都执行完。这有助于节省功耗和空口资源。3.5 NPI识别“空包”NPINull PDU Indicator用于指示这是一个空PDU。当设备需要发送ACK但没有实际数据时可以发送一个带NPI1的空包既完成了确认又节省了空口带宽。4. BIS PDUBISBroadcast Isochronous Stream用于一对多的广播等时通信。它的典型应用是Auracast广播音频——一个音频源设备可以向无数个接收设备同时广播音频流。BIS与CIS最根本的区别是BIS没有确认机制。数据从广播源单向发出接收端不会回复任何ACK。这降低了复杂性但也意味着无法保证每个接收端都能成功收到数据。4.1 BIS PDU头部格式BIS PDU的头部也是16位但布局比CIS简单得多4.2 LLID与CIS相同但用途略有不同BIS PDU的LLID同样用于区分数据类型但由于BIS没有ACK机制SN和NESN这些流控位都不需要了。4.3 CSSN与CSTF广播控制的“信号灯”BIS引入了两个CIS中没有的控制位CSSNControl Subevent Sequence Number3位控制子事件的序列号CSTFControl Subevent Transmission Flag1位控制子事件传输标志这两个字段用于在BIS事件中指示是否存在控制子事件Control Subevent为什么BIS需要控制子事件在连接型的CIS中控制信息如信道映射更新可以通过ACL连接来传输。但BIS是无连接的广播广播源无法通过ACL告诉所有接收端“我要换信道了”。因此BIS需要通过控制子事件来向所有接收端广播控制信息。CSTF标志告诉接收端“这个BIS事件后面跟着一个控制子事件请注意接收”。CSSN则帮助接收端识别控制信息的版本变化。5. 子事件Subevent无论是CIS还是BIS等时物理信道的数据传输都是以事件Event和子事件Subevent为单位组织的。一个等时事件包含一个或多个子事件。每个子事件是在特定时间点上的一段传输机会CIS中中央Central在子事件中发送一次外设Peripheral响应一次BIS中广播源在子事件中发送数据接收端只收不发子事件的数量是可配置的更多的子事件意味着更多的重传机会但也意味着更高的功耗和空口占用。5.1 CIS的刷新超时Flush Timeout在CIS中每个数据载荷都有一个刷新超时Flush Timeout, FT参数。它定义了该数据包在多少个CIS事件内必须被成功发送收到ACK。如果在FT个事件内没有成功这个数据包就会被丢弃Flush——因为它已经“过期”了。这正是等时传输的精髓宁可丢弃过期的数据也不要让接收端等到“迟到的数据”。5.2 BIS的预传输Pre-transmissionBIS由于没有ACK无法通过重传来提高可靠性。但它可以通过预传输Pre-transmission来弥补——在数据实际需要的时刻之前提前多次发送同一个数据包增加接收端成功收到的概率。6. CIS与BIS对比特性CIS PDUBIS PDU通信方式点对点双向一对多单向确认机制有SN/NESN无头部控制位SN、NESN、CIE、NPICSSN、CSTF典型应用手机→耳机多流音频Auracast广播音频可靠性有重传保证靠预传输提升概率7. 总结等时物理信道PDU是蓝牙LE Audio的基石。它的设计体现了对时间敏感性的深刻理解CIS PDU通过SN/NESN提供可靠的双向等时传输CIE让事件可以提前结束FT机制确保过期的数据被及时丢弃BIS PDU通过CSSN/CSTF支持单向广播等时传输控制子事件弥补了无连接场景下控制信息无法传递的问题子事件机制让等时传输拥有了“时间切片”的精细调度能力重传和预传输则在可靠性和时效性之间找到了平衡无论是手机与耳机之间的多流音频还是Auracast的公共广播音频这些看似简单的用户体验背后都依赖于等时物理信道PDU在链路层的精密设计。理解了它你就理解了LE Audio的底层密码。