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

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

1. AXI总线特征

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

详情参考:AXI学习笔记-11.AXI总线结构2.AXI接口时序3.数据结构4.传输特性 - 云+社区 - 腾讯云

AXI总线有5个通道,分别为写请求、写数据、写响应、读请求、读响应

  • 写事务和读事务的过程

对于总线上的设备来说,一个写过程为:master发出写请求,则slave接收写请求并发出写响应,master接收写响应,然后发出写数据,接着slave接收写数据;
一个读过程为:master发出读请求,则slave接收读请求并发出读响应,然后master接收读响应

  • AXI总线中的握手机制

无论是写事务还是读事务,通信的双方都可分为发送方和接收方(与master和slave概念区分,二者都可以是发送方和接收方),而其中承担握手机制的主要是valid和ready信号(二者均是高电平有效)。

发送方置高valid时:表示发送方已经将地址,数据,控制信息准备就绪,并保持在总线上。
接收方置高ready时:表示接收方已经做好接收地址,数据和控制信息的准备。
当双方的valid和ready信号同时为高时,在时钟的上升沿完成一次数据传输。所有数据传输完毕后,双方同时置低自己的信号。

注意:

  1. ready信号只由接收方自身决定,当然编程时可综合考虑发送方的valid信号。

具体时序图可见:AXI总线协议时序_yundanfengqing_nuc的专栏-CSDN博客_axi时序

  • 突发传输机制

参考链接1:ARM系列 -- AXI(三)

在xxburst=INCR模式下,每次传输的数据是 <ax_len>+1 个 <size>大小的数据传输,其中有效字节为<strb>索引号的部分。

  • axcache的字段定义和使用

参考链接:深入 AXI4 总线(四)传输事务属性(draft) - 知乎

AWCACHE[3] 信号置高表示本主机先前的写事务可能已经将该位置上的数据缓冲于CPU下的cache中,首先在 cache 中查找对应表项。当 AWCACHE[3] 信号置低,但 AWCACHE[2] 置高时,该位置上的数据可能因为其他主机的操作、或者本机的读事务缓存于 cache 中,同样需要首先查找 cache。

 

同样,ARCACHE[3]信号拉高表示该地址的数据可能被其他主机的操作、或者两外一个主设备的写事务缓存于cache中,首先要到cache中查找该地址的数据,如果ARCACHE[2]同样拉高,也必须查询cache,如果ARCACHE[2]拉低,则不需要到cache中查询

2. AXI总线主要信号定义

以master的信号为例,包括主动发出和被动接收的信号:

aw_id[n: 0]输出写请求标识号
aw_addr[m: 0]输出写请求地址
aw_len[3: 0]输出写请求数据长度
aw_size[2: 0]输出写请求数据宽度
aw_burst[1: 0]输出写请求类型
aw_valid输出写请求有效信号
aw_ready输入写请求接受准备好信号
id[n: 0]输出写数据标识号,与aw_id对应
w_data[j: 0]输出写数据
w_strb[k: 0]输出写数据屏蔽信号,1位对应8个数据位
w_valid输出写数据有效信号
w_ready输入写数据接受准备好信号
写回复:针对整个写数据的操作,而不是写某个数据的单独操作
d[n: 0]输入写响应标识号,与aw_id对应
b_resp[1: 0]输入写响应状态
b_valid输入写响应有效信号
b_ready输出写响应接受准备好信号
_id[n: 0]输出读请求标识号
ar_addr[m: 0]输出读请求地址
ar_len[3: 0]输出读请求数据长度
ar_size[2: 0]输出读请求数据宽度
ar_burst[1: 0]输出读请求类型
ar_valid输出读请求有效信号
ar_ready输入读请求接受准备好信号
id[n: 0]输入读响应标识号,与ar_id对应
r_data[j: 0]输入读的数据
r_resp[1: 0]输入读响应状态
r_valid输入读响应有效信号
r_ready输出读响应接受准备好信号

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

相关文章

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

CalendarPicker

CalendarPicker 项目地址&#xff1a;maxyou/CalendarPicker 简介&#xff1a;A calendar picker to select a day. Can preset a selected day. 更多&#xff1a;作者 提 Bug 标签&#xff1a; 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…

机器学习挑天赋吗?为什么别人一点就透,为什么我就不行?

大家好&#xff0c;我是为人造的智能操碎了心的智能禅师。 虽然禅师身在边疆&#xff0c;但是心系人工智能头条的粉丝们。 之前我们的特约作者李烨跟大家分享了《她在机器学习踩过的坑&#xff0c;现在告诉你怎么跳过去》。 有同学看了以后&#xff0c;发出了直击灵魂的拷问&am…