开放性工业标准互连标准CXL (Compute Express Link)正稳步发展,在问世不到两年的时间内已经演进到2.0版,该标准联盟成员业者也准备好推出支持新规格的产品。
就像是已成熟的NVMe (Non-Volatile Memory Express)接口规格,CXL 2.0添加了新功能以满足性能提升需求,同时也保持了与旧版规格──包括2019年3月公布的CXL 1.0以及同年6月问世的1.1版──的向后兼容性。推动2.0版更新的主力来自于快速演进的数据中心架构,必须支持快速成长的人工智能(AI)与机器学习(ML)新兴任务,持续激增的云端运算以及网络和边缘的“云端化”也是因素之一。
CXL联盟(CXL Consortium)总监Larrie Carr在对《EE Times》的简报中表示,不断增加的异质运算以及服务器分解(disaggregation)需求,还有增加内存容量与带宽的需求,都为数据中心更添新一层挑战。

CXL的三种通讯协议能针对特定案例分别独立或结合使用,内存内加速器支持高密度运算,内存缓冲器则支持内存容量扩展与储存级内存。
(图片来源:CXL Consortium)
CXL运作于PCIe物理层,能在主处理器与周边设备如加速器、内存缓冲器以及智能I/O之间,以高带宽、低延迟连结提供一致性(coherency)与内存语义(memory semantics)。2.0版规格的更新包括针对实现设备扇出(device fan-out)、扩充,以及资源扩展与转移之交换(switching)功能;还有能最大化内存利用率、限制或免除内存超额配置(overprovision)的内存池(memory pooling)功能。
此外CXL 2.0还提供针对永久性内存接口的标准化管理,实现与DDR同步运作,让DDR能有其他用途。Carr表示,2.0版CXL的新功能意味着更容易以内存分配(memory assignment)概念,将终端设备指派给16台主机中的任一台;如果既定的主机不想再使用该终端设备,CXL交换功能就能进行设备的热插入管理,断开主机与设备的链接,并将之指派给其他主机以支持内存池。
作为CXL 2.0规格更新的一部分,该联盟成立了一个工作小组聚焦于如何为永久性内存提供标准化接口;Carr指出,藉由为管理定义一个标准API,任何人都能以标准化方法为CXL端口添加永久性内存。他指出,与NVMe类似,“CXL让任何人都能利用现有的软件生态系统,将他们的内存技术推向市场;”结合其交换功能,能充分利用内存的灵活性。
CXL能进一步细分为三种协议:CXL.io、CXL.cache与CXL.memory,能针对特定案例分开或是结合使用。以内存内加速器支持高密度运算就是三种协议都会用到的案例,而内存缓冲器可搭配CXL.io与CXL.memory,支持内存容量的扩展与储存级内存。
而CXL规格发展迅速,可归功于来自产业界的广泛支持与参与标准订定;而不只是内存与零组件供货商如Intel,Google、IBM、Facebook与等科技巨擘也都是CXL联盟董事会成员。这些巨擘们通常被视为推动内存等半导体组件市场需求的重要力量。
CXL 2.0的新功能还包括支持设备扇出的交换功能。
(图片来源:CXL Consortium)
Microchip也是CXL联盟成员之一,并且已经迅速发表支持CXL 2.0的产品──XpressConnect系列低延迟PCI Express 5.0/CXL 2.0复位时器(retimer);该公司数据中心解决方案产品营销暨策略经理Ahmad Danesh表示,新组件锁定数据中心高性能运算任务,支持AI、ML等工作负载所需的超低延迟讯号传输,还有车用的先进驾驶辅助系统(ADAS)。
PCIe复位时器IC被用于扩展PCIe总线长度,能扮演如同一个全新PCIe设备的角色,透过双向输出重新产生之讯号,解决因为互连、PCB、缆线改变导致的讯号不良造成的不连续性。而因为CXL是利用PCIe,Microchip的新组件支持广泛的PCIe与CXL设备,并能支持最高达16通道PCIe 5的各种多通道应用。透过重复利用PCIe 5.0物理层,CXL建立了一个协议覆盖(protocol)以支持一整个系列的新组件,能用以在运算、加速器、内存、smart IO (包括smart NIC)等设备间支持高带宽、低延迟连结。
不过Danesh表示,在透过CXL链接超低延迟设备时也有挑战,因为PCIe复位时器规格一开始是为PCIe 3.0订定,当时延迟性目标以及架构复位时器的方法,并没有考虑到CXL的应用案例,而是专注于处理 block I/O事务以及与NVMe设备间的通讯;“CXL的出现打破了这种模式,催生了对延迟非常敏感的系统,这种挑战因为2.0版添加了透过利用交换提供内存扩展的功能,而更进一步。”
不过Microchop不需要对现有产品进行修改,因为新推出的复位时器是专为CXL 1.1与2.0、还有PCIe 5.0设计的第一款产品,而PCIe 5.0跟前几代规格也稍有不同;Danesh表示:“PCIe从3.0进化到4.0花了几年的时间,但很快就前进到5.0,在过去几年发生的重大变化是,不只是各种应用驱动了前所未有的实际数据成长,还有那些数据所需运算量的增加。我们有更多的来源产生越来越庞大的数据集,现在也需要更有效率的方法来存取与处理数据。”
这意味着所有的“管道”必须要跟上更快的速度,并因应像是CXL带来的新挑战,例如在大型数据中心运作PCIe 5.0与CXL 2.0讯号的环境中,维持系统的讯号完整性。Danesh表示:“你只需要复位时器就能以实体方法解决这些触及率问题;”他进一步指出,Microchip的组件能以较低成本的方案,让使用者不需要透过昂贵的板材与缆线,就能够达到所需的传输距离。
Danesh表示,“透过CXL链接不同设备的众多应用都会需要复位时器,包括采用非挥发性永久内存的设备或是挥发性DRAM设备;你处理的延迟性问题是几十奈秒(nanoseconds),而非PCIe设备的几千奈秒。”他也指出,重复使用PCIe物理层能简化CXL的采用,因为具备对CPU端的原生支持功能,不像是Gen-Z连接器在与CXL通讯时需要转接。他预期支持CXL 1.1的设备今年会增加。
编译:Judith Cheng 责编:Yvonne Geng
(参考原文 :CXL gathers speed with 2.0 spec,by Gary Hilson)
