本文檔為使用 EWARM 和 MDKARM 軟件工具鏈在 STM32L5 系列微控制器上進行應用開發(fā)提供參考。
本應用筆記提供了為 Arm? Cortex?- m33(Armv8_M 架構(gòu))的器件構(gòu)建和調(diào)試安全和非安全應用程序的基礎(chǔ)知識。
本文首先概述 Arm? Cortex?-M33 和 TrustZone?概念。
本應用筆記還描述當通過 TZEN 選項位啟用 TrustZone?之后,如何使用 EWARM 和 MDKARM 調(diào)試 STM32L5 系列微控制器。
Arm? Cortex?-M33 內(nèi)核概述
Arm? Cortex?-M33 是首次完整的集成了 ARMv8 指令集及 TrustZone 安全技術(shù)和數(shù)字信號處理功能。該處理器支持大量靈活的配置選項,以促進各種應用程序的部署,并提供專用的協(xié)處理器接口,用于加速經(jīng)常使用的計算密集型操作。Cortex?-M33 提供性能、功率、安全性和生產(chǎn)效率之間的最佳平衡。
Armv8-M 的 TrustZone?概念
帶有 TrustZone?的 Cortex?-M33 處理器有兩個安全狀態(tài)(參見圖 1)和一些相關(guān)的特性:
- 安全狀態(tài)
- 非安全狀態(tài)
- 硬件棧限制檢查
- 系統(tǒng)安全通知接口
- 限定非安全(NS)域只能通過預定義的入口點訪問安全代碼
- 當切換到非安全時,異常硬件自動保存和清除安全寄存器狀態(tài)
- 中斷或異??刂频臄U展存儲,SysTick
- 針對每個安全和非安全部分的內(nèi)存保護單元