在zynq开发过程中,AXI总线经常遇到,每次看到AXI总线相关的信号时都一头雾水,仔细研究一下,将信号分分类,发现其实也不难。
• Read address, which has signal names beginning with AR.
• Read data, which has signal names beginning with R.
• Write address, which has signal names beginning with AW.
• Write data, which has signal names beginning with W.
• Write response, which has signal names beginning with B
使用 write address, write data, and write response channels
使用 the read address and read data channels.
input ARESETN,
input ACLK,
output [0:0] M_AXI_AWID,
output [31:0] M_AXI_AWADDR,
output [7:0] M_AXI_AWLEN,
output [2:0] M_AXI_AWSIZE,
output [1:0] M_AXI_AWBURST,
output M_AXI_AWLOCK,
output [3:0] M_AXI_AWCACHE,
output [2:0] M_AXI_AWPROT,
output [3:0] M_AXI_AWQOS,
output [0:0] M_AXI_AWUSER,
output M_AXI_AWVALID,
input M_AXI_AWREADY,
output [63:0] M_AXI_WDATA,
output [7:0] M_AXI_WSTRB,
output M_AXI_WLAST,
output [0:0] M_AXI_WUSER,
output M_AXI_WVALID,
input M_AXI_WREADY,
input [0:0] M_AXI_BID,
input [1:0] M_AXI_BRESP,
input [0:0] M_AXI_BUSER,
input M_AXI_BVALID,
output M_AXI_BREADY,
output [0:0] M_AXI_ARID,
output [31:0] M_AXI_ARADDR,
output [7:0] M_AXI_ARLEN,
output [2:0] M_AXI_ARSIZE,
output [1:0] M_AXI_ARBURST,
output [1:0] M_AXI_ARLOCK,
output [3:0] M_AXI_ARCACHE,
output [2:0] M_AXI_ARPROT,
output [3:0] M_AXI_ARQOS,
output [0:0] M_AXI_ARUSER,
output M_AXI_ARVALID,
input M_AXI_ARREADY,
input [0:0] M_AXI_RID,
input [63:0] M_AXI_RDATA,
input [1:0] M_AXI_RRESP,
input M_AXI_RLAST,
input [0:0] M_AXI_RUSER,
input M_AXI_RVALID,
output M_AXI_RREADY,
每个通道都有VALID/READY 信号,VALID有效时输出地址、数据和控制信息。READY 信号有效表示可以接收信息。只有当VALID和READY 都有效时才可以进行通信。
主机发出VALID,从机发出READY ,当VALID和READY都为高时,握手成功。
写地址通道
主机输出有效地址和控制信息时将AWVALID 信号置1,AWVALID 置1后必须等待从机AWREADY 置1。完成写地址操作,进入写数据操作。
写数据通道
在写数据操作时,输出有效数据时将WVALID 置1。WVALID 置1后等待从机WREADY 置1。在写入最后一个数据时,将WLAST信号置1。之后主机等待从机写反馈。
写反馈通道
主机接收到从机发出BVALID信号时,将BREADY 信号置1,接收从机反馈信息。主机BREADY 信号可以默认为1。
以上过程完成主机到从机发送数据流程。
读地址通道
主机输出有效地址和控制信息时将ARVALID信号置1,ARVALID 置1后必须等待从机ARREADY 置1。完成读地址操作,进入读数据操作。
读数据通道
当从机输出有效数据时将RVALID置1,RVALID置1后等待主机RREADY置1,从机发送最后一个数据时将RLAST置1。
以上过程完成接收数据流程。
全部0条评论
快来发表一下你的评论吧 !