文章轉載自:http://www.sunyouqun.com/2017/04/page/4/
1. 簡介
物理層(Physical Layer)是BLE協議棧最底層,它規定了BLE通信的基礎射頻參數,包括信號頻率、調制方案等。
BLE工作頻率是2.4GHz,它使用GFSK頻率調制,並使用跳頻機制來解決頻道擁擠問題。
BLE 5的物理層有三種實現方案,分別是1M Sym/s的無編碼物理層、2M Sym/s的無編碼物理層和1M Sym/s的編碼物理層。其中1M Sym/s的無編碼物理層與BLE v4系列協議的物理層兼容,另外兩種物理層則分別擴展了通信速率和通信距離。
2. 頻段和跳頻
大多數無線通信的頻段需要申請授權才可以使用,不同地區開辟了少量免授權頻段,只要產品滿足當地無線電規范,即可免授權使用。下圖展示了全球免授權的頻段及其分布(鏈接):
圖中2.4GHz的頻段很強勢,覆蓋了整個地圖,是專為工業(Industrial)、科學(Scientific)和醫學(Medical)三個機構使用,稱為ISM頻段。全球范圍都可以免授權使用ISM頻段。
BLE即工作在2.4GHz頻段。
2.4GHz頻段信號有明顯的優缺點,優點是免費、技術成熟,缺點是頻段擁擠、信號傳播特性差、遇水衰減。目前除了藍牙信號外,WIFI、ZigBee、無線鍵盤、無線玩具甚至微波爐都工作在這個頻段,當一個空間內同時運行着多個無線設備時,頻帶占用情況如下圖(鏈接):
其中綠色的脈沖為BLE信號,紅色信號分別是WIFI、微波爐和無線設備,它們形成了干擾噪聲。
BLE工作在2.400GHz – 2.480GHz頻率區間,並將這個區間均勻分為40個頻道,相鄰頻道間隔2MHz。在不引起誤解的情況下,頻道也稱為信道,40個信道的頻率和分布如下圖:
BLE使用跳頻技術來解決頻段擁擠問題,即令每次數據通信發生在不同的信道上,假如某個信道擁擠,則避開該信道,選擇其他可用信道進行通信。
一個簡單的跳頻算法是:F(n+1) = [F(n) + hop] % 37,其中hop參數為物理層自己設定的跳頻參數。
實際中使用自適應跳頻算法來更新通信信道。
自適應跳頻的工作機制是,如果某個信道擁擠則做上標記,工作時維護一張信道表以記錄各信道的擁擠情況,並將擁擠信道映射到可用信道中,然后結合上述簡單跳頻算法共同完成信道選擇。假如簡單跳頻算法結果指向一個擁擠信道,則進一步跳轉到它映射的可用信道上,從而實現數據通信總是工作在可用信道上。
3. 調制
3.1 調制方式
物理層定義了兩種調制方式。
一種方案采用高斯頻移鍵控GFSK,具有1MSym/s的符號速率。第二種方式是與第一種相似(Similar),但是具有2MSym/s的符號速率。
第一種方式又分成兩種類型:
- LE 1M Uncoded PHY。該方式的比特率為1Mb/s,它是BLE v4版本協議保持兼容。
- LE 1M Coded PHY。該方式對報文進行編碼,使接收端收到的報文具有前向糾正的能力,在相同誤碼率條件下,能夠顯著降低誤碼重傳次數,從而提高通信速率。 如果采用8符號編碼,比特率為125kb/s,如果采用2符號編碼,比特率為500kb/s。
LE 1M Uncoded PHY是BLE協議強制要求實現的物理層,而LE 1M Coded PHY則是可選方案。
這兩種實現方式符號速率都是1MSym/s。
符號速率中的“符號”是指單次采樣所得到的信息,這個信息可能包含多個比特,也可能多個信息等效於一個比特。比如一個電壓幅度調制系統中,用+5V表示11b, +2V表示10b, -2V表示01b, -5V表示00b,那么采樣一次電壓可以獲得兩個比特信息,此時比特率是符號速率的兩倍。在LE 1M Coded PHY機制中,用8個符號表示1個比特,此時比特率是符號速率的1/8。
第二種物理層實現方式為:
- LE 2M Uncoded PHY。該方案的比特率為2Mb/s,是可選的實現方式。
官方文檔使用LE 1M PHY、LE Coded PHY、LE 2M PHY來表示以上三種不同的物理層實現方式:
物理層 | 調制方式 | 編碼方案 (報頭部分) |
編碼方案 (有效載荷) |
比特率 |
---|---|---|---|---|
LE 1M PHY | 1Msym/s 方式 | 無編碼 | 無編碼 | 1Mb/s |
LE 2M PHY | 2Msym/s 方式 | 無編碼 | 無編碼 | 2Mb/s |
LE Coded PHY | 1Msym/s 方式 | 編碼S=8 | 編碼S=8;
編碼S=2 |
125kb/s;
500kb/s |
表中的S=8表示8個符號編碼成1個比特。
3.2 GFSK
頻率調制是將低頻數據信號加載到高頻載波上,數據的變化反映為調制波頻率的疏密變化,如下圖所示:
數字化的信號僅有0、1變化,在調制時,可以定義載波頻率正向偏移視為1,負向偏移視為0。這種調制方式稱為“頻移鍵控(FSK)”。數字信號發生0/1變換時,會產生大量噪聲,引入高斯濾波器能夠延展0/1變換時間,從而降低噪聲。這種做法稱為“高斯頻移鍵控(GFSK)”。
GFSK技術成熟,實現簡單,適合低功耗BLE的需求。
BLE協議規定,中心頻率正向偏移大於等於185kHz視為比特1, 負向偏移大於等於185kHz視為比特0。如果選擇2402MHz作為中心頻率,比特1的頻率應為2402.185MHz, 比特0的頻率應為2401.815MHz。
4. 發射機
4.1 發射機框圖
圖中信號從左向右流動,基帶信號經過GFSK調制分成同相(I信號)和正交(Q信號)兩路信號,再依次經過DA轉換和低通濾波器,然后利用頻率合成器進行頻率上轉換,再將兩個信號分量合成后通過PA放大將信號推送到天線上。
I/Q相位分量並行操作用以抑制鏡像頻率,PLL驅動的頻率合成器可以產生穩定和精確的頻率信號,其他的濾波和變換則比較容易理解。(鏈接)
4.2 發射機參數
(1)發射功率
最小輸出功率 | 最大輸出功率 |
---|---|
0.01mW (-20dBm) | 100mW (+20dBm) |
當兩個設備首次連接時,應該避免將輸出功率調至最大,這可能導致對端設備的接收器瞬間飽和,造成通信失敗。
BLE協議按照輸出功率將BLE設備分成如下幾類:
功率等級 | 最大輸出功率 | 最小輸出功率 |
---|---|---|
1 | 100mW (+20dBm) | 10mW (+10dBm) |
1.5 | 10mW (+10dBm) | 0.01mW (-20dBm) |
2 | 2.5mW (+4dBm) | 0.01mW (-20dBm) |
3 | 1mW (0dBm) | 0.01mW (-20dBm) |
第一等級值得注意,如果設備最大輸出功率為+20dBm,那么最小功率等於+10dBm。
(2)調制參數
調制方式:GFSK
帶寬時間積BT:0.5
調制因子:0.45-0.55
有效頻率偏移為:±185kHz
時鍾精度:±50ppm
(3)雜散波
使用某個頻率發射隨機數據,在相鄰±2MHz的頻點位置,雜散波功率應小於-20dBm,在相鄰±3MHz以上的頻點位置,雜散波功率應小於-30dBm。
(4)射頻容限
中心頻率偏移小於等於±150kHz。
最大頻率漂移小於等於±50kHz。
最大頻率漂移速率小於等於400Hz/us。
由於射頻頻率穩定性跟晶振有直接關聯,所以頻偏參數限定了外部射頻晶振的誤差值。
舉個例子,使用16MHz的外部石英晶振為射頻提供時鍾,16MHz擴頻到2.4GHz需要放大150倍,其誤差也將一同放大150倍。假如它的誤差為±50ppm,即16MHz × ±50ppm = ±800Hz,放大150倍后變成±120kHz,這幾乎達到±150kHz的頻偏限制,因此許多芯片都限制射頻晶振的誤差要小於50ppm。
假如使用24MHz的晶振,擴頻倍數降低,那么相同的誤差等級的晶振,將獲得更優良的射頻頻偏參數。(不過16MHz的晶體更便宜和常用。)
5. 接收機
5.1 接收機框圖
接收過程是發射過程的逆過程,但相比於發射機而言更加復雜,相關研究文獻也更加豐富。
這篇項目報告(鏈接)詳細論述了藍牙接收機的解調器,截取其中的接收機架構框圖如下:
藍牙信號進入到芯片內部,首先經過低噪聲放大器(LNA),仍然是分成I/Q兩個相位分量,再通過帶通濾波器,使用VGA(Variable Gain Amplifier)進行放大,最后轉成數字信號傳入處理器中,這里框圖省略了GFSK的解調過程,它位於AD轉換器之后。
5.2 接收機參數
(1)誤碼率
BLE通信過程,可能因為外部干擾而導致數據發送失敗,使用誤碼率BER(Bit Error Rate)表征比特傳輸失敗的幾率。
誤碼率過高會影響通信速率,BLE協議要求傳輸小型報文時,誤碼率要低於0.1%。這也是BLE設備RF性能測試的一個標准。
BLE協議規定了傳輸不同長度報文的誤碼率的閾值:
最大支持的Payload長度 | BER閾值(%) |
---|---|
≤ 37 | 0.1 |
38 ~ 63 | 0.064 |
64 ~ 127 | 0.034 |
≥ 128 | 0.017 |
(2)接收靈敏度
BLE協議對於編碼型和非編碼型物理層給出了不同的接收靈敏度要求:
物理層類型 | 接收靈敏度(dBm) |
---|---|
LE Uncoded PHY | ≤ -70 |
LE Coded PHY with S=2 coding | ≤ -75 |
LE Coded PHY with S=8 coding | ≤ -82 |
市面上的BLE芯片大多都宣稱達到-90dBm甚至更低的接收靈敏度,某BLE 5的芯片其接收靈敏度甚至高達-97dBm。
在理想的條件下,假設發射機輸出功率是0dBm,接收機靈敏度是-90dBm,發射機輸出信號經過一段路徑到達接收機,功率衰減到-90dBm,意味着這段路徑上的路徑損耗等於90dB。如果輸出功率是20dBm,當衰減至-90dBm時,路徑損耗就是110dB。
路徑損耗與通信距離有如下相關性:
path loss = 40 + 25 × log(distance)
做成表格將更加直觀:
路徑損耗(path loss) | 通信距離(distance) |
---|---|
50dB | 2.5m |
60dB | 6.3m |
70dB | 16m |
80dB | 40m |
90dB | 100m |
100dB | 250m |
110dB | 630m |
如果通信距離為630m,通信系統需要能夠承受110dB的路徑損耗。
當發射功率為默認0dBm,接收靈敏度為BLE協議規定的最小值-70dBm,那么可實現的最大距離為16m,這也是許多文檔認為BLE是一個10米范圍的通信技術的原因。考慮到大多數BLE芯片的接收靈敏度都優於-90dBm,實際通信距離應大於10米。
BLE 5的推出,極大提升了通信距離的潛力,各芯片廠商正努力提升通信距離。最近Nordic和TI針對自家BLE 5芯片做了實際測試,在良好的環境下通信距離超過1000米,令人吃驚。
(3) 抗干擾能力
一個接收機的同頻道噪聲抵抗能力為21dB,相鄰的1MHz頻點處的噪聲抵抗能力為15dB。
1M PHY與2M PHY的要求略有不同。
對帶外(2.4GHz范圍外的頻段)噪聲,也應有相應的抵抗能力。
(4)最大有效功率
接收機至少在-10dBm下能夠正常工作,保證BER優於0.1%。
6. 收發機
前面介紹了發射機和接收機,在實際的BLE芯片中,接收機和發射機放在同一個電路中,稱為收發機(Transceiver),下圖是一個2.4GHz產品框圖,有實際的參考價值(鏈接):
(完)