NXP S32K3 功能安全之 FCCU 模塊簡介

關鍵字 :S32K3功能安全FCCU錯誤管理

一、 概述

NXP 推出的 S32K3 系列 MCU 是針對汽車應用的高性能車規級 MCU,該系列晶片最高支持 ASIL-D 等級的功能安全,廣泛應用於汽車BMS、底盤控制器、車身控制器等汽車應用中,本文將給大家介紹下 S32K3 晶片中的 FCCU 模塊,該模塊是實現功能安全的關鍵模塊之一,該模塊主要負責收集晶片出現的硬體錯誤並進行相關的控制,下文將重點介紹這個模塊的功能。

二、 FCCU 模塊主要特性

FCCU(Fault Collection and Control Unit) 模塊,即錯誤收集和控制模塊,當其他模塊發生錯誤時,就會將錯誤信號傳遞到 FCCU 進行統一管理。

S32K3 的 FCCU   模塊具有以下主要特性:

  • 管理非關鍵故障
  • 硬體和軟體的故障恢復管理
  • 對晶片上安全相關的模塊進行錯誤收集
  • 錯誤注入
  • 收集測試結果
  • 配置可以進行鎖定
  • 可配置的錯誤控制
  • 可配置每個非關鍵故障的內部晶片響應(包括功能性復位、NMI 中斷、 IRQ 以及沒有動作)

三、 FCCU 模塊的功能

FCCU 模塊的內部框圖如下所示:

圖 3.1 FCCU 模塊框圖
 
圖 3.1 FCCU 模塊框圖

FCCU 有以下四種工作狀態:

(1)CONFIG 狀態

S32K3 啟動後默認的狀態就是 CONFIG,這個狀態下可以對 FCCU 的寄存器進行操作配置,配置完成後再手動切換到 NORMAL 模式,另外當 FCCU 配置超時時也會自動進入到 NORMAL 模式,則 FCCU 的配置為默認配置。

(2)NORMAL 狀態

FCCU 檢測到 NCF 的任意一個通道有錯誤時會自動從 NORMAL 切換到 ALRAM 或者 FAULT 模式(取決於是否使能了 NCF 通道的 ALRAM 中斷)

(3)ALRAM 狀態

如果 NCF 通道使能了 ALRAM 中斷,並且有錯誤出現,那麼 FCCU 就會從 NORMAL 模式切換到 ALRAM 模式,並且出發 ALARM 中斷,用戶可以在中斷中對錯誤進行處理,如果處理後錯誤消失,那麼 FCCU 就會切換會 NORMAL 模式,此外 FCCU 還有 ALRAM timer,如果一定時間內沒有讓錯誤消失則會進入到 FAULT 狀態。

(4)FAULT 狀態

如果 NCF 通道沒有使能 ALRAM 中斷,則當錯誤出現時, FCCU 就會從 NORMAL 切換到 FAULT 狀態,當進入了 FAULT 狀態,可以選擇觸發功能性復位或者 NMI 中斷,如果通過功能性復位或者 NMI 中斷消除了所有的錯誤,那 FCCU 就會從 FAULT 切換回 NORMAL,如果錯誤沒有消除則會連續觸發功能性復位(可配置,最多 15 次),連續復位 N 次都沒消除則會觸發破壞性復位(可配置,最多 15 次),連續破壞性復位超過 N 次都無法消除則會一直卡在復位狀態。

下面介紹下 FCCU 工作狀態切換的幾種典型時序,如下圖為非關鍵故障管理的一個典型時序,當錯誤事件出現時,FCCU 的狀態從 NORMAL 切換到 ALRAM,同時產生 ALRAM 中斷,NCF 定時器開始計數,當故障恢復以後,則 FCCU 的狀態恢復為 NORMAL,同時 NCF 定時器狀態變為 IDLE。

圖 3.2 非關鍵故障從 ALRAM 狀態恢復的時序
 
圖 3.2 非關鍵故障從 ALRAM 狀態恢復的時序
 
下圖為從 ALRAM 狀態切換到 FAULT 狀態後恢復的典型時序圖,當非關鍵故障出現時,FCCU 狀態從 NORMAL 切換到 ALRAM,同時產生 ALARM 中斷請求,NCF 定時器開始計數,當定時器超時並且故障還沒恢復時,FCCU 從 ALRAM 狀態切換到 FAULT 狀態,同時產生 NMI 中斷,EOUT 引腳輸出錯誤狀態時的電平,一定時間後系統從運行狀態切換到安全狀態,NCF 定時器變成 IDLE 狀態,當故障恢復時則 FCCU 從 FAULT 狀態恢復到 NORMAL 狀態,ALRAM 中斷請求和 NMI 中斷請求都會停止,EOUT 信號也停止。
圖 3.3 非關鍵錯誤從 ALRAM 到 FAULT 狀態恢復的時序
 
圖 3.3 非關鍵錯誤從 ALRAM 到 FAULT 狀態恢復的時序
 
四、參考資料

1.《S32K3XXRM.pdf》,Rev 9,2024.07

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論