AXI总线介绍课件.ppt

上传人:小飞机 文档编号:2139179 上传时间:2023-01-17 格式:PPT 页数:47 大小:1.41MB
返回 下载 相关 举报
AXI总线介绍课件.ppt_第1页
第1页 / 共47页
AXI总线介绍课件.ppt_第2页
第2页 / 共47页
AXI总线介绍课件.ppt_第3页
第3页 / 共47页
AXI总线介绍课件.ppt_第4页
第4页 / 共47页
AXI总线介绍课件.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《AXI总线介绍课件.ppt》由会员分享,可在线阅读,更多相关《AXI总线介绍课件.ppt(47页珍藏版)》请在三一办公上搜索。

1、1,AXI Introduction,ICD/SID Bob Qin(覃海洋)2015/12/31,2,Topic 1,What is the AXI?,3,AXI介绍,AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA3.0(AHB是在2.0中提出)协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线.,4,AXI特点,1.它的地址/控制和数据相位是Sperated2.支持Unaligned的数据传输3.同时在Burst传输中,只需要首地址4.单向通道体系结构提高传输效率4.同时分离的读、写数据通道5.并支持outs

2、tanding传输访问和Out of order访问,Topic 2,What constitutes the AXI?,5,6,AXI通道组成部分,Read address channel 添加描述Write address channelRead data channelWrite data channelWrite response channel每一个AXI传输通道都是单方向的,Read transaction structure,7,2 Channels,Write transaction structure,8,3 Channels,Handshake mechanism,英文叙述

3、并强调传输地址信息和数据都是在VALID和READY同时为高时有效,9,10,AXI信号(1),Global Signal:,AXI信号(2),11,Write address channel:,AXI信号(3),12,Write data channel:,AXI信号(4),13,Write response channel:,AXI信号(5),14,Read address channel:,AXI信号(6),15,Read data channel:,AXI信号(7),16,Low power interface:,Topic 3,How can you make a transfer

4、on AXI?,17,18,Basic AXI transfer,Read burst:,19,Basic AXI transfer,Overlapping read burst:,20,Basic AXI transfer,Write burst:,21,Basic AXI transfer,AXI协议支持乱序传输。他给每一个通过接口的事务一个IDtag。协议要求相同ID tag的事务必须有序完成,而不同ID tag可以乱序完成,Topic 4,Something about handshake mechanism,VALID and READY are important.,22,VALI

5、D先变高READY后变高,在箭头处信息传输发生。,23,READY先变高VALID后变高,同样在箭头处信息传输发生。,24,VALID和READY信号同时变高,在这种情况下,信息传输立马发生,如图箭头处指明信息传输发生,25,26,Relationship among channels,Read transaction:,1、设备可以在ARVALID出现的时候在给出ARREADY信号,也可以先给出ARREADY信号,再等待ARVALID信号。2、但是设备必须等待ARVALID和ARREADY信号都有效才能给出RVALID信号,开始数据传输。,27,Relationship among chan

6、nels,Write transaction:,1、主机必须不能够等待设备先给出AWREADY或WREADY信号信号后再给出信号AWVALID或WVLAID。2、设备可以等待信号AWVALID或WVALID信号有效或者两个都有效之后再给出AWREADY信号。3、设备可以等待AWVALID或WVALID信号有效或者两个信号都有效之后再给出WREADY信号。,Attention:,地址、读、写和写响应通道之间的关系是灵活的。例如,写数据可以出现在接口上早于与其相关联的写地址。也有可能写数据与写地址在一个周期中出现。两种关系必须被保持:(1)读数据必须总是跟在与其数据相关联的地址之后。(2)写响应必

7、须总是跟在与其相关联的写事务的最后出现。,28,29,Topic 5,Something about burst transaction.,30,Attention:,1、突发式读写的地址必须以4KB对齐。2、信号AWLEN或信号ARLEN指定每一次突发式读写所传输的数据的个数。3、ARSIZE信号或AWSIZE信号指定每一个时钟节拍所传输的数据的最大位数;需要注意的是任何传输的SIZE都不能超过数据总线的宽度。4、AXI协议定义了三种突发式读写的类型:固定式的突发读写、增值式突发读写、包装式突发读写。用信号ARBURST或AWBURST来选择突发式读写的类型,31,Burst 方式,1、固定

8、式突发读写是指地址是固定的,每一次传输的地址都不变。这样的突发式读写是重复的对一个相同的位置进行存取。例如FIFO。2、增值式突发读写是指每一次读写的地址都比上一次的地址增加一个固定的值。包装式突发读写跟增值式突发读写类似。包装式突发读写的地址是包数据的低地址当到达一个包边界。3、包装式突发读写有两个限制:1起始地址必须以传输的size对齐。2突发式读写的长度必须是2、4、8或者16,32,地址计算公式,Start_Address 主机发送的起始地址Number_Bytes 每一次数据传输所能传输的数据byte的最大数量Data_Bus_Bytes 数据总线上面byte lanes的数量Ali

9、gned_Address 对齐版本的起始地址Burst_Length 一次突发式读写所传输的数据的个数Address_N 每一次突发式读写所传输的地址数量,范围是2-16Wrap_Boundary 包装式突发读写的最低地址Lower_Byte_Lane 传输的最低地址的byte laneUpper_Byte_Lane 传输的最高地址的byte laneINT(x)对x进行向下取整下面是计算公式:Start_Address=ADDRNumber_Bytes=2SIZEBurst_Length=LEN+1Aligned_Address=(INT(Start_Address/Number_Bytes

10、)x Number_BytesAddress_1=Start_AddressAddress_N=Aligned_Address+(N 1)x Number_BytesWrap_Boundary=(INT(Start_Address/(Number_Bytes x Burst_Length)x(Number_Bytes x Burst_Length)如果有Address_N=Wrap_Boundary+(Number_Bytes x Burst_Length),则后面的公式成立Address_N=Wrap_Boundary。第一次突发式读写:Lower_Byte_Lane=Start_Addre

11、ss-(INT(Start_Address/Data_Bus_Bytes)x Data_Bus_BytesUpper_Byte_Lane=Aligned_Address+(Number_Bytes-1)-(INT(Start_Address/Data_Bus_Bytes)x Data_Bus_Bytes除了第一次读写之后的读写:Lower_Byte_Lane=Address_N(INT(Address_N/Data_Bus_Bytes)x Data_Bus_BytesUpper_Byte_Lane=Lower_Byte_Lane+Number_Bytes 1DATA(8 x Upper_Byt

12、e_Lane)+7:(8 x Lower_Byte_Lane)。,Topic 6,Exclusive transaction and Locked transaction and so on,33,ARCACHE3:0和AWCACHE3:0,在一些情况下,信号AWACAHE可以用来确定哪个部件来提供写响应。如果写事务被指定为bufferable,那么他接受来自桥或者系统级的cache提供的写响应。如果事务被指定为non-bufferable,那么写响应必须有最终目的源提供。,34,AWPROT和ARPROT,正常存取或者特权存取,ARPROT0 和 AWPROT0安全性存取或者没有安全性存取,

13、ARPROT1 和 AWPROT1指令存取或者数据存取 ARPROT2 和 AWPROT2,35,ARLOCK1:0和信号AWLOCK1:0,36,1、我们通过信号ARLOCK1:0或AWLOCK1:0来选择独占式存取,用信号RRESP1:0或BRESP1:0来指明独占式存取的成功与否。2、主机在请求独占式存取时,设备会返回两个响应分别是EXOKAY和OKAY。EXOKAY是指设备支持独占式存取,而OKAY是指设备不支持独占式存取。、3、如果一个设备不支持独占式存取,可以忽略信号ARLOCK1:0和AWLOCK1:0。他必须提供OKAY响应对正常式存取和独占式存取。如果一个设备要支持独占式存取

14、则必须有硬件监视器。4、通过信号ARLOCK1:0或信号AWLOCK1:0对事务加锁,需要确定只允许主机存取设备区域直到一个未加锁的事务从同一个主机完成。此处推荐锁存取只用来支持legacy devices。5、推荐遵循下面两天建议,但是不强制:(1)保持所有锁事务序列都在相同的4KB地址区域内。(2)限制用琐事务序列对两个事务加锁。,37,RRESP1:0和BRESP1:0 response,AXI协议对读事务和写事务都有响应。对于读事务,读响应与读数据一起发送给主机,而写事务将写响应通过写响应通道传送。AXI协议的响应类型有OKAY、EXOKAY、SLVERR、DECERR。通过信号RRE

15、SP1:0和BRESP1:0来编码响应信号,具体如下图:,协议规定请求的需要传输的数据数量必须被执行,即使有错误报告。在一次突发式读写的剩余数据不会被取消传输,即使有单个错误报告。AXI协议的四种响应类型:正常存取成功、独占式存取、设备错误、译码错误。AXI协议要求,在一个传输事务中的所有数据必须传输完成,即使有错误状态发生。,38,Topic 7,How to make a out-of-order transaction?,39,out-of-order transaction(1),本章描述AXI协议用事务ID tags来处理多地址和乱序传输。1、下面介绍5中事务IDs:AWID 这个I

16、D tag是写地址群组信号。WID 这个是写ID tag在写事务中,与写数据在一起,主机传送一个WID去匹配与地址相一致的AWID。BID 这个ID tag是写响应事务中。设备会传送BID去匹配与AWID和WID相一致的事务。ARID 这个ID tag是读地址群组信号。RID 这个ID tag是在读事务中。设备传送RID去匹配与ARID相一致的事务。2、主机可以使用一个事务的ARID或者AWID段提供的附加信息排序主机的需要。事务序列规则如下:(1)从不同主机传输的事务没有先后顺序限制。他们可以以任意顺序完成。(2)从同一个主机传输的不同ID事务,也没有先后顺序限制。他们可以以任意顺序完成。,

17、40,out-of-order transaction(2),(3)相同数值的AWID写事务数据序列必须按照顺序依次写入主机发送的地址内。(4)相同数值的ARID读事务数据序列必须遵循下面的顺序:a.当从相同设备读相同的ARID时,设备必须确保读数据按照相同的地址顺序接受。b.当从不同的设备读相同的ARID时,接口处必须确保读数据按照主机发送的相同的地址顺序。(5)在相同的AWID和ARID的读事务和写事务之间没有先后顺序限制。如果主机要求有顺序限制,那么必须确保第一次事务完全完成后才开始执行第二个事务。3、当一个主机接口与interconnect相连时,interconnect会在信号ARI

18、D、AWID、WID段添加一位,每一个主机端口都是独一无二的。这样做有两个影响:(1)主机不需要去知道其他主机的ID数值,因为interconnect是ID值是唯一的,当将主机number添加到段中。(2)在设备接口处的ID段的宽度要比主机接口处的ID段宽。对于读数据,interconnect附加一位到RID段中,用来判断哪个主机端口读取数据。Interconnect会移除RID段中的这一位在将RID的值送往正确的主机端口之前。,41,Topic 8,Entering the power-down model,42,低功耗模式,低功耗时钟控制接口包括下面两个信号:来自外围设备的信号,用于指明什

19、么时候时钟使能能或者禁能。两个握手信号用于系统时钟控制器请求退出或者进入低功耗状态。时钟控制接口的一个主要信号时CACTIVE,外围设备用这个信号来指明请求时钟使能。外围设备置CACTIVE有效去请求时钟,系统时钟控制器必须马上使能时钟。如果外围设备将CACTIVE置为无效,则系统时钟控制器将自己决定是否使能或者禁能外围设备时钟。AXI协议提供双线 request/acknowledge 握手来支持请求:CSYSREQ 当外围设备请求进入低功耗状态时,系统时钟控制器将CSYSREQ置低,平时CSYSREQ都是置高的。CSYSACK 外围设备用CSYSACK信号作为进入低功耗状态和离开低功耗状态

20、的应答信号。,时序图,43,系统时钟控制器在T1时刻发出请求,外围设备在T2时刻给予应答,此时进入低功耗状态。在T3时刻,CSYSREQ变高,请求离开低功耗状态,在T4时刻得到应答,此时离开低功耗状态进入正常模式。,44,接受or not,外围设备可以选择接受请求也可以选择不接受请求。主要通过信号CACTIVE来决定。,接受请求的情况:,不接受请求的情况:,45,Attention:,既可以通过系统也可以通过外围设备来退出低功耗状态。只要置信号CACTIVE和CSYSREQ这两个信号中的一个为高就可以退出低功耗模式。而系统可以通过置CSYSREQ为高来退出低功耗模式。,46,My Questions(1),1.谁去区分属于同一个ID的传输及排序?2.多个主机呢,或者多个从机?Arbiter和Decoder呢?3.Why bursting transfer can not across the 1k boundary?4.非对其传输时是否有数据会丢失?见后图,My Questions(2),47,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号