• 正文
  • 相关推荐
申请入驻 产业图谱

【黑金云课堂】FPGA技术教程Vitis开发:AXI总线

3小时前
71
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

Vitis AXI总线知识总结

1. AXI总线简介

AXI(Advanced eXtensible Interface)是 ARM AMBA 总线协议中的一种高性能片上通信协议,也是 AMD Xilinx FPGA/SoC 平台中 PS(Processing System)与 PL(Programmable Logic)之间的重要互联方式。

AXI总线具有高带宽、低延迟、可扩展等特点,广泛应用于 Zynq、Zynq UltraScale+ MPSoC、Versal 等平台的数据通信

AXI协议主要用于:

  • CPU与FPGA逻辑之间的数据交互;
  • FPGA内部IP模块互联;
  • DDR存储器高速访问;
  • DMA高速数据传输
  • 视频、通信等实时数据处理。

2. AXI协议类型

AXI主要包括以下三种接口类型:

(1)AXI4-Lite

AXI4-Lite是一种简化版本的AXI接口,主要用于低速控制和寄存器访问。

特点:

  • 不支持Burst突发传输;
  • 一次只能传输一个数据;
  • 结构简单,占用资源较少。

典型应用:

  • GPIO控制;
  • 外设寄存器配置;
  • IP核参数设置。

(2)AXI4

AXI4是完整功能版本的AXI协议,主要用于高速存储器映射访问。

特点:

  • 支持Burst突发传输;
  • 支持流水线操作;
  • 支持高数据吞吐量;
  • 适用于DDR、BRAM等高速存储访问。

典型应用:

  • DDR数据读写;
  • DMA数据搬运;
  • 高速数据缓存。

(3)AXI4-Stream

AXI4-Stream主要用于连续数据流传输。

特点:

  • 无地址信息;
  • 数据连续传输;
  • 支持VALID/READY握手机制;
  • 适用于高速实时数据处理。

典型应用:

  • 视频处理;
  • ADC/DAC数据采集
  • FFT算法;
  • 网络数据处理。

3. AXI五通道结构

AXI协议采用读写通道分离设计,共包含5个独立通道。

写操作通道

  1. AW(Write Address Channel)
    用于传输写地址信息。
    主要包含:

    • 写入地址;
    • Burst类型;
    • 数据长度等控制信息。
  2. W(Write Data Channel)
    用于传输实际写入数据。
  3. B(Write Response Channel)
    用于返回写操作结果。

写操作流程:
写地址 → 写数据 → 写响应


读操作通道

  1. AR(Read Address Channel)
    用于发送读取地址信息。
  2. R(Read Data Channel)
    用于返回读取的数据和状态信息。

读操作流程:
读地址 → 返回数据


4. AXI握手机制

AXI采用VALID/READY双向握手机制。

传输完成条件:

  • VALID = 1
  • READY = 1

只有发送端和接收端同时准备完成时,数据传输才会发生。

优势:

  • 保证数据可靠传输;
  • 支持不同速率设备通信;
  • 实现数据流控制。

5. AXI Burst突发传输

Burst是AXI实现高性能传输的重要机制。相比传统单次传输方式,Burst可以通过一次地址传输连续发送多个数据,提高总线利用率。

AXI支持三种Burst类型:

类型 说明 应用
FIXED 地址保持不变 FIFO访问
INCR 地址自动递增 DDR访问、DMA数据搬运
WRAP 地址循环变化 Cache相关访问

Burst主要参数:

  • LEN:Burst传输长度;
  • SIZE:每次传输的数据大小;
  • BURST:Burst类型。

6. AXI4高性能特点

AXI4能够实现高速通信主要依靠:

  1. 读写通道独立
    读写操作可以同时进行,提高系统效率。
  2. Burst传输
    减少地址控制开销,提高数据吞吐率。
  3. 流水线机制
    允许多个事务同时处理。
  4. 灵活的数据宽度
    支持不同位宽的数据传输,满足不同应用需求。

7. AXI4-Stream关键接口信号

AXI4-Stream主要信号:

信号 功能
TDATA 数据内容
TVALID 数据有效标志
TREADY 接收端准备状态
TLAST 数据包结束标志

AXI4-Stream适合高速连续数据处理场景。

典型数据路径:

ADC
|
AXI4-Stream
|
FPGA算法处理
|
DMA
|
DDR

8. AXI在Vitis开发中的应用

在Vitis开发环境中,AXI通常用于连接软件和硬件。

典型结构:

ARM Processing System
|
AXI Bus
|
Programmable Logic IP
|
DDR / Peripheral

常见应用:

  • 软件控制FPGA IP;
  • FPGA高速数据处理;
  • DMA数据传输;
  • 视频流处理。

9. 总结

AXI是AMD Xilinx FPGA/SoC平台中最重要的片上通信协议。

其中:

  • AXI4-Lite:用于低速控制和寄存器配置;
  • AXI4:用于高速存储器访问和数据搬运;
  • AXI4-Stream:用于实时高速数据流处理。

掌握AXI协议的通道结构、VALID/READY握手机制以及Burst传输方式,是进行Zynq、MPSoC以及Vitis FPGA开发的重要基础。

💡 完整视频讲解可前往 ALINX 视频号进行直播回看

更多细节欢迎关注我们黑金云课堂全年免费直播课, 黑金云课堂八月直播日历 我们将在每周二、三、四,同步推进 Verilog开发、Vitis开发、Linux开发三大系列,带你从零开始,稳扎稳打掌握 FPGA 开发全流程!

系列 内容定位
Verilog开发 硬件描述语言基础、逻辑设计、仿真调试
Vitis开发 Zynq软硬件协同、外设驱动、网络协议
Linux开发 嵌入式Linux系统移植、驱动编写、应用开发

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录

芯驿电子自 2012 年成立以来,旗下 AUMO 与 ALINX 两大品牌,在智能车载与 FPGA 行业解决方案领域持续深耕。 ALINX 聚焦 FPGA 解决方案高端产品市场,并积极参与 FPGA 国产化应用发展。至今已推出 100 多款 FPGA SoM 模组和配套板卡,基本完成对 AMD FPGA 产品、紫光同创 FPGA 产品的全系列覆盖,产品远销海外 40 多个国家。 AUMO 专注智能车载,为自动驾驶技术开发破题。至今已推出车载仿真测试系统、视频数据采集、视频数据旁路采集分流、视频数据注入、车载摄像头、车载后视镜等产品线,满足车企和汽车产业链的车载产品开发需求。

微信公众号