跳至正文

AXI4总线协议的发展历史


随着集成电路芯片的规模越来越大,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,低功耗接口), 用于芯片电源和时钟管理。

2013年AMBA5发布,增加了CHI(Coherent Hub Interface,一致性集线器接口)协议,定位于服务器和网络应用。

AMBA 5 – Arm®

关于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协议细节,等我弄明白了会继续更新博客,敬请期待!


参考

  1. 何宾,《Xilinx ZYNQ-7000嵌入式系统设计与实现 基于ARM Cortex-A9双核处理器和Vivado的设计方法(立体化教程)》 ,2016版,33~34页。

如果本文对你有所帮助,欢迎点赞、转发、收藏、评论让更多人看到,赞赏支持就更好了。

如果对文章内容有疑问,请务必清楚描述问题,留言评论或私信告知我,我看到会回复。


徐晓康的博客持续分享高质量硬件、FPGA与嵌入式知识,软件,工具等内容,欢迎大家关注。

0 0 投票数
文章评分
订阅评论
提醒
0 评论
内联反馈
查看所有评论
0
希望看到您的想法,请您发表评论x