Non-coherent Interconnect for Multi-chip I/O Traffic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-chip systems, the coherent interconnects used for both CPU and I/O traffic incur coherency overhead, leading to increased latency and the risk of deadlocks due to interference between CPU and I/O traffic, and require splitting larger I/O transactions into cache-line granularity, which degrades performance.

Innovation Solution

Implementing a non-coherent interconnect between SoCs to handle I/O traffic separately from CPU traffic, allowing the coherent connection to be used primarily for CPU transactions and enabling larger transaction sizes without coherency overhead, thereby reducing latency and deadlock risks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a coherent interconnect is used for both CPU and I/O traffic, then data coherency is maintained, but latency increases and deadlock risk increases due to traffic interference

Engineering Contradiction:
Improvedata coherencyVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the interconnect traffic into two separate paths: a coherent interconnect for CPU traffic requiring coherency, and an I/O interconnect for I/O traffic not requiring coherency. This segmentation allows each path to be optimized for its specific traffic type, reducing interference and latency while maintaining necessary coherency guarantees.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts I/O traffic from the coherent interconnect and routes it through a separate I/O interconnect. This extraction removes the source of interference from the coherent path, allowing CPU traffic to experience lower latency while I/O traffic is handled independently without coherency overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

2Device complexity

If a coherent interconnect is used for both CPU and I/O traffic, then unified connection is maintained, but system performance degrades due to coherency overhead

Engineering Contradiction:
Improveconnection structureVSAvoidsystem performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the interconnect architecture into two separate networks: a coherent interconnect for CPU-to-CPU and CPU-to-memory traffic, and an I/O interconnect for I/O device traffic. This segmentation eliminates coherency overhead for I/O operations while maintaining coherency where required, thereby improving overall system performance despite the increased structural complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the coherency parameter for different traffic types by routing I/O traffic through a non-coherent path. This parameter change allows I/O operations to proceed without coherency protocols, reducing overhead and improving performance for I/O-bound workloads while preserving coherency for CPU workloads.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If coherent connection is used for I/O transactions, then coherency is maintained, but transaction size must be limited to cache-line granularity

Engineering Contradiction:
ImprovecoherencyVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts I/O transactions from the coherent interconnect and routes them through a separate I/O interconnect that does not enforce cache-line granularity constraints. This allows I/O operations to use larger, more efficient transfer sizes appropriate for block devices and storage, improving throughput without compromising CPU memory coherency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the transfer size parameter for I/O transactions by providing a dedicated I/O interconnect that supports larger transaction sizes unlike the coherent interconnect which is constrained to cache-line granularity. This parameter change enables more efficient bulk data transfers for I/O operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11880327B1Non-coherent and coherent connections in a multi-chip system
Publication Date: 2024.01.23 AMAZON TECH INC
  • US11880327B1 patent drawing
  • US11880327B1 patent drawing
  • US11880327B1 patent drawing

AI summary

A coherent connection and a non-coherent connection are provided between system-on-chips (SoCs). The coherent connection can be coupled to coherent interconnects on the SoCs, and the non-coherent connection can be coupled to non-coherent interconnects on the SoCs. An input/output (I/O) transaction from an I/O device on a first SoC that is targeted to a second SoC can be transmitted via the non-coherent connection, and a processor transaction from the first SoC that is targeted to the second SoC can be transmitted via the coherent connection.