深入理解藍牙5之高數據傳輸率

    距離藍牙5標準的發佈已經有一段時間了。 我們知道,藍牙5具有更大的傳輸距離,是藍牙4.2的4倍,更快的傳輸速度,是藍牙4.2的2倍,同時廣播數據包的長度也得到了提升,能夠傳輸的數據是之前的8倍。藍牙5發佈後,有開發者問我,既然藍牙5具有更高帶寬,那它究竟能傳輸多快呢?今天我們就深入探討一下藍牙5的高數據傳輸率特性。這裏主要針對藍牙BLE技術。(注:之所以沒有稱之爲藍牙5.0,是因爲官方認爲此標準並非簡單沿襲之前藍牙4.0,4.1,4.2的方式,而是一次巨大的革新,是藍牙技術的一個新階段)。
    衆所周知,對於無線連接來說,需要花費一定的傳輸成本用於鏈路層維護,同時數據包中還有一部分冗餘數據用於確保連接的高效與魯棒性。對於藍牙BLE來說,一次完整的傳輸週期如圖1所示:
這裏寫圖片描述
* “T” 代表傳輸數據包,包括幀頭,負載(payload),完整性檢查。傳輸的有用信息位於負載區域。
* “R”代表從對端設備接收數據包。當本地設備發送數據包後,對端設備會返回應答數據。
* “T_IFS” 是幀間空閒(Inter Frame Space),它規定了兩個連續數據包的時間間隔。不管是藍牙5還是藍牙4.0,T_IFS   都是150微秒。具體內容請參考藍牙核心規範Vol 6, Part B, Section 4.1 。

所以對於藍牙BLE,數據傳輸率公式如下所示,此時設備處於連接狀態,利用這個公式我們就可以計算藍牙4.0到藍牙5的數據傳輸率了:
這裏寫圖片描述

藍牙4.0/4.1

    藍牙4.0/4.1中BLE的包格式與信號調製速率相同,爲1 Mb/s,即發送器每秒可以傳輸1M二進制位。
這裏寫圖片描述
    圖2爲藍牙4.0/4.1鏈路層傳輸數據的包格式,PDU格式,數據頭格式。從圖2可以看到,長度字段(圖中高亮位置)只有5位,表示Payload+MIC的長度範圍是0~31字節。因爲MIC佔4個字節,所以Payload的長度必需小於等於27。
這裏寫圖片描述
    圖3是一個完整的週期圖。從圖3可以看到,一個完整的週期包括:
* “R
空的PDU長度是10字節,因爲:
這裏寫圖片描述
在1Mb/s 速度下它將耗費80 us,因爲:
這裏寫圖片描述
* T_IFS,150 us
* “T
最大數據包長度是41字節:
這裏寫圖片描述
它將耗費328 us,因爲:
這裏寫圖片描述
所以對於藍牙4.0/4.1,真正的數據傳輸率爲:
這裏寫圖片描述

藍牙4.2

    藍牙4.2的調製速率與藍牙4.0/4.1相同,依然是1 Mb/s。但是數據包格式不同。如圖4所示:
這裏寫圖片描述
    從圖4可以看到,長度字段有8位(圖中高亮部位),可以表示的長度範圍是0~255。所以Payload的長度必需小於等於251。
這裏寫圖片描述
    圖5是一個完整的週期圖,與前面提到的類似,只是“T”的長度不同,最大數據包長度是265字節:
這裏寫圖片描述
它將耗費2120 us,因爲:
這裏寫圖片描述
所以對於藍牙4.2,真正的數據傳輸率爲:
這裏寫圖片描述

藍牙5

    藍牙5的調製速率有兩種。第一種與藍牙4.0/4.1/4.2相同,爲 1 Mb/s 。第二種爲 2 Mb/s 。藍牙5與藍牙4.2的包格式相同,Payload最大爲251字節。所以在 1 Mb/s的信號調製速率下,藍牙4.2與藍牙5的數據傳輸率相同。當使用 2 Mb/s調製速率時二者不相同,如圖6所示:
這裏寫圖片描述
    圖6是一個完整的週期圖。從圖6可以看到,一個完整的週期包括:
* “R
空的PDU長度是10字節,因爲:
這裏寫圖片描述
在2Mb/s 速度下它將耗費40 us,因爲:
這裏寫圖片描述
* T_IFS,150 us
* “T
最大數據包長度265字節:
這裏寫圖片描述
它將耗費1060 us,因爲:
這裏寫圖片描述
所以對於藍牙5,真正的數據傳輸率爲:
這裏寫圖片描述

總結

    下圖從理論上對比了不同版本藍牙BLE規範的數據傳輸率。我們可以看到,藍牙5的帶寬是藍牙4.0/4.1 的4.6倍,是藍牙4.2的1.7倍。更高的帶寬可以轉化爲更高的速度,這使藍牙BLE能更快地傳輸數據流——更高效、更少的帶寬佔用,更適合快速數據傳輸。對於諸如OTA升級,或可穿戴設備的數據同步等應用場景,藍牙5會極大提升用戶體驗,同時更高的速度也爲將來的高速數據流傳輸構建了一個可靠的平臺。
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章