在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

深入解析TC3xx芯片中的SMU模塊應(yīng)用

jf_EksNQtU6 ? 來源:談思實驗室 ? 2024-02-27 10:32 ? 次閱讀

SMU模塊是Aurix芯片自帶的一個功能安全硬件模塊,它能夠收集其他模塊(PMS, MTU, SCU, CCU, e.g.)由于硬件功能安全機制產(chǎn)生的報警(Alarm),然后,SMU模塊通過用戶配置能夠產(chǎn)生內(nèi)部或者外部的動作/響應(yīng),也可以不產(chǎn)生任何動作。本文將詳細介紹SMU模塊。

01

SMU功能概述

SMU 是安全架構(gòu)的核心組件,提供通用接口,用于管理存在故障的微控制器的行為。SMU 集中所有與不同的硬件和軟件安全機制相關(guān)的警報信號。每個警報都可以單獨配置為觸發(fā)內(nèi)部操作和/或通過故障信號協(xié)議(FSP, Fault Signaling Protocol)向外部通知存在故障。每一報警的嚴重程度應(yīng)根據(jù)安全應(yīng)用的需要進行配置:默認情況下,除看門狗超時報警外,每一報警反應(yīng)都被禁用。為了進行調(diào)試和診斷,報警信號設(shè)置了一個粘滯位(sticky bit),該粘滯位可適應(yīng)應(yīng)用程序或系統(tǒng)重置。SMU 還實施了一些與專用安全機制的管理和測試相關(guān)的內(nèi)務(wù)管理(housekeeping functions)功能。可以使用特殊測試模式測試 SMU 本身,以檢測潛在故障。除了寄存器訪問保護外, SMU 還實施了配置鎖定機制(configuration locking mechanism)。此外,為了緩解(mitigate)潛在的常見原因故障, SMU 分為兩部分:

SMU_core:位于core domain.

SMU_stdby:位于stand-by domain.

SMU_CORE 和 SMU_Stdby 的設(shè)計方式和時間安排各不相同。SMU 的兩個部分之間存在物理隔離。它們位于不同的時鐘電源域中。這允許 SMU 處理任何傳入的報警,而不管用于生成此報警的時鐘頻率如何。此外,在 fSPB (或衍生產(chǎn)品)上生成的報警事件將由 SMU_CORE 處理,而在 fBACK 上生成的報警事件將由 SMU_Stdby 處理。這樣,所有時鐘活動監(jiān)視器警報都將在生成時鐘域中處理。此外,與功率和溫度有關(guān)的報警也以不同的方式處理,因為它們由 SMU_CORE 和 SMU_Stdby 處理。可以在 SMU_CORE 或 SMU_Stdby 中配置對這些報警的一個或多個反應(yīng)(Actions)。

此外,為了檢測 SMU_CORE 中的錯誤,將從 SMU_core 向 SMU_Stdby 發(fā)送警報 SMU_core_alive。對這些警報的反應(yīng)(Actions)可在兩個域中配置。但是,對于 SMU_Stdby ,只有無反應(yīng)(no reaction)或?qū)?Errorpins 配置為高阻抗?fàn)顟B(tài)作為報警反應(yīng)。

SMU 與嵌入式安全機制相結(jié)合,可以在容錯時間間隔內(nèi)檢測并報告超過 99%的微控制器嚴重故障模式。可在 SMU 中配置容錯時間間隔的計時特性。

9de224c4-d490-11ee-a297-92fbcf53809c.png

1.1SMU架構(gòu)

9df7579a-d490-11ee-a297-92fbcf53809c.png

1.2SMU_core

核心域 SMU (也稱為 SMU_core)從安全概念定義的硬件監(jiān)視器(hardware monitors)的安全機制收集大多數(shù)警報信號。報警映射(Alarm Mapping)部分(后面的章節(jié))指定報警接口(alarm interface)并將其分類為報警組(alarm group)。報警組定義邏輯映射,用于將報警信號映射到內(nèi)部狀態(tài)寄存器。“報警處理”部分描述了配置選項。配置選項指定檢測到報警事件時 SMU_core的行為。警報事件可以觸發(fā)內(nèi)部操作和/或激活錯誤針腳,以指示外部環(huán)境存在故障。SMU_CORE Control Interface 部分指定了軟件如何控制 SMU_CORE 以及硬件操作的相關(guān)性。故障信號協(xié)議(FSP)部分描述了外部故障信號協(xié)議的屬性,這些屬性定義了錯誤針腳(ErrorPin)的計時和邏輯屬性。

1.3 SMU_stdby

備用域 SMU (也稱為 SMU_Stdby)從檢測時鐘(無時鐘),電源(電壓過低/過高)和溫度故障(溫度過低/過高)的模塊收集警報。SMU_Stdby 還會收集 SMU_Alive 報警信號,當(dāng) SMU_CORE 在報警升高后未觸發(fā)反應(yīng)時,該信號會發(fā)出通知。此外, SMU_Stdby 實現(xiàn)了內(nèi)置自檢功能,允許用戶測試 SMU_Stdby 對報警信號的反應(yīng)以及從次級電壓監(jiān)視器到 SMU_Stdby 的完整報警路徑。有關(guān)輔助監(jiān)視器和 SMU_Stdby 內(nèi)置自檢的詳細信息,請參閱電源管理系統(tǒng)一章。

“報警映射”部分指定報警接口,并將它們分為兩個報警組。“報警處理”部分描述了可以指定的配置選項。配置選項指定檢測到報警事件時 SMU_Stdby 的行為。警報事件可以觸發(fā)啟動 ErrorPins (錯誤針腳),該 ErrorPins (錯誤針腳)表示外部環(huán)境存在故障。

02

SMU功能詳述

2.1SMU_core

2.1.1 Reset類型

SMU_CORE 需要多種Reset類型。Reset類型在系統(tǒng)控制單元中完全指定。SMU_CORE 要求的重置類型為:

Power-on Reset

System Reset

Debug Reset

Application Reset

下表指定了每個重置(Reset)類型的范圍,這些重置類型的配置和邏輯是SMU_core 控的。

9e0b30bc-d490-11ee-a297-92fbcf53809c.png

2.1.2接口(Interfaces)概述

這一章描述SMU_core和其他模塊之間的接口信號。

2.1.2.1SMU_core到SCU的接口

與系統(tǒng)控制單元連接的警報事件所導(dǎo)致的內(nèi)部操作。接口信號為:

Emergency Stop Request

Reset Request

NMI Request

CPU Reset Request

2.1.2.2 SMU_core到IR的接口

與中斷路由模塊相連的報警事件導(dǎo)致的內(nèi)部操作。接口信號為:

SMU Interrupt Service Request 0

SMU Interrupt Service Request 1

SMU Interrupt Service Request 2

SMU 中斷服務(wù)請求到中斷路由(IR)中斷節(jié)點的映射可在中斷路由器一章(SRC_SMUy, y=0.2)中找到。

9e32348c-d490-11ee-a297-92fbcf53809c.png

AGC.IGCSx , x={0, 1 , 2 } 寄存器字段提供了軟件接口來控制 SMU 如何觸發(fā)中斷路由器的中斷請求。

每個AGC.IGCSx是一個3-bits的位域信號:

AGC.IGCSx[0] shall be set to ‘1’ to trigger SMU Interrupt Service Request 0

AGC.IGCSx[1] shall be set to ‘1’ to trigger SMU Interrupt Service Request 1

AGC.IGCSx[2] shall be set to ‘1’ to trigger SMU Interrupt Service Request 2

AGC.IGCSx的使用在Alarm Configuration章節(jié)描述。

9e3e7be8-d490-11ee-a297-92fbcf53809c.png

2.1.2.3SMU_core到Ports(ErrorPin)的接口

通用端口結(jié)構(gòu)如下圖所示。

9e505e12-d490-11ee-a297-92fbcf53809c.png

端口引腳(Port Pin)可以通過 ALTx 輸出線路連接到外圍設(shè)備。這是開機重置后端口的默認狀態(tài) 。SMU_CORE 使用 HW_DIR , AlTIN , HW_EN , HW_OUT 信號連接到端口。當(dāng) HW_EN 端口輸入由 SMU_CORE 驅(qū)動時, SMU_CORE 將完全控制該端口,繞過與 ALTx 輸入使用相關(guān)的任何其他軟件配置。

下圖提供了端口結(jié)構(gòu)的更詳細概述,并突出顯示了 SMU_CORE 連接中涉及的信號。

9e6c7386-d490-11ee-a297-92fbcf53809c.png

SMU_FSP0(也就是上圖中的FSP [0])由硬件控制。FSP_DIR和FSP_EN由軟件控制,控制寄存器如下:

PCTL.HWDIR直接驅(qū)動FSP_DIR輸出。

PCTL.HWEN直接驅(qū)動FSP_EN輸出。

PCTL.HWDIR和PCTL.HWEN同時也會控制SMU_FSP1.

9e7ac238-d490-11ee-a297-92fbcf53809c.png

PCTL. PCS 位域,與 P33_PCSR.SEL 位字段配合使用,使軟件能夠更改 FSP [0]的 PAD 控制。借助 P33_PCSR. SEL , PCTL HWDIR , HWEN 和 PCS 字段,軟件可以控制 FPSP [0] PAD 所有權(quán)從 GPIO 過渡到 SMU 硬件完全控制。

9e8c1dc6-d490-11ee-a297-92fbcf53809c.png

9e9f55e4-d490-11ee-a297-92fbcf53809c.png

SMU_FSP1 PAD 不在 SMU_CORE 的控制下。通過軟件配置PCTL PCS 字段,不能更改 SMU_FSP1 的 PAD 控制。但是, PCTL HWDIR 和 HWEN 字段可用于超控(overrule) PAD 配置。

PCTL 寄存器的內(nèi)容被KEYS寄存器鎖定,并且只能通過開機重置(power-on reset)進行重置,因此即使存在應(yīng)用程序或系統(tǒng)重置, PAD 配置也將保持不變。此外, PCTL 寄存器使用安全觸發(fā)器安全機制實施,該機制在運行時檢測隨機硬件故障引起的任何位變化。

9eb6172a-d490-11ee-a297-92fbcf53809c.png

參考SMU_core Integration Guidelines章節(jié),描述了使用ErrorPin時的SMU和PORT模塊的配置步驟。

2.1.2.4SMU_core到寄存器監(jiān)控的接口

寄存器監(jiān)視器控制(RMCTL),寄存器監(jiān)視器錯誤標(biāo)志寄存器(RMEF)和寄存器監(jiān)視器自檢狀態(tài)寄存器(RMSTS)之間的接口指定如下:

RMCTL.TE[31:0]

-將 RMCTL.TE[i]設(shè)置為 1 將對給定模塊的安全觸發(fā)保護寄存器啟動自檢(請參閱表 523)。

-在自檢結(jié)束時,必須將這些位設(shè)置回0。

9ecc3bae-d490-11ee-a297-92fbcf53809c.png

9eddc496-d490-11ee-a297-92fbcf53809c.png

RMEF.EF [31:0]

-無論 RMTL.TE[i]的狀態(tài)如何,只要在給定模塊的安全觸發(fā)保護寄存器中檢測到故障, RMEF.EF[i]就會設(shè)置為 1 (參見表 524)。

9ef87ac0-d490-11ee-a297-92fbcf53809c.png

9f05dd1e-d490-11ee-a297-92fbcf53809c.png

9f248430-d490-11ee-a297-92fbcf53809c.png

9f30e2ac-d490-11ee-a297-92fbcf53809c.png

RMSTS.STS [31:0]

-RMSTS.STS[i]在安全觸發(fā)自檢序列結(jié)束時設(shè)置為1 (參見表525)

9f46317a-d490-11ee-a297-92fbcf53809c.png

9fce62f2-d490-11ee-a297-92fbcf53809c.png

安全觸發(fā)器自檢條件

為了防止自檢期間出現(xiàn)意外行為,應(yīng)滿足以下條件:

必須啟用要測試的模塊的時鐘

自檢期間不得修改自檢所涉及模塊的時鐘和時鐘比率

自檢序列中所涉及模塊的時鐘比率應(yīng)以特定方式設(shè)置。有關(guān)更多詳細信息,請參閱安全觸發(fā)相關(guān)章節(jié)

執(zhí)行自檢時,微控制器不應(yīng)設(shè)置為重置,休眠或調(diào)試狀態(tài)

2.1.2.5SMU_core到SMU_stdby的接口

如果發(fā)生故障, SMU_CORE 會向 SMU_Stdby 生成信號 SMU_core_alive。

如果滿足以下條件之一,將生成 SMU_core_alive 信號:

當(dāng) SMU_CORE 處于運行(RUN)或故障(FAULT)狀態(tài),且 SMU_CORE 活動監(jiān)視器(SCAM)檢測到 SMU_CORE 未生成反應(yīng)時,會發(fā)生警報事件。

當(dāng) SMU_CORE 處于啟動(START)狀態(tài),且SCAM檢測到 SMU_CORE 未生成響應(yīng)時,會發(fā)生監(jiān)視程序或恢復(fù)計時器警報事件。

發(fā)送SMU_ActivateFSP或SMU_ActivatePES命令,但SMU_CORE不會生成相應(yīng)的響應(yīng)

在處理此報警時,報警的配置會發(fā)生變化

SMU_core_alive 信號可以通過發(fā)送 SMU_AliveTest 命令來測試。

事實上,發(fā)送 SMU_AliveTest 命令將觸發(fā)SCAM引發(fā)故障并將 SMU_core_alive 警報轉(zhuǎn)發(fā)給 SMU_Stdby。無論是否啟用 SMU_Stdby (請參閱Interdependency Between SMU_core and SMU_stdby),都可以在 AG2i_STDBY (i=1)中讀取 SMU_core_Alive 報警標(biāo)志。可以通過使用不同的參數(shù)發(fā)送 SMU_AliveTest 命令來禁用SCAM錯誤注入(請參閱表 531)。但是,當(dāng)真正的故障生成 SMU_core_alive 報警時, SMU_AliveTest 命令無法清除該報警。要清除 SMU_core_alive 警報,至少需要重置應(yīng)用程序。

對于 TC39xB 和 TC38x ,當(dāng) SMU_CORE 處于啟動(START)狀態(tài)時,在處理“恢復(fù)計時器 1 ”超時警報時發(fā)生故障將不會生成 SMU_core_alive 警報。

2.1.3 SMU_core集成指導(dǎo)

本章通過提供有關(guān)錯誤針腳(故障信號協(xié)議(FSP))與微控制器的其他輸入/輸出(GPIO)功能以及故障信號協(xié)議(FSP)配置的更多信息,擴展了接口概述部分。

在power-on reset期間, ErrorPin 處于高阻態(tài):the pull devices are disabled.

power-on reset后,ErrorPin連接到的端口(PORT)的默認模式為GPIO.

在將 PAD 的所有權(quán)更改為 SMU 之前,軟件應(yīng)配置端口寄存器,包括:

如果未使用GPIO,請disable the pull devices.

通過軟件編程GPIO寄存器,將ErrorPin強驅(qū)動輸出低電平.

設(shè)置P33_PCSR.SEL8為1

設(shè)置P33_PCSR.SEL10為0.

要使 SMU 能夠控制 ErrorPin PAD ,軟件應(yīng)激活 PAD 配置保護處理(configuration safeguarding process)。

-保護處理需要一個軟件操作,包括在 PCTL.PCS 字段中寫入 1。只有從0到 1 的第一個上升沿會使得保護處理生效。新的端口配置以及從0到 1 的 PCTL.PCS 的新轉(zhuǎn)換對硬件沒有影響。

此外,需要按照以下步驟重新配置故障信號協(xié)議(FSP)設(shè)置:

-當(dāng)處于無故障狀態(tài)(Fault Free State)且正在使用時間切換(Time Switching)或Dual Rail協(xié)議(時:

通過將FSP設(shè)置為Bi-stable協(xié)議模式(FSP.MODE= 00B)來禁用時間切換(Time Switching)或Dual Rail協(xié)議

等待Bi-stable協(xié)議模式激活(讀取FSP寄存器兩次)

寫入想寫入的值到PRE1, PRE2或者TFSP_HIGH.

切換FSP.MODE到想要的協(xié)議

當(dāng)處于無故障狀態(tài)且正在使用Bi-stable協(xié)議時:

寫入想寫入的值到PRE1, PRE2或者TFSP_HIGH.

切換FSP.MODE到想要的協(xié)議

2.1.4報警映射(Alarm Mapping)

其他外設(shè)模塊產(chǎn)生的Alarm都幾種映射到SMU模塊。為此,定義了報警組。報警組索引 ALM< n >[index]信號與報警配置和狀態(tài)寄存器(AG< n >[index])之間存在一對一關(guān)系。一個組由多達 32 個警報組成。

9fe97fb0-d490-11ee-a297-92fbcf53809c.png

TC37x模塊擁有Alarm Group 0-11, Group 20, Group 21共14組Alarm,每組Group有32個Alarm.

2.1.4.1SMU_core內(nèi)部Alarms

下表描述了 SMU_CORE 生成的警報。

a00cdf8c-d490-11ee-a297-92fbcf53809c.png

2.1.5Alarm處理

2.1.5.1Alarm協(xié)議

每個安全機制都應(yīng)使用預(yù)定義的協(xié)議與 SMU_CORE 連接。該協(xié)議允許以可靠的方式跨越時鐘域。協(xié)議的操作對軟件層沒有影響。

2.1.5.2Alarm配置

收到報警事件后, SMU_CORE 會對要執(zhí)行的操作進行解碼。該操作可以分為內(nèi)部行為和外部行為。可以為每個報警配置內(nèi)部和外部行為。

外部行為與故障信號協(xié)議相關(guān)(請參閱故障信號協(xié)議(FSP))。外部行為通過以下寄存器配置:

AGiFSP (i=0-11)

a01bf35a-d490-11ee-a297-92fbcf53809c.png

a02cc70c-d490-11ee-a297-92fbcf53809c.png

SMU 在出現(xiàn)報警時的內(nèi)部行為通過以下寄存器進行控制:

AGiCFj (i=0-11;j=0-2)

a038717e-d490-11ee-a297-92fbcf53809c.png

內(nèi)部行為由 3 位代碼指定,如下所示:

Code = SMU_AGCF2. SMU_AGCF1. SMU_AGCF0, n=0...11

三個bit組成0x0 – 0x7共8種組合。

a0531b00-d490-11ee-a297-92fbcf53809c.png

2.1.5.3 Alarm操作

每當(dāng)檢測到輸入報警事件且 SMU_CORE 狀態(tài)機器處于運行(RUN)或故障(FAULT)狀態(tài)時, SMU 會同時檢查要為內(nèi)部操作和 FSP 執(zhí)行的相應(yīng)操作。如果檢測到輸入報警事件,但未指定報警的操作,則相應(yīng)的狀態(tài)位也應(yīng)設(shè)置為 1 ,但不會發(fā)生任何操作。

傳入報警事件的處理過程如下所示:

同時掃描所有報警組(Alarm Group)和每個報警。

掛起的報警(Alarm)的執(zhí)行是同時進行的。

報警組內(nèi)的報警處理可能需要幾個 fSPB 周期。

如果完成了故障處理,則會在 SMU_AEX 寄存器中設(shè)置相應(yīng)的位。只要設(shè)置了位,相應(yīng)的故障處理就會被阻止。故障處理完成后,此位需要由 SW 重置。

如果SMU_AEX寄存器中與掛起報警相關(guān)的報警執(zhí)行位已設(shè)置,則報警事件被忽略,但狀態(tài)位和相應(yīng)的報警錯過事件位已設(shè)置。

如果與報警事件相關(guān)的狀態(tài)標(biāo)志已設(shè)置為1,則報警事件將被忽略。

無論何時處理報警事件,AG寄存器中的硬件都會將相應(yīng)的狀態(tài)位設(shè)置為1。如果配置并執(zhí)行了內(nèi)部SMU_core動作,則AFCNT寄存器中的動作計數(shù)器(ACNT)遞增。

2.1.5.4Alarm狀態(tài)寄存器

表529規(guī)定了根據(jù)SMU_core狀態(tài)機狀態(tài)在AG報警組狀態(tài)寄存器上可能的軟件操作。

a06d388c-d490-11ee-a297-92fbcf53809c.png

在START狀態(tài)下,軟件可以通過在AG地址寫入來“模擬”輸入報警事件的發(fā)生。如有必要,軟件應(yīng)讀回AG寄存器,以確保操作完成。此外,在清除警報后,軟件應(yīng)重新檢查警報狀態(tài)位(針對清除時間窗口期間發(fā)生的警報)。

要清除各個報警標(biāo)志,請僅使用32位寫入。

2.1.5.5Alarm診斷寄存器

報警診斷寄存器使應(yīng)用程序能夠改進對導(dǎo)致故障的根本原因的診斷。在這種情況下,如果應(yīng)用程序允許,它們可能有助于實施恢復(fù)策略。當(dāng)出現(xiàn)以下情況時,SMU_ADx診斷寄存器應(yīng)生成SMU_AGx寄存器的快照:

當(dāng)SMU處于RUN(運行)或FAULT(故障)狀態(tài)時,SMU要執(zhí)行的動作是復(fù)位

發(fā)生將SMU_core狀態(tài)機(SSMSSM)切換到FAULT狀態(tài)(RUN->FAULT,F(xiàn)AULT->FAULT)的條件,由SMU硬件或軟件命令控制

SMU_ADx寄存器只有在power-on reset后才會被清除。

注:在觸發(fā)SMU對SMU_AGx寄存器進行快照的每個條件之后,SMU_ADx診斷寄存器將被當(dāng)前SMU_AGx寄存器值覆蓋。如果SMU已經(jīng)處于FAULT(故障)狀態(tài),并且FSP再次激活,則這也是有效的。

2.1.5.6Port緊急停止

Port緊急停止功能可強制Pad進入通用輸入模式(General Purpose Input Mode)。SCU的端口緊急停止請求可通過以下任何情況激活:

SMU_ActivatePES()軟件命令。

SMU_AG< x >FSP 啟用且 FSP 啟用的報警事件。

在 SMU_AGCFX 寄存器中配置了內(nèi)部操作且為該操作啟用了 SMU_AGC.PES 的警報事件。

2.1.5.7 Recovery Timer

恢復(fù)計時器(RT)可用于監(jiān)控通過警報, NMI 或中斷操作激活的持續(xù)時間或內(nèi)部錯誤處理程序。在當(dāng)前 SMU_CORE 實現(xiàn)中有兩個獨立實例(RT0和 RT1)可用。恢復(fù)計時器持續(xù)時間(所有實例相同)在寄存器 RTC 中配置。可以啟用或禁用每個實例,但默認情況下,這兩個實例都已啟用,因為操作 CPU 監(jiān)視程序時需要使用它們(另請參閱Watchdog Alarms)。除了 RTC 之外,每個恢復(fù)計時器實例還可以使用附加配置寄存器(RTC00, RTC01 , RTC10和 RTC11)來配置警報映射。

警報映射由一對參數(shù){GIDi, ALIDi} (i = 0..3)組成,其中 GIDi 是組標(biāo)識符,而 ALIDi 是屬于組的警報標(biāo)識符。每個恢復(fù)計時器實例可以配置四個 { GIDi , ALIDi } 對。可以多次配置相同的組標(biāo)識符。如果需要將少于四個報警映射到恢復(fù)計時器,則應(yīng)多次配置相同的{GIDi, ALIDi}。

注:只有當(dāng)內(nèi)部操作是中斷或 NMI 時,才可以使用恢復(fù)計時器。然而,沒有進行硬件檢查,而是由軟件以適當(dāng)?shù)姆绞脚渲肧MU_core.

如果已啟用恢復(fù)計時器,并且任何{ GIDi , ALIDi } 對都將發(fā)生警報事件,并且配置了內(nèi)部操作導(dǎo)致內(nèi)部操作(警報狀態(tài)應(yīng)清除),則恢復(fù)計時器將由硬件自動啟動。這種情況稱為恢復(fù)計時器事件。無內(nèi)部操作的報警不應(yīng)啟動恢復(fù)計時器。

一旦發(fā)生恢復(fù)計時器事件,恢復(fù)計時器將啟動并計數(shù),直到軟件使用 SMU_RTStop()停止它。如果計時器超時,將發(fā)出內(nèi)部 SMU 報警(恢復(fù)計時器超時)。在恢復(fù)計時器運行期間,請求恢復(fù)計時器的任何其他操作都將被忽略。如果發(fā)生此類事件, STS 寄存器中的硬件將位 RTME (恢復(fù)計時器未接來電事件)設(shè)置為 ‘1 ’。RTME bit 只能通過軟件清除。在恢復(fù)計時器運行期間, STS 寄存器中的硬件將 RTS bit (恢復(fù)計時器狀態(tài))設(shè)置為 ‘1 ’:從計時器激活到收到 SMU_RTStop()或計時器過期。收到 SMU_RTStop()或計時器到期時,硬件將清除該位 RTS。

如果在恢復(fù)計時器未處于活動狀態(tài)時收到 SMU_RTStop()命令,該命令將返回錯誤響應(yīng)。

注:如果應(yīng)寫入 RTC.RTD ,請確保沒有運行恢復(fù)計時器(恢復(fù)計時器狀態(tài)由 STS 寄存器中的 BITS RTS0和 RTS1 指示)。

2.1.5.8看門狗Alarms

如果看門狗(WDT)不是由軟件或固件提供服務(wù),則需要對監(jiān)視狗(WDT)超時警報進行特殊處理,以確保微控制器行為正確。應(yīng)確保微控制器在預(yù)警階段后重置,在此階段,軟件仍可以執(zhí)行一些關(guān)鍵操作。

每個超時警報都應(yīng)激活NMI

恢復(fù)計時器0應(yīng)配置為為安全WDT,CPU0 WDT,CPU1 WDT和CPU2 WDT的WDT超時警報提供服務(wù)

恢復(fù)計時器1應(yīng)配置為為維修CPU3 WDT的WDT超時警報,CPU4 WDT和CPU5 WDT

應(yīng)將恢復(fù)計時器0和恢復(fù)計時器 1 超時警報配置為發(fā)出重置請求并激活故障信號協(xié)議。

上述屬性作為監(jiān)視程序超時警報以及恢復(fù)計時器0和 1 的重置值實現(xiàn)。

a07ce9d0-d490-11ee-a297-92fbcf53809c.png

圖中僅顯示 RTAC 0和相關(guān)的四個 WDT 的示例。同樣, RTAC 1 與相關(guān) WDT3 , WDT4 和 WDT5 的設(shè)置方式也是如此。

由于也需要從 CPU 執(zhí)行的第一個指令中檢測看門狗超時, SMU 應(yīng)在啟動狀態(tài)期間處理任何看門狗超時警報。

注:如果所有 WDT 警報都需要相同的行為,建議使用實施邏輯或所有 WDT 超時警報的全局 WDT 超時警報,從而釋放 RTC00, RTC01 , RTC10和 RTC11 中的某些{GIDi , ALIDi } 配置對,以用于其他用途。

2.1.6 SMU_core控制接口

通過控制接口引入SMU_CORE 的核心功能。控制接口定義了軟件如何控制 SMU_CORE ,如表 530所示。控制接口直接連接到 SMU_CORE 狀態(tài)機(SSM)中所述的 SMU_CORE 狀態(tài)機(SSM)操作和故障信號協(xié)議(FSP)中所述的故障信號協(xié)議(FSP)。控制接口由 CMD 寄存器使用 CMD 和 ARG 字段實現(xiàn)。命令完成狀態(tài)可通過 STS 寄存器獲取。

a09b7ce2-d490-11ee-a297-92fbcf53809c.png

注:如果參數(shù)不符合命令規(guī)范,則該命令將被忽略并返回錯誤代碼。

下表提供了執(zhí)行命令的合法條件。條件取決于 SMU_CORE 狀態(tài)機器(SSM)狀態(tài)(參見 SMU_CORE 狀態(tài)機器)。任何未指定的情況都會導(dǎo)致錯誤代碼。

a0c1b286-d490-11ee-a297-92fbcf53809c.png

a0d7b216-d490-11ee-a297-92fbcf53809c.png

2.1.7 SMU_core狀態(tài)機

圖 163 和圖 164 描述了 SMU_CORE 狀態(tài)機(SSM)的行為。

a0eec0a0-d490-11ee-a297-92fbcf53809c.png

a10818d4-d490-11ee-a297-92fbcf53809c.png

Fault Counter

SMU 實現(xiàn)了一個故障計數(shù)器(AFCNT),該計數(shù)計數(shù)了從運行狀態(tài)到故障狀態(tài)的轉(zhuǎn)換次數(shù)。故障計數(shù)器寄存器只能通過熱啟動重置來重置。

2.1.8故障信號協(xié)議(Fault Signaling Protocol, FSP)

故障信號協(xié)議使微控制器能夠向外部安全控制器設(shè)備報告緊急情況,以控制安全系統(tǒng)的安全狀態(tài)。

2.1.8.1簡介

故障信號協(xié)議通過 FSP 命令寄存器進行配置。FSP 狀態(tài)由 STS 寄存器中的 FSP 標(biāo)志指示。FSP有三種狀態(tài):

開機重置狀態(tài)。在熱啟動重置(warm power-on reset)后, SMU 與端口斷開連接(請參閱 SMU_CORE Integration Guidelines)。在熱啟動重置后, SMU FSP 輸出應(yīng)為故障狀態(tài)。

無故障狀態(tài)。無故障狀態(tài)由一個定時器控制,定時器被稱為 TFSP_FFS ,并由 FSP 寄存器控制。

故障狀態(tài)。故障狀態(tài)的時間由 FSP 寄存器控制。最小活動故障狀態(tài)時間稱為 TFSP_FS。

無故障和故障狀態(tài)行為可以使用以下協(xié)議進行配置:

Bi-stable protocol (default)

Dynamic dual-rail protocol

Time-switching protocol

FSP 可通過以下方式控制:

軟件方式,通過CMD寄存器使用SMU_ActivateFSP()和SMU_ReleaseFSP()命令。

硬件方式,通過AGiFSP(I = 0-11)配置寄存器。

為避免意外報警,僅當(dāng) SMU 未處于故障狀態(tài)且 FSP 處于雙穩(wěn)定協(xié)議模式(FSP 模式= 00B)時,才可執(zhí)行 PRE1 , PRE2 或 TFSP_HIGH 字段的配置。模式切換和配置不應(yīng)使用相同的寫入訪問權(quán)限來注冊 FSP。如果應(yīng)寫入 FSP.PRE1字段,請確保沒有運行恢復(fù)計時器(恢復(fù)計時器狀態(tài)由 STS 寄存器中的 BITS RTS0和 RTS1 指示)。

圖 165 指定了生成 TFSP_FFS 和 TFSP_FS 計時的中間時鐘。

a11b6272-d490-11ee-a297-92fbcf53809c.png

2.1.8.2 Bi-stable fault signaling protocol

a129ff3a-d490-11ee-a297-92fbcf53809c.png

操作

在通電重置過程中, FSP[0] =0 (故障狀態(tài))。

通電后重置 FSP[0]保持故障狀態(tài)。

FSP[0]必須設(shè)置為每個軟件的無故障狀態(tài)(SMU_ReleaseFSP ())。

在檢測到配置為激活 FSP 的報警事件時, FSP [0]會進入故障狀態(tài)并保持此狀態(tài),直到收到 SMU_ReleaseFSP ()命令,并且滿足 TFS_FS 或發(fā)生開機重置。

在故障狀態(tài)下,如果收到配置為激活 FSP 的新警報事件,但尚未達到 TFSP_FS ,則應(yīng)重新啟動 TFSP_FS 計時。

在故障狀態(tài)下,如果收到配置為激活 FSP 的新報警事件,并且已經(jīng)達到 TFSP_FS ,則應(yīng)啟動 TFSP_FS 計時。

2.1.8.3Timed dual rail

a14513ba-d490-11ee-a297-92fbcf53809c.png

操作

雙軌編碼是對位進行編碼的另一種方法。雙軌代碼使用兩個信號來定義邏輯狀態(tài)。

在通電重置過程中, FSP[1:0]=2'B00 (故障狀態(tài))?通電重置后, FSP[1:0]保持故障狀態(tài)。

FSP[1:0]必須設(shè)置為每個軟件的無故障狀態(tài)(SMU_ReleaseFSP ())。

故障無狀態(tài)由 FSP[1:0]在 2'B01 和 2'B10之間振蕩定義,其定義頻率通過 FSP 寄存器配置,占空比為 50% (參見圖 167)。

在檢測到配置為激活FSP的報警事件時,F(xiàn)SP [1:0]會立即進入故障狀態(tài),并保持此狀態(tài),直到收到SMU_ReleaseFSP ()命令且TFS_FS滿足或啟動

重置發(fā)生。

a1560ea4-d490-11ee-a297-92fbcf53809c.png

2.1.8.4 Time switching protocol

a162c09a-d490-11ee-a297-92fbcf53809c.png

使用定義的頻率在邏輯級別0和邏輯級別 1 之間切換 FP[0]。當(dāng) SMU_CORE 進入故障狀態(tài)時,將違反此頻率調(diào)制協(xié)議。

在通電重置過程中, FSP[0] =0 (故障狀態(tài))。

加電后重置 FSP[0]保持故障狀態(tài)。

FSP[0]必須設(shè)置為每個軟件的無故障狀態(tài)(SMU_ReleaseFSP ())。

在無故障狀態(tài)下,使用通過 FSP 寄存器配置的頻率, FSP[0]在邏輯級別0和邏輯級別 1 之間振蕩(參見圖 168)。

在檢測到配置為激活 FSP 的報警事件時, FSP [0]會立即進入故障狀態(tài),并保持此狀態(tài),直到收到 SMU_ReleaseFSP ()命令且 TFS_FS 滿足或啟動要求重置發(fā)生。

2.1.8.5FSPFault State

當(dāng)警報配置為激活 FSP 時, SMU_CORE 會自動切換到故障狀態(tài)。在此期間,安全相關(guān)軟件還可以嘗試分析根本原因(當(dāng)微控制器仍在運行時),并確定錯誤的嚴重程度。由于 FSP 至少對 TFSP_FS 處于活動狀態(tài),因此可以確保通過獨立于微控制器的外部機制(除了 FSP 本身)輸入系統(tǒng)的安全狀態(tài)。在 TFSP_FS FSP 處于故障狀態(tài)期間,軟件可能已斷定故障不嚴重,并決定發(fā)SMU_ReleaseFSP ()命令,通知 SMU_CORE 它可以返回到運行狀態(tài)(軟件錯誤處理程序的運行時間與 TFSP_FS 的持續(xù)時間沒有直接關(guān)聯(lián),在實踐中應(yīng)該要短得多)。

a17b7ee6-d490-11ee-a297-92fbcf53809c.png

應(yīng)謹慎使用此功能,當(dāng) SMU 報告的故障被評估為不嚴重時,強烈建議重置微控制器以重新啟動安全功能的操作。因此,默認情況下,此功能處于禁用狀態(tài),應(yīng)使用 AGC 寄存器中的 EFRST (啟用故障到運行狀態(tài)轉(zhuǎn)換)字段進行配置。

2.1.8.6 FSP and SMU_core START State

圖 170顯示了一個典型的使用案例,其中 FSP 在故障狀態(tài)和無故障狀態(tài)之間的轉(zhuǎn)換由軟件使用 SMU_ReleaseFSP()和 SMU_ActivateFSP()命令進行控制。

a1fb0d82-d490-11ee-a297-92fbcf53809c.png

使用條件:

軟件應(yīng)確保 FSP 處于無故障狀態(tài),然后使用 SMU_Start()命令輸入運行狀態(tài)。

2.2 SMU_stdby

概念和SMU_core基本一樣,參考芯片手冊。

03

SMU配置

和其他硬件模塊一樣,理解了模塊的原理和基本概念后,模塊配置就是按照項目的需求配置模塊相關(guān)的寄存器,只不過提供了圖形化的配置工具。

3.1SMUGeneral配置

SMU General主要配置一些全局的屬性,以及是否使能一些SMU的功能,是否要使能一些API.

a20c153c-d490-11ee-a297-92fbcf53809c.png

3.2SmuConfigSet配置

3.2.1General

a2269a9c-d490-11ee-a297-92fbcf53809c.png

3.2.2 SmuCoreRT0Alarm

a2499d58-d490-11ee-a297-92fbcf53809c.png

3.2.3 SmuCoreAlarmGroup

a25978e0-d490-11ee-a297-92fbcf53809c.png

3.2.3 SmuStdbyAlarmGroup

a270a65a-d490-11ee-a297-92fbcf53809c.png

04

總結(jié)

SMU模塊是Aurix芯片自帶的一個功能安全硬件模塊,它能夠收集其他模塊(PMS, MTU, SCU, CCU, e.g.)由于硬件功能安全機制產(chǎn)生的報警(Alarm),然后,SMU模塊通過用戶配置能夠產(chǎn)生內(nèi)部或者外部的動作/響應(yīng),也可以不產(chǎn)生任何動作。對于使用SMU的用戶而言,外部響應(yīng)一般都很少使用,主要就是查對應(yīng)芯片手冊,知道哪一個硬件模塊可以產(chǎn)生一個對應(yīng)SMU的Alarm,然后配置該Alarm產(chǎn)生后需要執(zhí)行的動作即可。

a28654e6-d490-11ee-a297-92fbcf53809c.png

審核編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7660

    瀏覽量

    152187
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5372

    瀏覽量

    121294
  • 路由器
    +關(guān)注

    關(guān)注

    22

    文章

    3746

    瀏覽量

    114554
  • SMU
    SMU
    +關(guān)注

    關(guān)注

    1

    文章

    59

    瀏覽量

    17337
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1217

    瀏覽量

    52441

原文標(biāo)題:TC3xx芯片SMU模塊詳解

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    英飛凌TC3XX系列多核MCU學(xué)習(xí)筆記(1)

    聲明:本文是在學(xué)習(xí)英飛凌 TC3XX系列多核 MCU 過程中整理的筆記,便于后期復(fù)習(xí)!
    發(fā)表于 09-19 09:54 ?2786次閱讀
    英飛凌<b class='flag-5'>TC3XX</b>系列多核MCU學(xué)習(xí)筆記(1)

    TC3xx芯片的Endinit功能詳解

    上鎖Endinit。那什么是Endinit功能了? -- 本文就來詳細解鎖TC3xx芯片的Endinit機制。
    的頭像 發(fā)表于 11-27 09:23 ?2514次閱讀
    <b class='flag-5'>TC3xx</b><b class='flag-5'>芯片</b>的Endinit功能詳解

    TC3xx芯片時鐘系統(tǒng)的鎖相環(huán)PLL詳解

    的Tick數(shù)就是基于模塊時鐘的)。本系列文章就來詳細介紹TC3xx芯片的時鐘系統(tǒng)及其具體配置。本文為TC3xx芯片時鐘系統(tǒng)的鎖相環(huán)PLL詳解
    的頭像 發(fā)表于 12-01 09:37 ?2828次閱讀
    <b class='flag-5'>TC3xx</b><b class='flag-5'>芯片</b>時鐘系統(tǒng)的鎖相環(huán)PLL詳解

    英飛凌TC3xx系列安全管理單元的使用

    本篇文檔主要用來介紹英飛凌基于AURIX-2G TriCore 1.6.2架構(gòu)的 TC3xx系列安全管理單元的使用。
    的頭像 發(fā)表于 12-07 09:29 ?2338次閱讀
    英飛凌<b class='flag-5'>TC3xx</b>系列安全管理單元的使用

    TC3XX寄存器讀寫時間過長怎么解決?

    我目前在做TC3XX底層代碼優(yōu)化,經(jīng)過之前多次測試目前可以確定該系列芯片對單個寄存器地址的讀寫耗時超過100us。請問對于寄存器讀寫耗時你們官方有沒有確切的文件說明?還有就是既然寄存器讀寫時間那么長100M的外設(shè)總線時鐘是否有意義?
    發(fā)表于 01-25 06:56

    TC3xx系列怎么禁用trap?

    目前在TC3xx調(diào)試flash讀寫功能,單獨運行flash相關(guān)功能沒有問題,但將flash相關(guān)功能集成到工程中。操作pflash就會進入trap中,查看了一些帖子說是要禁掉trap?請問怎么禁用trap?目前沒找到相關(guān)函數(shù)
    發(fā)表于 01-31 06:21

    請問TC3XX WDT 的check access應(yīng)該如何使用?

    hi,各位老師:請問TC3XX WDT 的check access應(yīng)該如何使用?以及Time Check Password如何理解及使用?讀手冊時,一直沒有理解到Time Check
    發(fā)表于 02-02 08:17

    TC3xx系列是否支持RTC功能?

    請教各位,TC3xx系列芯片是否支持RTC功能,目前要記錄snapshot的時間點(年月日時分秒)。
    發(fā)表于 02-02 07:53

    TC3xx的HSM中有沒有單調(diào)計數(shù)器?

    你好, 我看到 OPTIGA 有單調(diào)計數(shù)器,但我在 TC3xx 的 HSM 中確實找不到單調(diào)計數(shù)器。 能否確認TC3xx的HSM中沒有單調(diào)計數(shù)器?
    發(fā)表于 03-05 07:56

    TC3XX系列IOM模塊ECMSELR寄存器中的CTS和CES有什么區(qū)別?

    我想利用 IOM 模塊來監(jiān)控 PWM 輸出,但我有一些問題。 TC3XX 系列 IOM 模塊 ECMSELR 寄存器中的 CTS 和 CES 有什么區(qū)別? 如果將 CES 的相應(yīng)通道設(shè)置為 1,是否會在發(fā)生事件時向
    發(fā)表于 05-29 07:39

    AUTOSAR MCAL-基于Infineon TC3xx芯片的ADC模塊

    ADC模塊了,由于最近開始使用Infineon TC3xx芯片,在配置ADC模塊的時候發(fā)現(xiàn)ADC模塊對上提供的標(biāo)準(zhǔn)接口是一樣的,在切換
    的頭像 發(fā)表于 01-29 16:45 ?8974次閱讀

    AURIX? TC3xx NVM是非易失性存儲器學(xué)習(xí)筆記

    TC3xx芯片最多有6個內(nèi)核,每個核有自己的私有的Memory以及共有的Memory。
    發(fā)表于 06-19 09:09 ?7668次閱讀
    AURIX? <b class='flag-5'>TC3xx</b> NVM是非易失性存儲器學(xué)習(xí)筆記

    TC3xx芯片DMU介紹

    AUTOSAR架構(gòu)圖下的Fls模塊對上(Fee)模塊提供統(tǒng)一的標(biāo)準(zhǔn)接口,但是具體的實現(xiàn)因不同的芯片而不一樣,Infineon公司的Fls模塊通過操作
    的頭像 發(fā)表于 08-31 14:10 ?2108次閱讀
    <b class='flag-5'>TC3xx</b><b class='flag-5'>芯片</b>DMU介紹

    TC3xx芯片的MPU功能詳解

    在前面的文章文章中我們介紹了RH850-U2A的內(nèi)存保護單元(MPU),了解了MPU的概念以及在RH850-U2A上的具體使用流程,但是對于TC3xx系列芯片的的MPU功能不甚了解。本文就來詳細介紹下
    的頭像 發(fā)表于 09-19 11:42 ?2681次閱讀
    <b class='flag-5'>TC3xx</b><b class='flag-5'>芯片</b>的MPU功能詳解

    深入解析TC3xx芯片中SMU模塊應(yīng)用

    TC3xx芯片是德國英飛凌半導(dǎo)體公司推出的汽車級處理器芯片系列,其中的SMU(System Management Unit)模塊是其重要組成
    的頭像 發(fā)表于 03-01 18:08 ?1930次閱讀
    主站蜘蛛池模板: 午夜片 飘香香影院 | 亚洲国产成人在人网站天堂 | 亚洲第8页| xxxxxx日本人免费 | 加勒比在线免费视频 | 日日操天天射 | 亚洲综合狠狠 | 黄色综合网站 | 四虎午夜影院 | 夜夜操夜夜爱 | 全色网站 | 美女被视频网站在线看九色 | 一区二区三区欧美在线 | 老熟女毛片 | 成人午夜大片免费视频77777 | 1024在线观看你懂的 | 5278欧美一区 | 喷潮白浆 | 综合网在线 | 国产资源在线播放 | 欧美午夜色大片在线观看免费 | 视频在线视频免费观看 | 色丁香在线观看 | 激情欧美在线 | 亚洲日本一区二区三区在线不卡 | 一区二区三区四区电影 | 天天干在线影院 | 午夜高清 | 中文字幕视频二区 | 好色亚洲 | 久久sp| 欧美猛交lxxxxxxxxx | 国产日本特黄特色大片免费视频 | 亚洲最大的黄色网址 | 国产一级一片免费播放视频 | 精品噜噜噜噜久久久久久久久 | aaa一级黄色片 | 国产成人精品日本亚洲专 | 福利在线观看 | 亚洲国产丝袜精品一区杨幂 | 久久激情五月 |