7
使用TrustZone
7.1 Arm TrustZone技術的實現
某些RA6 MCU(如RA6M4和RA6M5)包含Arm TrustZone (TZ) 安全功能。有關 TZ 實現的完整詳細信息,請參見 Arm文檔或相應的《硬件用戶手冊》。
https://developer.arm.com/ip-products/security-ip/trustzone
Arm TZ技術將MCU劃分為安全和非安全分區,因此應用程序也分為安全和非安全應用程序。安全應用程序可以訪問安全和非安全存儲區和資源。非安全代碼訪問非安全存儲器和資源,也可以通過位于非安全可調用 (NSC) 區域中的一組跳板(Veneer)來訪問安全資源。當從非安全分區中調用安全代碼時,跳板可以確保從單個接入點訪問安全代碼。默認情況下,MCU在安全分區中啟動。CPU的安全狀態可以是“安全”或“非安全”。MCU代碼閃存、數據閃存和SRAM分為安全 (S) 和非安全 (NS) 區域。代碼閃存和SRAM還包含一個稱為非安全可調用 (NSC) 的區域。當器件生命周期為安全軟件調試 (SSD) 狀態時,可通過SCI或USB引導模式命令將這些存儲器安全屬性設置到非易失性存儲器中。在應用程序執行之前,存儲器安全屬性就會被加載到實現定義屬性單元 (IDAU) 外設和存儲器控制器中,并且無法通過應用程序代碼進行更新。
圖14. 安全和非安全區域
注:
所有外部存儲器訪問均被視為不安全訪問。
代碼閃存和SRAM可以分為安全、非安全和非安全可調用三個區域。所有來自非安全區域的安全存儲器訪問均必須通過非安全可調用網關,并以特定的安全網關 (SG) 匯編器指令為目標。這將強制訪問固定位置的安全API,并防止調用子功能等。未以SG指令為目標將產生TZ異常。支持TZ的編譯器將使用CMSE擴展自動管理NSC模板的產生。
參考文檔:
? RA Arm TrustZone工具入門
? 使用Arm TrustZone保護靜態數據
? Arm TrustZone的安全設計 - IP保護
? 使用SCE9和Arm TrustZone建立和保護器件標識
? 器件生命周期管理密鑰安裝
? 相關的《MCU硬件用戶手冊》中的“Arm TrustZone安全性”部分。
7.2 支持TrustZone的仿真器
Renesas提供的仿真器既支持使用SWD或JTAG通信進行調試,也支持使用SCI通信進行串行編程。借助該仿真器,可以輕松地在調試和串行編程之間進行切換。下表顯示了使用此仿真器時10引腳或20引腳插座的引腳排列。SWD和JTAG的引腳排列符合Arm標準,并且添加了MD、TXD、RXD引腳,以便使用SCI通信進行串行編程。
必須使用串行編程接口對TrustZone IDAU邊界寄存器設置進行編程。建議使用板上線“或”電路連接P300/SWCLK/TCK和P201/MD引腳,以同時使用調試和串行編程。
表13. 仿真器的引腳分配
圖15. 支持Trustzone的MCU的仿真器連接
下一章:存儲器
-
mcu
+關注
關注
146文章
17123瀏覽量
350992 -
瑞薩
+關注
關注
35文章
22308瀏覽量
86240
原文標題:RA6快速設計指南 [8] 使用TrustZone?
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論