AXI总线学习

发布者:chinapxf最新更新时间:2016-03-08 来源: eefocus关键字:AXI  总线学习 手机看文章 扫描二维码
随时随地手机看文章
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 )。

同时相对AHB 接口的单向hready信号,AXI的5个通道由双向的valid和ready信号进行握手。同时在读写操作中,有last 信号表明当前传输的是最后一个数据。

 

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去掉了地址项,允许无限制的数据突发传输规模;

关键字:AXI  总线学习 引用地址:AXI总线学习

上一篇:PROFIBUS总线技术
下一篇:基于SOPC的PCI总线高速数据传输系统设计

推荐阅读最新更新时间:2024-05-03 00:14

VMM验证方法在AXI总线系统中的实现
1.引言 芯片验证(VerificatiON)越来越像是软件而不是硬件工作。这点已逐渐成为业界的共识。 本文以软件工程的视角切入,分析中科院计算所某片上系统(SoC)项目的验证平台,同时也介绍当前较为流行的验证方法,即以专门的验汪语言结合商用的验证模型,快速建立测试平台(test-bench)并在今后的项目中重用(reuse)之。 文中提及的高级验证语言、方法学、验证基本库和仿真模型,这一套方法在近几年中,正逐渐为业界广为采用。计算所的工作,就是以这些最新成果为起点,对基于AXI总线协议的SoC,建立测试平台。 这种新方法可大幅度提高芯片验证的效率,尤其使项目初期的投入极大地降低。原因之一是,面向对象编程等软件工程
[嵌入式]
单片机小白学习之路(二十七)---EEPROM-IIC总线理解(二)
目标:EEPROM-IIC总线理解(二) 在实际的应用中,保存在单片机RAM中的数据,掉电后数据就丢失了,保存在单片机的FLASH中的数据,又不能随意改变,也就是不能用它来记录变化的数值。但是在某些场合,我们又确实需要记录下某些数据,而它们还时常需要改变或更新,掉电之后数据还不能丢失,比如我们的家用电表度数,我们的电视机里边的频道记忆,一般都是使用EEPROM来保存数据,特点就是掉电后不丢失。我们板子上使用的这个器件是24C02,是一个容量大小是2Kbit位,也就是256个字节的EEPROM。一般情况下,EEPROM拥有30万到100万次的寿命,也就是它可以反复写入30-100万次,而读取次数是无限的。 24C02是一个基于I
[单片机]
单片机小白<font color='red'>学习</font>之路(二十七)---EEPROM-IIC<font color='red'>总线</font>理解(二)
现场总线CANopen学习总结笔记四---对象字典
4.3  对象字典  对象字典是所有数据结构的集合,这些数据涉及设备的应用程序、通信以及状态机,对象字典利用对象来描述CANopen  设备的全部功能,并且它也是通信接口与应用程度之间的接口。 CANopen协议已经将对象字典进行分配,用户可以通过同一个索引和子索引获得所有设备中的通信对象,以及用于某种设备类别的对象。 4.3.1  对象字典的分配  在索引6000h~9FFFh中,可以找到用于标准化设备子协议的对象描述。一个复杂的现场设备包括多个CANopen设备,CANopen设备里又包含一个通信专用的设备状态机和多个逻辑设备,而每个逻辑设备又包含多个虚拟设备。 一个现场设备可以包含一个或多个CANopen设
[嵌入式]
CAN总线学习系列之六——SJA1000重要的寄存器
要编写CAN总线通讯程序,只要了解CAN总线协议,熟悉SJA1000寄存器的配置,就可以完成CAN总线通讯。所以我们首先必须要详细了解SJA1000的寄存器。(1)SJA1000 的两个工作模式(Basic 和Peli)所使用的寄存器数目不同,功能也不尽相同。Basic CAN 有从0-31 共32 个寄存器可用,Peli CAN 有从0-127 共128 个寄存器可用。要实现CAN通讯,主要就是怎么配置这些寄存器。 (2)要掌握的重要寄存器:模式寄存器;命令寄存器;状态寄存器;中断寄存器;中断使能寄存器;总线定时器0,总线定时器1;输出控制寄存器;时钟分频寄存器;屏蔽寄存器0-3;验收代码寄存器0-3。 (3)模式寄存器的作用:控
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved