AXI总线

article/2025/9/24 17:47:29

AXI总线

AXI总线简介

AXI总线是一种总线协议,是ARM公司提出的AMBA3.0协议(目前已AXI4已发布) 中的最重要的部分,是一种高性能、高带宽、低延时的片内总线。支持不对齐的数据传输和突发传输。在突发传输中只需要首地址,并且支持同时分离的读写数据通道、支持显著传输访问和乱序访问。

AXI的前两代分别是AHB(2.0)、ASB(1.0)。其中AMBA还包含一个APB总线,该总线是专门连接IIC、UART等低带宽接口而设计的。

AXI协议的几个关键特性

  1. 读写地址、数据分开;
  2. 通过字节选通信号(WSTRB)实现支持非对齐数据传输功能;
  3. 使用突发模式时,只需要传输首地址和设置突发长度即可;
  4. 读数据和写数据通道独立,从而支持低功耗DMA;
  5. 支持outstanding功能,可以发送多个地址进行读写;
  6. 支持out-of-order传输(即乱序传输);
  7. 可以比较容易的添加寄存器级,以此来实现时序收敛;
  8. 每个信道都有一对握手信号;
  9. 读数据和写数据通道都包含一个LAST信号,用来指明事物传输的最后一个数据;

AXI总线的基本架构

AXI总线的5个传输通道

AXI总线通过5个通道实现读写操作,这5个通道分别是:读地址通道写地址通道读数据通道写数据通道写响应通道

  • 这5条独立的通道各自包含一个双路的valid和ready握手信号。
  • 在读数据和写数据通道中还包含一个last信号,表示事务传输的最后一个数据。
  • 读数据通道中包含读数据和读响应信号,读响应信号表示读事务的完成。
  • 写数据通道中,每8位数据都会有一个byte lane,该信号表示数据总线上哪些byte数据有效(因为AXI支持不对齐的数据传输);写响应信号表示从设备响应写事务。
  • AXI支持乱序传输,会给每个事务一个IDtag,协议会要求相同IDtag的事务必须有序完成,不同IDtag之间可以乱序完成。
    请添加图片描述

AXI总线的读写流程

  • 主设备向从设备写数据:首先,主设备通过写地址通道向从设备说明要控制的寄存器地址,以及一些突发模式和控制信号;主设备通过写数据通道向从设备写入数据;最后从设备通过写响应通道进行应答;完成向从设备的写数据操作。

请添加图片描述

  • 主设备从从设备读数据:首先,主设备通过读地址通道向从设备说明要控制的寄存器地址和控制信号;当从设备接收到这些信息后偶,会根据这些信息进行读取数据的处理;完成这些处理后,从设备会通过读数据通道将数据发送给主设备。

请添加图片描述

信号描述

1. 全局变量

信号描述
ACLK时钟源全局复位时钟
ARESETn主复位信号全局复位信号,低电平有效

2. 写地址通道(AW)

信号描述个人理解
AWID [3 :0]主机写地址ID ,表示写地址信号组的IDtag。可以联想到刚才的AXI支持乱序传输的功能
AWADDR[31:0]主机写地址。这个就是我们的主要数据
AWLEN [3 :0]主机突发式写的长度 。AXI支持突发模式,表示突发模式的数据个数,最大支持16,但是每次突发的长度需要该信号发送给从设备
AWSIZE[2:0]主机突发式写的大小每次传输的数据大小,2^(AWSIZE),既可以是1-128宽度
AWBURST[1:0]主机突发式写的类型固定式的突发读写(00)、增值式突发读写(01)、包装式突发读写(10)
AWLOCK[1:0]主机锁类型ARLOCK[1:0]或 AWLOCK[1:0]来选择独占式存取,用信号RRESP[1:0]或 BRESP[1:0]来指明独占式存取的成功与否
AWCACHE[3:0]主机Cache类型。这信号指明事务的bufferable、cacheable、write-through、write-back、allocate attributes信息
AWPROT[2:0]主机保护类型1.正常存取或者特权存取,AWPROT[0]2.安全性存取或者没有安全性存取,AWPROT[1] 3.指令存取或者数据存取,AWPROT[2]
AWVALID主机写地址有效。1表示有效,该信号会一直保持,知道AWREADY变为高个人认为这个信号也和AWADDR同步,因为该信号表示的是AWDDR数据的有效性
AWREADY设备从设备应答。1表示设备准备好,0则没准备号表示从设备能够接收地址信号了,拉高应该也就代表着地址接收成功了(或者说只要准备好标志拉高,经过一个时钟周期就默认从设备接收成功了)

3. 写数据通道

信号描述个人理解
WID[3:0]主机写IDtag,WID的值必须与AWID的值匹配联想到AXI支持乱序传输的功能;需与WID匹配,匹配才能表示地址和数据是写到相同的从设备上
WDATA[31:0]主机写数据该通道的主要信息
WSTRB[3:0]主机写阀门。标志的区间为WDATA[(8n)+7:(8n)]表示WDATA中的某个字节
WLAST主机写的最后一个数据应该是突发模式的时候表示该次突发的最后一个数据
WVALID主机写有效,1表示有效表示写数据有效,写数据已经放到总线上了
WREADY设备写就绪,1表示就绪和AWREADY同样的道理

4. 写通道响应

信号描述个人理解
BID[3:0]设备响应ID,必须与AWID匹配也是为了支持乱序传输服务(也不止于此,因为一般都是多个从设备)
BRESP[1:0]设备写响应这个信号指明事务的状态。可能有的响应:OKAY、EXOKAY、SLVERR、DECERR
BVALID设备写响应有效这个就解释了我在理解AWREADY信号时的纠结,该信号应该是辅助判断写操作是否成功
BREADY主机接收响应就绪,1表示主机继续该信号用来表示主机准备好接收响应通道的信号了,感觉就是多级反馈信号,以避免数据出错

5. 读地址通道

信号描述个人理解
ARID [3:0]主机读地址ID ,表示读地址信号组的IDtag。可以联想到刚才的AXI支持乱序传输的功能
ARADDR[31:0]主机读地址。这个就是我们的主要数据
ARLEN [3:0]主机突发式读的长度 。AXI支持突发模式,但是每次突发的长度需要该信号发送给从设备
ARSIZE[2:0]主机突发式读的大小突发式写的大小
ARBURST[1:0]主机突发式读的类型突发式写的类型
ARLOCK[1:0]主机锁类型ARLOCK[1:0]或 AWLOCK[1:0]来选择独占式存取,用信号RRESP[1:0]或 BRESP[1:0]来指明独占式存取的成功与否
ARCACHE[3:0]主机Cache类型。这信号指明事务的bufferable、cacheable、write-through、write-back、allocate attributes信息
ARPROT[2:0]主机保护类型1.正常存取或者特权存取, ARPROT[0] 2.安全性存取或者没有安全性存取, ARPROT[1] 3.指令存取或者数据存取 ARPROT[2]
ARVALID主机读地址有效。1表示有效,该信号会一直保持,知道AWREADY变为高个人认为这个信号也和ARADDR同步,因为该信号表示的是ARADDR数据的有效性
ARREADY设备从设备应答。1表示设备准备好,0则没准备号表示从设备能够接收地址信号了,拉高应该也就代表着地址接收成功了(或者说只要准备好标志拉高,经过一个时钟周期就默认从设备接收成功了)

6. 读数据通道

信号描述个人理解
RID[3:0]设备读IDtag,WID的值必须与AWID的值匹配联想到AXI支持乱序传输的功能;需与WID匹配,匹配才能表示地址和数据是读到相同的从设备上
RDATA[31:0]设备读数据该通道的主要信息
RRESP[1:0]设备读响应。指明传输的状态:OKAY(00)、EXOKAY(01)、SLVERR(10)、DECERR(11)写响应有专门的通道,但是读响应包含在读数据通道内
RLAST设备读的最后一个数据应该是突发模式的时候表示该次突发的最后一个数据
RVALID设备读有效,1表示有效表示读数据有效,读数据已经放到总线上了
RREADY主机读就绪,1表示就绪和ARREADY同样的道理

7. 低功耗接口

信号描述个人理解
CSYSREQ时钟源系统低功耗请求。此信号来自系统时钟控制器,使外围设备进入低功耗状态低功耗信号
CSYSACK外围设备低功耗请求应答
CACTIVE外围设备clock active。1表示外围设备时钟请求
CSYSREQ时钟源系统低功耗请求。此信号来自系统时钟控制器,使外围设备进入低功耗状态低功耗信号
CSYSACK外围设备低功耗请求应答
CACTIVE外围设备clock active。1表示外围设备时钟请求

http://chatgpt.dhexx.cn/article/ray9SPBb.shtml

相关文章

SoC设计与验证——总线篇——AXI总线

1. AXI总线特征 axi总线可以连接CPU的cache和其他外设,比如内存等。内存是从属设备,它接受信号,并驱动ready信号;主从设备都会驱动data信号,总线仲裁器只看request和grant信号,而忽略所有的其他信号。 详…

AXI总线简介

0.绪论 AXI是高级扩展接口,在AMBA3.0中提出,AMBA4.0将其修改升级为AXI4.0。AMBA4.0 包括AXI4.0、AXI4.0-lite、ACE4.0、AXI4.0-stream AXI4.0-lite是AXI的简化版本,ACE4.0 是AXI缓存一致性扩展接口,AXI4.0-stream是ARM公司和Xilinx公司一起提出,主要用在FPGA进行以数据为主…

calender控件应用

历控件是.net自带的控件之一,功能强大,在很多项目开发中都有用到,对于blog系统来说更是必不可少。纵是好玉也仍需雕琢,为了使它更美观实用,我们还需要对它进行二次开发。   新建一个用户控件,把cale…

CalendarPicker

CalendarPicker 项目地址:maxyou/CalendarPicker 简介:A calendar picker to select a day. Can preset a selected day. 更多:作者 提 Bug 标签: Calendar Picker Can preset a selected day. Can customize almost al…

vue-calender

​​ 实现功能 生成当月的日历&#xff0c;并且标记当天的日期在输入框中输入日期会跳转到对应的月份&#xff0c;并标记输入的日期中间两个按钮( < >)控制月份的更改&#xff0c;可以切换月份旁边两个按钮( << >>)控制月份的更改&#xff0c;可以切换年份…

Java Calender类的一些常用方法

Calendar 日期类介绍 Calendar c Calendar.getInstance();//创建实例 默认是当前时刻   c.get(Calendar.YEAR);   c.get(Calendar.MONTH);   c.get(Calendar.DATE);//获取年,月,日 当然时分秒也可以 注意这里的月份比较特殊 从0开始   c.get(Calendar.DAY_OF_WEE…

Java日期Canlender

java.util.Carlendar介绍: Calendar 类是一个抽象类&#xff0c;它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法&#xff0c;并为操作日历字段&#xff08;例如获得下星期的日期&#xff09;提供了一些方法。 Calendar 提供了一个…

再次和谐

好吧&#xff01;等我有心情自己做网站的&#xff0c;一定在国外架。 你看到下面的截图就知道和谐了。 我在搜OpenGL的函数说明时看到的。 这不是明显把人们往国外赶嘛&#xff01; "清空FTP"&#xff0c;还"永不再绑定原有域名"。 这个“非法信息”是什…

鹤城杯2021 Crypto Writes up

鹤城杯2021 Crypto Writes up 这比赛原题横行有点水&#xff0c;跟着大佬们拿了个34名。 #1 easy_crypto 附件&#xff1a; 公正公正公正诚信文明公正民主公正法治法治诚信民主自由敬业公正友善公正平等平等法治民主平等平等和谐敬业自由诚信平等和谐平等公正法治法治平等平…

社会主义核心价值观

又是一道图片题&#xff0c;那么我们按照流程先查看属性&#xff0c;在属性页面发现疑似URL密码的字符串&#xff0c;于是我们直接使用工具进行解密 解密得到社会主义核心价值观 &#xff1a;富强、民主、文明、和谐&#xff1b;自由、平等、公正、法治&#xff1b;爱国、敬业…

NSSCTF刷题wp——Crypto入门

NSSCCTF Crypto 探索 Crypto入门 [鹤城杯 2021]easy_crypto ID:453 公正公正公正诚信文明公正民主公正法治法治诚信民主自由敬业公正友善公正平等平等法治民主平等平等和谐敬业自由诚信平等和谐平等公正法治法治平等平等爱国和谐公正平等敬业公正敬业自由敬业平等自由法治和…

和谐

什么也不说了&#xff0c;看图。 现在是2009-02-11 14&#xff1a;26。 很好&#xff0c;很和谐。

使用 java-onnx 部署 PaddleOCR-v3 文本检测

文本检测&#xff1a; 文本检测(Text Detection)是计算机视觉领域的经典问题&#xff0c;该技术旨在寻求一种可靠方法作为文本识别技术的前端&#xff0c;是目标检测(Object Detection)领域的一个子问题。模型推理输出文本区域需要经过二值化之后使用 opencv 查找轮廓&#xf…

Domino M-Series 设置说明

1.标签机 M – Setup 设置方法 1.1设置IP网络访问 注: 要通过见多络的方式连接标签机时,需要设置连接的IP配置。 1.2导出标签机的硬件配置参数注: 向上的箭头,表示从硬件设备中导出硬件配置,并选择通过什么通讯方式从硬件中读取配置 1.3保存并加载硬件配置参数 注: …

红黑树做中文字符输入法

前言 输入一个字符&#xff0c;匹配中文字符的输入法&#xff0c; 例如输入a&#xff0c;输出&#xff1a;啊阿&#xff0c;然后再输入n&#xff0c;即变成an&#xff0c;输出&#xff1a;鞍氨安俺按暗岸胺案&#xff0c; 要求要有搜索的接口&#xff0c;应该如何设计呢&#…

使用字蛛font-spider压缩font.ttf文字(思源宋体)的步骤方法

在开发中常常会遇到使用字体的时候&#xff0c;但是字体一般体积都很大&#xff0c;网页加载起来会很慢&#xff0c;所以必须要讲字体文件进行压缩&#xff08;ttf字体压缩&#xff0c;抽取指定字符串&#xff0c;减少字体包大小&#xff09;。注意点&#xff1a;字蛛只能针对h…

软件架构之“道”和“术”哲学思考

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术 道为事物规律&#xff0c;术为规律之用。有道者术能长久&#xff0c;无道者术必落空&#xff0c;学术先需明道&#xff0c;方能大成&#xff0c;学术若不明道&#xff0c;终是小器。 Hello~&#xff0c;断…

如何优雅地送妹子礼物?

一颗林萌 &#xff0c;剁手已剁成哆啦A梦。 刘巍然-学酥 等 15268 人赞同 ----------------------------------------------------------------------------------------- 有转载需要请私信&#xff0c;不接受未通知作者本人直接转载的行为&#xff0c;按原创法规直接举报。 因…

HBASE基本概念以及使用场景

备注&#xff1a;本文原为项目内分享&#xff08;2017-12-18&#xff09;&#xff0c;部分内容来自于网络&#xff0c;多有借鉴之处 前言&#xff1a; 古人有言&#xff0c;欲修仙者&#xff0c;财侣法地缺一不可。所谓侣&#xff0c;即同修、道友。 修仙漫漫不归路&#xff…