蓝牙5速率大揭秘:究竟快在哪?
时间:10-02
整理:3721RD
点击:
蓝牙5来了,它在蓝牙4.2核心规范之上实现了大幅提升:4倍的传输范围扩展、2倍的传输速率提升以及8倍的广播数据包扩展。开发人员可以访问蓝牙技术联盟网站,下载最新的蓝牙5核心规范。
蓝牙5发布后,一位开发人员问我:“有了更高的带宽功能,蓝牙5的速度到底有多快呢?”今天,我们将从理论的角度再次深入探讨蓝牙5和早前版本的蓝牙低功耗数据吞吐量。
大家知道,对于无线连接,有一些传输成本用于链路维护和数据包冗余,以保持蓝牙连接的稳健性和高效性。 对于蓝牙低功耗连接,从一个设备到其对等设备的完整传输周期如下图:
“T”时隙是传输时隙,用以传输数据帧,数据帧包括帧头、有效载荷和完整性校验字段,有用的数据将位于有效载荷中以进行发送。
“R”时隙是来自对等设备的应答数据包;当设备向对等设备发送一个数据包时,对等设备将发回具有最小数据包长度的数据包,以指示早前传输成功。
“T_IFS”是帧间间隔;它定义了两个连续数据包之间的时间间隔。 “T_IFS”应为150μs,无论使用的是蓝牙5还是蓝牙4.0。 关于“T_IFS”的详细信息,请参考蓝牙5或蓝牙v4.0、v4.1和v4.2核心规范的第6卷B部分第4.1节。
因此,用于连接的蓝牙低功耗数据吞吐量的计算公式为:
当建立连接时,我们能够使用此公式计算从蓝牙4.0到蓝牙5的数据吞吐量。
蓝牙v4.0 / 4.1
蓝牙v4.0 / 4.1具有相同的低功耗数据包格式和相同的调制速率,即1Mb / s,这意味着发射机具有在一秒内发送1M bit的能力。
图2表示蓝牙4.0 / 4.1链路层数据包的数据包格式、PDU格式和帧头格式。 从图2中可以看出,长度字段长度为5位(黄色高亮显示;5位等于二进制的0b11111、十六进制的0x1F、十进制的31),它可以表征0~31 的数值范围, 指示有效载荷和MIC(如果包含)的长度。 有效载荷字段的长度应小于或等于27个字节,因为MIC长度为4个字节,31-4 = 27。
图3是一个完整的周期图,从中可以看出一个完整周期包括:
"R时隙".
最小单帧长度为:10个八位字节,因为:
前导码 接入地址 报头 CRC
1 4 2 3
最小单帧PDU的长度= 1 + 4 + 2 + 3 = 10个字节。\
1Mb/s速率下,它将消耗80μs,因为:
最大数据包长度为:
前导码 接入地址 报头 有效载荷 MIC CRC
1 4 2 27 4 3
1 + 4 + 2 + 27 + 4 + 3 = 41个八位字节
它将消耗328μs,因为:
4.0 / 4.1吞吐量计算公式为:
蓝牙 4.2版本
对于蓝牙v4.2,调制速率与4.0和4.1版本相同,仍为1Mb / s。 但数据包格式不同,区别如下方图4所示。
从图4中可以看出,长度字段的长度为8位(黄色高亮显示,8位等于二进制的0b11111111、十六进制的0xFF、十进制的255),它具有0到255个字节,其指示了有效载荷和MIC(如果包括)的长度。 有效载荷字段的长度应小于或等于251个字节,因为MIC长度为4个字节,255-4 = 251。
图5是一个完整的周期图,从中可以看出一个完整周期包括:
"R时隙"
它与v4.0 / 4.1相同,为80μs。
T_IFS, 150 ms.
"T时隙"
最大数据包长度为:
前导码 接入地址 报头 有效载荷 MIC CRC
1 4 2 251 4 3
1 + 4 + 2 + 251 + 4 + 3 = 265个八位字节
它将消耗2120μs,因为:
蓝牙4.0 / 4.1吞吐量计算公式如下:
蓝牙5
对于蓝牙5,调制速率有两个选项。 一是1Mb / s,如蓝牙v4.0 / 4.1 / 4.2;二是我们接下来将讨论的2Mb / s。从蓝牙v4.2到蓝牙5的数据包格式是相同的:有效载荷是251个八位字节。所以1Mb / s 速率下蓝牙5的数据吞吐量1Mb / s速率下的蓝牙4.2相同。
但是启用2Mb / s后就不同了。 图6中看到这一点。
图6是一个完整的周期图,从中可以看出一个完整周期包括:
"R时隙"
空白PDU的长度为10个八位字节:
前导码 接入地址 报头 CRC
1 4 2 3
空白PDU的长度= 1 + 4 + 2 + 3 = 10个八位字节。
2Mb / s的速率下,它将消耗40μs,因为:
T_IFS, 150 μs
"T时隙"
最大数据包长度为:
前导码 接入地址 报头 有效载荷 MIC CRC
1 4 2 251 4 3
1 + 4 + 2 + 251 + 4 + 3 = 265个八位字节
它将消耗1060μs,因为:
蓝牙5吞吐量计算如下:
结论
对于理论上的蓝牙低功耗吞吐量,下图说明了低功耗蓝牙各个版本之间的差异。可以看到蓝牙5的带宽比4.0/4.1版本高4.6倍,比4.2版本高约1.7倍。 更高的带宽可以转化为更高的速度,这将允许蓝牙低功耗能比以往更快速地传输数据流 —— 既更高效、且占用更少的频带,因而更适用于快速数据传输。对于诸如OTA固件升级或可穿戴设备数据日志同步等应用场景,蓝牙5将再次颠覆用户体验,而更高的速度也将为未来高数据速率流传输奠定坚实的基础。
蓝牙5发布后,一位开发人员问我:“有了更高的带宽功能,蓝牙5的速度到底有多快呢?”今天,我们将从理论的角度再次深入探讨蓝牙5和早前版本的蓝牙低功耗数据吞吐量。
大家知道,对于无线连接,有一些传输成本用于链路维护和数据包冗余,以保持蓝牙连接的稳健性和高效性。 对于蓝牙低功耗连接,从一个设备到其对等设备的完整传输周期如下图:
图1
“T”时隙是传输时隙,用以传输数据帧,数据帧包括帧头、有效载荷和完整性校验字段,有用的数据将位于有效载荷中以进行发送。
“R”时隙是来自对等设备的应答数据包;当设备向对等设备发送一个数据包时,对等设备将发回具有最小数据包长度的数据包,以指示早前传输成功。
“T_IFS”是帧间间隔;它定义了两个连续数据包之间的时间间隔。 “T_IFS”应为150μs,无论使用的是蓝牙5还是蓝牙4.0。 关于“T_IFS”的详细信息,请参考蓝牙5或蓝牙v4.0、v4.1和v4.2核心规范的第6卷B部分第4.1节。
因此,用于连接的蓝牙低功耗数据吞吐量的计算公式为:
当建立连接时,我们能够使用此公式计算从蓝牙4.0到蓝牙5的数据吞吐量。
蓝牙v4.0 / 4.1
蓝牙v4.0 / 4.1具有相同的低功耗数据包格式和相同的调制速率,即1Mb / s,这意味着发射机具有在一秒内发送1M bit的能力。
图 2
图2表示蓝牙4.0 / 4.1链路层数据包的数据包格式、PDU格式和帧头格式。 从图2中可以看出,长度字段长度为5位(黄色高亮显示;5位等于二进制的0b11111、十六进制的0x1F、十进制的31),它可以表征0~31 的数值范围, 指示有效载荷和MIC(如果包含)的长度。 有效载荷字段的长度应小于或等于27个字节,因为MIC长度为4个字节,31-4 = 27。
图 3
图3是一个完整的周期图,从中可以看出一个完整周期包括:
"R时隙".
最小单帧长度为:10个八位字节,因为:
前导码 接入地址 报头 CRC
1 4 2 3
最小单帧PDU的长度= 1 + 4 + 2 + 3 = 10个字节。\
1Mb/s速率下,它将消耗80μs,因为:
最大数据包长度为:
前导码 接入地址 报头 有效载荷 MIC CRC
1 4 2 27 4 3
1 + 4 + 2 + 27 + 4 + 3 = 41个八位字节
它将消耗328μs,因为:
4.0 / 4.1吞吐量计算公式为:
蓝牙 4.2版本
对于蓝牙v4.2,调制速率与4.0和4.1版本相同,仍为1Mb / s。 但数据包格式不同,区别如下方图4所示。
图 4
从图4中可以看出,长度字段的长度为8位(黄色高亮显示,8位等于二进制的0b11111111、十六进制的0xFF、十进制的255),它具有0到255个字节,其指示了有效载荷和MIC(如果包括)的长度。 有效载荷字段的长度应小于或等于251个字节,因为MIC长度为4个字节,255-4 = 251。
图 5
图5是一个完整的周期图,从中可以看出一个完整周期包括:
"R时隙"
它与v4.0 / 4.1相同,为80μs。
T_IFS, 150 ms.
"T时隙"
最大数据包长度为:
前导码 接入地址 报头 有效载荷 MIC CRC
1 4 2 251 4 3
1 + 4 + 2 + 251 + 4 + 3 = 265个八位字节
它将消耗2120μs,因为:
蓝牙4.0 / 4.1吞吐量计算公式如下:
蓝牙5
对于蓝牙5,调制速率有两个选项。 一是1Mb / s,如蓝牙v4.0 / 4.1 / 4.2;二是我们接下来将讨论的2Mb / s。从蓝牙v4.2到蓝牙5的数据包格式是相同的:有效载荷是251个八位字节。所以1Mb / s 速率下蓝牙5的数据吞吐量1Mb / s速率下的蓝牙4.2相同。
但是启用2Mb / s后就不同了。 图6中看到这一点。
图 6
图6是一个完整的周期图,从中可以看出一个完整周期包括:
"R时隙"
空白PDU的长度为10个八位字节:
前导码 接入地址 报头 CRC
1 4 2 3
空白PDU的长度= 1 + 4 + 2 + 3 = 10个八位字节。
2Mb / s的速率下,它将消耗40μs,因为:
T_IFS, 150 μs
"T时隙"
最大数据包长度为:
前导码 接入地址 报头 有效载荷 MIC CRC
1 4 2 251 4 3
1 + 4 + 2 + 251 + 4 + 3 = 265个八位字节
它将消耗1060μs,因为:
蓝牙5吞吐量计算如下:
结论
对于理论上的蓝牙低功耗吞吐量,下图说明了低功耗蓝牙各个版本之间的差异。可以看到蓝牙5的带宽比4.0/4.1版本高4.6倍,比4.2版本高约1.7倍。 更高的带宽可以转化为更高的速度,这将允许蓝牙低功耗能比以往更快速地传输数据流 —— 既更高效、且占用更少的频带,因而更适用于快速数据传输。对于诸如OTA固件升级或可穿戴设备数据日志同步等应用场景,蓝牙5将再次颠覆用户体验,而更高的速度也将为未来高数据速率流传输奠定坚实的基础。