作者:Jacob Beningo
對于一些列消費和工業邊緣物聯網 (IoT)應用的設計者來說,從電燈開關、抄表機和智能鎖到太陽能逆變器和安全面板,都需要在高性能和低功耗之間權衡利弊,找到一個合適的平衡點,特別是在進行電池供電設計時,同時還要確保其實施的安全性。許多情況下,這類設計基于微控制器(MCU),所以設計者必須認真考慮使用哪一種微控制器。
除了堅定支持安全外,還需考慮處理器內核性能、能效、外設和 I/O 支持、整體外形尺寸以及生態系統支持。雖然 MCU可能在性能和功率方面滿足設計要求,但安全設計的實施有一個學習曲線,這可能會造成延遲或導致無法充分地實施安全。
本文將簡要討論邊緣物聯網設備的安全注意事項。然后,介紹 Silicon Labs 的 EFM32PG23 MCU,展示如何在強調低功耗的同時,將其應用于安全邊緣物聯網設計。
物聯網設備的安全問題
互聯網連接設備受到的遠程攻擊數量在持續上升。嵌入式開發人員可能會認為,他們的物聯網邊緣設備不需要安全,因為這些設備中沒有“任何有價值的東西”。事實上,黑客能在幾乎每臺設備中發現有價值的東西,無論是傳感器數據、客戶數據、設備上的實際固件,還是設備作為連接網絡的后門提供的權限。安全是關鍵功能,必須從一開始就設計到每個物聯網邊緣設備中:不應在設計周期結束時才將安全綁到系統上。否則,該設備將極易受到攻擊。
每個物聯網邊緣設備都有幾個方面需要考慮安全,如設備識別、設備配置和軟件/固件更新等。圖 1所示為常見問題清單,以及這些問題如何轉化為設備安全要求。每個安全要求都有相關的技術,通常用于滿足該要求并挫敗潛在的攻擊者。
對于很多開發物聯網邊緣應用的嵌入式團隊來講,缺乏內部安全專業知識是個大問題。結果是他們要么在內部盡最大努力學習并實施安全,要么利用外部資源。無論哪種方式,其成本和時間都可能異乎尋常。
還有一種選擇:開發團隊可以選擇在設計時就考慮了安全問題的 MCU。這種 MCU 就是現成的安全解決方案,只需對手頭的應用進行小的配置調整。
Silicon Labs PG23 系列 MCU 器件簡介
Silicon Labs EFM32PG23 系列微控制器是物聯網邊緣設備應用的一個有趣選擇,原因如下。首先,PG23 MCU 可以運行 Silicon Labs 自己的 Secure Vault 物聯網安全解決方案。Secure Vault 是一個保護物聯網設備安全和面向未來的平臺,最近成為首個獲得 PSA認證的 3 級物聯網安全解決方案。Secure Vault 為 PG23 MCU 帶來的一些功能包括安全設備身份、安全密鑰管理和存儲,以及高級篡改檢測。
Secure Vault 利用了由物理不可克隆函數 (PUF) 生成的獨特數字指紋。PUF 可以用來創建 AES對稱密鑰,當系統斷電時,該密鑰會物理性地消失。當芯片關閉時,AES對稱密鑰甚至不存在,使其不可能從設備中移除。對于許多物聯網邊緣應用面臨的密鑰管理挑戰而言,PUF 是一種有效解決方案。事實上,PUF可以擴展,以支持某個應用所需的盡可能多的密鑰。Secure Vault還包括一個篡改檢測系統,能夠在設備發生篡改事件后即可將其關閉,使得鑰匙無法重建。主要安全特性總結如下:
安全認證
安全密鑰管理
確保關鍵存儲安全
防篡改
PG23 MCU 非常適合物聯網邊緣應用的另一個原因是其低功耗設計。PG23 的有效電流消耗為 21 微安每兆赫茲 (μA/MHz)。在 EM2模式下,16 千字節 (KB) 的 RAM 處于激活狀態,電流消耗為 1.03 μA;或者在 EM4 模式下,啟用實時時鐘 (RTC) 時電流消耗為 0.7μA。如此低的電流消耗水平有助于開發人員設計節能設備,無論是通過墻插電源還是電池供電。
本文要研究的 PG23 的最后一個特點是 MCU 能力。PG23 采用 Arm?Cortex?-M33 處理器,時鐘高達 80MHz。這款處理器可以在1.71 V 至 3.8 V 的范圍內使用單電源工作。對于從事傳感器應用的開發者來說,可使用低功耗傳感器接口 (LESENSE)。這款 MCU 采用 5×5mm 40 引腳 QFN 封裝或 6×6 mm 48 引腳 QFN 封裝。PG23 的方框圖見圖 2。這款 MCU 也有五個電源狀態:運行模式 EM0、睡眠模式
EM1、深度睡眠模式 EM2、停止模式 EM3 以及關斷模式 EM4。
PG23-PK2504A 開發板入門
PG23 入門的最好方法是使用 PG23-PK2504A 開發板。該板采用 EFM32PG23B310F512 處理器,自帶 512KB 閃存和 64KB內存。該開發板配備了各種板載傳感器、接口和一個 4×10 段 LCD 顯示屏(圖 3)。
拿到開發板后,開發者可以下載并安裝 Simplicity Studio(在入門標簽下)。Simplicity Studio是一個啟動平臺,可提供評估、配置 EFM32 微控制器和使用該控制器進行開發所有的一切。軟件包括入門材料、說明文檔、兼容工具和資源。
當打開 Simplicity Studio 并插入開發板時,軟件將識別該板并提供有關示例項目、說明文檔和演示的建議(圖 4)。然后,開發者可以選擇最適合的途徑,開始對 PG23 的實驗。
值得強調的是,PG23-PK2504A 開發板上決定開發板供電方式的開關。有兩種選擇;AEM 或 BAT(圖 5)。在 AEM 模式下,有電流檢測電阻與LDO 電源和 PG23 串聯。這種模式優點在于,開發人員可以測量處理器的電流消耗,這有助于功率優化。一旦應用經過優化,開發人員就可以切換到 BAT模式,通過鈕扣電池為開發板供電。
在物聯網應用中盡量降低能耗的技巧和竅門
無論采用電池供電與否,最大限度地降低功耗對于每一個物聯網邊緣設計都至關重要。如果開發者不小心,對設計進行能耗優化可能會很耗時。以下是開發人員應牢記的幾個“技巧和竅門”,這有助于對物聯網應用進行低功耗優化:
使用事件驅動型軟件架構。當系統不處理事件時,使其進入低功耗狀態。
概括在幾個充/放電周期內對系統的電池消耗情況。記錄電流消耗和工作電壓,并繪制其時間變化的曲線。
充分利用低功耗模式,自動禁用時鐘、外設和 CPU。
在簡單應用中,探索使用 Arm Cortex-M 的“退出時睡眠”功能,以盡量減少喚醒系統時的中斷開銷。
如果使用 RTOS,要利用其“tickless”模式來防止 RTOS 意外喚醒系統。
在迭代優化時,跟蹤每個變化的節能效果。在某一點上,開發商發現了一個“拐點”,此時優化所花費的時間在節能方面的回報是很低的。是時候停止優化并進入下一階段了。
開發者遵循這些“技巧和竅門”,可以在開始新的安全低功耗物聯網設計時節省更多的時間并省去更多的麻煩。
結語
-
mcu
+關注
關注
146文章
17141瀏覽量
351097 -
物聯網
+關注
關注
2909文章
44608瀏覽量
373066 -
低功耗
+關注
關注
10文章
2399瀏覽量
103687 -
電池
+關注
關注
84文章
10567瀏覽量
129579
發布評論請先 登錄
相關推薦
評論