axi时序图_AXI4读写操作时序及AXI4猝发地址及选择

AXI4读操作

图 4‑15 读通道架构

如上图所示,主设备向从设备通过读地址通道指定读数据地址及控制信号,从设备通过读数据通道将指定地址上的数据传输给主设备。

图4‑16 Read Burst 流程

1、当状态机的当前状态为WAIT_START时,master将ARVALID拉高。

2、slave收到ARVALID信号后,将ARREADY拉高,持续到一次burst_len传完为止。master收到ARREADY拉高的信号后,将ARVALID拉低。

3、ARADDR在ARVALID为高时给定对应地址。

4、RREADY信号在收到RVALID信号为高时拉高,保持一个周期,读取出数据。

5、RVALID信号由slave控制,具体控制模式参考slave模块的设计。

6、当一次读取的最后一个数据包读取时将RLAST拉高,表示一次Burst读取完毕。

图4‑17 读操作信号依赖

如图可知,读操作的两个channel之间存在如下的依赖关系:必须等到ARVALID和ARREADY同时为High后,RVALID才能拉高。

AXI4写操作:

图4‑18 写通道架构

如上图所示,主设备向从设备通过写地址通道指定写数据地址及控制信号,从设备通过写数据通道将指定数据写到从设备的指定地址上。待数据写入完成后,从设备通过写响应通道向主设备传递写响应信号,表明写入完成。

图4‑19 Write Burst 流程

1、当状态机的当前状态为WAIT_START时,master将AWVALID拉高。

2、slave收到AWVALID信号后,将AWREADY拉高,持续到一次burst_len写完为止.master收到AWREADY拉高的信号后,将AWVALID拉低。

3、AWADDR在AWVALID为高时给定对应地址。

4、WREADY信号在收到WVALID信号为高时拉高,保持一个周期,写入数据。

5、WVALID信号由slave控制,具体控制模式参考slave模块说明。

6、当一次写入的最后一个数据包读取时将WLAST拉高,表示一次写入完毕。

7、BRESP和BVALID都由slave控制,当收到WLAST信号时,BVALID拉高。

8、BREADY可以一直拉高,也可以在AWREADY信号拉高后保持拉高。直到BVALID信号拉高时将其拉低即可。

其中写操作的信号依赖关系如下:

图4‑20 写操作依赖

如图可知,ADDR和DATA两个channel之间不存在依赖关系,需要满足的是必须等到WVALID和WREADY同时为High,且最后一次传输完成后,BVALID才能拉高,表明写操作结束。

通道握手信号之间的依赖关系

为了对VALID和READY之间的关系有更深刻理解,下面在展开说明一下。

为了防止发生死锁,必须重视握手信号之间的依赖关系。

任何交易中:

l一个 AXI 模块的VALID 信号不能依赖于另一个模块的READY 信号

lREADY 信号可以等待VALID 信号使能

-------------------注意---------------------------------------------

可以在使能 VALID 信号之后使能READY,也可以在使能VALID 信号之前将

READY 信号使能为默认值,这样设计更高效。.

--------------------------------------------------------------------

图4‑21和图4‑22为各握手信号之间的依赖关系图。单箭头指向的信号可以在指向它的信号未使能或使能后,它再使能;双箭头向的信号,必须在指向它的信号全都使能后,它再使能。

图4‑21中所示,在一次读交易中:

l从设备使能ARREADY 信号之前,可以在等待 ARVALID 信号被使能。

l从设备必须等待ARVALID 和ARREADY信号都有效后,再去使能RVALID 信号以返回读数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值