一、AMBA总线标准
1. AMBA 全称“Advanced Microprocessor Bus Architectur”,是ARM公司提出的一种开放性的SOC总线标准,现已经广泛应用于RISC的内核上上。
2. AMBA定义了一种多总线系统(multilevel
busing system),包括系统总线和等级稍低的外设总线。 AMBA支持32位、64位、128位的数据总线,和32位的地址总线,同时支持byte和half-word设计。
3. AMBA总线标准定义了三组总线:AHB(AMBA高性能总线)、ASB(AMBA系统总线)、APB(AMBA外设总线)。
AHB (Advanced High-performance Bus)先进的高性能总线
ASB (Advanced System Bus)先进的系统总线
APB (Advanced peripheral Bus)先进的外设总线
4. AHB 和 ASB都可称为高速总线,主要负责处理器、DMA控制器、RAM、ROM等的接口。
5. APB是低速总线,主要负责外设接口(如:uart、io、key、AD/DA等外设),所以把APB称作"外设总线"。
6. AHB 和 APB 之间是通过Bridge(桥接器)连接的。
二、Bus Bridges 总线桥
1. 总线的作用:一个系统中的各个模块之间通过总线进行相互通信,也就是把数据和地址从设备A搬运到设备B上。
2. 总线桥的理解:
如果说设备A和设备B具有一致性,那么设备A和设备B可以直接挂在同一个总线上,并直接解读总线上的数据。但是,如果设备A和设备B不具有一致性,那么设备A和设备B就必须挂在两条不同的总线上,这时候我们就需要一个“翻译”,把设备A上的总线上的数据和地址转换成设备B可以解析的格式,然后放到设备B的总线上,这个“翻译”就是“Bus
Bridge”,
LPC11C14(M0)总线图:(帮助理理解总线桥)
三、AMBA总线机器结构
对AMBA总线结构分析:
1. 从上到下采用的总线有:
AXI BUS
//64位高速总线,通常接高速设备(如:手机GPU)
AHB BUS
//32位高速总线,主要负责处理器、DMA控制器、RAM、ROM等的接口。
APB BUS
//外围设备总线,主要负责外设接口(如:uart、io、key、AD/DA等外设),所以把APB称作"外设总线"。
I2C BUS、SPI BUS //I2C总线,SPI总线
(1)从上到下速度依次减小;
(2)Bridge Bus总线桥作为每个总线的桥接器;