AMBA:Advanced Microcontroller Bus Architecture,是ARMA公司的片内互联总线协议。性能
1995 - AMBA1.0 APB外设总线及ASB系统总线发布。优化
1999 - AMBA2.0 AHB系统总线发布,APB总线升级为同步总线。spa
2003 - AMBA3.0 高性能互联协议AXI发布,APB总线扩展,AHB-Lite协议发布。B)设计
AHB用于高性能、高时钟频率的系统模块,支持处理器,片上存储器,片外存储器以及低功耗外设宏功能单元之间的有效链接。接口
ASB用在并不须要AHB高性能特征的地方。ip
APB优化了功耗,下降了接口复杂度,用于低功耗外设。同步
AXI是AMBA总线协议的3.0版本。AXI协议定位于高性能、高时钟频率系统设计,而且带有不少适合于高速深亚微米互联的特性。it
一,关于AXI总线的outstanding 和out of orderast
首先说明一点,outstanding和out of order,都是指AXI,AHB没有outstanding 和out of order。dva
Outstanding操做是指Master在前一个操做尚未完成的时候,发出下一个操做或下几个操做。Outstanding操做须要Slave的支持,Slave必须声明能够支持的Outstanding操做的深度,AXI兼容不支持Outstanding操做的slave(即Outstanding的深度为1)。
相对于Outstanding操做,Out-of-order操做主要是针对Slave来讲的,指Slave返回的数据的顺序与Master发出指令的顺序不一致。形成这种不一致的缘由有如下两个:
AXI使用ID来处理乱序,ID由ARID[3:0]信号或AWID[3:0]信号肯定。AXI传输顺序须要遵照的规则以下:
AXI协议中涉及到顺序的操做主要包括读数据乱序(Out-of-Order Read)、写数据间插(Write Interleave)、读和写操做交互三种状况。
需注意的几点:
1,AXI和AHB总线都有主从之分,而APB总线无主从之分。