AXI(Advanced eXtensible Interface)是一种总协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高功能、高带宽、低推迟的片内总线。它的地址/操控和数据相位是别离的,支撑不对齐的数据传输,一起在突发传输中,只需求首地址,一起别离的读写数据通道、并支撑明显传输拜访和乱序拜访,并愈加简略并行时序收敛。AXI是AMBA 中一个新的高功能协议。AXI 技能丰厚了现有的AMBA 规范内容,满意超高功能和杂乱的片上体系(SoC)规划的需求。
AXI 有读地址和操控、读数据、写地址和操控、写数据、写呼应5个通道。
操控和数据通道别离,能够带来许多优点。地址和操控信息相对数据的相位独立,能够先发地址,然后再是数据,这样自然而然的支撑明显操作,也便是outstanding操作。Master拜访slave的时分,能够不等需求的操作完结,就宣布下一个操作。这样,能够让slave在操控流的处理上流水起来,到达提速的效果。一起关于master,或许需求对不同的地址和slave就行拜访,所以能够对不同的slave 接连操作。而这样的操作,因为slave回来数据的先后可能不依照master 宣布操控的先后进行,导致呈现了乱序操作(out of order )。
AXI的功能
AXI 能够使SoC 以更小的面积、更低的功耗,取得愈加优异的功能。AXI取得如此优异功能的一个首要原因,便是它的单向通道体系结构。单向通道体系结构使得片上的信息流只以单方向传输,削减了延时。
挑选选用何种总线,咱们要评价究竟怎样的总线频率才干满意咱们的需求,而一起不会耗费过多的功耗和片上面积。ARM一向致力于以最低的本钱和功耗寻求更高的功能。这一尽力现已经过接连一代又一代处理器内核的发布得到了完成,每一代新的处理器内核都会引进新的流水线规划、新的指令集以及新的高速缓存结构。这促成了很多立异移动产品的诞生,而且推动了ARM架构向功能、功耗以及本钱之间的完美平衡开展。
AXI总线是一种多通道传输总线,将地址、读数据、写数据、握手信号在不同的通道中发送,不同的拜访之间次序能够打乱,用BUSID来表明各个拜访的归属。主设备在没有得到回来数据的情况下可宣布多个读写操作。读回的数据次序能够被打乱,一起还支撑非对齐数据拜访。
AXI总线还界说了在进出低功耗节电形式前后的握手协议。规则怎么告知进入低功耗形式,何时关断时钟,何时敞开时钟,怎么退出低功耗形式。这使得一切IP在进行功耗操控的规划时,有据可依,简略集成在一致的体系中。
AXI的特色
单向通道体系结构。信息流只以单方向传输,简化时钟域间的桥接,削减门数量。当信号经过杂乱的片上体系时,削减延时。
支撑多项数据交换。经过并行履行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完结任务,在满意高功能要求的一起,又削减了功耗。
独立的地址和数据通道。地址和数据通道分隔,能对每一个通道进行独自优化,能够依据需求操控时序通道,将时钟频率说到最高,并将延时降到最低。
增强的灵活性。AXI技能具有对称的主从接口,不管在点对点或在多层体系中,都能非常方便地运用AXI技能。
AXI4的作业形式
握手机制
AXI4所选用的是一种READY,VALID握手通讯机制,即主从模块进行数据通讯前,新依据操刁难各所用到的数据、地址通道进行握手。首要操作包括传输发送者A比及传输接受者B的READY信号后,A将数据与VALID信号一起发送给B。如下图所示:
axi总线的五个通道:
- 读地址通道,包括ARVALID, ARADDR, ARREADY信号;
- 写地址通道,包括AWVALID,AWADDR, AWREADY信号;
- 读数据通道,包括RVALID, RDATA, RREADY, RRESP信号;
- 写数据通道,包括WVALID, WDATA,WSTRB, WREADY信号;
- 写应对通道,包括BVALID, BRESP, BREADY信号;
- 体系通道,包括:ACLK,ARESETN信号;
其间ACLK为axi总线时钟,ARESETN是axi总线复位信号,低电平有用;读写数据与读写地址类信号宽度都为32bit;READY与VALID是对应的通道握手信号;WSTRB信号为1的bit对应WDATA有用数据字节,WSTRB宽度是32bit/8=4bit;BRESP与RRESP分别为写回应信号,读回应信号,宽度都为2bit,‘h0代表成功,其他为过错。
A.读操作:
次序为主与从进行读地址通道握手并传输地址内容,然后在读数据通道握手并传输所读内容以及读取操作的回应,时钟上升沿有用。如图所示:
B.写操作:
次序为主与从进行写地址通道握手并传输地址内容,然后在写数据通道握手并传输所读内容,最终再写回应通道握手,并传输写回应数据,时钟上升沿有用。如图所示:
axis分为:
- tready信号:从告知主做好传输预备;
- tvalid信号:主告知从数据传输有用;
- tlast信号:主告知从该次传输为突发传输结束;
- tdata信号:数据,可选宽度32,64,128,256bit
- tstrb信号:为1的bit为对应tdata有用字节,宽度为tdata/8
- tuser信号 :用户界说信号,宽度为128bit
- aclk信号:总线时钟,上升沿有用;
- aresetn信号:总线复位,低电平有用;
通讯时序如图所示:
axi与axis是AXI4总线中通讯杂乱度较低的两条总线,最大开发难度存在于axi的操控平面向axis的数据平面下发参数时,因为axi与axis时钟频率不同而发生的跨时钟域数据传输问题。
AXI4:首要面向高功能地址映射通讯的需求;
AXI4-Lite:是一个简略地吞吐量地址映射性通讯总线;
AXI4-Stream:面向高速流数据传输;
AXI4总线分为主、从两头,两者间能够接连的进行通讯。
ISE从12.3版别,Virtex6,Spartan6芯片开端对AXI4总线供给支撑,而且跟着Xilinx与ARM的协作面逐步打开而得到大力推广。
AXI4的优势
1.经过一致的AXI接口,开发者为开发ip core只需求学习一种协议即可;
2.AXI4是面向地址映射的接口,答应最大256轮的数据突发传输;
3.AXI4-Lite是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元;
4.AXI4-Stream去掉了地址项,答应无限制的数据突发传输规划;