XILINX AXI总线

简介

        本文主要针对XILINX使用的AXI Lite总线对寄存器读写的使用,首先对AXI总线做详细介绍

AXI总线

        AXI是一种总线协议,可以挂在多个master和slave,AXI总线包括3中类型接口,介绍如下:

        AXI4:(For high-performance memory-mapped requirements.)主要面向高性能地址映射通信的需求,是面向地址映射的接口,允许最大256轮的数据突发传输;
        AXI4-Lite:(For simple, low-throughput memory-mapped communication )是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元。
        AXI4-Stream:(For high-speed streaming data.)面向高速流数据传输;去掉了地址项,允许无限制的数据突发传输规模。

        AXI4、AXI4-LITE总线信号组成:写地址通道、写数据通道、写响应通道、读地址通道、读数据通道如下表所示:

read address

读地址通道

主机->从机

read data

读数据通道(包括数据通道和读响应通道)

从机->主机

write address

写地址通道

主机->从机

write data

写数据通道(包括数据通道和每8bit一个byte的写数据有效信号)

主机->从机

write response

写响应通道

从机->主机

AXI通道介绍

读地址通道信号

信号

方向

描述

ARID

主机to从机

读地址ID,用来标志一组写信号

ARADDR

主机to从机

读地址,给出一次读突发传输的读地址

ARLEN

主机to从机

AWLEN[7:0]决定写传输的突发长度。AXI3只支持1~16次的突发传输(Burst_length=AxLEN[3:0]+1),AXI4扩展突发长度支持INCR突发类型为1~256次传输,对于其他的传输类型依然保持1~16次突发传输(Burst_Length=AxLEN[7:0]+1)。

burst传输具有如下规则:

wraping burst ,burst长度必须是2,4,8,16

burst不能跨4KB边界

不支持提前终止burst传输

ARSIZE

主机to从机

读突发大小,给出每次突发传输的字节数支持1、2、4、8、16、32、64、128

ARBURST

主机to从机

突发类型:

2'b00 FIXED:突发传输过程中地址固定,用于FIFO访问

2'b01 INCR :增量突发,传输过程中,地址递增。增加量取决AxSIZE的值。

2'b10 WRAP:回环突发,和增量突发类似,但会在特定高地址的边界处回到低地址处。回环突发的长度只能是2,4,8,16次传输,传输首地址和每次传输的大小对齐。最低的地址整个传输的数据大小对齐。回环边界等于(AxSIZE*AxLEN)

2'b11 Reserved

ARLOCK

主机to从机

总线锁信号,可提供操作的原子性

ARCACHE

主机to从机

内存类型,表明一次传输是怎样通过系统

ARPROT

主机to从机

保护类型,表明一次传输的特权级及安全等级

ARQOS

主机to从机

质量服务QoS

ARREGION

主机to从机

区域标志,能实现单一物理接口对应的多个逻辑接口

ARUSER

主机to从机

用户自定义信号

ARVALID

主机to从机

有效信号,表明此通道的地址控制信号有效

ARREADY

从机to主机

表明"从"可以接收地址和对应的控制信号

信号

方向

描述

ARID

主机to从机

读地址ID,用来标志一组写信号

ARADDR

主机to从机

读地址,给出一次读突发传输的读地址

ARLEN

主机to从机

AWLEN[7:0]决定写传输的突发长度。AXI3只支持1~16次的突发传输(Burst_length=AxLEN[3:0]+1),AXI4扩展突发长度支持INCR突发类型为1~256次传输,对于其他的传输类型依然保持1~16次突发传输(Burst_Length=AxLEN[7:0]+1)。

burst传输具有如下规则:

wraping burst ,burst长度必须是2,4,8,16

burst不能跨4KB边界

不支持提前终止burst传输

ARSIZE

主机to从机

你可能感兴趣的:(网络,fpga开发,fpga,嵌入式硬件)