1. 概述
此文件說明如何啟用 S32K1 系列低功耗功能,並說明不同低功耗模式下運作差異以及設計低功耗的應用,需注意哪些硬體設計與軟體設計才能達到最佳低功耗的效果,說明 S32K1 系列喚醒機制,整體狀態機說明,喚醒流程簡介,快速完成整體應用功能。
本文件除了 S32K1 低功耗設計也說明 S32K1 完全斷電相關設計,方便開發者針對功耗有要求的應用設計。
2. S32K1 低功耗模式介紹
RUN & HSRUN mode 屬於運行模式,本文不多做說明
STOP mode : CPU clock 關閉,clock source 來源仍是 FIRC ,STOP1 可以控制 bus clock ,STOP2 bus clock 則是運行狀態,此模式因主頻仍較高,屬於低功耗模式中最大的功耗。
VLPR mode : clock source 來源為 SIRC ,因此 VLPR 模式主頻較低,功能的 clock 也有上限限制,此模式下可以運行 low power 的通訊,例如 LPUART ,LPI2C ….。
VLPS mode : 將 clock 幾乎關閉,可配置 LPTIMER運行來進行 Timer 喚醒功能,反之則是將 LPTIMER 關閉進入最省電模式,周邊功能皆無法運行。
下表說明模式間的差異
3. S32K1 狀態機-模式切換
S32K1 系列狀態機模式如下,由此狀態可知,MCU 上電後會進入 RUN 模式,需注意的是除了 VLPR 與 VLPS 可以互相轉換外,其餘模式皆需要轉換至 RUN 模式才能切換到其他低功耗模式
3.1 S32K1 模式切換時間
S32K1 模式切換所需時間可參考下列表格所述,需注意此時間不包含 clock & pin 重新配置時間。
4. S32K1 低功耗硬體注意事項
4.1 硬體腳位漏電問題 ( 斷電設計 )
硬體腳位設計需考量腳位漏電問題,注意完全關閉電源的 device 腳位有連通至帶電的 device 腳位,會產生耗電流,如果耗電流超過允許範圍,需要額外設計硬體元件讓訊號沒有作用時斷開迴路,或者移除不必要的線路,舉例 ( MCU 與 RTC 之間腳位連通 )
4.2 硬體腳位內阻考量 ( 斷電設計 )
全關閉電源的 device 腳位有連通至帶電的 device 腳位,會產生耗電流,此時對應腳位內阻會影響相關的耗電流,即使等校內阻屬於高阻抗依然需要將其納入考慮範圍。
4.3 硬體腳位 ( 低功耗設計 )
在低功耗模式下,MCU 依然可以配置相關腳位的狀態,所以根據設計需要將低功耗模式下不需使用的腳位,配置成相對功耗低的狀態,配置電壓狀態使線路沒有電壓差,或者配置成輸入高阻抗腳位,低功耗需要考量所有腳位,腳位功耗如果沒有考量到,會對整個系統產生超出預期的耗電流,甚至超出 MCU 的功耗。
5. S32K1 低功耗軟體注意事項
5.1 低功耗軟體 clock 配置
S32K1 進入 LPVR 模式時,S32K1 只能提供內部低速的 clock 來源配置 ( SIRC )
Clock 運行當中,建議將 clock 速度根據低功耗模式運行需求,重新配置合適的 clock 速度,過高的 clock 速度會導致功耗的增加,離開低功耗模式時,請將 clock 配置回normal 設計。
S32K1 進入 STOP 模式時,S32K1 可以使用 FIRC 並且可控制 bus clock 速度,此模式可以運行更快主頻與功能,但是相對功耗也更大,更需要配置,根據需求配置相關 clock 達到最佳化功耗設計。
5.2 低功耗軟體周邊配置
為了達到最佳化的低功耗設計,軟體進入低功耗前,先將不需要的周邊功能關閉,或者將不會使用的周邊功能 clock 關閉,會讓功耗有明顯下降,尤其較高速的周邊,例如 CAN-Bus , ethernet 等等。
5.3 低功耗軟體喚醒觸發機制設計
STOP1 、STOP2、 VLPR、VLPS mode 皆可使用 GPIO 中斷觸發或者 RTC 功能來進行喚醒,設計的時候可以關閉沒有使用的 GPIO 中斷,避免誤動作,可使用內部 RTC 來進行喚醒,使用內部晶振會有些微誤差,沒有精準時間要求可以使用,反之可外掛外部 32.768K 。
STOP1 、STOP2、 VLPR 可以藉由保持運行的通訊 interface ,接收到 command 後將 S32K1 藉由程式修改暫存器,讓 S32K1 模式切換到 normal mode。
6. S32K1 功耗評估
規劃整體系統功耗時,要評估 MCU 各個模式下,是否有符合終端客戶功耗需求,所以要評估功耗才能確定要如何設計,以下提供初步功耗以及詳細功耗計算,注意的是此內容僅包含 MCU 功耗,周邊腳位線路需要額外考慮。
6.1 S32K1 功耗表
根據 S32K1 datasheet Table 13 可以知道 S32K1 在各個模式下與溫度下,周邊功能是否運行的功耗狀態。
6.2 S32K1 詳細功耗估算
S32K1 如果要詳細估算周邊功能開啟後的功耗,請在下列網址下載 : S32K Power Estimation Tool
使用 S32K Power Estimation Tool 可以詳細模擬,不同模式下,不同溫度下,啟用多少周邊功能導致不同的功率消耗估算
7. S32K1 完全斷電設計
7.1 S32K1 + SBC 斷電設計
S32K1 可搭配對應的 SBC 來達到斷電設計,SBC 可以想成 PMIC 可供電給 MCU ,SBC 也可進入睡眠模式,將供給 MCU 的電源關閉,喚醒機制可以藉由 SBC IO 腳位,或者 CAN-Bus 資料觸發來喚醒,喚醒機制可以靈活使用硬體設計,此斷電設計會大幅降低功耗已達到客戶要求。
8. 相關參考檔案與文件
S32K1 datasheet
S32K power Estimation Tool 官網
有任何問題及需求,可以聯繫 Michael.Gao@wpi-group.com
評論