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

  • 付费专栏-付费课程 【购买须知】:
  • 【精选】ARMv8/ARMv9架构入门到精通-[目录]
  • 联系方式-加入交流群 —-联系方式-加入交流群


AMBA、AXI、AHB、APB、ACE、CHI、ACE-Lite、AXI-Stream、CCI、CMN、CCN、CN、CI、NIC、NOC、NIC-400、CCI-500、CMN-600、CI-700、NI-700、总线互联、一致性总线、AXI协议

Arm 推出新的相干和 SoC 互连:CI-700 和 NI-700

今天,Arm 推出了面向移动市场的完整 IP 产品组合,其中包括新的小型 Armv9 CPU、新的大型 Armv9 CPU、新的旗舰性能 Armv9 CPU、新的 Mali GPU,甚至新的 DSU。将所有内容互连在一起所需的最后一件事是一致的互连 IP 和更全面的 SoC 传输互连。这就是新的 CoreLink CI-700 和 NI-700 发挥作用的地方。


本文是涵盖 2021 年 Arm 技术日的系列文章的一部分。

  • Arm 推出下一代 Armv9 大核:Cortex-A710
  • Arm 推出下一代 Armv9 小核心:Cortex-A510
  • Arm 推出全新旗舰性能 Armv9 内核:Cortex-X2
  • Arm 推出适用于新 Armv9 CPU 集群的 DSU-110
  • Arm 推出新的相干和 SoC 互连:CI-700 和 NI-700

距离我们详细介绍Arm 面向企业市场的最新缓存一致性网状互连仅一周时间。CMN-700 主要设计用于服务器市场的大核心数 SoC 等。今天推出的 CI-700 是一款具有类似用途的互连产品,可以更好地瞄准客户市场。

CI-700

CoreLink CI-700相干互连实际上是基于最近推出的CMN-700企业级网状网络。与 CMN-700 不同,CI-700 是专门为客户端设备量身定制的定制变体,并专门针对移动消费市场进行了额外的效率优化。考虑到这一点,CI-700 是一款完全一致的互连,支持多达 8 个 DSU 以及多达 24 个 AMBA ACE-Lite 或 AXI 管理器加速器或 DMA 设备,支持多达 8 个内存接口(可以是 CHI 或 ACE) -Lite 和最多四个用于外设的 ACE-Lite 接口。

新型 CI-700 采用带有监听过滤器的系统级缓存 (SLC),有助于降低功耗并提高性能。缓存是 DSU 集群专用的,因此它们的容量实际上是添加到 DSU 容量的基础上的。它也是真正的系统级缓存,不仅能够缓存来自 CPU、GPU 以及可能互连的任何其他加速器以及其他高带宽设备的任何和所有内存事务。SLC 支持 MPAM 缓存分区,该功能通过为某些设备或地址空间保留某些缓存容量来帮助确保性能的可预测性。例如,为了防止 GPU 自身消耗整个缓存,MPAM 可以为 CPU 保留一定的容量,从而防止单个设备耗尽所有其他设备的系统资源。

新型 CI-700 设计为在高性能实施中以 1 GHz 左右和高达 2 GHz 的频率运行。

交叉点

与 CMN-700 的设计一样,CI-700 基于交叉点路由器。它有四个连接其他 XP 的端口和两个用于连接 IP 的端口。在新的 CI-700 中,Arm 添加了两种新的 XP 类型。其中一种类型是 XP,它仅支持与其他 XP 的两个接口,但具有四个用于连接其他 IP 的端口。另一种新型 XP 是单例,有 6 个连接,全部连接到其他 IP。与原始 XP 相比,专门添加了两种新类型,以实现更高的 IP 块与连接比,主要是因为移动设备的带宽要求比服务器少(当他们首次开发 CMN-600 技术时,优化是围绕服务器进行的)。

CI-700 的设计具有可扩展性和可配置性——能够从单个交叉点到大型 4×2 网格。值得指出的是,Arm 有一个聚合器组件,可以将两个设备连接到一个 XP,因此单个 XP 可以扩展到其直接设备端口之外。或者,在最广泛的配置中,您可以将其放大为最大尺寸为 4×3 的二维网格。对于许多应用程序来说,不一定需要非常大的网格,而且 4×3 对于大多数移动设备来说几乎肯定是大材小用。例如,Arm 自己的高端智能手机参考平台使用 2×2 XP 网格。

CI-700 上的系统级缓存可配置为 1 到 8 个片,每个片最多 4 MiB,最多 32 MiB。探听过滤器也是可配置的,这有助于提高功耗和性能,Arm 建议使用两倍于缓存大小的探听过滤器或每片最多 8 MiB,以便覆盖两倍于缓存的地址空间。监听过滤器已构建。

CI-700 降低功耗的方法之一是减少内存访问。对于下面的示例,使用不带系统级缓存的 Mali-G710 与当今高端智能手机中常见的 8 MiB SLC。凭借 8 MiB 的 SLC,系统的外部存储器带宽减少了约 28%。此外,尽管 SLC 确实消耗了额外的功耗,但由于外部存储器功耗的降低,净系统功耗降低了 8%,这直接意味着更长的电池寿命。

就像新的DSU-110为了提高性能而增加了对内存标记扩展(MTE)的支持一样,新的CI-700也显着增强了MTE的性能。当您使用 MTE 时,每笔交易都有一个 4 位标签。内存只能使用每次访问时检查的相同标签进行访问。在系统缓存内的 CI-700 中,标签与系统缓存中的数据一起存储,并检查其是否匹配。当缓存中的数据写回内存时,数据和标签被写为两次单独的内存访问,因为它们存储在内存中不同的区域中。因此,CI-700 具有可配置大小的标签缓存,有助于显着减少标签的带宽量,并将它们合并在一起形成单个内存访问,从而通过减少带宽显着提高性能。

NI-700

NI-700 是一种新型灵活的分组化片上网络互连,适用于高带宽加速器和 SoC 连接的其余部分(例如其他外设)。它几乎适用于每个市场。它可以与 CI-700、CMN-700 一起使用,也可以单独使用。NI-700 由连接到接口(矩形)的路由器网络(圆点)组成,并通过它们之间的链路进行连接。

在 NI-700 上,来自 AMBA CHI 或 AXI 的所有事务都会转换为分组格式,这有助于平均减少 30% 的线数。这也有助于减少布线拥塞,从而有助于物理设计。它支持多个时钟和电源域。它被设计为可以相当轻松地在高达 1 GHz 左右的现代工艺上实现。它还支持 AMBA 标准及其提供的最新安全性和可靠性功能。

集成设备管理 (IDM)

集成设备管理 (IDM) 是 CI-700 上的一项功能,可提高系统的稳健性,从而减少设备重新启动的需要。它通过检测系统中没有响应的设备并尝试从问题中恢复来增加 SoC 的正常运行时间来实现这一点。IDM 将识别、记录和报告因不响应而导致超时的设备。当这种情况发生时,它将把有问题的设备与系统的其余部分隔离。它将完成停滞的事务,以确保不违反协议。最后,它将通知软件并允许其采取补救措施,例如重置设备、启动设备(例如,通过一些积极的电源管理等)。总体而言,Arm 预计此功能将减少用户最终为解决问题而重新启动设备(例如机顶盒、WiFi、路由器等)的次数。IDM 还可以实现一种新的系统电源管理方法,不需要所有代码始终完全了解电源系统。相反,软件可以正常访问设备,并且 IDM 可以自动尝试重新启动设备,并使这一切透明地发生在软件上,尽管会造成一些延迟。