原帖地址:https://wenku.baidu.com/view/7c424c17e3bd960590c69ec3d5bbfd0a7956d5b9.html
1、AXI简介
AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据阶段是分离的;支持地址不对齐的数据传输;同时在基于突发(burst_basded transcation)的传输中,只需要首地址;同时分离的读写数据通道,总共有5个独立的通道;并支持显著传输(outstanding transcation)访问和乱序访问; 非常容易添加流水线级数以获得高频的时序。AXI 是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA 标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。
突发传输一般表示的是两个设备之间进行数据传送的一种模式,也可将其称为突发模式下的数据传输。而突发(Burst)是指在同一行中相邻的存储单元连续进行数据传输的方式,连续传输的周期数就是突发长度(Burst Lengths,简称BL)。在突发传输模式下,多个数据单元当做一个单元(相当一个数据块)来传送,从而提高了传输效率。突发方式将整个信道专用于传送一个源节点的数据。具有突发方式功能的设备常常为成组方式操作提供最大吞吐率。
Outstanding: The ability to issue multiple outstanding addresses means that masters can issue transaction addresses without waiting for earlier transactions to complete. This featurecan improve system performance because it enables parallel processing of transactions.
发出A11的addr后,在完成D11~D14的transfer之前,发出A21叫做outstanding。
Out-of-order : The ability to complete transactions out of order means that transactions to faster memory regions can complete without waiting for earlier transactions to slower memory regions. This feature can also improve system performance because it reducesthe effect of transaction latency.
地址的顺序是A11,A21,A31,而返回数据顺序则可能是D2,D3,D1,这个过程叫做Out-of-order
Interleaving: Write data interleaving enables a slave interface to accept interleaved write data with different AWID values. The slave declares a write data interleaving depth that indicates if the interface can accept interleaved write data from sources with different AWID values.
D11和D12之间插入D23,叫做interleaving。
简单而言,outsatanding是对地址而言,一次burst还没结束,就可以发送下一相地址。而out-of-order和interleaving则是相对于 transaction,out-of-order说的是发送transaction和接收的cmd之间的顺序没有关系,如先接到A的cmd,再接到B的cmd,则可以先发B的data,再发A的data;interleaving指的是A的data和B的data可以交错,如A1 B1 A2 B2 B3……
2. AXI 特点
单向通道体系结构。信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上系统时,减少延时。
支持多项数据交换。通过并行执行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完成任务,在满足高性能要求的同时,又减少了功耗。
独立的地址和数据通道。地址和数据通道分开,能对每一个通道进行单独优化,可以根据需要控制时序通道,将时钟频率提到最高,并将延时降到最低。
3.AXI协议和AXI协议定义的基础事务
- AXI总线共有5个通道分别是read address channel,write address channel,read data channel, write data channel,write response channel。每一个AXI传输通道都是单方向的。
- 每一个transaction都有地址和控制信息在地址通道(address channel)中,用来描述被传输数据的性质。
- 读transcation的结构图如下:读请求和数据返回
- 写transcation的结构如下:
- 5、 这5条独立的通道都包含一个信息信号和一个双路的VALID、READY握手机制。
- 6、 信息源通过VALID信号来指示通道中的数据和控制信息什么时候有效。目地源用READY信号来表示何时能够接收数据。读数据和写数据通道都包括一个LAST信号,用来指明一个事物传输的最后一个数据。
- 7、 读和写事务都有他们自己的地址通道,这地址通道携带着传输事务所必须的地址和信息。
- dd