目录
引言
发展历程
第一代AMBA(AMBA 1)
第二代AMBA(AMBA 2)
第三代AMBA(AMBA 3)
第四代AMBA(AMBA 4)
第五代AMBA(AMBA 5)
AMBA协议简介
ASB(Advanced System Bus)
APB(Advanced Peripheral Bus)
AHB(AMBA High-performance Bus)
AXI(Advanced eXtensible Interface)
AHB-Lite
AXI4
AXI4-Lite
AXI4-Stream
ACE(AXI Coherency Extensions)
ACE-Lite
CHI(Coherent Hub Interface)
结语
引言
高级微控制器总线架构(AMBA)是一种免费提供、开放的标准,用于在系统级芯片(SoC)中连接和管理功能模块。它促进了多处理器设计的一次性正确开发,支持大量控制器和外围设备。
AMBA规范免费且平台独立,可以与任何处理器架构一起使用。由于其广泛的采用,AMBA拥有一个强大的合作伙伴生态系统,确保了来自不同设计团队和供应商的IP组件之间的兼容性和可扩展性。
近三十年来,AMBA一直是一个基础性的开放标准,并已在数十亿设备中出货。
发展历程
第一代AMBA(AMBA 1)
- 发布时间:1997年
- 特点:包括ASB(Advanced System Bus)和APB(Advanced Peripheral Bus)两种总线协议。ASB作为高性能总线,支持流水线操作和多主设备操作。APB作为低速总线,满足外设与微处理器的通信需求。
- 应用:主要应用于低带宽的外设,如UART、I2C等。
第二代AMBA(AMBA 2)
- 发布时间:1999年
- 特点:引入了AHB(AMBA High-performance Bus)协议,用于高性能数据传输。AHB支持burst传输和split事务处理,逐渐取代了ASB总线。
- 应用:广泛应用于ARM7、ARM9设计中,并持续应用于Cortex-M系列设计。
第三代AMBA(AMBA 3)
- 发布时间:2003年
- 特点:引入了AXI(Advanced eXtensible Interface)协议,支持点对点连接,克服了共享总线协议在可连接的agent数量方面的限制。同时,AHB协议缩减为AHB-lite,APB协议增加了PREADY和PSLVERR信号。
- 应用:AXI协议的引入是高性能系统设计的转折点,为系统性能的提升奠定了基础。
第四代AMBA(AMBA 4)
- 发布时间:2010年
- 特点:AXI协议得到增强,引入了QOS(Quality of Service)和long burst支持。根据应用不同,可选AXI4、AXI4-lite、AXI4-stream。同时,为满足复杂SoC的操作一致性,引入了ACE(AXI Coherency Extensions)和ACE-lite协议。
- 应用:适应了多核处理器和一致性缓存集成的需求,推动了SoC设计的进一步发展。
第五代AMBA(AMBA 5)
- 发布时间:2013年
- 特点:引入了CHI(Coherent Hub Interface)协议,作为对AXI/ACE协议的重新设计。CHI是基于数据包的通信协议,支持分层通信,包括协议层、链路层和物理层的实现,并支持基于QoS的流控制和重试机制。
- 应用:适应了HPC和数据中心市场异构计算的需求,为集成更多处理器核心、GPU、DSP、FPGAs、内存控制器和IO子系统提供了有效支持。
AMBA协议简介
ASB(Advanced System Bus)
- 第一代AMBA协议的一部分,主要作为高性能总线,支持多主设备操作和流水线操作。
APB(Advanced Peripheral Bus)
- 低速总线协议,设计用于连接低带宽外设,如I2C、UART等,不支持burst传输。
AHB(AMBA High-performance Bus)
- 高性能总线协议,支持burst传输和split事务处理,适用于连接高性能处理器、RAM、NAND FLASH等。
AXI(Advanced eXtensible Interface)
- 点对点连接协议,支持高带宽和低延迟的数据传输,适用于构建复杂的SoC设计。
AHB-Lite
- AHB的简化版本,适用于连接不需要burst传输和split事务处理的组件。
AXI4
- 第四代AMBA协议的一部分,增强了AXI协议,支持QOS和long burst,适用于更高性能的SoC设计。
AXI4-Lite
- AXI4的简化版本,适用于连接不需要burst传输和乱序传输的组件。
AXI4-Stream
- 针对以数据流为主导的传输,如视频流等应用,只支持数据从master流向slave。
ACE(AXI Coherency Extensions)
- 针对多核处理器和一致性缓存集成的SoC设计,提供了缓存一致性管理。
ACE-Lite
- ACE的简化版本,适用于那些没有自己的缓存但需要参与一致性域的组件。
CHI(Coherent Hub Interface)
- 针对异构计算和高性能计算环境中的SoC设计,提供了基于数据包的通信协议,支持分层通信和QoS。
结语
AMBA总线架构的发展历程体现了SoC设计对高性能、高带宽和低延迟通信需求的不断追求。随着技术的进步,AMBA总线将继续演进,以满足未来电子系统设计的新挑战。
参考资料:https://www.arm.com/en/architecture/system-architectures/amba