對于物聯(lián)網(wǎng) (IoT)、可穿戴設(shè)備、互聯(lián)家居和樓宇自動化應(yīng)用,藍牙連接和低功耗性能是大規(guī)模產(chǎn)品中電池供電設(shè)計的關(guān)鍵要求。在構(gòu)建這些設(shè)計時,開發(fā)人員很難在緊張的功耗預(yù)算內(nèi),找到能夠提供高性能功能的低成本藍牙片上系統(tǒng) (SoC) 器件。為了滿足低成本、低功耗設(shè)計解決方案的需求,開發(fā)人員常常不得不在性能方面做出妥協(xié),甚至犧牲安全性等日益重要的功能。
為了降低所需的妥協(xié)程度,藍牙 5.2 規(guī)格包含了一些節(jié)能特性,如 LE 功率控制、周期性廣播同步傳輸 (PAST),以及先進的低功耗網(wǎng)狀網(wǎng)絡(luò)和位置跟蹤功能?,F(xiàn)在需要的是支持這些功能的單一集成 IC,以及支持該 IC 的相關(guān)開發(fā)套件和軟件,以便允許開發(fā)人員使用藍牙 5.2 的低功耗增強功能快速高效地啟動和運行。
本文介紹了 Silicon Labs 的 EFR32BG22 藍牙低功耗 5.2 SoC 系列如何能滿足電池供電產(chǎn)品的各種功耗和性能要求。通過使用 EFR32BG22 SoC 系列及其關(guān)聯(lián)的開發(fā)生態(tài)系統(tǒng),開發(fā)人員可以構(gòu)建 IoT 設(shè)備和其他電池供電的產(chǎn)品,讓其能夠借助單個 CR2032 鈕扣電池持續(xù)運行超過 5 年,或者借助 CR2354 電池持續(xù)運行 10 年以上。
利用高級 BLE 功能優(yōu)化功率
藍牙連接已成為大眾市場消費產(chǎn)品中的一項常見功能,但更高級的低功耗藍牙 (BLE) 功能的出現(xiàn),有望帶來一系列更先進的物聯(lián)網(wǎng)產(chǎn)品、可穿戴設(shè)備和其他移動產(chǎn)品。不過,在提供這些功能的同時,開發(fā)人員也面臨著延長電池壽命和增強產(chǎn)品安全性的潛在期望。
在任何藍牙數(shù)據(jù)交換、網(wǎng)狀網(wǎng)絡(luò)交易或定位服務(wù)操作底層,發(fā)射器功率設(shè)置的選擇對于實現(xiàn)高信噪比 (SNR) 至關(guān)重要。如果發(fā)射器功率設(shè)置過低,降低的 SNR 會導致錯誤率升高。如果設(shè)置過高,發(fā)射器件不僅會浪費功率,而且其高功率信號會由于增加多節(jié)點網(wǎng)絡(luò)中的干擾,或使附近的接收器飽和,而導致通信故障。
功率控制:在藍牙 5.2 中引入 LE 功率控制功能后,即可解決這些問題,其中使用協(xié)議讓 BLE 器件與其接收器交互,以實現(xiàn)最佳的發(fā)射器功率設(shè)置。而接收器件可以使用 LE 功率控制協(xié)議來請求兼容的發(fā)射器更改發(fā)射功率水平,以改善接收器的 SNR。同樣,發(fā)射器可以根據(jù)需要使用 LE 功率控制數(shù)據(jù),將發(fā)射功率降至仍可用于接收器的水平。其中,發(fā)射器可以利用接收器提供的接收信號強度指示器 (RSSI) 來獨立調(diào)整發(fā)射功率輸出。
在某些應(yīng)用中,開發(fā)人員更關(guān)心的是確保他們的設(shè)備有足夠的發(fā)射功率來到達某個遠程主機或通信中心,而不是優(yōu)化發(fā)射功率。傳統(tǒng)上,確保遠距離有效無線連接的需求一直與功耗和安全性背道而馳,尤其是在處于電池供電產(chǎn)品核心的資源受限設(shè)計中。
網(wǎng)狀網(wǎng)絡(luò):使用 BLE 網(wǎng)狀網(wǎng)絡(luò),將無需通過高發(fā)射功率到達遠程主機。此時,電池供電的設(shè)備使用低功耗通信方式與附近的線路供電節(jié)點進行通信。由于消息是從一個節(jié)點轉(zhuǎn)發(fā)到另一個節(jié)點,因此甚至在使用設(shè)備最大發(fā)射功率和接收器最高靈敏度都無法達到的遠距離上,低功率設(shè)備也可以進行通信。在家庭或樓宇自動化等應(yīng)用中,開發(fā)人員可以進一步利用藍牙的廣播功能,讓多個設(shè)備響應(yīng)單個命令進行操作,例如調(diào)整區(qū)域照明。這些網(wǎng)狀網(wǎng)絡(luò)協(xié)議使用低功耗藍牙技術(shù)后,有助于滿足擴展工作范圍和低功耗運行這對相互矛盾的需求。
定位服務(wù):藍牙定位服務(wù)需要有效的信號處理能力,這就更難實現(xiàn)高效的無線電操作。藍牙中無線電測向功能的推出,讓開發(fā)人員可以實施用于資產(chǎn)跟蹤的實時定位系統(tǒng) (RTLS),或用于在建筑物內(nèi)導航的室內(nèi)定位系統(tǒng) (IPS)。隨著藍牙 5.1 中引入到達角 (AoA) 和出發(fā)角 (AoD) 的測向支持,RTLS 和 IPS 應(yīng)用可以達到早期基于 RSSI 的方法所無法實現(xiàn)的定位精度。
AoA 和 AoD 方法本質(zhì)上提供了互補功能。多天線接收器可使用 AoA 計算來跟蹤移動資產(chǎn)的位置,而該資產(chǎn)會廣播來自單天線的測向信號。相反,多天線發(fā)射器可使可穿戴設(shè)備等設(shè)備使用 AoD 計算來確定其位置(圖 1)。
圖 1:藍牙的 AoA 方法允許接收器使用天線陣列來精確確定發(fā)射資產(chǎn)的位置,而 AoD 方法允許接收設(shè)備(例如可穿戴設(shè)備)找到自身相對于天線陣列的位置。(圖片來源:Bluetooth SIG)
在每種方法中,AoA 接收器或 AoD 設(shè)備都使用正交信號處理功能,分別確定與多天線陣列接收或廣播信號相關(guān)的相移。反過來,對于使用 AoA 方法跟蹤的資產(chǎn),或使用 AoD 方法確定其位置的設(shè)備,設(shè)備要求也有所不同。跟蹤的資產(chǎn)需要盡可能低的功耗,以確保在發(fā)射信號的同時延長電池壽命。相比之下,定位設(shè)備需要足夠的處理能力,以使用發(fā)射的同相 (I) 和正交 (Q) 分量來處理相移計算,這些分量與在移動時保持精確位置信息所需的 IQ 采樣相關(guān)聯(lián)。
附加的藍牙功能使開發(fā)人員可以降低功耗,而不會損失定位精度。例如,為了在可穿戴設(shè)備中實現(xiàn) AoD,藍牙協(xié)議允許發(fā)射器和接收器同步各自的活動,以便兩者可同時喚醒以完成位置掃描。借助這種方法,設(shè)備便不必浪費能量來隨機發(fā)送或偵聽廣播數(shù)據(jù)包。無線處理器只需在低功耗模式下休眠,直到內(nèi)置的定時器在需要的時間喚醒它們。在使用這種同步方法時,若大量發(fā)射器和接收器彼此鄰近工作,則也會緩解可能發(fā)生的沖突和效率損失問題。
藍牙的周期性廣播同步傳輸 (PAST) 提供了一種方法,能進一步降低配對設(shè)備(如可穿戴設(shè)備和智能手機)的功耗(圖 2)。
圖 2:可穿戴設(shè)備不需要消耗功率來維持與發(fā)射器的同步連接(左),而是可以使用藍牙的 PAST 機制,通過依靠配對的智能手機來提供所需的同步數(shù)據(jù),實現(xiàn)功耗降低(右)。(圖片來源:Bluetooth SIG)
借助 PAST,可穿戴設(shè)備依賴于智能手機與發(fā)射器的周期性廣播同步。因此,功耗受限的可穿戴設(shè)備可避免與喚醒并執(zhí)行與發(fā)射器的同步廣播交易相關(guān)的功率成本。如果在電池電量不足的情況下有需求,可穿戴設(shè)備還可以進一步降低與智能手機更新定位數(shù)據(jù)的速率,以犧牲定位精度為代價換取更長的運行時間。
不過,要充分利用 BLE 的高級功能,開發(fā)人員需要藍牙 SoC 能夠滿足相關(guān)的沖突要求:既要降低功耗,又要提供高性能計算能力。Silicon Labs 的 EFR32BG22 低功耗藍牙 5.2 SoC 系列經(jīng)過特別設(shè)計,可在大批量的電池供電產(chǎn)品中支持這些要求。
滿足功耗和性能要求
Silicon Labs 的 EFR32BG22 低功耗藍牙 5.2 SoC 系列架構(gòu)基于 Arm? Cortex?-M33 內(nèi)核構(gòu)建而成,集成了電池供電 IoT 設(shè)備、可穿戴設(shè)備和其他移動產(chǎn)品設(shè)計中所需的全套特性和功能(圖 3)。
圖 3:Silicon Labs 的 EFR32BG22 SoC 架構(gòu)結(jié)合使用 Arm Cortex-M33 內(nèi)核和一整套外設(shè),產(chǎn)品功能可用于在低功耗設(shè)計中優(yōu)化 BLE 通信、增強安全性并最小化功耗。(圖片來源:Silicon Labs)
除了 Arm Cortex-M33 內(nèi)核和關(guān)聯(lián)內(nèi)存外,基本 EFR32BG22 SoC 架構(gòu)還組合了各種串行接口、GPIO 通道、時鐘和計時器。集成的 12 位模數(shù)轉(zhuǎn)換器 (ADC) 支持單端或差分輸入處理,采樣速率高達 1 兆樣本/秒 (MSPS),其新穎的架構(gòu)還將逐次逼近寄存器 (SAR) 和三角積分轉(zhuǎn)換器的元素組合在一起。
在 EFR32BG22 系列中,不同系列產(chǎn)品可用于滿足特定的處理和藍牙運行要求。例如,對于有更多計算密集型需求的設(shè)計,開發(fā)人員可以選擇 EFR32BG22C222 SoC,它提供了更高速度的內(nèi)核、更多 GPIO 和更高的發(fā)射 (TX) 功率。而對于為 RTLS 或 IPS 應(yīng)用而構(gòu)建的設(shè)計,開發(fā)人員可以轉(zhuǎn)向 EFR32BG22C224 SoC,它具有內(nèi)置 IQ 采樣支持和增強的接收器 (RX) 靈敏度。
在 EFR32BG22 系列中,每個產(chǎn)品的基礎(chǔ)元素包括完整的無線電子系統(tǒng)、安全模塊和能源管理單元,這些能提供安全的低功耗藍牙通信所需的各種服務(wù)。
低功耗藍牙無線電子系統(tǒng)
EFR32BG22 系列無線電子系統(tǒng)通過獨立的 TX 和 RX 信號路徑來支持低功耗藍牙 5.2,而這些路徑由專用超低功耗 Arm Cortex-M0+ 處理器內(nèi)核進行控制。該無線電子系統(tǒng)設(shè)計采用了專用的模塊來補充此內(nèi)核的處理能力,其中包括幀控制器 (FRC)、循環(huán)冗余校驗 (CRC) 模塊,以及可管理 RAM 緩沖區(qū)的專用無線電緩沖區(qū)控制器 (BUFC)(圖 4)。
圖 4:EFR32BG22 SoC 集成了由專用 Arm Cortex-M0+ 處理器內(nèi)核所控制的完整 BLE 無線電子系統(tǒng)。(圖片來源:Silicon Labs)
在直接轉(zhuǎn)換發(fā)射器架構(gòu)的基礎(chǔ)之上,TX 路徑組合了片上功率放大器 (PA)、調(diào)制器 (MOD) 和頻率合成器。在執(zhí)行任何所需的載波偵聽多路訪問及沖突檢測 (CSMA/CA) 或先聽后說 (LBT) 協(xié)議時,Arm Cortex-M0+ 無線電控制器會自動管理必要的幀傳輸時序。
RX 路徑使用低中頻 (IF) 接收器架構(gòu),其中集成了低噪聲放大器 (LNA)、自動增益控制 (AGC) 和 IF ADC,后者使該設(shè)備能夠數(shù)字化執(zhí)行解調(diào) (DEMOD) 并進行抽取和濾波(可配置為支持 0.1 至 2530 千赫 (kHz) 的接收器帶寬)。最后,RX 信號鏈生成用于各種服務(wù)的接收器 RSSI 值,這些服務(wù)包括功耗優(yōu)化、信號質(zhì)量控制和接近檢測等。
Silicon Labs 的 RFSENSE 模塊與 RX 信號路徑并行運行,可監(jiān)視輸入信號,并在檢測到射頻能量超過定義的閾值時喚醒設(shè)備。為了幫助減少在電噪聲環(huán)境中工作時的假警報,RFSENSE 模塊還提供了一種選擇性模式,僅在檢測到某種能量模式而不是某些隨機射頻能量猝發(fā)時才生成喚醒信號。在這種情況下,該能量模式對應(yīng)于發(fā)射數(shù)據(jù)包中的開關(guān)鍵控 (OOK) 前導碼,因此 RFSENSE 模塊檢測到的能量更有可能發(fā)出實際的通信事務(wù)信號。
構(gòu)建安全系統(tǒng)的硬件支持
要確保電池供電互聯(lián)設(shè)備的安全,解決方案必須與早期設(shè)計中所用傳統(tǒng)處理器的特性和功能有所不同。傳統(tǒng)處理器是針對不易受攻擊的環(huán)境下運行而設(shè)計,因此缺乏一些必需的物理和功能性能力,無法保護如今的物聯(lián)網(wǎng)設(shè)備和可穿戴設(shè)備。例如,物聯(lián)網(wǎng)和可穿戴設(shè)計具有現(xiàn)成可用的特點,這使得黑客可以輕松通過差分功率分析 (DPA) 等邊信道方法來攻擊這些設(shè)計,從而會暴露機密數(shù)據(jù)和私鑰。使用這些密鑰,黑客可以利用各種方法來欺騙實際設(shè)備,并獲得對安全網(wǎng)絡(luò)和本該受保護資源的訪問權(quán)限。更容易的是,黑客們已例行性地滲透到無線網(wǎng)絡(luò)中,接觸到安全性較差的連接設(shè)備,以此拉開類似攻擊的序幕。
面對盡量減少 BOM 和延長電池壽命的要求,設(shè)計人員常常不得不采用基于軟件的安全方法??上У氖牵@些方法仍然像應(yīng)用軟件和操作系統(tǒng)一樣脆弱。也許更糟的是,從用戶的角度來看,純粹以軟件實現(xiàn)的安全機制在通信和應(yīng)用的感知響應(yīng)能力方面帶來了明顯的滯后。為了在不犧牲性能的情況下增強安全性,互聯(lián)設(shè)計依賴于基于硬件的安全機制。
EFR32BG22 系列結(jié)合使用基于硬件的安全機制,有助于開發(fā)人員保護設(shè)備設(shè)計。這些機制的核心是加密加速器,該器件使用各種高級加密標準 (AES) 密鑰長度和模式來加快數(shù)據(jù)加密和解密。對于身份驗證和簽名操作,該加速器支持常用的橢圓曲線加密 (ECC) 曲線和哈希值。
在較低級別,真隨機數(shù)發(fā)生器 (TRNG) 提供了所需的非確定性數(shù)字模式,可減輕因使用已知會重復(fù)數(shù)字模式的隨機數(shù)發(fā)生器而帶來的威脅。一種更低級別的機制可以保護加速器免受前文提到的邊信道 DPA 攻擊。
對于任何互聯(lián)產(chǎn)品而言,使用這些機制實現(xiàn)系統(tǒng)安全性只是成功的一半。事實上,在已部署的系統(tǒng)中減少威脅是一項持續(xù)的艱巨任務(wù),而在復(fù)雜的電池供電設(shè)計中,這變得更加困難。在部署一項原本安全的設(shè)計后,開發(fā)人員過去會讓設(shè)計暴露在惡意軟件注入攻擊中,或甚至通過開放式調(diào)試接口遭到滲透。EFR32BG22 系列可解決這兩個問題,它們通過專門功能設(shè)計來減少惡意固件和調(diào)試接口滲透。
這些 SoC 提供了一種安全功能,即使用信任根和安全加載程序 (RTSL) 的安全啟動。該加載程序使用二級引導程序,可確?;?EFR32BG22 的系統(tǒng)只能使用經(jīng)過身份驗證的固件進行啟動(圖 5)。
圖 5:Silicon Labs 的 EFR32BG22 SoC 系列支持使用 RTSL 的安全啟動,該功能會在從 ROM 啟動的受信任固件上建立信任根。(圖片來源:Silicon Labs)
從概念上講,使用 RTSL 的安全啟動解決了舊單級引導程序系統(tǒng)中的一個弱點,該弱點使黑客可以通過使用受損固件進行引導,來完全控制所連接的系統(tǒng)。使用簽名固件似乎可以解決此問題。但是,實際上,若不法分子利用偽造的證書來對固件簽名或使用由其通過欺詐獲得的合法證書,即使經(jīng)過簽名的引導方法也會暴露于攻擊中。
相比之下,基于 EFR32BG22 的系統(tǒng)所構(gòu)建的信任根,是在第一級引導程序上打造而成,該引導程序從 ROM 中提取受信任的固件。接下來,此受信任的軟件使用嚴格的身份驗證方法來驗證第二級引導程序代碼的來源和完整性,進而驗證并加載應(yīng)用程序代碼。
由于能夠在信任根上構(gòu)建系統(tǒng)解決方案,開發(fā)人員在交付產(chǎn)品時可確保軟件完整性高度可信,即使通過空中 (OTA) 固件更新周期,軟件也持續(xù)保持完好無損。但是,有時開發(fā)人員需要對系統(tǒng)調(diào)試端口級別提供的那些系統(tǒng)進行更深入的訪問。
當然,部署具有開放調(diào)試端口的系統(tǒng)解決方案將會帶來災(zāi)難。有些復(fù)雜軟件系統(tǒng)開發(fā)人員需要能夠在不損害整個系統(tǒng)安全性的情況下跟蹤故障,而 EFR32BG22 系列的安全調(diào)試功能可為他們提供一種實用的解決方案。通過安全調(diào)試,開發(fā)人員可以使用安全身份驗證機制來解鎖調(diào)試端口,并能獲得故障分析所需的可見性,而不會損害已部署系統(tǒng)中用戶數(shù)據(jù)的機密性。
優(yōu)化功耗
如果無法延長電池壽命,最有效的藍牙通信和安全機制仍會使電池供電設(shè)備處于不利地位。實際上,在 EFR32BG22 SoC 架構(gòu)的基礎(chǔ)之上內(nèi)置了能源管理和功耗優(yōu)化功能。這些 SoC 充分利用了低功耗 Arm Cortex-M33 內(nèi)核,在禁用所有外設(shè)的完全活動模式下以最高頻率 (76.8 MHz) 運行時,每兆赫茲下僅消耗 27 微安 (μA/MHz)。
在空閑期間,開發(fā)人員可以將 SoC 置于幾種低功耗模式之一,包括睡眠 (EM1)、深度睡眠 (EM2)、停止 (EM3) 和關(guān)閉 (EM4) 模式。隨著 SoC 轉(zhuǎn)換到低功耗模式,集成能源管理單元 (EMU) 會關(guān)閉越來越多的功能模塊,直到只有喚醒 SoC 所需的最少模塊組保持供電(同樣參見圖 3)。此外,在切換到低功耗模式時,EMU 會自動降低電壓調(diào)節(jié)級別。因此,在使用內(nèi)部 DC-DC 轉(zhuǎn)換器并禁用所有外設(shè)的 3.0 V 系統(tǒng)中,功耗在睡眠模式下會大幅下降至 17 μA/MHz(運行頻率 76.8 MHz),在深度睡眠模式下功耗為 1.4 μA 且保留 RAM 全部數(shù)據(jù),在停止模式下為 1.05 μA,在關(guān)閉模式下為 0.17 μA。
在早期的處理器中,由于喚醒這些處理器所需的時間較長,因此開發(fā)人員在選擇低功耗模式時面臨著艱難的決定。較長的喚醒時間不僅會迫使系統(tǒng)在喚醒期間保持無響應(yīng)狀態(tài),還會因執(zhí)行與喚醒進程相關(guān)的“非生產(chǎn)性”操作而導致能源浪費。通常,開發(fā)人員不得不選擇本來不需要的較高功耗模式,以確保處理器能夠及時喚醒。相比之下,基于 EFR32BG22 的系統(tǒng)若從 RAM 運行,則從 EM1 睡眠模式喚醒僅需 1.42 微秒 (μs),從 EM2 深度睡眠或 EM3 停止模式喚醒也只要 5.15 μs。即使從關(guān)閉模式喚醒也僅需 8.81 毫秒 (ms),這通常低于許多電池供電可穿戴設(shè)備或物聯(lián)網(wǎng)設(shè)備的最小更新周期。
能否充分利用這些相對較快的喚醒時間,取決于是否存在一些機制,即使在 SoC 處于 EM3 停止功耗模式下也能夠保持一定程度的活動。除了前文介紹的 RFSENSE 等功能,其他功能塊(如 SoC 的實時時鐘 (RTC))使設(shè)備能夠在睡眠時保持真實時間,而低能耗計時器 (LETIMER) 使設(shè)備能夠產(chǎn)生不同的波形或為其他外設(shè)提供計數(shù)器。實際上,憑借 SoC 的外設(shè)反射系統(tǒng) (PRS),片上外設(shè)可以繼續(xù)運行,該系統(tǒng)可在不同的片上外設(shè)之間路由信號并執(zhí)行基本的邏輯操作——所有這些操作都不需要任何 CPU 介入。
高效系統(tǒng)開發(fā)
為了幫助加速實施基于 EFR32BG22 的解決方案,開發(fā)人員可以利用圍繞 Silicon Labs 的 Simplicity Studio 集成開發(fā)環(huán)境 (IDE) 構(gòu)建的一整套開發(fā)工具和庫。在其低功耗藍牙軟件開發(fā)套件 (SDK) 中,Silicon Labs 為一些高級功能提供了支持,包括藍牙網(wǎng)狀網(wǎng)絡(luò)、AoA 和 AoD 處理,以及安全空中固件更新。除全套藍牙配置文件外,該 SDK 還包括用于實現(xiàn)自定義軟件的樣例應(yīng)用程序和源代碼。
總結(jié)
電池供電移動產(chǎn)品對高級 BLE 功能的需求快速增長,這給開發(fā)人員帶來越來越大的壓力,需要解決所需性能與可用功率之間的矛盾。在過去,這些相互沖突的要求往往會導致在系統(tǒng)性能、規(guī)模和成本方面做出妥協(xié)。不過,使用先進的藍牙 SoC,開發(fā)人員可以構(gòu)建大批量物聯(lián)網(wǎng)設(shè)備和其他電池供電的產(chǎn)品,這些產(chǎn)品能夠支持下一代功能(例如室內(nèi)導航和網(wǎng)狀網(wǎng)絡(luò)),同時使用一粒鈕扣電池就可運行數(shù)年。
評論
查看更多