FPGA-AXI4总线介绍

下一节:AXI接口时序解读

AXI总线概述

Xilinx软件官方axi协议有以下三种:
AXI4:是面向高性能传输且带有存储地址映射的,最大允许256次数据突发传输
AXI4-Lite:轻量级的地址映射传输
AXI4-Stream:无地址映射,允许无限制数据突发传输

AXI4总线关键信号解释

1.写地址通道信号(代表写地址控制信号等)
AWID:写地址ID
AWADDR:写地址,一次突发传输的起始地址
AWLEN:8位位宽,决定传输突发长度,1-256
AWSIZE:写突发传输大小,支持1、2、3、8、16、32、64、128字节,注意是字节单位Byte。也就是最高支持1024数据通道位宽
AWBURST:突发类型,2‘b00FIXED:突发传输中地址固定,用于FIFO访问;2‘01 INCR:增量传输,地址自增,取决于当前的AxSIZE大小而增加;2’b10WRAP:回环突发,与增量突发类似,但是相当于会增到某个最大值后,从头开始自增,回环突发长度只能是2,4,8,16次传输,最大值(AxSIZE*AxLEN),2‘b11 reserved。
AWQOS :质量服务信号,可设置为默认值4‘b0000。
AWUSER:用户自定义一般不使用。
AWVALID:有效信号,主机给从机的,标识地址控制信号有效。
AWREADY:准备好信号,从机给主机的,标识从机准备好接收地址控制信号。
2. 写数据通道信号(走写的数据信号,相当于与地址控制信号时成出现)
WID:AXI4取消了这个。
WADATA:写数据
WSTRB:WSTRB[n:0]对应写字节,WSTRB[n]对应 WDATA[8n+7:8n],WVALID 为低电平时,WSTRB可以为任意值,WVALID 为高电平时,WSTRB每一位对应与写数据的字节有效,相当于mask数据掩码一样。如果没什么要求全给高就行。
WLAST :表明最后一个突发传输。
WVALID :写有效
WREADY:从机可以接收主机数据,当WVALID与该信号均有效开始传输数据。
3.写响应信号(从机给主机的反馈信号)
BID:ID号
BRESP:写响应信号。
BUSER:自定义,不使用。
BVAILD:写响应有效。
BREADY:主机给从机的,高电平标识可以接受从机的响应信号。
4.读地址信号(和上面写的成对信号类似,这是读端口的)
ARADDR:主机给从机读突发传输地址。
ARLEN:读突发长度,与写一样。
ARSIZE :读突发大小,与写端一样,均是字节为单位。
ARBURST:读突发类型,与写测一样。
ARVALID :读控制数据有效信号。
ARREADY:从机给主机的准备好信号,当两者都为高电平的时候,这些读地址通道上的配置就发送给从机了。
5.读数据通道信号
RDATA :读数据端口 从机发送给主机
RRESP:读响应信号,从机给主机
RLAST:从机给主机,标识最后一个突发数据传输。
RVALID:从机给主机的有效信号。
RREADY:主机给从机的准备好接收数据信号,只有在这两个均为高电平此时接收的数据才是有效的。
== 以上信号总结:==
这些信号就是规定了,主机写数据给从机时,需要先预先定义好你发送的数据是什么类型,什么格式,以及地址如何变化等约束条件,均在写控制信号端口发送给从机。数据传输在数据通道传输,同时双方也规定好了一些握手,因此纵观所有AXI接口信号来看,无论是读或者写,它们的通道均是分开的,且读写控制信号也是分开的,因此各个通道之间都需要互相握手,这样理解就能知道每个通道需要哪些必不可少的信号了,归类即可理解加深记忆。
AXI接口时序解读

你可能感兴趣的:(AXI协议学习,fpga开发)