AMBA

AMBA(Advanced Microcontroller Bus Architecture)片上总线是ARM公司提出的一套总线标准, AMBA 协议是用于连接和管理片上系统 (SoC) 中功能块的开放标准和芯片上互连规范。使用它,可以帮助开发带有大量控制器和外设的多处理器设计。AMBA 通过使用 ACE、AXI、AHB、APB 和 ATB 的规范对 SoC 模块的共同主干进行定义,这有助于设计的重复使用。AMBA 协议规范和设计工具(ACE、ACE-Lite、AXI4、AXI4-Lite、AXI4-Stream、AXI3、ATB、AHB、AHB-Lite 和 APB)的 ARM 文档集。

APB一般用来连接配置接口,AHB和AXI多用来接数据传输接口,从性能和设计复杂度来看 APB < AHB < AXI。

APB (Advanced Peripherals Bus)是低带宽的总线,主要用来连接外设,比如系统外设的寄存器接口。

AHB(Advanced High-performance Bus)是AMBA2里定义的总线协议。它支持单边时钟协议,单周期总线权限交接,64/128位总线带宽等特性。

AXI(Advanced eXtensible Interface)是最初AMBA3定义的总线标准。目标服务高性能和高时钟频率的系统设计。它提供单独的地址/控制和数据周期,支持非对齐的数据传输,爆发(burst)型总线事务等特性。AXI3和AXI4就是AMBA3和AMBA4定义的高速总线标准。

APB和AHB用在ARM7, ARM9和Cortex-M的ARM处理器中。AXI3应用比较广泛,比如Cortex-A9,Cortex-R5。AXI4在最新的Cortex-A7和Cortex-A15使用。

 

注:其他的片上总线有wishbone,IBM CoreConnect,Open Core Protocol (OCP),Altera Avalon总线等。

 

参考文献:

[1] AMBA. https://en.wikipedia.org/wiki/Advanced_Microcontroller_Bus_Architecture.

[2] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.set.amba/index.html.

原文地址:https://www.cnblogs.com/dpc525/p/4818144.html