AXI4-Lite总线协议分析

目录

简述

AXI是由ARM公司提出的一种总线协议,它涵盖了总线、接口和协议三个层面的标准。总线是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成;接口是总线下的连接标准,又常常被称之为物理接口;协议是在总线下的数据传输的规则。
如今AXI已经发展到了AXI4,它包含有三个子集:

  • AXI4:面向高性能映射通信需求,是面向地址映射的接口,允许最大突发长度256轮
  • AXI4-Lite:轻量级地址映射单次传输接口,占用较少逻辑资源
  • AXI4-Stream:面向高速流传输,没有地址项,允许无限制的数据突发传输规模

AXI4-Lite作为AXI4的一个轻量化版本,和AXI4具有高度的兼容性,同时又裁剪了很多复杂的功能:

  • 读写通道依然分离,即可以同时读和写交易
  • 猝发长度恒为1,即一次交易只有一个地址+一个数据
  • 数据位宽全程要保持一致(32/64)
  • 总线无缓冲区,不支持乱序交易
  • 总线不支持AXI IDs,不支持互斥性操作

AXI4-Lite接口列表

全局信号

名称 方向 功能
ACLK ->MS 全局时钟,上升沿敏感
ARESETn ->MS 全局复位,同步低电平复位

写地址通道AW

名称 方向 功能
AWADDR[31:0] M->S 写地址,本次交易的目标地址
AWPROT[2:0] M->S 写保护类型
    [0] 0:非优先,1:优先
    [1] 0:安全,1:不安全
    [2] 0:数据,1:指令
AWVALID M->S 写地址有效,一直拉高直到AWREADY为1
AWREADY S->M 写地址准备,从机对VALID的回应

写数据通道W

名称 方向 功能
WDATA[31:0] M->S 写数据
WSTRB[3:0] M->S 写选通,高电平写入,4位对应4个字节
WVALID M->S 写有效,一直拉高直到WREADY为1
WREADY S->M 写准备,对VALID的回应,从机可以被写

写响应通道B

名称 方向 功能
BRESP[1:0] S->M 写响应
    00:OK,01:不存在
    10:Slave Err,11:Decode Err
BVALID S->M 写响应有效,写完给回复,拉高直到主机回应
BREADY M->S 写响应准备,主机可以接受BVALID

读地址通道AR

名称 方向 功能
ARADDR[31:0] M->S 读地址,本次交易的目标地址
ARPROT[2:0] M->S 读保护类型
    [0] 0:非优先,1:优先
    [1] 0:安全,1:不安全
    [2] 0:数据,1:指令
ARVALID M->S 读地址有效,拉高直到从机回应
ARREADY S->M 读地址准备,从机对VALID的回应

读数据通道R

名称 方向 功能
RDATA[31:0] S->M 读数据
RRESP[1:0] S->M 读响应
    00:OK,01:不存在
    10:Slave Err,11:Decode Err
RVALID S->M 读有效,从机发出的数据是有效的,拉高直到主机回应
RREADY M->S 读准备,主设备可以接收读数据

AXI4-Lite交易时序

交易由通道握手构成。
例如,一次写地址就是一次握手,这意味着给主机出AWADDR和AWPROT后,主机和从机发生一次VALID/READY交互,意味着握手结束。
握手

写交易

一次写交易需要3次握手。主机提供写地址和写数据,写入完成后从机回复写响应。
其中,写地址和写数据的先后顺序是没有要求的,两者在同一时钟周期传输也是允许的。
数据地址都写入从机,如果没有问题,从机需要回复一次写响应。

读交易

一次读交易需要2次握手。主机提供读地址,从机得到地址后回复读数据。

总结

AXI4-Lite控制简单,且保持向上兼容能力,用途广泛。

打赏?

取消

不用哦

扫码支持
这里只有暗黑赛钱箱

深邃♂黑暗♂幻想

>