AMBA总线概述
基本情况
AMBA总线协议(Advanced Microcontroller Bus Architecture)是一套由ARM提供的互连规范,该规范标准化了各种IP之间的芯片通信机制。这些设计通常有一个或多个微处理器以及集成其他一些组件——内部存储器或外部存储器桥、DSP、DMA、加速器和各种其他外围设备,如USB、UART、PCIE、I2C等。
AMBA协议的主要目的是用一种标准和高效的方法来重用这些跨多个设计的IP。
作为ARM公司研发推出的一种高级微控制器总线架构(Advanced Microcontroller Bus Architecture)。AMBA具有以下发展历史:
AMBA 1.0
ASB 和 APB
AMBA 2.0
AHB, ASB 和 APB
AMBA 3.0
AMBA Advanced eXtensible Interface (AXI)
AMBA 4.0
AXI4,AXI4-lite,AXI4-stream,ACE,ACE-lite
AMBA 5.0
AXI5,AXI5-lite,ACE5,ACE5-lite,ACE5-liteDVM
其中AXI是在AMBA3.0的协议中增加的,在xilinx FPGA中十分常见,它可以用于ARM和FPGA的高速数据交互。剩下的三种是在AMBA2.0协议中定义的总线标准。AHB是高级高性能总线,通常用于CPU和高性能设备之间的交互,类比于现代PC的北桥,ASB常用于高性能系统模块间的交互,在开发中相比剩下的几种不是非常常用。而APB是高级外设总线,通常和AHB相连接,来访问一些低速的外设。
下图展示了一个典型的基于AMBA的微控制器架构。
AMBA总线简介
1、ASB
ASB总线是位于APB总线架构之上的用于高性能的总线协议,具有突发连续传输,单管道数据传输,多总线主控制器等特点。
ASB总线通过DMA和DSP,允许在总线上存在一个或多个主控制器。虽然APB总线上可以挂接慢速外设,但是也允许在ASB上挂接一些慢速外设作为从设备,不过它们通常还是挂接在APB总线上。ASB的特点列举如下:
高速总线
流水线操作
支持多个总线主设备
支持burst传输
总线带宽:8、16、32bit/s
三态、双向总线(不适合做DFT)
上升沿或下降沿触发
2、APB
高级外围设备总线(APB)用于连接低带宽的外围设备。它是一个简单的非流水线协议。读写操作共享同一组信号,不支持burst数据传输。其特点列举如下:
低速总线、低功耗
接口简单
在Bridge中锁存地址信号和控制信号
适用于多种外设
上升沿触发
3、AHB
高级高性能总线(AHB)用于连接共享总线上需要更高带宽的组件。这些slave组件可以是内部内存或外部内存接口、DMA、DSP等。AHB可以通过burst数据传输来获得更高的带宽。AHB总线的特点包括
高速总线,高性能
2级流水线操作
支持最多16个总线主设备
支持burst传输
总线带宽:8、16、32、64、128bit/s
上升沿触发
4、AHB-lite
AHB-lite协议是AHB的一个简化版本。简化后只支持一个主设计,消除了对任何仲裁、重试、分割事务等的需求。
5、AXI
高级可扩展接口(AXI)适合于高带宽和低延迟互连。这是一个点对点的互连,并克服了AHB、APB等共享总线协议在可连接的代理数量方面的限制性。该协议支持多个outstanding的数据传输、burst数据传输、单独的读写通道和支持不同的总线宽度。
6、AXI-lite
axi-lite协议是AXI的简化版本,简化后不支持突发数据传输(burst length=1)。
7、AXI-stream
AXI-Stream协议是AXI协议的另一种风格,它只支持数据流从master 流到slave。与完整的AXI或AXI-lite不同,AXI-stream 协议中没有单独的读/写通道,因为其目的是只在一个方向上流。并且在AXI-Stream中没有地址的概念,是一种流式的数据传输。
8、ACE-AXI
ACE-AXI协议是AXI4协议的扩展,应用于在一个芯片上集成多个CPU核心与一致性cache的场景。ACE协议扩展了AXI读写数据通道,同时引入了单独的snoop 地址、snoop 数据和snoop 响应通道。这些额外的通道提供了实现基于snoop 的一致性协议的机制。
9、ACE-Lite
对于没有自己cache的agents ,但仍属于可共享一致性域的一部分,如DMA或网络接口agent,使用ACE-lite协议实现这种“单向”一致性。
10、CHI
ACE协议作为AXI的扩展而开发,以支持一致性互连。ACE协议使用了master/slave之间的信号电平通信,因此互连需要大量的线和增加的通道来进行snoops 和响应。这对于具有2/4核移动SOC 的小一致性clusters非常有效。随着SOC上集成越来越多的一致性clusters ——AMBA5修订版引入了CHI协议。CHI协议使用基于分层分组的通信协议,具有协议、链路层和物理层实现,还支持基于QoS的流控制和重试机制。
相关文章
- Asmack开发系列之XMPP概述
- 【华为云技术分享】ARMv8-A存储模型概述(2)
- 视频图像分割研究与实现(二):常见图像和视频分割方法概述
- CCNA2.0笔记_TCP/IP概述
- 第1章 1.7计算机网络概述--理解OSI参考模型分层思想
- 斯皮尔曼相关(Spearman correlation)系数概述及其计算例
- Atitit 文件系统概论 艾提拉著 目录 1. NTFS系统1 1.1. NTFS文件系统概述1 1.2. 1.1 文件系统简介 1.2 NTFS文件系统1 1.3. 第2章
- Atitit 操作系统原理索引 目录 1. 操作系统原理(cpu,process,mem,file,device mana)1 1.1. 第1章 操作系统概述1 2. 处理器管理2 2.1.
- atitit.atiOrmStoreService 框架的原理与设计 part1 概述与新特性
- NLP之GPT-1/GPT-2:GPT-1的概述(简介、原理、意义、结构、创新点、优缺点、数据集)、为何单向Transfo、模型结构、训练过程,GPT-2的概述(大数据、大模型、灵感点)之详细攻略
- DL之Attention:Attention注意力机制算法的起源与盛行及其长距离有效的原因、概述(背景/本质/与ED框架关系/架构/优缺点/扩展,理解,本质,变种)、案例应用(CV/NLP)之详细攻略
- DayDayUp:计算机技术与软件专业技术资格证书之《系统集成项目管理工程师》课程讲解之项目管理概述、项目管理基本基础知识、项目立项管理相关知识
- 数据库原理之数据库概述(下)
- Ansible 系统概述与部署
- [ 云原生 | 容器 ] 虚拟化技术之容器与 Docker 概述