赞
踩
AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问,并更加容易就行时序收敛。
信号 | 源 | 描述 |
---|---|---|
ACLK | Clock source | 全局时钟信号 |
ARESETn | Reset source | 全局复位信号,低电平有效 |
信号 | 源 | 描述 |
---|---|---|
AWID[3:0] | 主机 | 写地址ID,这个信号是写地址信号组的ID tag。 |
AWADDR[31:0] | 主机 | 写地址 |
AWLEN[3:0] | 主机 | 突发传输长度,此长度决定突发式写所传输的数据的个数,即一次突发中传输的数据数量为AWLEN + 1。 |
AWSIZE[2:0] | 主机 | 突发传输宽度,每周期传输的数据字节数量。即DATA_WIDTH/8 = 2AWSIZE 。 指在burst传输的次数中一次传输的字节数,具体的数值等于2AWSIZE 。因此一次burst传输的总共字节数等于(burst的次数) * 2AWSIZE 。 |
AWBURST[1:0] | 主机 | 突发类型,共FIXED,INCR,WRAP三种,下面详细介绍。 |
AWLOCK[1:0] | 主机 | 总线锁信号,normal, exclusive, locked。 |
AWCACHE[3:0] | 主机 | Cache类型。这信号指明事务的bufferable、cacheable、write-through、write-back、allocate attributes信息。 |
AWVALID | 主机 | 写地址有效。1 = 地址和控制信息有效,0 = 地址和控制信息无效;该信号会一直保持,直到AWREADY变为高。 |
AWREADY | 从机 | 该信号用来指明从机已经准备好接受地址和控制信息。1 = 从机已经准备好,0 = 从机未准备好。 |
信号 | 源 | 描述 |
---|---|---|
WID[3:0] | 主机 | 写ID tag,WID的值必须与AWID的值匹配。 |
WDATA[31:0] | 主机 | 写数据 |
WSTRB[3:0] | 主机 | 写数据有效的字节线,用来表明哪8bits数据是有效的。 |
WLAST | 主机 | 突发写传输的最后一个数据 |
WVALID | 主机 | 写数据有效信号,1 = 此时数据有效,0 = 此时数据无效。 |
WREADY | 从机 | 写就绪信号,代表从机是否已经准备好接收数据了。1 = 从机已经准备好,0 = 从机未准备好。 |
信号 | 源 | 描述 |
---|---|---|
BID[3:0] | 从机 | 响应ID,这个数值必须与AWID的数值匹配。 |
BRESP[1:0] | 从机 | 写响应。这个信号指明写事务的状态。可能有的响应:OKAY、EXOKAY、SLVERR、DECERR。 |
BVALID | 从机 | 写响应有效。1 = 写响应有效,0 = 写响应无效。 |
BREADY | 主机 | 主机接受响应就绪信号 。该信号表示主机是否能够接受响应信息。1 = 主机就绪,0 = 主机未就绪。 |
信号 | 源 | 描述 |
---|---|---|
ARID[3:0] | 主机 | 响应ID,这个数值必须与AWID的数值匹配。 |
ARADDR[31:0] | 主机 | 读地址。 |
ARLEN[3:0] | 主机 | 突发传输长度,此长度决定突发式写所传输的数据的个数,即一次突发中传输的数据数量为AWLEN + 1。 |
ARSIZE[2:0] | 主机 | 突发传输宽度,每周期传输的数据字节数量。即DATA_WIDTH/8 = 2AWSIZE 。 |
ARBURST[1:0] | 主机 | 突发式读类型。共FIXED,INCR,WRAP三种,下面详细介绍。 |
ARLOCK[1:0] | 主机 | 总线锁信号,normal, exclusive, locked。 |
ARCACHE[3:0] | 主机 | Cache类型。这信号指明事务的bufferable、cacheable、write-through、write-back、allocate attributes信息。 |
ARPROT[2:0] | 主机 | 保护类型。 |
ARVALID | 主机 | 读地址有效。信号一直保持不变,直到ARREADY为高。1 = 地址和控制信息有效,0 = 地址和控制信息无效。 |
ARREADY | 从机 | 从机接收读地址就绪。指明从机已经准备好接收读地址了。1 = 从机就绪,0 = 从机未就绪。 |
信号 | 源 | 描述 |
---|---|---|
RID[3:0] | 从机 | 读ID tag。RID的数值必须与ARID的数值匹配。 |
RDATA[31:0] | 从机 | 读数据。 |
RRESP[1:0] | 从机 | 读响应信号。这个信号指明读传输的状态:OKAY、EXOKAY、SLVERR、DECERR。 |
RLAST | 从机 | 读事务传送的最后一个数据。 |
RVALID | 从机 | 读数据有效。1 = 读数据有效。0 = 读数据无效。 |
RREADY | 主机 | 主机接收读数据信号是否就绪。1 = 主机就绪,0 = 主机未就绪。 |
全部5个通道使用相同的VALID/READY握手机制传输数据及控制信息。传输源产生VLAID信号来指明何时数据或控制信息有效。而目地源产生READY信号来指明已经准备好接受数据或控制信息。传输发生在VALID和READY信号同时为高的时候。
VALID先变高READY后变高。时序图如下,数据传输在箭头处发生。
READY先变高VALID后变高。时序图如下,数据传输在箭头处发生。
VALID和READY信号同时变高。时序图如下,数据传输在箭头处发生。
两种关系必须保持:
5.3.1 写事务握手信号之间的关系:
5.3.2 读事务握手信号之间的关系:
4k边界对齐的最大原因是系统中定义一个page大小为4kBytes,为了更好设定每个slave的访问attribute,就给一个slave划分4k空间。AXI协议中一次突发不能越过4K边界是为了避免一笔burst交易访问两个slave(每个slave都是4k对齐),如果一次burst传输访问大于4k,则可能会造成地址从slave1增加了slave2上,slave2又不响应,导致传输无法完成。
AXI协议定义了三种突发式读写的类型:固定式的突发读写、增值式突发读写、包装式突发读写。用信号ARBURST或AWBURST来选择突发式读写的类型。具体如下:
名称 | 描述 |
---|---|
AWID | 写地址群组信号 |
WID | 主机传送一个WID去匹配与地址相一致的AWID |
BID | 从机会传送BID去匹配与AWID和WID相一致的事务 |
ARID | 读地址群组信号 |
RID | 从机传送RID去匹配与ARID相一致的事务 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。