12

Dinglei_hello · 2021年08月25日

AMBA AHB协议和AXI协议有什么区别?

AHB : Advanced High-performance Bus

AXI : Advanced Xtensible Interface

AHB是AMBA的协议之一,如果我们翻看AMBA协议的演进历史,我们会惊叹这么原始的东西现在依然流行。

aijishu_640.gif

但是显然,如果你想从事处理器或者SoC的研发,光了解AHB是远远不够的。随着信息社会对芯片计算能力需求的增加,AHB协议已经无法满足这些实际业务的带宽需求了。

这时候AXI协议就粉墨登场了,其最主要的特点就是支持'outstanding' 事务,即在一个事务尚未完成的时候发起另外一个事务的能力。虽然AHB协议支持“'split' ”传输,但是效果不及AXI的'outstanding'能力。

下面列举一些AMBA AHB和AXI协议之间的一些差异供大家比较:

1、AHB具有1个地址通道,1个读取数据通道,1个写入数据通道;AXI具有1个读地址通道,1个写地址通道,1个读数据通道,1个写数据通道。1个写响应通道,它总共有5个并行通道。

2、AHB不支持“outstanding ”;AXI支持“outstanding ”

3、AHB中如果时序无法满足,无法在协议中打拍;AXI中可以在这5个通道中的任何一个通道的路径中打拍,这有助于实现更高的时钟频率。

4、AHB master和slave之间的连线较少;由于AXI有5个并行通道,它有更多的连线,这可能会导致后端布线拥塞

aijishu_640 (1).gif

5、AHB不支持side-band;AXI支持side-band(使用AXI中AxUSER域)

6、AHB不支持QoS;AXI支持QoS

7、AHB burst长度是固定的(1/2/4/8,除了INCR类型),只要它不跨越4K边界;AXI中的burst长度可以是1\~16中的任意值(AXI4中的incr类型可以支持1\~256)

8、AHB“INCR”类型可以有任何长度,不需要在burst传输开始时指定;AXI INCR类型的传输需要在burst传输的开始时指定AxLEN

9、AHB是保序(收到响应和发起读写的顺序相同)的,因为在AHB协议中一次只有1个读写事务请求在执行 ;AXI支持多个“outstanding ”,不同AxID请求之间可能乱序,但是相同AxID的请求仍然是保序的

10、AHB相比AXI功耗较低

11、AHB不支持Write Strobe;AXI支持Write Strobe

12、AHB支持Lock传输;AXI3支持Lock传输,AXI4不支持Lock传输

13、AHB不支持Exclusive传输;AXI支持Exclusive传输

END

作者: 验证哥布林
原文链接:https://mp.weixin.qq.com/s/4oGkOZ0uplmbo7rSPvq4Lg
微信公众号:
芯片验证工程师.jpg

推荐阅读

更多IC设计技术干货请关注IC设计技术专栏。
推荐阅读
关注数
20179
内容数
1307
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息