• 資料介紹
    • 引言
    • TrustZone 環(huán)境+RTOS 的軟件架構(gòu)
    • TrustZone 環(huán)境中 NS 非安全側(cè)使用 RTOS 的注意事項(xiàng)
    • 小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

LAT1320 STM32 TrustZone開發(fā)調(diào)試技巧(4)

03/24 09:31
284
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

LAT1320 STM32 TrustZone開發(fā)調(diào)試技巧(4)

826.82 KB

引言

在之前的 STM32MCU TrustZone 開發(fā)調(diào)試技巧的系列文章中,我們已經(jīng)介紹了 ARMCM33 內(nèi)核 Trust Zone 特性,STM32MCU 的系統(tǒng)級 TrustZone 架構(gòu)設(shè)計(jì),TrustZone 環(huán)境下使用外設(shè)的注意事項(xiàng),以及 HardFault 的處理和調(diào)試等內(nèi)容。我們知道在某些較為復(fù)雜的應(yīng)用中,往往還會用到 RTOS,在這個系列的最后一篇,我們將主要討論 STM32MCU 應(yīng)用程序開發(fā)中,在 TrustZone 環(huán)境下使用 RTOS 時的情況以及相關(guān)軟件開發(fā)的一些注意事項(xiàng),供開發(fā)者參考。

TrustZone 環(huán)境+RTOS 的軟件架構(gòu)

通常情況下,在 TrustZone 環(huán)境中,Secure 安全側(cè)的代碼主要負(fù)責(zé)處理一些關(guān)鍵數(shù)據(jù)的操作和關(guān)鍵外設(shè)的管理和控制,而更多的業(yè)務(wù)邏輯相關(guān)的應(yīng)用程序則會運(yùn)行在 TrustZone 的Non-Secure 非安全側(cè)。軟件的開發(fā)模式也會由原來的單一應(yīng)用程序工程變?yōu)榘踩臃前踩珒蓚€工程的聯(lián)合開發(fā)。系統(tǒng)復(fù)位后 CPU 總是從安全工程的 reset handler 開始運(yùn)行,安全代碼完成初始化以及系統(tǒng)的安全配置之后,調(diào)用非安全代碼的 reset handler 切換到非安全狀態(tài),繼而開始運(yùn)行非安全側(cè)代碼,非安全代碼執(zhí)行過程中可能會調(diào)用安全側(cè)代碼提供的一些API 函數(shù)。

TrustZone 環(huán)境中 NS 非安全側(cè)使用 RTOS 的注意事項(xiàng)

首先需要注意 RTOS 的版本,比較舊的版本可能還沒包含對 ARM CM33 內(nèi)核以及TrustZone 的支持。如果應(yīng)用的項(xiàng)目是從某個過去的項(xiàng)目中遷移到 STM32MCU 的新產(chǎn)品,尤其使用了 TrustZone 的時候,建議檢查原始工程中的 RTOS 版本,確認(rèn)是否已經(jīng)包含對CM33 內(nèi)核以及 TrustZone 的支持。

其次,要注意在安全和非安全工程中添加正確的 RTOS 代碼。以 FreeRTOS 為例,它的portable 代碼有多個目錄,在 TrustZone 環(huán)境中應(yīng)當(dāng)使用 ARM_CM33 目錄下的文件。

小結(jié)

本文重點(diǎn)討論了基于 ARM CM33 內(nèi)核的 STM32MCU 支持 TrustZone 的環(huán)境下使用RTOS 的一些情況,并總結(jié)了 TrustZone 環(huán)境下使用 RTOS 的一些注意事項(xiàng)。某些 RTOS如果沒有對 TrustZone 的非常完整的支持,使用起來可能會有些限制,這時候應(yīng)用程序可能需要注意。例如通過添加 mutex 避免多個線程同時調(diào)用 S API 等。當(dāng)然這里僅僅討論了 NS側(cè)使用 RTOS 的情況,也就是 S 安全側(cè)只是提供函數(shù)由非安全側(cè)調(diào)用,本身安全側(cè)沒有調(diào)度器沒有線程概念,如果安全側(cè)也包含了調(diào)度器(比如 TF-M)那么配合非安全側(cè)使用RTOS 可能會是另一種情況。

本文是 STM32MCU TrustZone 開發(fā)技巧的系列文章的最后一篇,希望對開發(fā)者有所幫助,也歡迎大家多提寶貴意見。

資料預(yù)覽

相關(guān)推薦