引流关键词: bit.LITTLE,GPU,CCI,cache,缓存一致性,DSU

快速链接:
.
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈

  • 付费专栏-付费课程 【购买须知】:
  • 【精选】ARMv8/ARMv9架构入门到精通-[目录] 👈👈👈

相关链接:
01-缓存一致性—基础知识
02-缓存一致性—实现big.LITTLE、GPU 计算和企业应用
03-缓存一致性—提高性能和引入CoreLink CCI-500

目录

        • 1、实现硬件一致性
        • 2、移动应用程序:big.LITTLE 处理
        • 3、移动应用:GPU 计算
        • 4、企业应用:网络和服务器
        • 5、CoreLink CCI-400 Cache Coherent Interconnect
        • 6、总结
        • 7、参考

1、实现硬件一致性

ARM 的第一个AMBA 4 ACE 实现包括 ARM CoreLink CCI-400 缓存一致性互连、ARM Cortex-A15和Cortex-A7处理器。这些产品于 2011 年首次发布给我们的芯片合作伙伴,我们已经看到第一批ARM big.LITTLE产品于 2013 年上市。

迄今为止,CoreLink CCI-400 已获得超过 24 个合作伙伴的许可,用于移动和企业应用程序,例如网络或微服务器。CoreLink CCI-400 最多支持两个 AMBA 4 ACE 处理器集群,允许最多八个处理器内核查看相同的内存视图并运行 SMP 操作系统。

2、移动应用程序:big.LITTLE 处理

CoreLink CCI-400 支持所有 big.LITTLE 组合,包括 Cortex-A15 + Cortex-A7、Cortex-A17 + Cortex-A7 和 Cortex-A57 + Cortex-53,完全支持 ARMv8-A,包括 64 位。big.LITTLE 处理是来自 ARM 的一项功率优化技术,其中高性能“大”内核和效率调整的“小”内核与软件相结合,以在正确的时间将应用程序动态转换到正确的处理器。

硬件一致性是 big.LITTLE 处理的基础,因为它允许 big 和 LITTLE 处理器集群查看相同的内存视图并运行相同的操作系统。big.LITTLE 软件(例如 Global Task Scheduling (GTS))在给定时间将任务放置在适当的核心上。对于中等工作负载,所有处理都可以在 LITTLE 核心上执行,而大核心则关闭。如果工作负载需要更高的性能,则会启动大内核并迁移任务,而其他中等工作负载继续在小内核上运行。big.LITTLE GTS 允许 SoC 上的所有内核同时运行,例如具有四个 big 和四个 LITTLE 的设备将作为一个八核处理器出现在操作系统中。

3、移动应用:GPU 计算

使用OpenCL 1.1 Full Profile 和 Google RenderScript 计算等 API 进行 GPU 计算,释放 CPU 和 GPU 的综合处理能力。

ARM Mali -T600系列和Mali-T760 GPU支持 AMBA 4 ACE-Lite`与CPU IO一致性。这意味着 GPU 可以直接从 CPU 缓存中读取任何共享数据,并且写入共享内存将自动使 CPU 缓存中的相关行无效。硬件一致性降低了 CPU 和 GPU 之间共享数据的成本,并允许更紧密的耦合。

GPU 计算应用程序包括:计算摄影、计算机视觉、针对超高清分辨率(如 HEVC 和 VP9)的现代多媒体编解码器、复杂图像处理和手势识别。

ARM 是异构系统架构 (HSA) 基金会的创始成员之一。该基金会旨在提供一种免版税规范,以便更轻松地利用 SoC 中的异构 CPU、GPU 和 DSP 硬件。这包括共享虚拟内存和完全一致 GPU 的路线图。这些技术将进一步降低处理引擎之间共享数据的成本。

4、企业应用:网络和服务器

网络和服务器等企业应用程序具有高性能串行接口,例如 PCI Express、串行 ATA 和以太网。在大多数应用程序中,所有这些数据都将被标记为共享,因为在许多情况下 CPU 需要从这些串行接口访问数据。下图显示了一个简化的示例系统。

CCI-400 Cache Coherent Interconnect 被设计成一系列小型企业应用,包括住宅网关、安全设备、WLAN 企业接入点、工业通信和微型服务器。这些应用程序使用一系列 ARM 处理器,具体取决于从 Cortex-A7 到 Cortex-A57 的性能要求,最多总共有 8 个内核,没有 L3 缓存。

ARM 拥有一系列互连产品,可在一系列内核数量上扩展性能:

  • CoreLink CCI-400 Cache Coherent Interconnect
    最多 2 个集群,8 个内核
  • CoreLink CCN-504 Cache Coherent Network
    最多 4 个集群,16 个内核
    集成 L3 缓存,2 通道 72 位 DDR
  • CoreLink CCN-508 Cache Coherent Network
    多达 8 个集群,32 个内核
    集成 L3 缓存,4 通道 72 位 DDR

5、CoreLink CCI-400 Cache Coherent Interconnect

下表详细介绍了 CoreLink CCI-400 的主要特性:

两个最常见的问题是:它有多大,运行速度有多快?CoreLink CCI-400 有许多配置选项,包括寄存器阶段和事务跟踪器大小,允许针对给定应用优化互连区域和性能。在低端,门帐户下降到 10 万门。在时钟速度方面,我们的基准实施试验以 533MHz 的 CMOS 32LP 工艺开始,但我们看到许多合作伙伴在更小的硅几何结构上以更高的速度实施,并使用更快的实施技术。

下图展示了带有 Cortex-A50 系列处理器、CoreLink MMU-500 系统 MMU 和一系列 CoreLink 400 系统 IP 的示例移动应用处理器。

在该系统中,Cortex-A57 和 Cortex-A53 提供 big.LITTLE 处理器组合,并通过 AMBA 4 ACE 连接到 CCI-400,以提供完整的硬件一致性。Mali-T628 和 IO Coherent 主站通过 AMBA 4 ACE-Lite 接口连接到 CCI-400。如第一篇博客所述,这种 IO 一致性允许 IO 一致性代理从处理器缓存中读取数据。

系统中的其他组件包括:

  • MMU-500 系统 MMU - 提供第 1 阶段和/或第 2 阶段地址转换,以支持系统组件的内存可视化。
  • TZC-400 TrustZone 地址空间控制器- 对内存或外围设备的事务执行安全检查,并允许将内存区域标记为安全或受保护。
  • DMC-400 动态内存控制器- 提供动态内存调度和与外部 DDR2/3 或 LPDDR2 内存的接口。
  • NIC-400 网络互连- 为 AMBA 4 AXI4、AMBA 3 AXI3、AHB-Lite 和 APB 组件提供完全可配置、分层、低延迟的连接。

6、总结

本文介绍了硬件一致性和移动应用程序的实现,例如 big.LITTLE 处理和企业。所有这些应用程序的核心是像 CoreLink CCI-400 这样的缓存一致性互连。作为 IP 提供商,ARM 处于独特的地位,可以提供 Cortex 处理器、Mali 图形和 CoreLink 缓存相干互连以及工具和物理 IP 的完整解决方案

7、参考

Extended System Coherency: Part 2 - Implementation, big.LITTLE, GPU Compute and Enterprise


更多推荐

02-缓存一致性---实现big.LITTLE、GPU 计算和企业应用