Selective CXL Endpoint Bridging for Coherent Host-to-Host Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The current CXL specification lacks a standardized method for direct host-to-host communication using CXL.cache or CXL.mem semantics, posing challenges in implementing systems that require these capabilities.

Innovation Solution

An apparatus and method enabling communication between hosts by terminating and translating CXL.io and non-CXL.io protocols, allowing efficient host-to-host communication through Compute Express Link (CXL) Endpoints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If CXL.io protocol is used for host-to-host communication, then basic connectivity is established, but cache coherency and memory pooling capabilities are lost

Engineering Contradiction:
Improvecommunication protocol capabilityVSAvoidcache coherency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a CXL Endpoint with a computer as an intermediary component that terminates the CXL.io protocol and translates messages between CXL.io and non-CXL.io protocols. This intermediary enables hosts to communicate using CXL.cache or CXL.mem semantics while maintaining the simplicity of CXL.io for basic connectivity, thus resolving the contradiction between protocol simplicity and cache coherency capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If PCIe NTB is used for host-to-host communication, then address translation and protocol conversion are provided, but the system cannot leverage advanced CXL cache coherency and memory pooling features

Engineering Contradiction:
Improveinterconnect capabilityVSAvoidcommunication efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent changes the operational parameters of the CXL Endpoint by configuring it to terminate CXL.io protocol and selectively translate messages to non-CXL.io protocols (CXL.cache or CXL.mem) based on the communication requirements. This parameter change enables the system to leverage advanced CXL features for improved communication efficiency while maintaining compatibility with existing PCIe NTB architectures.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If CXL.cache or CXL.mem semantics are implemented for host-to-host communication, then cache coherency and memory pooling are enabled, but the current CXL specification lacks standardized methods

Engineering Contradiction:
Improvecache coherencyVSAvoidimplementation standardization
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The patent segments the CXL Endpoint functionality into distinct protocol termination and translation components. The computer within the CXL Endpoint is configured to terminate CXL.io protocol and separately handle translation to non-CXL.io protocols, providing a modular approach that can be standardized and manufactured systematically despite the complexity of implementing CXL.cache and CXL.mem semantics.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12373378B2Host-to-host communication with selective CXL non-transparent bridging
Publication Date: 2025.07.29 HYATT GAYA OPAL MS
  • US12373378B2 patent drawing
  • US12373378B2 patent drawing
  • US12373378B2 patent drawing

AI summary

Embodiments for communicating between Compute Express Link (CXL) hosts. A first CXL Endpoint receives, from a first host, first messages conforming to a first CXL.io protocol and second messages conforming to a first non-CXL.io protocol. A second CXL Endpoint receives, from a second host, third messages conforming to a second CXL.io protocol and fourth messages conforming to a second non-CXL.io protocol. A computer terminates the first CXL.io protocol, processes at least some of the first messages without translating and sending corresponding translated first messages to the second host, terminates the first non-CXL.io protocol, translates at least a quarter of the second messages, and makes the translated second messages available to the second CXL Endpoint for communication with the second host. Optionally, each of the first and second non-CXL.io protocols is selected from at least one of CXL.mem or CXL.cache.