STMCU小助手
发布时间:2022-11-12 16:33
|
引言 本文档描述如何入门 STM32CubeL5 TFM(Arm® Cortex®-M 的可信固件)应用程序,该应用程序作为 STM32CubeL5 固件包组成部分提供。& H1 U! m! H9 R0 _; ] STM32CubeL5 TFM 应用程序提供一个可信根解决方案(包括安全启动和安全固件更新功能,在执行应用程序之前使用),还提供一组安全服务,这些服务与非安全应用程序隔离,但可由非安全应用程序在运行时使用。STM32CubeL5 TFM 应用程序基于已移植到 STM32L5 系列微控制器(以下统称 STM32L5)上的开源 TF-M 参考实现,目的是利用 STM32L5 的硬件安全特性,例如: • Arm® Cortex®-M33 TrustZone® 和存储器保护单元(MPU)4 M% Y* I, c8 \% v& d • TrustZone®-aware 外设 • 内存保护(HDP、WRP) • 增强生命周期方案 安全服务是一种可升级的代码,实现了一组在运行时对非安全应用程序可用的服务,并管理与非安全应用程序隔离的关键资产。 非安全应用程序不能直接访问任何关键资产,但可以调用使用关键资产的安全服务: • 安全启动(可信根服务)是一种不可变代码,总是在系统复位后执行。在每次执行前,它检查 STM32 静态保护,激活STM32 运行时间保护,然后确认应用代码的真实性和完整性。以此确保无效或恶意代码无法运行。- ~) x4 V( E8 w( n7 K8 j • 安全固件更新应用程序是一种不可变代码,它检测可用的新固件映像,检查其真实性,并在安装代码之前检查其完整性。可对整个固件映像执行固件更新,包括固件映像的安全和非安全部分。或者,也可单独对固件映像的安全部分和/或固件映像的 非安全部分执行更新。$ a: m H6 y; P. Q5 K" s* ` 安全服务是可升级代码,实现了一组服务,这些服务管理着与非安全应用程序隔离的关键资产。这意味着非安全应用程序不能直接访问任何关键资产,而只能调用使用关键资产的安全服务:5 ?% E9 W) V7 L9 Z" \2 Q • 密码:基于不透明密钥 API 的安全密码服务 • 安全存储:保护数据机密性/真实性/完整性 • 内部可信存储:保护内部 Flash 存储器(最安全的微控制器存储位置)中的数据机密性/真实性/完整性 • 认证:通过实体认证令牌证明产品身份。) _+ @, s# W0 z" I$ t8 [ 本文档中的 TFM 应用是[TF-M]的完整实现。第二个仅实现[TF-M]安全启动和安全固件更新功能的应用程序名为 STM32CubeL5 SBSFU,也可以在 STM32CubeL5 固件中获得。有关 SBSFU 应用程序的详细信息,请参见[AN5447]。 本文档的第一部分(第 4 节 -6)介绍开源 TF-M 部分(v1.0-RC2 发布),而本文档的最后部分(第 7 节 -12)介绍已移植到STM32L5 微控制器并集成在 STM32CubeL5 固件包中的 TF-M。) _0 e% c, O! _, y1 i 为 STM32L562E-DK 板提供了 STM32L5 TFM 应用示例。为 NUCLEO-L552ZE-Q 板提供了 STM32L5 SBSFU 应用示例。 参照第 2 节 [TFM 用户指南] ,获取关于开源 TF-M 参考实现的详细信息。5 ]( I2 m# G9 v" F% g: b 1 概述: G; d, }$ s- \ STM32CubeL5 TFM 应用程序在基于 Arm® Cortex®‑M 处理器的 STM32L5 系列 32 位微控制器上运行。* I& K8 R, m# c* Z
( ]' T3 q* c, q' w% X0 ^ 2 文档和开源软件资源 % |- n9 Y4 D9 I1 a2 K
. H u* }5 i6 ]( w$ Q7 }' W; u 3 STM32Cube 概述 STM32Cube 源自意法半导体,旨在通过减少开发工作量、时间和成本,明显提高设计人员的生产率。. B- N( a5 g) g8 B STM32Cube 涵盖整个 STM32 产品系列。( U P6 _( g8 h" w STM32Cube 包括:% [. g% b$ y$ o( a" p • 一套用户友好的软件开发工具,覆盖从概念到实现的整个项目开发过程,其中包括: – 图形软件配置工具 STM32CubeMX,可通过图形向导自动生成初始化 C 代码9 r* Y' \3 ~2 O – STM32CubeIDE,一种集外设配置、代码生成、代码编译和调试功能于一体的开发工具3 P* n- A) B& Y7 l t9 i' u – STM32CubeProgrammer(STM32CubeProg),图形版本和命令行版本中可用的编程工具 – STM32CubeMonitor-Power(STM32CubeMonPwr),测量并帮助优化 MCU 功耗的监控工具: ?# ?/ s* e" F& j D6 @ • STM32Cube MCU & MPU 包,针对于每个微控制器和微处理器系列的综合嵌入式软件平台(例如,0 B- b. f/ J/ `& |* P STM32L5 系列的 STM32CubeL5),它包括: – STM32Cube 硬件抽象层(HAL),确保在 STM32 各个产品之间实现最大限度的可移植性( |4 B5 O ?2 {0 k V8 u2 o5 n) B – STM32Cube 底层 API,通过硬件提供高度用户控制,确保最佳性能和内存开销 L7 B: Y, y9 w- g3 t+ F! h – 一组一致的中间件组件,如 FAT 文件系统、RTOS、USB 主机和设备、TCP/IP、触摸感应库、以及图形0 Q' v* a1 h$ K9 w$ | – 嵌入式软件实用工具以及全套外设和应用实例 • STM32Cube 扩展包,包含的嵌入式软件组件为 STM32Cube MCU 和 MPU 包的功能补充了:. V% c& ~4 m2 i7 h/ @ – 中间件扩展和应用层8 D. y; M/ s9 }/ k! O' O" R – 在特定的意法半导体开发板上运行的实现案例 完整版请查看:附件 4 `( u: J3 H" }' C * d7 {9 ^; d2 ~: A" }% Q* `8 i |
zh.DM00678763.pdf
下载7.94 MB, 下载次数: 1
|
下载按钮感觉有点问题 |
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
Keil-MDK 在线调试设置断点的高级用法
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
基于stm32平台上的IC-MU磁绝对值编码器SPI通讯和码盘数据处理
使用STM32 MCU和MPU连接PDM数字麦克风
分享STM32资料-采用 STM32U031R8 MCU 的 STM32 Nucleo-64 开发板,官方资料,数据手册等资料
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
DAC,COMP,HRTIM Fault 功能的使用
微信公众号
手机版