安全防護升級!ESP32-S2 內部電路改版解析

樂鑫(Espressif)在 2014 年推出的 ESP8266 Wi-Fi 芯片,因為芯片模組化、板卡化的零售價僅 5 美元,便宜到讓人不可思議,加上可以與 Arduino 系統板連接,或使用 Arduino IDE 整合開發環境等,瞬間在創客界爆紅!

安全防護升級!ESP32-S2 內部電路改版解析

強化安全防護能力的ESP32-S2

Espressif 之後趁勝追擊,在 2016 年推出 ESP8266 的後續芯片 ESP32,ESP32 同時具備 Wi-Fi 與 Bluetooth 通訊能力,較 ESP8266 的純 Wi-Fi 通訊更佳,其他各方面也都有強化。

2019 年 Espressif 再針對 ESP32 芯片的安全防護能力進行強化,成為 ESP32-S 系列芯片,2020 年 2 月底,Espressif 再推出 S 系列的新版芯片,即 ESP32-S2(2019年9月即預告,2020年2月底正式供貨,工程樣品2019年6月即已提供)。

表面上 ESP32-S 與 ESP32-S2 只有一個數字之別,但芯片內部卻有大程度的翻動,到底有哪些變化?以下內容將對此討論。

安全防護升級!ESP32-S2 內部電路改版解析

ESP32-S2內部功能方塊圖

ESP32編號規則

無論是 ESP32-S、ESP32-S2 其實都只是泛稱,ESP32 芯片有其編號規則,除了開頭必然是 ESP32 外,之後搭配不同的英文字母與數字而有不同的含義:

ESP32-ABCDE

  • A欄:芯片內有幾個控制器核心,如果為字母D(Dual)為雙核核心,如果是S(Single)為單核核心。
  • B欄:芯片內是否有嵌入式的閃存,如果為數字 0 表示沒有,如果是 2 表示有 16Mbit 容量的閃存。
  • C欄:芯片的無線通訊能力,字母 WD 指的是芯片內有 Wi-Fi(11b/g/n傳輸率)也有 Bluetooth(BT、BLE均有),不過 ESP32-S2 只有 Wi-Fi 沒有 Bluetooth。
  • D欄:芯片的封裝(或稱構裝)方式,如果是 Q6 表示是以 QFN 6x6mm 方式封裝,無任何字母數字則為 QFN 5x5mm 方式封裝。
  • E欄:芯片的晶圓層面改版(wafer level),寫 ECO V3 則為 ECO V3 版,無任何字母數字則為 ECO V3 之前的版本。ECO V3 是一連串的芯片電路修正與強化。
安全防護升級!ESP32-S2 內部電路改版解析

ESP32系列芯片編號原則

控制器核心升級

ESP32-S2 的第一個特點是控制器核心的架構提升,之前的 ESP32 芯片使用 Xtensa LX6,而 S2 改用 Xtensa LX7,且之前多數 ESP32 芯片多為雙核,S2 則為單核,ESP32 的各系列中也有一款為單核,即 ESP32-S0WD。S2 的運作時脈為 240MHz,此前的 ESP32 即有 160MHz、240MHz 的版本,因此運作頻率上未有提升。

除了主控制器外,其實 ESP32 內部搭配即時鐘子系統運作的還有一個附屬的超低功耗處理器(Ultra-Low power Processor, ULP),過去 Espressif 未揭露 ULP 的架構與規格,但 S2 則確定改用開放源碼的 RISC-V 架構。

新的 ULP 使 S2 更省電,在閒置(idle)模式時不到 5uA 電力,如果把運作週期(duty cycle)設定在 1% 則也只耗 24uA 電力。此前的 ESP32 芯片在深度睡眠時也仍要耗 10u A電力。

安全防護升級!ESP32-S2 內部電路改版解析

ESP32-S2之前的ESP32內部功能方塊圖。

內部內存減少、I/O引腳增加

ESP32-S2 縮減了內部內存的容量,SRAM 自 520KB 降至 320KB,ROM 則自 448KB(64KB+384KB)降至 128KB,Espressif 未說明縮減原因,筆者估計是在芯片電路面積有限的權衡取捨下,減少內存資源以增強 ESP32-S2 所強調的安全防護能力。

不過 S2 增強了外部內存的擴充能力,如果使用 SPI 連接 RAM 內存而言,之前的 ESP32 系列芯片只能達 8MB,S2 卻可達 128MB;而以 SPI 連接外部閃存時,之前的 ESP32 系列芯片可達 16MB,S2 則可到 1GB。

在 GPIO 方面,之前的 ESP32 系列有 34 個可用的 I/O 引腳,S2 則增加至 43 個,觸控用的 I/O 引腳也自 10 個增至 14 個。

其他如 S2 具備 LCD 顯示的連接,在此之前的 ESP32 系列上不具備;I2S 之前在 ESP32 有兩組,但在 S2 上僅剩 1 組;S2 可連接 USB OTG(Full Speed 12Mbps)而原有 ESP32 不行;之前 ESP32 可支持 CAN、SDIO,以及以太網,此方面 S2 均取消。

取消雙模,專注Wi-Fi

S2 取消了 Bluetooth 通訊能力,但卻強化了 Wi-Fi 能力,雖然同樣是 11n 速率標準但加入了 TOF(Time-of-Flight)能力,可讓 Wi-Fi 實現測距、定位功能。

安全性強化、封裝增大

S2 顧名思義是安全防護強化型的第二款,S2 支持 RSA 3072 非對稱密碼,閃存內的敏感資料可用 AES256-XTS 方式加密保護;S2 提供 4096bits 的 eFuse(熔絲,寫入一次即無法再改變)儲存且有一半可供應用程序使用,另外也加入數字簽章功能。

在封裝方面,之前的 ESP32 為 5x5mm、6x6mm,而 S2 增成 7x7mm。

安全防護升級!ESP32-S2 內部電路改版解析

ESP32-S2的封裝略為增大

可應用範圍廣泛

ESP32 本來即鎖定 16 種應用,S2 延續其訴求但再新增兩種:USB 需求的相關應用及觸控相關應用。另外 S2 也更聚焦於本有 16 種中的 3 種,包含家庭自動化、工業自動化、零售與餐飲,加上 S2 因功耗大幅降低所以也訴求任何以電池供電的設備,這自然也包含原有 16 種應用中的「可穿戴電子產品」,以及其他各類型應用中以電池運作的應用項。

芯片、模組、板卡都到位

S2 除了芯片正式發售外,其官方版模組與官方版板卡也都推出,模組有 ESP32-S2-WROVER、ESP32-S2-WROO,板卡則有開發學習取向的 ESP32-S2-Saola-1,以及多媒體應用開發取向的 ESP32-S2-Kaluga-1。

安全防護升級!ESP32-S2 內部電路改版解析

ESP32-S2的多媒體開發板ESP32-S2-Kaluga-1。

總結

綜觀上述,ESP32-S2 系列是一種資源規格的重新調整與取捨,而不是全面進化。S2 特別強調省電及安全,網絡上有觀察者認為樂鑫(Espressif)之所以推出 S2,主要是 ESP32 未快速取代 ESP8266,而 ESP8266 最受人顧慮的即是安全不足,ESP32-S 與 ESP32-S2 即在於彌補此領域。

有趣的是,樂鑫也預告會有簡單版的 ESP32 芯片,稱為 C 系列(C = cost成本?),以此可以看出樂鑫想加速取代自家原有 ESP8266,原本因為很便宜而使用 ESP8266 但不在意安全性的用戶,可以繼續用 C 系列,反之重視安全性的可用 S 系列。

【更多鏈接內容為】ESP32 ECO V3 使用指南 PDF


分享到:


相關文章: