AXI有五个独立的通道:
- 读地址通道
- 读数据通道
- 写响应通道
- 写数据通道
- 写地址通道
写地址信号
写地址信号都是AW开头的,明显是address write的简写。下面给大家来点想看的东西(只列举一些最重要的):
Name | Source | Description |
---|---|---|
AWADDR | Master | 写地址,突发传输的第一个地址 |
AWLEN | Master | 突发传输数据包的长度,详细要看是什么突发传输类型,AXI3和4都不一样计算方法 |
AWSIZE | Master | 单次数据包长度,具体关系看查找表 |
AWBURST | Master | 突发传输类型,大概分为INCR和WRAP |
AWVALID | Master | 主机有没有空 |
AWREADY | Slave | 从机有没有空 |
写数据信号
写地址信号都是W开头的,明显是write的简写。下面给大家来点想看的东西(只列举一些最重要的):
Name | Source | Description |
---|---|---|
WDATA | Master | 写数据 |
WSTRB | Master | 哪个字节有效 |
WLAST | Master | 最后一个数据拉高 |
WVALID | Master | 主机有没有空 |
WREADY | Slave | 从机有没有空 |
写响应信号
B开头,不知道什么东西简写
Name | Source | Description |
---|---|---|
BRESP | Slave | 写响应,说明写数据完成 |
BVALID | Master | 主机有没有空 |
BREADY | Slave | 从机有没有空 |
读地址信号
写地址信号都是AR开头的,明显是address read的简写。下面给大家来点想看的东西(只列举一些最重要的):
Name | Source | Description |
---|---|---|
ARADDR | Master | 读地址,突发传输的第一个地址 |
ARLEN | Master | 突发传输数据包的长度,详细要看是什么突发传输类型,AXI3和4都不一样计算方法 |
ARSIZE | Master | 单次数据包长度,具体关系看查找表 |
ARBURST | Master | 突发传输类型,大概分为INCR和WRAP |
ARVALID | Master | 主机有没有空 |
ARREADY | Slave | 从机有没有空 |
读数据信号
写地址信号都是R开头的,明显是read的简写。下面给大家来点想看的东西(只列举一些最重要的):
Name | Source | Description |
---|---|---|
RDATA | Slave | 读数据 |
RRESP | Slave | 读响应 |
RLAST | Slave | 最后一个数据拉高 |
RVALID | Master | 主机有没有空 |
RREADY | Slave | 从机有没有空 |
观察上面的端口,发现和AHB相比,AXI的灵魂就是VALID和READY两个握手信号。
一次读操作握手顺序如下:
一次写操作握手顺序如下:
简单突发读数据时序
简单突发写数据时序
感觉比AHB总线直观的多这时序。
具体端口、时序可以看看官方PDF