
引言 本文档描述如何入门 STM32CubeL5 TFM(Arm® Cortex®-M 的可信固件)应用程序,该应用程序作为 STM32CubeL5 固件包组成部分提供。 STM32CubeL5 TFM 应用程序提供一个可信根解决方案(包括安全启动和安全固件更新功能,在执行应用程序之前使用),还提供一组安全服务,这些服务与非安全应用程序隔离,但可由非安全应用程序在运行时使用。STM32CubeL5 TFM 应用程序基于已移植到 STM32L5 系列微控制器(以下统称 STM32L5)上的开源 TF-M 参考实现,目的是利用 STM32L5 的硬件安全特性,例如: • Arm® Cortex®-M33 TrustZone® 和存储器保护单元(MPU) • TrustZone®-aware 外设 • 内存保护(HDP、WRP) • 增强生命周期方案 安全服务是一种可升级的代码,实现了一组在运行时对非安全应用程序可用的服务,并管理与非安全应用程序隔离的关键资产。 非安全应用程序不能直接访问任何关键资产,但可以调用使用关键资产的安全服务: • 安全启动(可信根服务)是一种不可变代码,总是在系统复位后执行。在每次执行前,它检查 STM32 静态保护,激活STM32 运行时间保护,然后确认应用代码的真实性和完整性。以此确保无效或恶意代码无法运行。 • 安全固件更新应用程序是一种不可变代码,它检测可用的新固件映像,检查其真实性,并在安装代码之前检查其完整性。可对整个固件映像执行固件更新,包括固件映像的安全和非安全部分。或者,也可单独对固件映像的安全部分和/或固件映像的 非安全部分执行更新。 安全服务是可升级代码,实现了一组服务,这些服务管理着与非安全应用程序隔离的关键资产。这意味着非安全应用程序不能直接访问任何关键资产,而只能调用使用关键资产的安全服务: • 密码:基于不透明密钥 API 的安全密码服务 • 安全存储:保护数据机密性/真实性/完整性 • 内部可信存储:保护内部 Flash 存储器(最安全的微控制器存储位置)中的数据机密性/真实性/完整性 • 认证:通过实体认证令牌证明产品身份。 本文档中的 TFM 应用是[TF-M]的完整实现。第二个仅实现[TF-M]安全启动和安全固件更新功能的应用程序名为 STM32CubeL5 SBSFU,也可以在 STM32CubeL5 固件中获得。有关 SBSFU 应用程序的详细信息,请参见[AN5447]。 本文档的第一部分(第 4 节 -6)介绍开源 TF-M 部分(v1.0-RC2 发布),而本文档的最后部分(第 7 节 -12)介绍已移植到STM32L5 微控制器并集成在 STM32CubeL5 固件包中的 TF-M。 为 STM32L562E-DK 板提供了 STM32L5 TFM 应用示例。为 NUCLEO-L552ZE-Q 板提供了 STM32L5 SBSFU 应用示例。 参照第 2 节 [TFM 用户指南] ,获取关于开源 TF-M 参考实现的详细信息。 1 概述 STM32CubeL5 TFM 应用程序在基于 Arm® Cortex®‑M 处理器的 STM32L5 系列 32 位微控制器上运行。 ![]() 2 文档和开源软件资源 ![]() 3 STM32Cube 概述 STM32Cube 源自意法半导体,旨在通过减少开发工作量、时间和成本,明显提高设计人员的生产率。 STM32Cube 涵盖整个 STM32 产品系列。 STM32Cube 包括: • 一套用户友好的软件开发工具,覆盖从概念到实现的整个项目开发过程,其中包括: – 图形软件配置工具 STM32CubeMX,可通过图形向导自动生成初始化 C 代码 – STM32CubeIDE,一种集外设配置、代码生成、代码编译和调试功能于一体的开发工具 – STM32CubeProgrammer(STM32CubeProg),图形版本和命令行版本中可用的编程工具 – STM32CubeMonitor-Power(STM32CubeMonPwr),测量并帮助优化 MCU 功耗的监控工具 • STM32Cube MCU & MPU 包,针对于每个微控制器和微处理器系列的综合嵌入式软件平台(例如, STM32L5 系列的 STM32CubeL5),它包括: – STM32Cube 硬件抽象层(HAL),确保在 STM32 各个产品之间实现最大限度的可移植性 – STM32Cube 底层 API,通过硬件提供高度用户控制,确保最佳性能和内存开销 – 一组一致的中间件组件,如 FAT 文件系统、RTOS、USB 主机和设备、TCP/IP、触摸感应库、以及图形 – 嵌入式软件实用工具以及全套外设和应用实例 • STM32Cube 扩展包,包含的嵌入式软件组件为 STM32Cube MCU 和 MPU 包的功能补充了: – 中间件扩展和应用层 – 在特定的意法半导体开发板上运行的实现案例 完整版请查看:附件 |
zh.DM00678763.pdf
下载7.94 MB, 下载次数: 1
下载按钮感觉有点问题 |
STM32 GUI LTDC 最大像素时钟评估方法
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南