AXI协议详解_openflow协议[通俗易懂]

AXI协议详解_openflow协议[通俗易懂]AXI协议简介AdvancedeXtensibleInterface(AXI)是为了满足高性能系统设计而定义的一套独立通道协议,首次是在2003年发布的AMBA3标准中出现,经历AMBA4,目前

AXI协议简介
Advanced eXtensible Interface(AXI)是为了满足高性能系统设计而定义的一套独立通道协议,首次是在2003年发布的AMBA3标准中出现,经历AMBA4,目前已经到达AMBA5版本。
AXI包括AXI与AXI-Lite两个版本。
AXI满足如下的特性:

– 适合于高带宽,低延迟的设计

  • 不需要通过复杂的桥转换就可以实现高频下的操作
  • 满足多种组件的接口要求
  • 适合于高初始化访问延迟的内存控制器
  • 支持灵活的实现互联结构
  • 可以向下兼容AHB,APB等接口

–关键特性如下:

  • 分离的地址/控制通道与数据通道
  • 支持非对齐传输,使用byte strobes指示
  • 支持burst传输,只需要发送起始地址即可
  • 分离的读写数据通道,可以实现低消耗的直接内存访问
  • 支持多种outstanding传输
  • 支持out-of-order乱序传输
  • 允许插入寄存器片以满足时序要求

AXI结构
在这里插入图片描述
AXI作为ARM标准的接口协议,主要应用在片内系统互联设计中。可实现不同IP之间通过标准的互联总线进行交互。片内各协议之间都可以实现方便的协议转换,完成系统内部的所有IP的通信。
在这里插入图片描述
AXI分为5个独立的传输通道,分别是AR,R,AW,W,B通道。
AR 为读地址通道,传输读操作的地址与对应控制信息;
R 为读数据通道,传输AR通道对应的读回数据同时也传输slave的响应信息;
AW 为写地址通道,传输写操作的地址与对应的控制信息;
W 为写地址通道,传输写数据相关信息;
B 为写响应通道,传输slave返回的写响应信息;
五个通道为独立的通道,可大大提供系统传输性能。需要注意读操作有2个通道,写操作有3个通道,读通道中没有单独的响应通道,读响应与读数据共用一个通道传输,都是slave一块返回没有必要分离。
AXI信号
全局信号:
在这里插入图片描述
写地址通道信号:
在这里插入图片描述
写数据通道信号:
在这里插入图片描述
写响应通道信号:
在这里插入图片描述
读地址通道:
在这里插入图片描述
读数据通道:
在这里插入图片描述
其他信号:
在这里插入图片描述
AXI握手机制
在这里插入图片描述
AXI通过VALID和READY握手的机制实现主从机之间的通讯。 Valid 表示发送的请求或者响应是否有效; Ready表示是否准备好接受请求或者响应; 当拉低valid或者ready时表示主机或者从机处于busy状态,延时传输状态。
每个通道都有对应的valid和ready信号:
在这里插入图片描述
AXI各通道依赖关系
下图中单箭头表示两个信号之间没有特定的依赖关系,但是设计的时候推荐使用这种前后关系;双箭头表示两个信号之间是有依赖关系的,必须要等前面的信号有效之后才能使能后面的信号。
在这里插入图片描述
对于读传输,ARVALID,ARREADY没有先后关系,但是RVALID信号需要等待前两个有效之后才能有效。这样也是符合传输顺序的,因为只有读地址等请求信号有效的时候,slave才能返回对应读数据,通过RVALID表示传输有效。RREADY不依赖与其他信号。
在这里插入图片描述
对于写传输中,写地址通道中的AWVALID,AWREADY和写数据通道中的WVALID,WREADY没有相互依赖的关系,完全是独立的。BVALID信号需要依赖于WVALID和WREADY信号,因为BVALID信号表示写操作的完成。BREADY信号可以不依赖于其他信号。
注意在AXI3中没有定义BVALID与AWVALID,AWREADY之间的关系,也就是他们之间是没有关系的,但是实际设计的时候,我们也会指定BVALID在他们之后有效,因为如果地址是无效的,对应的后面写数据与写响应都不应该有效。
在这里插入图片描述
在AXI4、AXI5中定义了BVALID需要在AWVALID,AWREADY,WVALID,WREADY之后有效。
另外需要注意WVALID中包含WLAST,因为BVALID需要在burst传输中最后一拍传输之后再进行响应。
设计注意点:对于协议中没有相互依赖关系的信号,在设计的过程中不要设计成有依赖关系的逻辑,这样很容出现master设计与slave都出现等待对方信号有效的情况,造成逻辑上的相互等待。
原文

今天的文章AXI协议详解_openflow协议[通俗易懂]分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/74738.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注