ARM trustzone

发布时间 2024-01-11 18:02:31作者: xiaoye45

ARM trustzone

参见:Learn the architecture - TrustZone for AArch64

企业微信截图_17049527836373

image

image

image

image

image

image总线属性和安全态可以不一致,

Completers: peripherals, and memories

image

image​​image​​image

TZASC:

image

DEN0021F_Trusted_Base_System_Architecture_A_Beta0

image​​image

image

image

image

image

  1. 方式 1: interconnect适配

    是否可以使用将RNF/RND发出的NS固定放在地址高位,即49bit地址,同时将secure固定搞成非安全,在SNF出口,用bit48替换NS

    内存空间:假设总共64GB内存,这样CMN基于全部49bit地址做hash和cache,在HNF/SLC没有问题,在SNF下,可以将可配置的安全空间大小,比如4GB,放到整体ddr空间的最后4GB,即60GB非安全+4GB安全,需要两个SCG? power of 2 和non-power2 hash的hash算法需要通过ESL遍历,保证可行性和完备性。

    外设空间:HNI/HND下,即使忽略NS,HNI也有问题,不能暴露两个地址给CPU,否则non-hash空间过多,整体上需要修改CMN逻辑来区分device和DDR,仅适配ddr空间,外设空间维持不变,

  2. 方式2: target侧适配

    严格遵守“同一地址不能由不同安全属性访问”,其他无需特殊处理

ARMV8M之类的约束

image