選擇正確的低功耗藍牙SoC

作者 : Emmanuel Sambuis,Silicon Labs無線物聯網產品資深行銷總監;Mark Orchard-Webb,Silicon Labs應用工程師

在設計初始階段,最佳化低功耗藍牙(BLE)晶片能耗的訣竅會影響記憶體大小、時脈速度、操作模式以及其他因素的抉擇。

在設計初始階段,最佳化低功耗藍牙(Bluetooth Low Energy,BLE)晶片能耗的技巧可能影響記憶體大小、時脈速度、操作模式以及其他因素的抉擇。

最佳化BLE應用以實現最低能耗運作是一項挑戰。瞭解BLE協議和底層的系統級晶片(SoC)架構對於延長電池壽命至關重要。其中對於BLE操作模式(例如廣播和睡眠)的見解尤其重要。透過向堆疊提供正確的輸入以及利用BLE SoC的硬體功能,我們可以採取多種不同的方法以便讓整個系統的功耗最小化。

在藍牙通訊中,BLE已經能夠保護大量的連接裝置插槽(socket)。而在無線設計中選擇BLE的最關鍵原因之一在於其普及性,這可歸功於它在智慧型手機中的廣泛部署以及能夠延長電池使用壽命的能力。由於大多數物聯網(IoT)終端節點都由電池供電,因此較長的電池壽命就顯得極為珍貴。

儘管這是眾所周知的事情,但仍必須強調選擇BLE元件時首先要評估其文檔。雖然最初的資料採集過程看起來微不足道,但是很快你就會發現半導體元件資料表的比較過程將會是一項相當複雜的任務。

例如,考慮無線SoC在接收或發送模式中的工作電流。許多BLE SoC文檔中顯示的電流消耗為幾毫安培(mA)。例如,芯科科技(Silicon Labs)的EFR32BG22 SoC在0dBm時的射頻(RF)接收電流為2.6mA,發射電流為3.5mA。請注意,這些數字僅與SoC RF收發器有關。在實際的SoC級,這些電流都會稍高一些,分別為3.6mA和4.1mA。一個常見的錯誤是僅憑SoC電流消耗的RF數字來做判斷。元件檔案首頁的資料通常要經過對資料表的全面分析才能得以驗證。

另一個例子是資料表中顯示以微安培/兆赫(μA/MHz)為單位的CPU功耗。在密集運算應用中,該數值會成為決定性的選擇標準。當然,這一數值通常指的是CPU在最高頻率時的最佳情況。換句話說,當SoC CPU的工作頻率與製造商報表中指定的頻率不同時,資料表中顯示的數值可能會被證明是非常不準確的。

第三個例子是深度睡眠電流,這對於以電池供電的終端產品至關重要。該數值通常在數百奈安(nA)至幾μA之間。重點在於必須確保深度睡眠電流的數值與保留的RAM大小相關,並且包含即時時脈(RTC)電流消耗。RTC與精確的睡眠時脈源結合在一起是為了維持BLE正常工作所需的時序。對於EFR32BG22 SoC,其資料表的首頁提到了在EM2模式中深度睡眠電流為1.40µA,保留的RAM為32KB,同時RTC從LXCO(低頻晶體振盪器)產生。更多資訊可以參考該資料表的電流消耗部分。

因此,資料表中的功耗數值缺乏標準化可能會造成錯誤的比較,最終導致選擇錯誤的元件。

 1EFR32BG22 BLE SoC的電流圖。BLE SoC的漏電流在25時與在85或更高溫度時差異顯著。從圖中還可以明顯看出,電流在很大程度上取決於SoC時脈頻率。上圖對應EM0工作模式,下圖對應EM1睡眠模式。兩張圖均描述了內部DC- DC轉換器在3V供電時的晶片電流。

 瞭解應用需求

評估BLE SoC時考慮應用需求至關重要。大多數供應商都試圖以負責任的態度來展示其元件的數值,但是對於一個可能要支援多種不同應用的元件而言,所提供的數值顯然不可能適合所有應用案例。在這種情況下,掌握終端應用的知識就變得至關重要。

選擇BLE SoC時,工作電流和睡眠電流是關鍵指標。必須將這些電流數值置入與應用環境緊密匹配的模型中,以便能公平地評估平均功耗。此類模型通常包括開/關(ON/OFF)工作週期(duty cycle),我們知道低工作週期更適合使用具有最低深度睡眠電流的SoC,而高工作週期則適合具有最低工作電流的SoC。

另一個重要參數可能是終端產品的環境溫度。BLE SoC在25℃時的漏電流與85℃或更高溫度時的漏電流明顯不同。高溫下的漏電流是工業應用中的關鍵選擇標準,例如子計量表(sub-metering),因為其需要在高溫下確保電池壽命。

應用的另一個重要元素在於所使用的電池技術類型(在電池供電的終端產品中)。電池要為整合在最新BLE SoC中的晶片DC-DC轉換器供電。使用DC-DC轉換器將顯著降低整個SoC的工作電流消耗。有些複雜的SoC可能會為RF和CPU整合獨立的DC-DC轉換器。這種做法提供了一種最佳化的解決方案,但目前的趨勢顯然是只使用一個轉換器,從而最小化SoC的成本。

最後,瞭解如何使用晶片上或外部記憶體也很重要。BLE終端節點的一個常見需求是執行軟體的空中傳輸下載(OTA)更新。根據待傳輸的元件映射大小,使用外接快閃記憶體可能成本更低。但事實證明,其增加的功耗和潛在的安全問題可能比使用晶片快閃記憶體更高得多。對於OTA更新進行詳細分析將有助於確定最合適的記憶體物料清單(BOM)。

近年來,BLE SoC大幅降低了總工作電流消耗,同時保持了更低的深度睡眠電流。原因在於晶片技術逐漸從較大的幾何尺寸(0.18µm、90nm和65nm)遷移到了更優化的製程節點(55nm和40nm)。採用40nm節點,再加上整合晶片上DC-DC轉換器,極大地降低了EFR32BG22 SoC的總體電流消耗。

例如,當停用晶片上DC-DC轉換器而從晶片快閃記憶體運行Coremark時,Arm Cortex-M33 CPU需要54µA/MHz的功耗。而當啟動同一個DC-DC轉換器時,相同的操作僅需要37µA/MHz的功耗。

在深度睡眠模式下,保留的RAM至關重要,因為它是大部分功耗預算的來源,而且當BLE SoC必須返回到工作模式時,保留的RAM可以加快啟動速度。從設計角度看,低漏電流SRAM的使用能讓晶片設計人員將深度睡眠電流保持在1µA範圍內。選擇BLE SoC的另一個關鍵考量因素是每一個SRAM的大小可能有所不同。選擇保留RAM大小的能力將有助於最小化深度睡眠模式的功耗。EFR32BG22 SoC在32KB的晶片RAM中整合了可獨立選擇的SRAM。

最後,時脈閘控和電源閘控技術的結合,使得BLE SoC可以根據其工作模式完全關斷裝置的某些功能。這些功能的啟動是自動的,應用開發人員基本上不需要去瞭解詳細的資訊。

2EFR32BG22是整合了晶片上DC-DC轉換器的BLE SoC例子。使用DC-DC轉換器將顯著降低整個SoC的工作電流消耗。有些複雜的SoC可能會為RFCPU整合獨立的Dc-DC轉換器。這種做法提供了一種最佳化的解決方案,但趨勢顯然是只使用一個轉換器,從而最小化SoC的成本。

軟體支援

.最小化BLE應用的功耗需要對RF操作進行高度最佳化的調度,並且在保持協議所需精確時序的同時,盡可能地讓時間都處於最低能耗的模式下。為了精確控制發射功率,BLE堆疊整合了DC-DC轉換器的配置。堆疊來自於軟體開發套件(SDK),該套件與整合式開發環境(IDE)完美整合在一起。IDE包括一個網路分析器,可直接從SoC RF中獲取資料;一個先進的能量監控器,還可將功耗與程式碼位置相關聯;以及一個可視的通用屬性設定檔(Generic Attribute profile,GATT)配置器,可實現標準藍牙SIG設定檔或自訂服務。這些工具支援BLE應用的開發與硬體設計完全整合,從而使開發人員可以專注於影響功耗的更高層級設計選擇。此外,SDK還整合了安全的開機載入程式,支援透過OTA和序列介面進行韌體更新。

先進硬體和強大軟體的結合,支援應用開發人員在多個裝置上執行自己的基準測試。這是在選擇BLE SoC之前所推薦採取的方法。雖然一開始較耗時,但這種方法已被證明是非常有價值的,有助於發現因硬體功能短缺或軟體功能不佳所導致的潛藏挑戰。

開發一種標準化的基準測試策略,也有助於開發人員對各家供應商的元件進行比較。嵌入式微處理器基準聯盟(EEMBC)開發的IoTMark-BLE基準設定檔提供了一種有用的功耗評估工具。IoTMark-BLE基準設定檔建構了一個實際的IoT邊緣節點模型,其由I2C感測器以及涵蓋睡眠、廣告和連接模式操作的BLE RF所組成。

儘管IoTMark-BLE基準測試可能並不適合所有應用案例,但它可以作為一項支援基礎,為任何特定的應用開發適合的場景。

簡而言之,對供應商資料表的平行比較可能會導致代價高昂的誤解和錯誤陳述。當比較SoC中的板載和外部DC-DC轉換器模組時,必須在系統級上對BLE SoC進行分析。協力廠商的基準測試通常可以幫助確定比較分析的真實情況。

圖3:EEMBC開發的IoTMark-BLE基準配置文件有助於評估功耗。它闡明了模擬感測器、邊緣節點處理器和模擬閘道器之間的通訊路徑。基準測試測量為邊緣節點平台供電並執行基準提供測試所需的能量。

(本文同步刊登於《電子工程專輯》雜誌2020年10月號)

掃描或點擊QR Code立即加入 “EETimes技術論壇” Line 群組 !

 EET-Line技術論壇-QR

發表評論