【ARM CoreLink 系列 7 -- TZC-400控制器简介】

news2024/12/23 5:18:51

文章目录

    • 概述
    • TZC-400 使用示例
    • TZC-400 interfaces
    • FPID & NSAID
    • Region
      • region 检查规则
    • Features
    • Register summary
    • TZC-400和TZPC和TZASC区别

转自:https://www.cnblogs.com/lvzh/p/16582717.html

概述

TZC-400对发送到内存或外设的事务执行安全检查。TZC-400使用 filter unit 过滤从masters到slaves的总线访问,TZC-400最多有4个Filter unit。您可以使用TZC-400在地址空间中创建最多8个区域,每个区域都有单独的安全级别设置。任何事务必须满足安全需求才能访问内存或外设。您可以设置各个地区的base地址、top地址、enable和安全级别。

TZC-400通过ACE-Lite响应通道或中断上报检查错误。

TZC-400 使用示例

不同的 Master 会连接到不同的 filter unit。
在这里插入图片描述

TZC-400 在SoC 系统层面的使用:
在这里插入图片描述

TZC-400 interfaces

Control unit使用APB协议,clock和reset。

每个Filter unit均有单独的ACE-Lite clock和reset,filter unit会根据ACE-Lite地址、Fast path ID、NSAID(Non-Secure Access ID)来筛选。

TZC对外输出1根中断上报安全检查异常。
在这里插入图片描述

FPID & NSAID

Fast Path IDentity (FPID)决定filter unit的读操作是使用快速路径还是普通路径。每个filter unit有单独1 bit FPID输入。fast path依赖speculative access,因此必须开启master和slave的speculative access功能。是芯片固定的还是可以软件配置?

Non-secure Access IDentity (NSAID)标识发起访问的master。每个filter unit有两组NSAID信号,每组4个bit,NSAIDR[3:0]用于标识,NSAIDW[3:0]标识写。怎么标识? 芯片设计时,分配的master id。

Region

Region是一个连续的地址空间定义了start和end。

region有单独的安全级别配置。

TZC-400有9个regions:region0是default,部分编程,region1-8是完全编程。

通过control unit设置每个region的安全和地址空间。

region 检查规则

  • region必须使能,filter unit才能用来检查访问合法性
  • region0始终是使能的,只能修改安全访问属性。
    f- ilter unit如果在其他region找不到访问地址匹配,会使用region0的配置
  • Filter unit使用的region1-8空间不能有overlap memory,但是region1-8可以与region0有overlap memory,而且region1-8的规则会覆盖region0。
    在这里插入图片描述

Features

  • 可以在地址映射中最多定义8个region(完全编程)。
  • 一个默认的基本区域覆盖所有剩余的地址映射部分,即region0。
  • 通过APB4总线编程每个region的访问权限,包括region0。
  • 只有当ACE-Lite事务的安全状态/ID和映射region的安全设置匹配时,filter unit才允许在ACE-lite master和slave之间传输数据。
  • 所有filter units共享公共区域配置寄存器的设置,保证一致性。
  • filter unit支持相互独立的异步时钟,而且也和control unit的APB时钟是异步的。
  • 支持双读访问通道,即快速路径和正常路径。快速路径具有低延迟,但outstanding数量
    有限。正常路径可以支持更多数量的outstanding,正常路径支持256个待处理事务,但延迟不低于快速路径的延迟。
  • 非安全访问是基于ID进行事务过滤的。
    状态和中断信号可以通过软件编程进行配置,从而管理失败的权限检查。
  • 每个时钟域都有AXI低功耗接口。
  • Gate keeper用于控制每个filter unit的访问状态,使能或禁用。

Register summary

offsetnametypedescription
0x0BUILD_CONFIGRO当前IP实现了几个region,实现了几个filter
在这里插入图片描述
0x4ACTIONRW当访问检查失败时,中断和bus返回如何处理
在这里插入图片描述
0x8GATE_KEEPERRW控制每个filter unit的使能和去使能,低bit对应每个filter unit控制,高bit代表状态在这里插入图片描述
0xcSPECULATION_CTRLRW控制读写随机访问在这里插入图片描述
0x10INT_STATUSRO每个filter unit的中断状态
在这里插入图片描述
0x14INT_CLEARWO每个filter unit的中断状态清除
在这里插入图片描述
0x100+(0x20*n)REGION_TOP_LOWRWregionX的低地址
0x108+(0x20*n)REGION_TOP_HIGHRWregionX的高地址
0x110+(0x20*n)REGION_ATTRIBUTESRW控制每个region的属性:安全读写属性、是否使能对应filter unit
在这里插入图片描述
0x114+(0x20*n)REGION_ID_ACCESSRW高bit控制写,低bit控制读每bit对应NSAID的使能情况
在这里插入图片描述

TZC-400和TZPC和TZASC区别

物理内存和外设的隔离保护通过TZASC和TZPC的设置来达到目的。TZASC可以把物理内存分成多个区域,每个区域的访问权限可以灵活配置为安全区域或是非安全区域,甚至可以配置成只有普通世界可以访问。TZPC则是配置不同的外设属于哪个世界。当然了TZASC和TZPC的配置只能在安全世界下进行。

TZPC只能控制某个外设的安全属性,它不能细粒度的控制地址空间。

TZC400是TZASC的具体实现的IP。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1083567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为认证 | HCIP-Datacom,这门认证正式发布新版本!

华为认证数通高级工程师HCIP-Datacom-Campus Network Planning and Deployment V1.5(中文版)自2023年9月28日起,正式在中国区发布。 01 发布概述 基于“平台生态”战略,围绕“云-管-端”协同的新ICT技术架构,华为公司…

Visual Studio 2022 cmake编译 PP-OCRv4

1 环境准备 下载PaddleOCR PaddleOCR C 部署代码位于 PaddleOCR\deploy\cpp_infer目录下 paddle_inference paddle_inference opencv 这里使用已经安装好的opencv4.5.5下载dirent-master.zip 下载dirent-master.zip, 解压并复制dirent.h文件到PaddleOCR\deploy\cpp_infer目录下…

Spark(林子雨慕课课程)

文章目录 10. Spark10.1 Spark简介10.1.1 Spark简介10.1.2 Spark和Hadoop的对比 10.2 Spark生态系统10.3 Spark运行架构10.3.1 基本概念和架构设计 10.3.2 Spark运行基本流程10.3.3 RDD概念10.3.4 RDD特性10.3.5 RDD的依赖关系和运行过程 10.4 Spark SQL10.5 Spark的部署和应用…

video_topic

使用qt5,ffmpeg6.0,opencv,os2来实现。qt并非必要,只是用惯了。 步骤是: 1.读取rtsp码流,转换成mat图像 2.发送ros::mat图像 项目结构如下: videoplayer.h #ifndef VIDEOPLAYER_H #define VIDEOPLAYER_H#include …

【node】nodemailer配置163、qq等邮件服务指南

上一章 【node】发送邮件及附件简要使用说明 邮箱配置 参数配置参考如下: let transporter nodemailer.createTransport({host: smtp.qq.com,port: 465,secure: true,auth: {user: **********,pass: your-password} });邮箱服务提供商的要求,配置SM…

应用商店优化的好处有哪些?

应用程序优化优势包括应用在商店的可见性和曝光度,高质量和被相关用户的更好发现,增加的应用下载量,降低用户获取成本和持续增长,增加应用收入和转化率以及全球受众范围。 1、提高知名度并在应用商店中脱颖而出。 如果用户找不到…

麒麟操作系统提示“默认密钥环已上锁”的解决办法

在国产麒麟操作系统上,有的时候不知道为啥,打开vscode或者其他应用软件时,总是提示“密钥环已上锁”,该怎么处理呢? 需要点击“开始”,在搜索框中输入“password” 点击打开“密码和密钥”,看到如下图。 然后点击左上角的箭头,回退,打开如下图:

HTTP协议是什么

HTTP (全称为 “超文本传输协议”) 是一种应用非常广泛的 应用层协议,是一种网络通信协议。 超文本:所谓 “超文本” 的含义, 就是传输的内容不仅仅是文本(比如 html, css 这个就是文本), 还可以是一些其他的资源, 比如图片, 视频, 音频等二进制的数据。…

软件工程第六周

软件体系结构概述 体系结构:一种思想,而框架就是思想的实现,设计模式就是根据某一特殊问题实现的框架。 体系结构:体系结构是软件系统的高级结构。它定义了系统的主要组成部分,以及这些部分之间的关系和交互方式。 框…

压缩包格式可以转换吗?如何转换?

不知道大家会不会遇到需要转换压缩包格式的问题?如果需要转换压缩包格式,除了将文件解压出来之后,重新压缩以外,还有其他方法,今天将方法分享个大家: 工具:WinRAR 打开WinRAR,选中…

《Unity Shader 入门精要》笔记07

透明效果 为什么渲染顺序很重要Unity Shader的渲染顺序透明度测试透明度混合开启深度写入的半透明效果ShaderLab 的混合命令混合等式和参数混合操作常见的混合类型 双面渲染的透明效果透明度测试的双面渲染透明度混合的双面渲染 Unity中通常使用两种方法来实现透明效果&#xf…

华为云云耀云服务器L实例评测|使用redis事务和lua脚本

文章目录 云服务器的类型云服务优点redis一,关系型数据库(sqlserver,mysql,oracle)的事务隔离机制说明:redis事务机制 lualua脚本好处:一,怎么在redis中使用lua脚本二,脚…

vue3前端开发系列 - 项目框架搭建篇

文章目录 1. 项目初始化1.1 项目目录结构1.2 相关组件列表1.3 创建项目 2. 重置样式表3.设置路径别名4. 设置环境变量5.状态存储(Pinia)5.1 安装插件5.2 配置5.3 用户信息案例5.3.1 状态存储设置5.3.2 使用用户信息 6. 路由设置(Router)6.1 安装路由插件6.2 配置路由 7. 安装el…

光耦合器继电器与传统继电器:哪种最适合您的项目?

在电子和电气工程领域,继电器的选择可以显着影响项目的性能和安全性。两种常见类型的继电器是光耦合器继电器和传统机电继电器。每个都有其优点和缺点,因此选择过程对于项目的成功结果至关重要。 光耦合器继电器:基础知识 光耦合器继电器&…

亚运之后,AI如何实现保障普通人的运动安全?

刚刚结束的2023年杭州亚运会带动了一波全民运动热潮。481个运动项目中,篮球、游泳、羽毛球、滑板等运动项目早已融入到普通人的日常生活中,这些运动不仅可以帮助人们增强身体素质,还可以提高心理健康水平,减轻压力和焦虑&#xff…

MacOS Pro笔记本硬盘升级纪实

背景 MacPro 2015 mid的苹果本,忽然心血来潮想升级一下SSD。三个步骤:做启动盘,时间机器备份,插新的SSD盘恢复。 过程 下载MacOS,macOS Monterey 12.7官方原版镜像: https://swcdn.apple.com/content/do…

【产品】智能结构仿真软件AIFEM 2023R2新版本功能介绍

AIFEM是由天洑自主研发的一款通用的智能结构仿真软件,助力用户解决固体结构相关的静力学、动力学、振动、热力学等实际工程问题,软件提供高效的前后处理工具和高精度的有限元求解器,帮助用户快速、深入地评估结构的力学性能,加速产…

mysql case when 不命中缓存

case when 在sql 中非常方便数据不同维度统计,但是也会出现mysql 索引不命中问题,当多个case 出现时,需要提取出来到where里面优化 优化后 SELECT date(RecordTime) AS date, count( DISTINCT CASE WHEN Param 1 …

Java基于SpringBoot+Vue的考研资讯平台

1 简介 大家好,我是程序员徐师兄,今天为大家带来的是Java基于SpringBootVue的考研资讯平台 Java基于SpringBoot的考研资讯平台,在系统当中学生可以根据不同的信息来实现该网站的考研资讯平台信息的管理。 系统主要分为前台和后台。主要包括…

linux之cpu模拟负载程序

工作中我们经常会遇到这样的问题,需要模拟cpu的负载程序,例如模拟cpu占有率抬升10%、20%、50%、70%等,那这样的程序应该如何实现呢?它的原理是什么样的呢? 思想 创建一个应用程序,该应用程序的作用可以根…