随着集成电路芯片的规模越来越大,IC的设计开始越来越复杂。基于IP核复用的设计方法因为能有效的降低复杂度,提高设计成功率,目前已成为主流的IC设计方法。而如何解决一个芯片内不同IP核间的通信问题是总体设计成功与否的关键。这种在一个芯片内部解决不同模块间通讯问题的总线称为片上总线

各大IC公司都推出了各自的片上总线标准,在业内影响较大的主要有三种:

  1. IBM公司推出的Core Connect
  2. ARM公司推出的AMBA(Advanced Microcontroller Bus Architecture, 高级微控制器总线架构,读作“阿姆吧”)
  3. OpenCores组织推行的wishbone

其中,AMBA因为这样或那样的原因已经成为业界的标准片上总线。AMBA是一套总线协议的统称,包含有多种适用于不同环境的总线协议,而AXI4总线是AMBA第四个版本中的一个总线协议。

1996年, ARM公司发布了AMBA版本1即AMBA1,其中定义了两个总线,ASB(Advanced System Bus, 高级系统总线) 和 APB(Advanced Peripheral Bus, 高级外设总线)

1999年,AMBA2发布,增加了AHB(AMBA Hign-Performance Bus, AMBA高性能总线),同时将APB总线升级成了同步总线。

2003年,AMBA3发布,此版本增加了AXI(Advanced Extensible Interface, 高级可扩展接口),以及ATB(Advanced Trace Bus, 高级跟踪总线)。这里的AXI因为属于AMBA3,又为了和后面的AXI4区分开,所以被称为AXI3。AXI3定位于高性能、高时钟频率的系统设计。

2010年,AMBA4发布,增加了AXI-ACE协议,为智能手机、平板电脑等富媒体系统的片上通讯提供更好的支持,这里的AXI即为AXI4,它是AXI3的更新,由Xilinx和ARM合作为基于FPGA的高性能系统共同设计完成,现在Xilinx公司旗下的众多IP均采用AXI4协议作为接口协议。ACE(AXI Coherency Extensions, AXI一致性扩展)是AXI4协议的扩展。另外,AMBA4还定义了LPI(Low Power Interface,低功耗接口), 用于芯片电源和时钟管理。

2017年,AMBA5发布,增加了CHI(Coherent Hub Interface,一致性集线器接口)协议,定位于服务器和网络应用。
关于AMBA1~5规范的各版本新增/更新了哪些协议,可参考ARM官网AMBA Specifications,我将其中的一些信息提炼为表格如下:

协议\架构 AMBA1 AMBA2 AMBA3 AMBA4 AMBA5
高级系统总线 ASB ASB ASB
高级外设总线 APB APB APB APB v1.0 APB v2.0
高级高性能总线 AHB AHB AHB-Lite v1.0
高级跟踪总线 ATB ATB v1.0 ATB v1.1
高级可扩展接口 AXI AXI3 AXI4
AXI4-Lite
AXI4-Stream v1.0
AXI5
AXI5-Lite
AXI一致性扩展 ACE ACE4
ACE4-Lite
ACE5
ACE5-Lite
ACE5-LiteDVM
ACE5-LiteACP
低功耗接口 LPI LPI
一致性集线器接口 CHI CHI
自适应流配置文件 ATP
通用闪存总线协议 GFBP GFBP
分布式转换接口 DTI DTI
本地转换接口 LTI LTI

我喜欢在学东西前先把它的历史搞清楚,因此有了此文。现在我还不很清楚AXI4协议细节,等我弄明白了会继续更新博客,敬请期待!
如有疏漏欢迎在评论区指出。

AXI4总线协议的发展历史相关推荐

  1. (4)ZYNQ AXI4总线协议介绍

    1.1 ZYNQ AXI4总线协议介绍 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)ZYNQ AXI4总线协议介绍: 5)结束语. 1.1.2 本节引言 " ...

  2. axi4协议的乱序_一篇文章读懂读透FPGA AXI4 总线协议

    新一代FPGA中采用的基本都是AXI4总线协议,例如与slaver侧的DMA或DDR等通信.这篇讲AXI4的文章感觉讲的很清楚. 0.绪论AXI是高级扩展接口,在AMBA3.0中提出,AMBA4.0将 ...

  3. HTTP 协议详解和版本介绍(HTTP发展历史)

    HTTP 协议的发展历史以及相应版本的相关功能的简单介绍 本文主要讲解 http协议 的发展历史: 1. http协议发展历史总览 . 2. http协议分析: HTTP版本各自的基本功能 . 3. ...

  4. 细说汽车电子通信总线之LIN总线协议详解

    内容提要 1. LIN总线概述 1.1 LIN总线特点及发展历史 1.2 LIN 总线协议的物理层(收发器) 2. LIN总线报文帧结构(Message Frame Structure)详解 2.1 ...

  5. FPGA控制DDR读写(AXI4总线接口)

    FPGA控制DDR读写(AXI4总线接口) 范围 本文适用于FPGA控制DDR读写 MIG核 MIG信号注释 DDR型号为 MT41K256M16TW-107 下面是MIG IP核的相关信号 图2.1 ...

  6. UDS协议发展历史(UDS是什么?)

    诊断协议那些事儿 本文为诊断协议那些事儿专栏首篇文章,旨在介绍诊断的起源.发展历史,让读者对诊断有一个基本的认识,明确UDS到底是什么. 关联文章: UDS的应用场景 UDS的OSI模型 UDS服务列 ...

  7. CAN总线开发一本全(1)- CAN总线发展历史

    CAN总线开发一本全(1)- CAN总线发展历史 文章目录 CAN总线开发一本全(1)- CAN总线发展历史 CAN 总线技术发展里程碑 从构思到第一个芯片 标准化和规格 ISO 11898 CAN时 ...

  8. AXI_02 AXI4总线简介(协议、时序)

    本篇文章内容在各大资料上都可找到,内容摘自专业书籍,这里作为该系列文章的原理篇. 由于该系列文章阅读有顺序性,所以请跳转至该系列文章第一篇从头开始阅读,并按照文章末尾指示按顺序阅读,否则会云里雾里,传 ...

  9. [HTTP] HTTP协议基础及发展历史

    网络协议分层 经典五层模型 低三层 物理层 主要作用是定义物理设备如何传输数据 数据链路层 在通信的实体间建立数据链路连接 网络层 为数据在结点之间传输创建逻辑链路 传输层 向用户提供可靠的端到端(E ...

最新文章

  1. 【map】【HDOJ】5233 Gunner II
  2. 总体经济拉动新引擎-农业大健康·张咏:疫情后谋定乡村振兴
  3. 四因素三水平正交试验表_软件测试|正交试验测试用例设计方法
  4. python数组展示_python如何显示数组
  5. spss练习数据_SPSS篇——如何在成千上百万个数据中标识重复个案
  6. C语言的Trim, LTrim, RTrim
  7. redis 学习笔记(1)-编译、启动、停止
  8. (51)FPGA面试题-Verilog中function与task之间的区别是什么?
  9. mysql 表 页 行_Mysql之InnoDB行格式、数据页结构
  10. C#高级编程(第七版)读书笔记(4)——对象和类型
  11. Ruby on Rails 实践
  12. HTML—讲解分割线标签、文字居中、背景图片充满全图
  13. [C++]实现10以内整数的简单科学计算器
  14. 并发 不同的隔离等级存在的问题
  15. C语言日志库zlog基本使用
  16. FL Studio21.0中文版本FL水果娘发布更新
  17. RTSP RTMP HLS HTTP全功能流媒体播放器SkeyeExPlayer开发计划
  18. 电子元器件采购需要掌握哪些基础知识?
  19. java awt生成签名图片消除锯齿化
  20. Ubuntu16.04安装搜狗拼音输入法(中文输入法)[转]

热门文章

  1. Codeforces 1344F Piet's Palette (线性代数、高斯消元)
  2. 多元函数的极限与连续(一)
  3. python四大数据类型_Python 四大数据类型总结
  4. unity创建一个简单对象的开销_Unity下简单对象池的创建与使用
  5. 耳机是怎么传输声音的_win7电脑耳机有声音外放没声音怎么办
  6. 客户端相关知识学习(三)之Android原生与H5交互的实现
  7. 有返回值的多线程demo
  8. Swift -- 6.函数和闭包
  9. mysql如何查找某字段所在表
  10. 如何打开.etl文件?