<AMBA总线篇> AXI总线协议介绍

目录

01 AXI协议简介

AXI协议特性

AXI协议传输特性

02 AXI协议架构

AXI协议架构

write transaction(写传输)

read tramsaction(读传输)

Interface and interconnect

典型的AXI系统拓扑

03 文章总结


大家好,这里是程序员杰克。一名平平无奇的嵌入式软件工程师。

对于学习Xilinx FPGA(ZYNQ)而言,官方提供的很多IP核都有使用AXI总线,用于ARM核和FPGA的高速数据交互。因此学习AXI总线是必不可少的。而AXI协议是AMBA总线架构的一部分内容。基于此,本系列推文开始总结与分享AMBA总线架构的AXI部分内容。


下面正式进入本章推送的内容。

01 AXI协议简介

AXI(Advanced eXtensible Interface)协议是ARM 公司推出的总线架构AMBA(Advanced Microcontroller Bus Architecture)的一部分内容。其支持high-performance、high-frequency的系统设计,用于Manager和Subordinate组件间的通讯。

AXI协议特性

  • 适用于high-bandwidth和low-latency的设计.

  • 无需复杂的brideges便可实现high-frequency操作.
  • 适用于高延迟的初始化访问接口的memory controllers
  • 向后兼容AHB和APB接口

AXI协议传输特性

  • 单独的地址/控制和数据通道

  • 支持字节不对齐的数据传输(通过Byte strobes[字节选通])

  • 支持brust[突发]传输(仅发送起始地址)

  • 独立的write和read data通道,可提供低花销的DMA接口

  • 支持无序事务执行


02 AXI协议架构

AXI协议架构

AXI协议基于事务的方式定义了5个独立的通道,通道名称以及信号开头缩写如下:

  • 写请求通道Write request(信号开头缩写:AW)

  • 写数据通道Write data(信号开头缩写:W)

  • 写响应通道Write response(信号开头缩写:B)

  • 读响应通道Read request(信号开头缩写:AR)

  • 读数据通道Read data(信号开头缩写:R)

数据在Manager和Subordinate间传输通过以下方式:

  • Manager通过write data通道传输数据给Subordinate(write transaction)
  • Manager通过read data通道从Subordinate读取数据(read transaction)

write transaction(写传输)

写传输事务使用write request、write data、write response通道,写操作如下:

  • Master主机对write request通道写入地址和控制
  • Master主机向write data通道写入数据
  • Slave从机向write response通道写入响应信息.

<AMBA总线篇> AXI总线协议介绍_第1张图片


read tramsaction(读传输)

读传输事务使用read request、read data通道,读操作如下:

  • Master主机对read request通道写入地址和控制.
  • Slave从机向read data通道写入数据,返回给Master.

<AMBA总线篇> AXI总线协议介绍_第2张图片


Interface and interconnect

典型的互连系统由多个Manager和Subordinate组成,通过某种形式内部互连在一起。典型互连图如下图所示:

<AMBA总线篇> AXI总线协议介绍_第3张图片

AXI协议提供了单独的接口定义在以下三种互连之间,其支持实现多种不同的互连,三种互连如下:

  • Manager和interconnect之间
  • Subordinate和interconnect之间
  • Manager和Subordinate之间

典型的AXI系统拓扑

大多数的系统使用如下拓扑结构:

  • 共享request通道和data通道
  • 共享request通道和多个data通道
  • 多层拓扑,有多个request通道和多个data通道

在大多数系统中,request通道的带宽需求明显小于data通道的带宽需求。通过使用“共享request通道和多个data通道”的方式以支持并行数据传输,这样可以在系统性能和互连复杂度之间实现良好的平衡。


03 文章总结

本篇推送主要是对AXI总线的协议、协议架构、内部互连和接口模式、典型的拓扑结构进行了介绍。主要是对AXI总线的协议架构、互连模式有个大体的了解,以便后续对接口信号、具体的互连拓扑打下基础。

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