一、AXI总线概述
1.1 AXI总线的发展历史
AXI总线,全称是Advanced eXtensible Interface。它是ARM公司推出的AMBA总线规范中的一员。
说到AMBA,我记得2003年我刚入行那会儿,主流还是AHB和APB。那时候做SoC设计,AHB用来接高速模块,APB接低速外设,倒也够用。但随着芯片越做越复杂,多核处理器、高性能DMA、高速外设越来越多,AHB的局限性就暴露出来了——它只有一个master,同一时间只能有一笔交易在进行。
ARM公司显然也看到了这个问题。于是在2003年,AMBA 3.0规范中首次引入了AXI总线。说实话,当时我觉得这玩意儿太复杂了,通道就有5个,还支持乱序传输,跟AHB完全不是一个量级的东西。
到了2010年,ARM发布了AMBA 4.0规范,AXI4正式登场。嗯,这里有个小插曲——AXI4和AXI3之间其实不完全兼容,我在一个项目中就吃过这个亏,后面会细说。
再后来,2013年的AMBA 5.0又推出了ACE和CHI协议,但那是针对多核一致性设计的,咱们这门课先不展开。
1.2 AXI协议在SoC设计中的核心地位
你想想看,现在的SoC芯片里,CPU、GPU、DSP、NPU、DDR控制器、PCIe控制器……这么多IP核要互相通信,总得有个统一的接口标准吧?AXI就是这个标准。
我个人习惯把AXI比作芯片内部的「高速公路」。AHB是乡间小路,APB是胡同小巷。而AXI呢?双向八车道,支持超车(乱序)、支持多辆车同时上路(多笔交易并行)。
为什么AXI这么重要?说白了就三点:
- 高性能:独立的地址/数据通道,读写并行,支持burst传输
- 标准化:ARM生态下的IP核几乎都支持AXI接口,你不用自己造轮子
- 可扩展:从低端MCU到高端服务器芯片,AXI都能用
核心观点:在当今的SoC设计中,AXI总线已经成为了事实上的片上互联标准。不管你用不用ARM的IP,只要做复杂SoC,就绕不开AXI。
我在一个AI芯片项目中,需要把NPU、DDR控制器、PCIe、视频编解码器全部挂到AXI总线上。如果当时没有AXI这种成熟的总线协议,光是自己定义接口规范就得花好几个月。
1.3 AXI3与AXI4的主要区别
好,接下来咱们聊聊AXI3和AXI4的区别。这个问题面试经常被问到,也是实际项目中容易踩坑的地方。
| 特性 | AXI3 | AXI4 |
|---|---|---|
| 突发长度 | 1~16 | 1~256(INCR模式) |
| 写响应通道 | 必须使用 | 必须使用 |
| 窄传输 | 支持 | 支持 |
| 非对齐传输 | 支持 | 支持 |
| 写数据通道 | WID信号存在 | WID信号移除 |
| 原子操作 | 不支持 | 支持(AXI4-Stream除外) |
| QoS支持 | 不支持 | 支持(AXI4) |
最大的区别,我个人觉得是两点:
1. 突发长度从16扩展到256
AXI3最多只能发16笔数据的burst,而AXI4可以发到256笔。这个改进对DDR控制器这类需要大块数据传输的场景特别有用。我曾经做过一个视频处理芯片,需要从DDR读取一帧图像的数据。用AXI3的话,一帧数据要拆成几十个burst,效率很低。换成AXI4后,一个burst就能搞定,带宽利用率提升了30%以上。
2. WID信号被移除
这个改动很多人不理解。WID是写事务ID,在AXI3中用来标识不同的写事务。但实际使用中发现,WID信号增加了互联逻辑的复杂度,而且容易出错。AXI4干脆把它去掉了,写事务的ID直接通过AWID传递。嗯,这里要注意:如果你把AXI3的IP直接接到AXI4的互联上,WID的处理就是个坑。
避坑指南:我曾经在一个项目中,把AXI3的DMA控制器接到了AXI4的总线矩阵上。结果发现写数据总是乱序,查了两天才发现是WID信号没处理好。解决方案是在DMA的接口上加一个AXI3到AXI4的桥接逻辑,把WID映射到AWID上。
3. 其他差异
- QoS支持:AXI4增加了QoS(服务质量)信号,可以为不同的事务设置优先级。这个在多媒体SoC中特别有用,比如视频数据可以设置高优先级,保证不卡顿。
- 原子操作:AXI4支持原子操作(Atomic Access),包括原子交换、原子比较等。这对多核处理器之间的同步很有帮助。
知识体系结构图
下面这张图是我自己画的,把AXI总线的发展脉络和核心知识点串了起来:
小技巧:如果你刚开始接触AXI,我建议先从AXI4学起。毕竟现在新设计的IP基本都是AXI4接口,AXI3已经逐渐被淘汰了。但如果你要维护老项目,AXI3的知识还是得懂一些。
好了,这一章的内容就到这里。AXI总线的发展历史、核心地位、以及AXI3和AXI4的主要区别,咱们都聊清楚了。下一章我会深入讲解AXI的5个独立通道,以及它们之间是如何协同工作的。
可可精品资料库