|
评测对象:NUCLEO-H5E5ZJ 测试目标:搭建 TrustZone 安全 / 非安全分区工程,验证分区隔离效果,评估对现有代码改动量与资源开销。 一、分析示例代码 TrustZone工程示例代码的目录位于STM32Cube_FW_H5_V1.7.0\Projects\NUCLEO-H5E5ZJ\Templates\TrustZoneEnabled,里面分别有Secure和None-Secure的代码,支持MDK\IAR和CubeIDE三种构建方式。 参考示例工程说明配置OptionBytes
1.存储器布局 H5系列芯片通过IDAU控制地址访问,采用了“别名”的机制,CPU在Secure状态的下看到的flash、ram以及外设地址别从0x0c 0x30 0x50开始。 2.Secure代码做的事情 ① HAL初始化 ② Cache初始化(可选) ③ 设置系统隔离
④ GTZC外设放行 ⑤ TZIC开启中断(清非法访问标志、开中断源、NVIC) ⑥ 开启SecureFault ⑦ 系统时钟初始化(可选) ⑧ 挂起Systick ⑨ 跳转到NS执行代码 ⑩ 实现HAL_GTZC_TZIC_Callback 知识点:TZIC 中断处理跨界违规 ,SecureFault异常处理Secure世界内部的非法访问。 3.None-Secure代码做的事情 ① HAL初始化 ② 注册两个重点要的回调函数 ③ SecureFault_Callback响应异常 ④ SecureError_Callback响应GTZC和TZIC的中断 ⑤ 设置系统时钟 ⑥ 初始化外设 ⑦ 执行用户代码 |
【STM32H5 评测】+ CPU性能测试
【STM32H5 评测】+ 存储性能测试
【STM32H5 评测】ADC 电压表
线下实训(深圳/苏州站) | STM32H5信息安全开发,大模型高效赋能
【STM32H5 评测】Part2 TrustZone示例代码工程移植重建
【STM32H5 评测】MNIST 数字识别
【STM32H5 评测】3、STM32H5 Lwip 移植、官方例程和UDP发送数据
【STM32H5 评测】+开发板拆箱介绍
【STM32H5 评测】4、移植CoreMark
【STM32H5 评测】基础硬件加密与随机数性能 - STM32H5E5实测硬件AES加解密、HASH运算、TRNG真随机数输出速率与稳定性
微信公众号
手机版