AXI4_full协议详解
AXI4-full协议介绍
AXI4.0-full
包含突发控制信号,所以可以进行突发传输,在只指定一次地址后,可以一次传输多达256个数据(数据的宽度取决于带宽)。主要用于往DDR或者OCM中写入大量数据时使用。
信号线详细描述
下面信号包含五个通道的所有信号。其中每个通道都有其自己的双向握手机制信号线xxVALID
和xxREADY
,这俩信号线的介绍,详见AXI总线介绍。
- 全局信号
- ACLK 全局时钟信号,在上升沿时对信号采样。所有的输入信号都通过上升沿采集,所有的输出信号都在上升沿时变化。
- ARESETn 全局复位信号,低电平有效。在复位期间,所有的
xxVALID
信号必须复位为低电平。其他的信号可以是任意值。
- 写地址通道信号
- 主机(master)控制的信号
- AWID 交易标识符,乱序时使用。初学者就先默认为0吧。
- AWADDR 地址信号线,传输地址信息。
- AWLEN 指定突发写长度,Burst_Length = AxLEN[7:0] + 1。如要一次传输16个数据,那么
AWLEN=15
.注意事项如下- 突发事件不能跨越4KB地址边界。即起始地址到结束地址(AWADDR + AWLEN * (
WDATA
位宽/4))都必须在0xxxxxx000-0xxxxxxFFF。也就是x
代表的位必须一致。 AWBURST
类型为INCR
时,支持1-256长度的传送。AWBURST
类型为其他时,支持1-16长度的传送。
- 突发事件不能跨越4KB地址边界。即起始地址到结束地址(AWADDR + AWLEN * (
- AWSIZE 每次传输的字节,和
WDATA
宽度相关。如WDATA
为32位。那么AWSIZE=log2(32/8)=2
。 - AWBURST 突发类型
- FIXED: 0 固定模式,Xilinx不建议使用此模式。
- INCR: 1 递增模式(Incrementing),递增值依赖于传送宽度。比如数据总线
AWADDR
为32位,那么next_AWADDR_value = current_AWADDR_value + 32/8; - WRAP: 2
- Reserved: 3
- AWLOCK 总线锁信号,可提供操作的原子性。一般赋值为0。
- AWCACHE 内存类型。xilinx建议赋值为
4'b0011
。 - AWPROT 访问权限信号线,xilinx建议赋值为
3'b000
.xilinx IP 一般忽略此信号。 - AWQOS 服务质量,xilinx使用其值
0b0000
.表示接口不参与任何QoS方案。AXI4协议没有指定QoS标识符的确切使用。该规范建议将AxQOS用作相关的写或读事务的优先级指示器。更高的值表示更高的优先级事务。 - AWUSER 用户自定义信号。ip交互中一般用不到。赋值为1.
- AWVALID
- 从机(slave)控制的信号
- AWREADY
- AWREGION 区域标志,能实现单一物理接口对应的多个逻辑接口。xilinx主机接口没有此信号线,从机有。初学者就默认为0吧。
- 主机(master)控制的信号
- 写数据通道信号
- 主机(master)控制的信号
- WDATA 数据信号线,传输数据信息。
- WSTRB 数据总线有效字节控制。比如32位的总线,WSTRB等于
4'b0010
,那么代表WDATA[15:8]
中的数据有效。其他无效。如果要求WDATA[31:0]
32位全有效,那么WSTRB就应该等于4'b1111
. - WLAST 置高表示突发数据中的最后一个数据。
- WUSER AXI4协议留给用户自定义的,协议本身没有定义功能。Xilinx在ip核的使用上也没有实现。
- WVALID
- 从机(slave)控制的信号
- WREADY
- 主机(master)控制的信号
- 写应答通道信号
- 主机(master)控制的信号
- BREADY
- 从机(slave)控制的信号
- BID 交易标识符
- BRESP
- OKEY 0 正常访问成功
- EXOKEY 1
- SLVERR 2 从机错误
- DECERR 3 解码错误,比如没有从机的地址。
- BUSER AXI4协议留给用户自定义的,协议本身没有定义功能。Xilinx在ip核的使用上也没有实现。
- BVALID
- 主机(master)控制的信号
- 读地址通道信号
- 主机(master)控制的信号
- ARID 读地址通道信号的意义跟写地址通道的相似。
- ARADDR
- ARLEN
- ARSIZE
- ARBURST
- ARLOCK
- ARCACHE
- ARPROT
- ARQOS
- ARUSER
- ARVALID
- 从机(slave)控制的信号
- ARREADY
- ARREGION
- 主机(master)控制的信号
- 读数据通道信号
- 从机(slave)控制的信号
- RREADY
- 从机(master)控制的信号
- RID 读数据通道信号的意义跟写数据通道的相似。
- RDATA
- RRESP
- RLAST
- RUSER
- RVALID
- 从机(slave)控制的信号
读写时序和握手时序
关于AXI4.0-full
的读写时序和握手时序请参看AXI总线介绍。
AXI-lite主从交互仿真
- vivado创建AXI外设。
- 添加主从接口。
- 编写仿真tb文件。仿真相关的文件见附件axi-full.zip。
下图是AXI-full主从交互的时序图,主机先通过总线写数据,然后通过读总线将其写入的数据读了出来。图中画圆圈的地方是每个通道第一次握手的时序(后续的握手时序没有标记)。
文档参考
- IHI0022G_amba_axi_protocol_spec.pdf
- IHI0051A_amba4_axi4_stream_v1_0_protocol_spec.pdf
- ug761_axi_reference_guide.pdf
关于技术交流
此处后的文字已经和题目内容无关,可以不看。
qq群:825695030
微信公众号:嵌入式的日常
如果上面的文章对你有用,欢迎打赏、点赞、评论。
AXI4_full协议详解相关推荐
- HTTP协议详解(真的很经典)
转自:http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx Author :Jeffrey 引言 HTTP是一个属于应用层的面向对象的 ...
- Http 协议详解笔记
HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1.0的第 ...
- Http协议 详解(转载)
http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx 引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分 ...
- ARP协议详解之ARP动态与静态条目的生命周期
ARP协议详解之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自动添加和删除. q 每个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉.所以,生 ...
- ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御
ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3 ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...
- HTTP协议详解 转自小坦克
HTTP协议详解 转自小坦克 -- 有些文章是引用别人的,为了方便我以后或不再备注;引用目的是因为直接网摘里面的地址经常被重置,找不到原来的文章 当今web程序的开发技术真是百家争鸣,ASP.NET, ...
- nbns协议_网络协议详解1 - NBNS
NetBIOS 简介 NetBIOS,Network Basic Input/Output System的缩写,一般指用于局域网通信的一套API,相关RFC文档包括 RFC 1001, RFC 100 ...
- 转:SSL 握手协议详解
SSL 握手协议详解 RSA作为身份认证,ECDHE来交换加密密钥,AES/DES等作为加密. 如果RSA来加解密,那么身份认证后,直接用认证后的RSA公钥解密.不需要再额外交换加密密钥了. 相关报文 ...
- 【HTTP协议】超详细的HTTP协议详解
基本介绍 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/ ...
最新文章
- 「每周CV论文推荐」 初学深度学习活体与伪造人脸检测必读的文章
- 不重启iis的情况下切换iis的.net版本
- SCALA中类的继承
- chrome浏览器无法上网_低调使用,内置特殊功能的浏览器。。
- QUIC实战(三) letsencrypt证书申请和自动续期
- 使用JDK的密码流的加密怪癖(以及如何做)
- Hystrix中的批量(折叠)请求
- Struts2的工作原理及工作流程
- string最大容量_string初步使用
- 4-3:TCP协议之UDP协议
- linux sonar 安装教程,Linux下为Sonarqube安装中文插件
- vue页面中样式修改子组件的样式
- navicat win32注册机下载 | 绿色版
- 【JAVA复习系列】第一部分
- bada千字文应用程序简介
- tamami来解答国内防辐射服为什么越卖越火
- 关于windows微软账号登陆不进去的问题
- 九年级计算机课程教案,九年级信息技术 5.2.3《计算机网络》教案
- 大数据分析培训好就业吗
- qt制作软键盘(虚拟键盘)
热门文章
- 记录:mysql行合并列合并显示
- tplink 2.4g弱信号剔除_关于路由器的2.4G以及5G,你不知道的那些事
- python 分隔符截取字符串_python针对不定分隔符切割提取字符串的方法
- 2021年美容师(中级)实操考试视频及美容师(中级)作业模拟考试
- Rust Web入门(六):服务器端web应用
- 【Dopi Micropython 视觉AI应用开发教程】【实验5】MJPEG编码
- 真阳性假阳性假阴性分割可视化
- ClickHouse学习笔记(二):执行计划、建表优化、语法优化规则、查询优化、数据一致性
- Auto.js进行自动化熄灭屏幕操作(超简单版本)
- Java是什么?(零基础也能轻松看懂)