图片无法显示,请右键点击新窗口打开图片

Infinity Fabric 是一种高带宽、低延迟的互连架构,用于在单个芯片和芯片之间、以及芯片内部不同组件之间传输数据. 它由两部分组成: Infinity Scalable Data Fabric(SDF)Infinity Scalable Control Fabric(SCF). SDF 是系统中数据在各端点(例如 NUMA 节点、PHYs)之间流动的主要方式. SDF 可能有数十个连接点将 PCIe PHYs、内存控制器、USB 集线器以及各种计算和执行单元连接在一起. SDF 是先前 HyperTransport 的超集. SCF 是一个补充平面,负责传输许多杂项系统控制信号——这包括诸如热管理和电源管理、测试、安全以及第三方 IP 等内容. 通过这两个平面,AMD 能够有效地扩展许多基本的计算模块.

图片无法显示,请右键点击新窗口打开图片

Infinity Scalable Data Fabric(SDF) 是 Infinity Fabric 的数据通信平面. 所有来自核心的数据以及发送到其他外设(例如内存控制器和 I/O 集线器) 的数据都通过 SDF 路由. 一项关键特性是,这种一致性数据结构不局限于单个芯片,而且可以在多个芯片上的 MCP 以及通过 PCIe 链路的多个插座之间扩展(甚至可能跨独立系统,尽管这是推测). 此外连接在结构上的节点的拓扑没有限制,通信可以直接从节点到节点、在总线拓扑中进行岛屿跳跃,或作为网状拓扑系统. 在基于 Zeppelin SoC 和 Zen 核心的 AMD 处理器中,SDF 的框图如上图所示。 两个 CCX 直接通过 Cache-Coherent Master(CCM) 连接到 SDF 平面,CCM 提供核心之间一致数据传输的机制. 还有一个 I/O Master/Slave(IOMS) 接口用于 I/O 集线器通信. 集线器包括两个 PCIe 控制器、一个 SATA 控制器、USB 控制器、以太网控制器和南桥. 从操作角度看,IOMS 和 CCM 实际上是能够进行 DRAM 请求的唯一接口.

  • DRAM 通过 DDR4 接口连接到统一内存控制器(UMC). 每个 DDR 通道有两个统一内存控制器(UMC), 也直接连接到 SDF. 值得注意的是,所有 SDF 组件都以 DRAM 的 MEMCLK 频率运行. 例如使用 DDR4-2133 的系统将整个 SDF 平面运行在 1066 MHz, 这是 AMD 为了消除时钟域延迟而做出的基本设计选择.
  • 连接 SDF 和各种 SerDes 的工作机制是 CAKE. Coherent AMD socKet Extender(CAKE) 模块每个周期将本地 SDF 请求编码为 128 位序列化数据包,并通过任何 SerDes 接口发送. 响应也由 CAKE 解码回 SDF. 与连接到 SDF 的所有其他设备一样,CAKE 在 DRAM 的 MEMCLK 频率下运行, 以消除时钟域交叉延迟.
  • Infinity Scalable Data Fabric(SDF) 使用两种不同类型的 SerDes 链路: Infinity Fabric On-Package(IFOP) 和 Infinity Fabric InterSocket(IFIS). 图片无法显示,请右键点击新窗口打开图片 图片无法显示,请右键点击新窗口打开图片
  • Infinity Fabric On-Package(IFOP) SerDes 处理同一封装内的芯片间通信. AMD 设计了一种相当简单的定制 SerDes,适用于短距离封装内走线长度,可以实现约 2pJ/b 的功率效率. 这是通过使用 32 位低摆幅单端数据传输和差分时钟实现的,消耗的功率约为等效差分驱动的一半. 他们利用从 TX/RX 阻抗终端到地的零功率驱动状态,驱动上拉被禁用时. 这允许传输零比传输一消耗更少的功率,当链路空闲时也利用了这一点。此外,还使用了反转编码以每比特节省另外 10% 的平均功率. 由于封装内链路的性能敏感性,与 DDR4 通道带宽相比,IFOP 链路的过度配置约为两倍,用于混合读/写流量. 他们是双向链路,每个周期的数据传输都伴随着 CRC. IFOP SerDes 每个 CAKE 时钟进行四次传输. 图片无法显示,请右键点击新窗口打开图片 由于 CAKE 以与 DRAM 的 MEMCLK 频率相同的频率运行,带宽完全依赖于此. 对于使用 DDR4-2666 DIMM 的系统,这意味着 CAKE 将以 1333.33 MHz 运行,这意味着 IFOP 将具有双向带宽 42.667 GB/s(=16B per clock per direction).
  • IFIS Infinity Fabric InterSocket(IFIS) SerDes 是第二种类型,用于 package-to-package 的通信,例如在两路多处理中. IFIS 设计为可以与其他协议(如 PCIe 和 SATA)复用. 图片无法显示,请右键点击新窗口打开图片 它们在 TX/RX 16 差分数据线上大约以 11pJ/b 的速度运行. 这些链路也与标准 PCIe 通道的封装引脚对齐. 因为它们是 16 位宽,所以每个 CAKE 时钟运行 8 次传输. 与 IFOP 相比,IFIS 链路的带宽为 8/9.

图片无法显示,请右键点击新窗口打开图片

Infinity Scalable Control Fabric(SCF) 是 Infinity Fabric 的控制通信平面. SCF 将系统管理单元(SMU) 连接到所有各种组件. SCF 拥有自己的专用 IFIS SerDes, 允许系统内多个芯片的 SCF 相互通信. 在多路多处理配置中,SCF 还扩展到第二个插槽上的芯片. AMD 使用 Infinity Fabric 技术的系列包括:

  • Ryzen 系列: 从最初的 Ryzen 1000 系列开始,到目前最新的 Ryzen 5000 系列,都采用了 Infinity Fabric 来连接处理器内的不同组件,例如核心复合单元(CCX)与输入/输出子系统. 图片无法显示,请右键点击新窗口打开图片 图片无法显示,请右键点击新窗口打开图片
  • EPYC 服务器处理器: 从第一代 EPYC “Naples” 到最新的 EPYC “Milan” 和即将推出的 “Genoa”,这些服务器级处理器使用 Infinity Fabric 连接多个芯片,以实现高效的数据传输和低延迟. 图片无法显示,请右键点击新窗口打开图片
  • Radeon GPU: 部分高端 Radeon GPU,如 Radeon VII 和某些 RDNA 架构的 GPU,也利用 Infinity Fabric 技术提高芯片内的通信效率
  • Threadripper 系列: AMD 的高端桌面平台 Threadripper 也采用了 Infinity Fabric,以连接多个芯片以实现更高的核心数和更好的性能

图片无法显示,请右键点击新窗口打开图片