AXI协议解析(四)
来看看事务属性(Transaction Attributes),主要是对cache,buffer和memory controller的规定。按照协议,从机分为存储从机(memory slave)和外设从机(peripheral slave)。存储从机要能够正确执行所有的事务,外设从机处理事务的能力取决于具体实现。
AXI协议用AxCACHE来控制事务属性。如果不清楚cache基本知识,可以翻前面的文章,《CPU设计之Cache – 基础》。简单了解一下。在AXI3中,AxCACHE信号的含义如下图:
从上图可以看出,AxCACHE信号的4bit有各自的含义,比如AxCACHE[1]就是表示该事务是不是cacheable的。
在AXI4中,AxCACHE[1]指示是否modifiable。Non-modifiable的事务不可以拆分或合并。对于Non-modifiable的事务,下列参数不可以改变。
AXI4中的Read-Allocate和Write-Allocate与AXI3中的也略有不同。
根据AxCACHE的不同,存储类型分为下图中的几种:
对于Device Non-bufferable,协议规定:
写响应必须从最终目的地获得
读数据必须从最终目的地获取
事务可以改变
读操作不得预取。不能合并写操作
从同一ID到同一从机的所有不可修改读写事务(AxCACHE[1]=0)必须保持秩序(ordered)
对于Device Bufferable,协议规定:
写响应可从中间节点获得
写事务必须最终目的地及时可见
读数据必须从最终目的地获取
事务不可修改
读操作不得预取。不能合并写操作
从同一ID到同一从机的所有不可修改读写事务(AxCACHE[1]=0)必须保持秩序(ordered)
对于Normal Non-cacheable Non-bufferable,协议规定:
写响应必须从最终目的地获得
读数据必须从最终目的地获取
事务可以改变
写操作可以合并
同一ID到重叠地址的读写事务必须保持有序
对于Normal Non-cacheable Bufferable,协议规定:
写响应可从中间节点获得
写事务必须最终目的地及时可见
读数据必须从最终目的地或者正在进行到其最终目的地的写事务获得
事务可以改变
写操作可以合并
同一ID到重叠地址的读写事务必须保持有序
对于Write-Through No-Allocate,协议规定:
写响应可从中间点获得
写入事务必须最终目的地及时可见
读取数据可从中间缓存副本获取
事务可修改
读取可以预取
写入可以合并
读和写事务需要缓存查找
从同一ID到重叠地址的读写事务必须保持有序
出于性能原因,建议内存系统不要分配这些事务
对于Write-Through Read-Allocate,除了满足Write-Through No-Allocate的要求,协议规定:
推荐读事务分配
不推荐写事务分配
对于Write-Through Write-Allocate,除了满足Write-Through No-Allocate的要求,协议规定:
不推荐读事务分配
推荐写事务分配
对于Write-Through Read and Write-Allocate,除了满足Write-Through No-Allocate的要求,协议规定:
推荐读事务分配
推荐写事务分配
对于Write-Back No-Allocate,协议规定:
写响应可从中间点获得
写事务不需要在最终目的地可见
读取数据可从中间缓存副本获取
事务可修改
读取可以预取
写入可以合并
读和写事务需要缓存查找
从同一ID到重叠地址的读写事务必须保持有序
出于性能原因,建议内存系统不要分配这些事务
对于Write-Back Read-Allocate,除了满足Write-Back No-Allocate的要求,协议规定:
推荐读事务分配
不推荐写事务分配
对于Write-Back Write-Allocate,除了满足Write-Back No-Allocate的要求,协议规定:
不推荐读事务分配
推荐写事务分配
对于Write-Back Read and Write-Allocate,除了满足Write-Back No-Allocate的要求,协议规定:
推荐读事务分配
推荐写事务分配
为了阻止非法事务越权访问,AXI 协议设计了访问控制信号 AxPROT。读/写事务的 AxPROT 信号位宽均为3bit,其具体含义如下表:
AXI主机可能支持多个级别的操作权限,并将此权限概念扩展到内存访问。AxPROT[0]将访问标识为非特权或特权。AXI主机可能支持安全和非安全操作状态,并扩展了这一概念到内存访问的安全性。AxPROT[1]将访问标识为安全或不安全。AxPROT[2]指示是数据还是指令访问,但是并非在所有情况下都是准确的,例如,事务包含指令和数据项的混合。协议建议主机将AxPROT[2]设置为低,以指示数据访问,除非确认该访问是指令访问。
看到现在,是不是有种想吐的感觉?哈哈哈。正常现象,每次看跟memory相关的内容都很痛苦。肯定有少翻译不到位的地方,请大家包涵了。
https://mp.weixin.qq.com/s/W9i4Gt4PK7XaxMbVI7Jgyg
AXI协议解析(四)相关推荐
- AXI协议解析(五)
今天先来看一下传输标识(transaction identifier)的概念,主要是ID信号. 开始之前先讲几个概念,首先是outstanding(想不好怎么翻译,有的人译为超前)传输.如果没有out ...
- AXI协议解析(三)
了解完通道握手的依赖关系,我们再看看传输事务的结构.首先看传输的地址结构.AXI协议是基于突发(burst)传输的.所谓突发传输,就是在一次事务中,连续地传输多个地址相邻的数据.一次突发传输中可以包含 ...
- AXI协议解析(二)
前面说到AXI的五个通道是独立的,但通道间必须保持一定的约定关系: 写回复必须在一次写事务的最后一个写数据之后 读数据必须在接收到读地址信号之后 通道间握手必须满足一定的依赖关系 前两条好理解,重点看 ...
- AXI协议解析(六)
有朋友提出希望讲一下AXI的原子访问(Atomic Accesses).其实这部分我在前面特意没提及,一是个人感觉这块牵扯的基本概念太多,而且晦涩难懂,二是工作中真需要用到的机会也不多.今天简单介绍一 ...
- AXI协议解析(一)
AXI的全称是Advanced eXtensible Interface.在spec里面是这么自夸的: •用于高带宽和低延迟设计. •提供高频操作,无需使用复杂电桥. •协议满足各种组件的接口要求. ...
- AXI协议(五)-AXI-STREAM及接入思路解析
AXI协议(五)-AXI-STREAM及接入思路解析 在本文中,你将可能学会: AXI-STREAM协议的梗概(下简称axis) 尝试编写出普通摄像头接入AXIS的思路 本来想讲完怎么接入的,由于篇幅 ...
- 一个TCP长连接设备管理后台工程(四)---jtt808协议解析
协议解析 从前面内容我们可以发现,808协议是一个很典型的协议格式: 固定字段+变长字段 其中固定字段用来检测一个帧格式的完整性和有效性,所以一般会包含一下内容:帧头+变长字段对应的长度+校验.由于这 ...
- 数字IC设计--------AMBA AXI协议(英文原版)
AXI:AMBA Advanced eXtensible Interface (AXI) Protocol Specification 目录 chapter 1 Introduction about ...
- synopsys PCIE IP协议解析
synopsys PCIE IP协议解析 1.Overview Core支持单个Pcie内核的Loopback功能,该功能主要为了做芯片验证,以及在没有远程接收器件的情况下完成自己的回环.同时,Cor ...
最新文章
- Deepgreen数据库日志清理脚本
- JSONPath 解析 JSON 内容详解(翻译自 github)
- 记 第一次游戏测试实习经历
- springboot中学成绩管理毕业设计源码100854
- 高性能定时器3——时间轮
- 人工智能自然语言处理技术处理专业领域的运用
- jmeter性能测试~Beanshell
- matlab 删除workspace,MATLAB命令中清空workspace的是
- Java、JSP大阳电动车销售系统的设计与实现
- 年轻人最in的选择!HCK哈士奇x可口可乐联名限量款冰吧
- 手机开热点显示互联网无服务器,win10热点无互联网连接的具体解决办法【图文】...
- Hard-Aware Point-to-Set Deep Metric for Person Re-identification 论文笔记
- python3实现阿拉伯数字和中文数字转换
- 怎样查看计算机网,如何查看电脑(本机)无线网络密钥_查看电脑无线网络密钥的步骤...
- 陈关荣老师整理的复杂网络的…
- 蚂蚁能量助手v1.0下载App安卓
- bestcoder 1002 列变位法解密(模拟)
- 使用新的输入系统在 Unity 中构建第三人称控制器
- [树形dp] Jzoj P5906 传送门
- django基于python的旅游网站--python-计算机毕业设计
热门文章
- Photoshop批量制作座牌
- Sdwan关于企业办公组网
- a8 内存 华硕k550d_华硕k550d价格以及相关介绍【图解】
- 熊猫烧香电脑病毒案告破 抓获8名疑犯
- python 测试端口连通_python探测服务器端口连通性
- 关于在Spark集群中读取本地文件抛出找不到文件异常的问题
- linux体感游戏下载,篮球水上运动手机版下载-篮球水上运动游戏下载v1.1-Linux公社...
- importerror: cannot import name ‘HTTPClientFactory‘ from ‘twisted.web.client‘ (unknown location)
- element-ui dialog open回调函数
- 程序员的千元级护眼神器? ——明基BL2480T简测