AXI4协议的物理模型

Posted on 2020-06-07 23:58  绿叶落秋风  阅读(313)  评论(0编辑  收藏  举报

AXI4的物理传输模型

1、AXI4的组成部分

首先说一下文章是学习《基于AXI4的IP核互联的设计与验证》莫锦辉的学习笔记。文中大部分的知识都是来源于这篇论文,这里学习以便理解AXI4协议。

AXI4是由五个通道构成的:写地址、读地址、写数据、读数据和写数据响应。主机和从机的概念具有区分。每个通道的作用的在后面的传输流程中会有具体的介绍。这里的通道应该是一些小型总线。具体的信号在设计中会偶具体的介绍。

2、AXI4的数据传输流程

AXI4的数据传输采用的是猝发机制,所谓猝发,就是一方发出申请,等待另一方回答。回答后就传输数据。类似于打电话,有一个人打,一个人接。打的人要等待接电话的,接电话的要有人打电话。这里比较特殊的就是写数据响应的发出。这个信号是用来确认主机的数据写入是否成功。但是没有从机的写数据响应,因为主机的数据用户可以直接访问来验证。这里也是区分主从机的一个方法:主机为直接操控、从机为黑盒子。

五个通道的概念解释了AXI4传输数据的基本概念,但是每个通道内部的传输方法还是需要补充的。这里就需要考虑AXI4通道的握手协议。

这里做个简单假设,如果每个通道就是一个时钟线和数据线,也就是IIC协议。这样其实在一个从机的时候是可以工作的。每个通道都可以传输数据。显然,对于需要实现多个设备之间的传输的AXI4总线协议是不够的。这里需要一个可以表示当前通道的工作状态的信号。由于传输的对象只有两个:主机和准备连接的从机,所以需要两个信号来标注。主机的信号为VALID,从机的信号为READY。两个信号均采用高电平有效。即高电平时表示一方准备完成。对于数据位INFORMATION的操作也是随着状态变化而变化的。

VALID有效,数据位开始占用。此时数据已经保持在数据线内。READY有效,数据开始传输。

对于有五个通道的AXI4协议来说,每个通道之间的握手信号是有一定的约束的。例如,在写操作中,主机写地址就绪,写地址有效,写数据就绪这三个信号没有时间依存。而对于从设备必须等待确认写地址有效和写地址就绪后握手成功和写数据有效信号和写数据就绪信号建立连接后再确认写回应有效信号和写数据就绪信号是否建立连接。这段话比较绕,简单理解就是要确保握手成功不违背通道传输的规则。不可能写数据传输握手还没有成功写响应握手就成功了,这违背了写响应的规则。同样的道理也在地址握手和数据握手之间体现。

3、AXI4的传输流程

读猝发传输:

一次读猝发传输四个数据的例子

主机发出读地址为A的请求-----读地址通道处于A地址占用------从机响应数据传输。

这个流程就像主机利用读地址构建了一个单一的单向通道,写数据通道的握手成功与否决定了数据传输与否。这样的优势在于可以选择不同的设备构建临时通道。

显然,可以利用通道的临时性实现两个临时通道的交替进行。这说明从机是支持存储两个甚至更多的地址的。这个功能落到具体的设计就需要一个缓存器来解决了。后面应该会有这部分的具体内容。

写猝发传输:

就是将读猝发的对象对调然后加上写响应。在通道上的原理就是这么简单,但是对于主从机的收发结构来说这里还是有一个比较复杂的内容的。后面可能会介绍这个主机和从机所需的结构。

4、AXI4的小结

AXI4传输的模式是标准的,传输的模式也是多种多样的。其相对于IIC的特点是将数据线拆分为两个通道。相对于UART的优点是加入了时钟线而不需要主机通过人工的方式加入传输波特率。相对于SCCB协议的优点是将地址传输和数据传输分立进行以提高效率。这四种传输协议都有其各自的适用范围。