AMBA 5

AMBA 5 是可免费使用的最新版 AMBA 协议规范。此版本引入了一致性集线器接口 (CHI) 架构,用于定义连接完全一致处理器和高性能互连的接口。AMBA 5 还引入了 AXI5、ACE5 和 AHB5 协议,在前几代协议的基础上进一步扩展,增加了许多性能和可扩展性方面的特性,与 CHI 保持一致并对 CHI 做出了补充。


详细了解 AMBA AXI 和 CHI 规范的主要修订内容。

AMBA CHI

AMBA 一致性集线器接口 (CHI) 规范定义了完全一致处理器的连接接口,例如,可实现 Cortex-A76 和 Cortex-A65 及动态内存控制器(如 CoreLink DMC-620)到高性能、无阻塞互连(如 CoreLink CMN-600)的连接。此规范广泛适配移动端、网络、汽车和数据中心等需要一致性的场景。

 

AMBA CHI 规范使协议层和传输层彼此独立,从而支持多元化实现方案,实现性能、功耗和面积之间的良好平衡。此分层架构赋予互连设计高度灵活性,既可用作高效紧凑的交叉开关,也可用于大规模网状网络。

 

AMBA CHI 架构设计旨在保持稳定性能,确保不受组件数量和流量增加的影响。因此,进一步约束了请求端,要求请求端响应一致的监听事务,从而在系统拥堵时有效保证特定请求端的正常推进。通过将识别机制拆分为请求端标识和事务标识,可以显著提升互连结构的设计效率。

 

借助此协议提供的服务质量 (QoS) 机制,无需深入了解每个组件及交互方式,即可优化多处理器共享的系统资源分配。

 

部分主要特性包括:

 

  • 支持多处理器之间的高频、无阻塞的一致数据传输。
  • 采用分层模型分离通信和传输协议,实现灵活的拓扑结构,例如交叉开关、环形、网状或特定拓扑结构。
  • 具备缓存暂存功能,允许加速器或 IO 设备将关键数据暂存于 CPU 缓存中,以实现低延迟访问。
  • 支持远原子操作,便于互连组件对共享数据执行高频更新。
  • 提供端到端数据保护和错误信号指示。

 

AMBA CHI 规范 D 版本新增了 AMBA 接口奇偶校验扩展,用于满足汽车等应用领域对弹性或功能安全的要求。Cortex-A78AE 等 CPU 包含此特性,可有效应对具有多样化工作负载的安全关键型复杂任务。

 

AMBA CHI 规范 E 版本新增更多可选特性,例如内存标记 (MTE)、多接口支持、复制通道等,同时还引入了一系列新事务类型和优化机制。

 

AMBA CHI 规范AMBA CHI 简介指南AMBA CHI 中的原子事务

AMBA AXI 和 ACE

AMBA AXI(高级可扩展接口)和 ACE(AXI 一致性扩展)规范定义了在移动、消费电子、网络、汽车和嵌入式系统等广泛应用中实现高频、高带宽互连设计的多种协议。ACE5、ACE5-Lite 和 AXI5 协议在前几代协议的基础上进一步扩展,增加了许多性能和可扩展性方面的特性,与 AMBA CHI 保持一致并对 CHI 做出了补充。

 

部分新增功能和选项包括:

 

  • 原子事务
  • 缓存暂存
  • 数据保护和错误信号指示
  • Armv8.1 分布式虚拟内存 (DVM) 消息
  • 服务质量接受信号
  • 持久缓存维护操作 (CMO)
  • 缓存释放事务

 

AMBA AXI 和 ACE 规范 G 版本新增多个可选特性,例如:

 

  • 接口奇偶校验保护,用于满足汽车等应用领域对弹性或功能安全的要求。Cortex-A78AE 等 CPU 包含此特性,可有效应对具有多样化工作负载的安全关键型复杂任务。
  • 唯一 ID 指示器。
  • 内存分区和监控 (MPAM)。

 

此规范 H 版本增加了更多可选特性。例如:

 

  • 内存标记扩展 (MTE)
  • Armv8.4 DVM 消息
  • 预取请求和响应
  • 带缓存维护操作的写入
  • 无数据传输的写零操作

AMBA AHB

AMBA 高级高性能总线 (AHB) 规范定义了 Cortex-M 处理器广泛使用的接口协议,用于嵌入式设计和其他低延迟 SoC。AHB5 协议在上一代 AHB-Lite 的基础上进一步扩展,具有两个主要目标:

 

  • 完善 Armv8-M 架构,并将 TrustZone 安全基础从处理器扩展到整个系统。
  • 与 AMBA 4 AXI 规范保持一致,以实现以下目的:
    • 简化基于 Cortex-A 和 Cortex-M 的系统集成到 SoC 中的流程。
    • 支持统一的TrustZone 安全解决方案,囊括 AXI 和 AHB 系统。

 

此规范新增以下特性:

 

  • 在地址阶段引入安全/非安全信号指示,用于表明事务是否安全。
  • 新增扩展内存类型,以支持更复杂的系统。
  • 新增独占传输,以支持信号标类型操作。

 

随着 AHB-Lite 协议的逐渐普及,AHB5 对 AHB-Lite 协议的特性作出了进一步明确说明:

 

  • 允许选择多个从设备,以提高面积效率。
  • 支持单副本和多副本原子性,以实现多核心扩展。
  • 支持用户信号指示功能,允许用户扩展并与 AMBA 4 AXI 规范保持一致。

 

AMBA AHB 规范 C 版本新增了接口奇偶校验保护和写入选通等可选功能。

AMBA APB

此协议具有高度紧凑、低功耗的特性,允许将配置和低带宽流量与高性能互连隔离。APB 支持访问配置寄存器所需的低带宽事务和外围设备中的低带宽数据流量。

 

AMBA APB 规范 D 版本定义了 APB5 接口标准,并新增了接口奇偶校验保护和唤醒信号等特性。

AMBA ATB

AMBA ATB 作为与数据无关的接口,用于在跟踪系统的各组件之间传输跟踪信息。此规范的 C 版本新增了唤醒信号特性。

AMBA AXI-Stream

AMBA AXI-Stream 定义了一种单向数据传输接口,旨在大幅精简信号布线设计。主要特性包括:

 

  • 支持通过同一组共享线路传输单个和多个数据流。
  • 同一互连设备中支持多种数据宽度。
  • 非常适合在 FPGA 中实现。

 

AMBA AXI-Stream 规范 B 版本定义了 AXI5-Stream 标准,并新增了接口奇偶校验保护和唤醒信号等特性。

AMBA CXS

AMBA CXS 规范定义了一种基于信用机制的无阻塞流式接口协议,专为点对点分组通信应用设计。此规范经过针对性优化,可实现片上互连与 PCIe 控制器之间的 CCIX 和 CXL 数据包传输。CXS 还针对宽接口进行了优化,不仅能将数据包传递到高数据速率的外部接口,还支持将多个数据包合并到单次传输中。CXS 规范的 B 版本新增了对多协议流的支持。

AMBA ATP

AMBA 自适应流量配置文件 (AMBA ATP) 是一个合成流量框架,能够以简洁高效且可移植的方式,对系统发送端和接收端的高级内存访问行为进行建模。此流量配置文件可以跨多种工具和设计/验证环境使用,为复杂 SoC 的设计和验证提供支持。在其他用例中,此框架可实现更简单高效的仿真机制,并兼具可预测性和自适应能力。

AMBA DTI

AMBA 分布式转换接口 (DTI) 协议规范与 Arm System MMU 架构保持一致,旨在为转换服务定义可扩展的分布式消息传递协议。SMMU 实现通常包含三个组件:

 

  • 转换控制单元 (TCU),负责执行转换表遍历。
  • 转换缓冲单元 (TBU),负责拦截需要转换的事务,并缓存此类转换操作以减少事务延迟。
  • PCI Express (PCIe) 根复合体,其中包含地址转换服务 (ATS)。

 

在点对点协议 DTI 中,每个通道包含一条链路,链路一端为实现 ATS 的 TBU 或 PCIe 根端口,另一端为 TCU。此规范介绍了两种不同的协议:

 

  • DTI-TBU:定义了 TBU 和 TCU 之间的通信标准。
  • DTI-ATS:定义了 PCIe 根复合体和 TCU 之间的通信标准。

 

DTI 规范 E 版本引入了 DTI 协议版本 2 (DTIv2)。DTIv2 支持 Armv8.2 功能、内存系统资源分区和监控 (MPAM),并支持更多的未完成转换请求。

AMBA LTI

AMBA 本地转换接口 (LTI) 协议规范与 Arm System MMU 架构一致,并可与 AMBA DTI 协同工作,有效提高转换服务的性能和效率。作为一种点对点协议,LTI 定义了 I/O 设备和 TBU 之间的通信标准,允许设备直接为每个事务请求转换,并由 TBU 负责管理 TLB。借助此机制,可在满足排序要求前发起转换请求,并且不要求事务经过 TBU,由此可以显著提升性能,缩小芯片面积。

AMBA LPI

AMBA 低功耗接口 (LPI) 规范定义了 Q 通道和 P 通道接口标准,旨在管理 SoC 组件的时钟和电源功能。AMBA LPI 规范 D 版本新增了接口奇偶校验保护等可选特性。