BLEのスループットの規格上の最大値について調べました。
4.0/4.1、4.2、5におけるBLEのスループットの規格上の最大値
version | thurouput |
---|---|
4.0/4.1 | 0.305 Mbps |
4.2 | 0.803 Mbps |
5 | 1.43 Mbps |
スループットの最大値は、規格書に記載されている PHYレートと最大ペイロード長と最小転送単位時間から求めることができます。
スループットの最大値 = 最大ペイロード長 / 最小転送単位時間
最小転送単位時間は、データの転送から、ACKを受信して、次のデータを送信できるまでの時間です。下記で計算します。
最小転送単位時間 = 最大ペイロード転送時間 + IFSの時間(150us) + ACK(10octets)の受信時間 + IFSの時間(150us)
最大ペイロード転送時間 はペイロードにプリアンブル 1octet、アクセスアドレス 4octets、ヘッダ 2octets、MIC 4octes、CRC 3 octetsを足して、bitsに換算してから、PHYレートで割ると算出できます。
Bluetooth各バージョンでの実効スループット導出
Bluetooth 4.0 / 4.1
最大ペイロード長 27 Octets
最大ペイロード転送時間 (1 + 4 + 2 + 27 + 4 + 3) * 8 / 1 Mbps = 328 us
最小転送単位時間 (328 + 150 + 80 + 150) us
27 * 8 bits 216 bits
----------------------- = ----------- = 0.305 bit/us = 0.305 Mbit / sec
328 + 150 + 80 + 150 us 708 us
Bluetooth 4.2
Bluetooth 4.2で最大ペイロード長が27から251に拡張されました。
最大ペイロード長 251 Octets
最大ペイロード転送時間 (1 + 4 + 2 + 251 + 4 + 3) * 8 / 1 Mbps = 2120 us
最小転送単位時間 (2120 + 150 + 80 + 150) us
251 * 8 bits 2008 bits
------------------------ = ------------ = 0.803 bit/us = 0.803 Mbit / sec
2120 + 150 + 80 + 150 us 2500 us
Bluetooth 5
Bluetooth 5で2MbpsのPHYが追加されました。
2Mbpsの場合はプリアンブルが2octetsになります。
最大ペイロード長 251 Octets
最大ペイロード転送時間 (2 + 4 + 2 + 251 + 4 + 3) * 8 / 2 Mbps = 1064 us
ACKの転送時間 11*8/2 Mbps = 44 us
最小転送単位時間 (1060 + 150 + 40 + 150) us
251 * 8 bits 2008 bits
------------------------ = ------------ = 1.43 bit/us = 1.43 Mbit / sec
1064 + 150 + 44 + 150 us 1408 us