蓝牙5/4.2/4.1/4.0数据吞吐率分析

蓝牙数据包

蓝牙数据包由Preamble、Access、PDU、CRC四部分组成。

其中,PDU由Header、Payload、MIC三部分组成。

Header由LLID、NESN、SN、MD、Length五部分组成。

传输周期

设备A发送一个数据包给设备B,该过程称作T时隙;

然后等待150us,该过程称作IFS时隙;

接着设备B发送一个ACK包给设备A,该过程称作R时隙;

然后又等待150us,开始下一次传输。

T + IFS + R + IFS 为一个完整的传输周期

注:ACK包为空包,即PDU的Payload为0,那么ACK包的长度 = 1+4+2+3 = 10字节。

蓝牙4.0/4.1/4.2数据吞吐率

蓝牙4.0/4.1/4.2的调制速率是1Mbps,即1秒钟传输1M bits。

传输1bit的时间 = 1s / 1M bits = 1 us

(1)蓝牙4.0/4.1

蓝牙4.0/4.1的PDU头部用 5个bit标识有效数据长度,即0-31字节,那么去除数据完整性校验MIC的4字节后,有效数据最大为27字节。

T时隙时间 = (1+4+2+27+4+3) x 8 x 1us = 328us

R时隙时间 = (1+4+2+3) x 8 x 1us = 80us

一个完整传输周期时间 T = 328 + 150 + 80 + 150 = 708us

那么

(2)蓝牙4.2

蓝牙4.2的PDU头部用8bit标识有效数据长度,即0-255字节,那么去除数据完整性校验MIC的4字节后,有效数据最大为251字节。

T时隙时间 = (1+4+2+251+4+3) x 8 x 1us = 2120us

R时隙时间 = (1+4+2+3) x 8 x 1us = 80us

一个完整传输周期时间 T = 2120 + 150 + 80 + 150 = 2500us

那么

可见蓝牙4.2的吞吐率较蓝牙4.0/4.1提升了163%。

蓝牙5数据吞吐率

蓝牙5的调制速率是1Mbps或2Mbps,即1秒钟最快可传输2M bits。

(1)使用1Mbps调制速率

那么吞吐率就和蓝牙4.2一样。

(2)使用2Mbps调制速率

那么传输1bit的时间 = 1s / 2M bits = 0.5 us

T时隙时间 = (1+4+2+251+4+3) x 8 x 0.5us = 1060us

R时隙时间 = (1+4+2+3) x 8 x 0.5us = 40us

一个完整传输周期时间 T = 1060 + 150 + 40 + 150 = 1400us

那么

可见蓝牙5的吞吐率较蓝牙4.2提升了78.5%。

你可能感兴趣的:(蓝牙5/4.2/4.1/4.0数据吞吐率分析)