TrustZone之总线请求

接下来,我们将查看系统中的总线请求者,如下图所示:

系统中的A型处理器具有TrustZone感知,并在每个总线访问中发送正确的安全状态。然而,大多数现代SoC还包含非处理器总线请求者,例如GPU和DMA控制器。

与完成设备一样,我们可以将系统中的请求者设备粗略地分为以下几组:

• TrustZone感知

一些请求者具有TrustZone感知,并像处理器一样,在每个总线访问中提供适当的安全信息。其中的示例包括按照Arm SMMUv3规范构建的系统MMU(SMMU)。

• 非TrustZone感知

并非所有请求者都具有TrustZone感知,特别是在重用传统IP时。这些请求者通常在其总线访问中不提供安全信息,或始终发送相同的值。

非TrustZone感知的请求者需要访问哪些系统资源?根据这个问题的答案,我们可以选择几种方法之一:

• 设计时定值

当请求者只需要访问单个物理地址空间时,系统设计人员可以通过定值适当的信号来固定其访问的地址空间。这种解决方案简单,但不灵活。

• 可配置逻辑

提供逻辑以将安全信息添加到请求者的总线访问中。一些互连,如Arm NIC-400,提供在启动时由安全软件使用的寄存器,用于设置附加请求者访问的安全性。这会覆盖请求者本身提供的任何值。这种方法仍然只允许请求者访问单个物理地址空间,但比定值更灵活。

• SMMU

更灵活的选择是SMMU。对于受信任的请求者,SMMU的行为类似于安全状态下的MMU。这包括翻译表项中的NS位,控制访问哪个物理地址空间。

相关推荐
Stone.Wu4 天前
快速理解ARM Cortex-M流水线:指令执行过程通俗解释
arm
我在人间贩卖青春4 天前
汇编之分支跳转指令
汇编·arm·分支跳转
我在人间贩卖青春4 天前
汇编之加载存储指令
汇编·arm·寄存器加载存储
我在人间贩卖青春4 天前
汇编之状态寄存器访问指令
汇编·arm·状态寄存器
我在人间贩卖青春4 天前
汇编之软中断指令和协处理指令
汇编·arm·软中断·协处理
我在人间贩卖青春5 天前
汇编之数据处理指令
汇编·arm·数据处理指令
fly的fly8 天前
浅析 QT远程部署及debug方案
qt·物联网·arm
切糕师学AI10 天前
ARM标准汇编(armasm)中的标号(Label)
汇编·arm
CHENG-JustDoIt11 天前
嵌入式开发 | ARM Cortex-M 系列中M3、M4、M23 和 M33四款处理器的深度对比分析
arm开发·单片机·嵌入式硬件·arm
toradexsh18 天前
在NXP iMX8QM上使用 Jailhouse
arm·nxp·toradex·imx8mp·jailhouse