AXI简介
AXI(Advanced eXtansible Interface)是一种总线协议, 一种面向高性能、高带宽、低延迟的片内总线。
AXI特点
1、单向通道体系结构;2、支持多项数据交换;3、独立的数据和地址通道。
AXI协议与基础事务
- 5个通道
- read address channel、write address channel
- read data channel、write data channel
- write response channel
-
事务的地址和控制信息包含在地址通道中,用来描述传输数据的性质
-
读事务结构图,Master接口从Slave接口读取数据:
-
写事务结构图,Master接口往Slave接口写数据,注意写数据时有一个写响应通道:
-
突发式读的时序图:
-
重叠式读的时序图:
-
突发式写的时序图:
AXI信号描述
-
全局信号
-
写地址通道信号
-
写数据通道信号
- 写响应通道信号
-
读地址通道信号
-
读数据通道信号
-
低功耗接口信号
AXI主从握手描述
握手过程的时序
VALID信号指明何时数据或控制信息有效,即VALID有效时为要传输的数据或控制信息,长度与VALID长度一致;READY信号指明已经准备好接受数据或控制信息。信息传输发生在VALID和READY同时有效的时候:
通道之间的关系
必须保持的两种关系
- 读数据必须总是跟在其数据相关联的地址之后
- 写响应必须总是跟在其相关的写事务的最后出现
通道握手信号的依赖性
-
读事务
单箭头表示前后没有依赖关系,双箭头表示前后有依赖关系:
-
写事务
-
写响应
AXI突发式读写
AXI地址的结构
-
突发长度
ARLEN[7:0]决定读传输的突发长度,AWLEN[7:0]决定写传输的突发长度。AXI3只支持(1-16)次的突发传输(Burst_length=AxLEN[3:0]+1,即b1111=d15),AXI4扩展突发长度支持INCR突发类型为(1-256)次传输,对于其他的传输类型依然保持116次突发传输(Burst_Length=AxLEN[7:0]+1,即b11111111=d255)。
-
突发大小
ARSIZE或AWSIZE信号指定每一个时钟节拍所传输的数据的最大位数
-
突发读写的类型
固定式的突发读写、增值式突发读写、包装式突发读写。用信号ARBURST或AWBURST来指定类型
-
地址计算公式
信号定义:
参考文献
《AXI总线中文详解》