AXI 总线学习记录

AMBAaxi的特点:

​ 适合高带宽和低延迟的设计;

​ 能够在不适用复杂桥的情况下确保高频操作;

​ 满足广泛组件的接口需求;

​ 适合于带有高初始化延迟的内存控制器;

​ 为互联架构的实现提供灵活性;

​ 对单一地址突发传输,AXI4 Full最大支持256数据传输周期。

AXI4三种类型:

​ AXI4 Full,高性能“存储器映射”(主机对从机读写操作时,指定目标地址,这个地址对应系统存储空间)。

​ AXI4 Lite,低存储量存储器映射。

​ AXI4 Stream(St),高速流数据接口。

AXI4.0 FULL特征:
  1. 独立的地址和数据总线。
  2. 独立的读写通道。【双向传输】
  3. 支持不对齐数据传输,使用字节选通。
  4. 使用基于突发的数据的数据传输。
  5. 相比3.0的改变,比如删除wid信号,数据只能以in order形式。但可以通过IP核兼容。
AXI的事务过程内容:

​ 共5个通道,RA、RD、WA、WD、WR(write response channel);
​ 每一个事务都有地址和控制信息在地址通道里(描述被传输数据的性质);
​ AXI读写事务的基本模型;
​ 通道之间相互独立且各自包含信息信号和双路的valid、ready握手信号;
​ 读数据和写数据通道包括last信号指示最后一个数据;
​ 写数据通路传送主机向设备的写数据,每八个数据有一个byte lane,用来指明数据总线上面的哪些byte有效;
​ 只有当valid和ready同时为高时,地址和数据有效;
​ 突发式:LAST信号和最后一个数据一起传递。

信号描述:
包括全局信号、写地址通道信号、写数据通道信号、写响应通道信号、读地址通道信号、读数据通道信号、低功耗接口信号;

​ 32位数据总线、4位写数据闸门、4位ID段;
​ AXI允许不同IDtag乱序完成,但相同tag必须有序完成;
​ 全局信号有ACLK、ARESETn;
​ 通道信号都包括ID段;
​ 写地址通道信号除基本的之外,还有AWLEN[2:0]、AWSIZE[2:0]、AWBURST[1:0](写类型)、AWCACHE[3:0](cache类型,指明事务的信息)、AWLOCK[1:0]、AWPROT[2:0](保护类型)等;
​ 写数据通道信号还有WSTRB[3:0](写阀门,WSTRB[n]标志区间为WDATA[((8n+7):8n]);
​ 写响应通道信号;
​ 读地址通道信号还有ARLEN[2:0]、ARSIZE[2:0]、ARBURST[1:0](读类型)、ARLOCK[1:0]、ARCACHE[3:0](cache类型)、ARPROT[2:0];
​ 读数据通道信号里就有RRESP[1:0];
​ 低功耗接口信号有CSYSREQ(来自系统时钟控制器,使外围设备进入低功耗状态)、CSYSACK、CACTIVE(clock active)。

通道之间的关系:

地址、读、写和写响应通道之间的关系是灵活的;
但有两种关系要保持
(1)读数据必须总是跟在与其数据相关联的地址之后。
(2)写响应必须总是跟在与其相关联的写事务的最后出现。

握手信号之间依赖性——读事务和写事务

手册中,can系列看多了觉得都是废话,但最好还是按照规范来写;
手册中的must是一定要遵守的。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pu3P8TUJ-1649152977117)(E:\Desktop\笔记\image-20210709151252458.png)]


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dTcn2ArP-1649152977118)(E:\Desktop\笔记\image-20210709151658128.png)]

(单箭头指向的信号可以提前或滞后;双箭头指向的信号必须滞后)

AXI突发式读写类型:

突发式读写对齐4KB;
信号AWLEN或信号ARLEN指定每次突发式读写的个数;
ARSIZE或AWSIZE指定每个时钟节拍传输数据的最大位数,最大位数2^size字节;
AXI协议定义了三种突发式读写的类型:
FIXED固定式地址固定,每次传输地址不变,例如FIFO;
INCR增值式地址增加一个固定值(由突发大小决定);
WRAP回环式地址类似增值式,但在地址接近边界时会回到0地址处(我觉得更好翻译成环绕式)

AXI协议中有一些专门含义的用词:具体见手册,下面列出一些代表性的

byte lanes的数量用Data_Bus_Bytes表示;
Aligned_Address是对齐版本的起始地址(注意:Start_Address与size对齐,
而Aligned_Address = (INT(Start_Address / Number_Bytes))x Number_Bytes);
Address_N是一个burst里transfer N的地址(疑问:Address_1和Address_2不会冲突吗)
Lower_Byte_Lane是传输最低有效字节,Upper_Byte_Lane是最高有效字节;

Cache类型:

AWCACHE指定哪个部件提供写响应,如果被指定为bufferable则接收桥或系统级的cache提供的写响应;如果是non-bufferable,则写回应必须由最终目的源提供;
AWPROT[2:0]或ARPROT[2:0]提供三种级别的存取保护;

AXI独占式存取和锁存取:

ARLOCK[1:0]或AWLOCK[1:0]指定;
RRESP[1:0]或BRESP[1:0]指明独占式存取是否成功;
是否支持要看设备,具体实现要看手册;

AXI读写事务的设备响应:

读事务响应和数据一起发送给主机,而写事务有写响应通道;
响应类型4种,OKAY、EXOKAY、SLVERR、DECERR,由RRESP或BRESP指明;
AXI要求一个传输事务中所有数据都必须传输完成,即使是有错误状态发生;

AXI用IDtags来处理多地址和乱序传输:

5种事务IDs,AWID、WID、BID、ARID、RID;
主机可以使用一个事务的ARID或AWID段提供的附加信息关于主机需要的排序:
不同主机、或同一主机的不同ID事务,没有先后顺序限制
相同数值的AWID要按照顺序依次写入主机发送的地址
相同数值的WRID读事务,若来自相同设备则按照相同的地址顺序接收
相同WRID读事务,若来自不同设备则interconnect确保读数据按照主机发送的相同地址的顺序返回
相同的AWID和ARID的读写事务之间没有先后顺序限制,若主机要求顺序,那么确保第一次事务完成后再执行第二个事务
当一个主机接口与interconnect相连时,interconnect会在信号ARID、AWID、WID段加一位,每一个主机端口都是独一无二的;
对于读数据, interconnect附加一位到 RID 段中,用来判断哪个主机端口读取数据;Interconnect会移除 RID 段中的这一位在将 RID 的值送往正确的主机端口之前。

AXI的数据总线mixed-endian transfers的实现。

握手机制:

​ 所有通道通过valid和ready握手来处理传输地址、数据、控制信息。

​ 双向握手使传输数据时速率被控制,当valid和ready同时为高时发生传输。

​ AXI的不对齐握手传输。

​ valid信号高电平时,地址、数据、控制信息要保持不变。

AXI时钟和复位信号:

​ ACLK的上升沿是所有的输入信号的采样;输出信号在上升沿改变。

复位期间:

​ 主机接口ARVALID、AWVALID、WVALID信号置低
​ 设备接口RVALID、BVALID信号置低
​ 其他信号为任意值
主机接口必须在ARESETn信号置高后的第一个ACK上升沿里将ARVALID、AWVLAID、WVALID置高。

AXI低功耗接口。

AXI的信号

信号描述
ACLKClock source全局时钟信号
ARESETnReset source全局复位信号
AWID[3:0]主机写地址ID,信号组的ID tag
AWADDR[31:0]主机写地址,指定突发传输下第一个数据地址
后面的地址根据突发类型和数据量来计算
AWLEN[3:0]突发长度,相关的Burst_Length有计算公式
AWSIZE[2:0]突发大小,指在突发传输模式下单个数据的数据量
1、2、4、8、16、32、64、128字节/传输
AWBURST[1:0]主机突发类型
AWLOCK[1:0]
AWCACHE[3:0]如0010不缓存
AWPROT[2:0]
AWVALID
AWREADY从机
WID[3:0]主机
WDATA[31:0]
WSTRB[3:0]表示当前数据哪个字节有效(类似掩码)
WLAST
WVALID指明通道写地址和控制信息是否有效
WREADY从机
BID[3:0]从机
BRESEP[1:0]从机写响应,指明从机状态
BVALID从机
BREADY主机
ARID[3:0]主机
ARADDR[31:0]
ARLEN[3:0]
ARSIZE[3:0]
ARBURST[1:0]
ARLOCK[1:0]
ARCACHE[3:0]
ARPROT[2:0]
ARVALID主机
ARREADY从机
RID[3:0]从机
RDATA[31:0]
RRESP[1:0]从机表示读操作是否完成
RLAST
RVALID从机
RREADY主机

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I20m1E2M-1649152977118)(E:\Desktop\笔记\image-20210709155418288.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-clNOQQkt-1649152977118)(E:\Desktop\笔记\image-20210709155439597.png)]

         |

| RREADY | 主机 | |

[外链图片转存中…(img-I20m1E2M-1649152977118)]

[外链图片转存中…(img-clNOQQkt-1649152977118)]

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值