2513|3

305

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

【NUCLEO-L552ZE测评】-1: Start from TrustZone [复制链接]

本帖最后由 MianQi 于 2020-12-21 17:32 编辑

按照STM32 L5系列的介绍,这款芯片的最大亮点是启用了M33内核,最显著的特色是TZ(TrustZone)的出现。

 

TrustZone,我把它译作:可信区。这是一种STM32提供的安全(secure)机制,但是,对这里所说的“安全”要有正确的理解。我的理解是:“安全”分框架安全和内容安全。内容安全,说的是私密性,靠加密实现——无论软件或硬件加密;框架安全,说的是健壮性,靠隔离(isolate)实现,至少STM32在M33的TrustZone里是这么做地。

 

那所谓的“隔离”是什么意思呢?它指的是,一个系统里有确定的部分,有不太确定或者不确定的部分。确定的部分指的是常规的、通用的、已经定形了的部分,基本上可以认为是没有bug地;不确定的部分指的是实验或者试验性质的、有可能是拷贝(fork)来的,可能含有bug地。对这两部的“隔离”,意味着,可信区的对象可以访问或者调用不可信区的对象,反之不行,类似于硬件电路里的基于二极管的极性保护(个人理解)。

 

那可信区与不可信区由谁来划分呢?用户。

 

下面通过一个例子来演示一下TZ(TrustZone)的用法。需要说明的是,我是在Ubuntu 20.04.1 LTS上运行STM32CubeIDE,这里的界面布局跟Windows版有很大的不同,我将逐一用截图显示每一步的设置在哪里。

 

首先看一下,在Ubuntu上安装了STM32CubeIDE之后的icon界面:

 

启动IDE:

 

初次运行STM32CubeIDE的预安装界面:

 

新建一个STM32项目:

 

选板子:

 

最下边一个:

 

这个时候要把板子插上:


设置项目名称和工程路径:

 

注意:勾选“Enable TrustZone”:

 

下载固件:

 

初步设置完成:

 

设置GPIO:

在GPIO中选择“show all”,才会出现PG8/PG7:

 

在“Connectivity”中选择“LPUART1”:

 

设置为“Cortex-M33 non secure”:

 

将设置为:Asynchronous,波特率设置为:115200。(这个时候要注意输入法的切换,如果还是汉语输入,将会是:115200)

 

在“Clock Configuration”中,将APB1配置为55MHz。注意是peripheral clocks,而不是Timer clocks.

 

在“Secutity”中配置“GTZC”:

 

上述的截图位置跟windows下几乎都不相同(这里假设示例中的截图取自windows版的STM32CubeIDE)但是功能的设置是完全一样地——当然还有一处不同,就是当我参照这个教程的时候(https://www.stmcu.com.cn/ecosystem/chip/chipfamily-STM32L5-4),最后一步是“EXTI 14 line 14 interrupt”,而不是“13”。

 

在“NVIC Settings”中设置“Global TrustZone controller global interrupt”使能:

 

接下来的一部出现了问题:示例中用的是“EXTI line 13 interrupt”,而在我这里的界面中只有“EXTI line 14 interrupt””:

实际上,这是我这里的测试中发现的唯一一处跟示例中真正的不同,对接下来代码的使用有什么影响,且看下一帖:【NUCLEO-L552ZE测评】-2:  Stay in TrustZone。

 

在现有的状态下点击生成代码:

 

这是现在的项目目录:

 

Screenshot from 2020-12-21 17-19-14.png (246.5 KB, 下载次数: 0)

Screenshot from 2020-12-21 17-19-14.png
此帖出自stm32/stm8论坛

最新回复

trustzone 听着很安全,没用过,不知道麻不麻烦难不难。   详情 回复 发表于 2020-12-29 22:40
点赞 关注
 

回复
举报

1万

帖子

203

TA的资源

管理员

沙发
 

ST新品NUCLEO-L552ZE-Q(Cortex-M33)

汇总贴:https://bbs.eeworld.com.cn/thread-1152571-1-1.html

此帖出自stm32/stm8论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名玩板看这里:
https://bbs.eeworld.com.cn/elecplay.html
EEWorld测评频道众多好板等你来玩,还可以来频道许愿树许愿说说你想要玩的板子,我们都在努力为大家实现!
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

板凳
 

trustzone 听着很安全,没用过,不知道麻不麻烦难不难。

此帖出自stm32/stm8论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 

回复

305

帖子

0

TA的资源

纯净的硅(初级)

4
 

从目前了解的情况来看,不麻烦,也不难,但对于这个“安全”的认识要恰如其分——这里说的“安全”,有限度的“分隔”,而非“加密”。“分隔”通过硬件实施,用软件设置,在使用的过程中可以动态调用。

此帖出自stm32/stm8论坛
 
个人签名

“Everyone wants the project to be good, fast, and cheap... pick two.”

- Unknown

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表