Virtual Channel Segmentation for Multi-Chip Traffic Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-chip systems, communication traffic between system-on-chips (SoCs) often experiences delays due to shared physical channels, where traffic types like PCIe and non-PCIe transactions interfere with each other, leading to performance degradation as buffers fill up and traffic flow is impacted.

Innovation Solution

Implementing virtual channels over physical channels to segregate traffic types, allowing individual management of each type's flow using separate buffers and credits, with each transaction associated with a specific traffic type and routed accordingly, preventing interference between different transaction types.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If multiple traffic types share a single physical channel, then device complexity is reduced, but traffic delays and performance degradation occur due to interference between different transaction types

Engineering Contradiction:
Improvechannel structureVSAvoidtraffic delay
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the single physical channel into multiple virtual channels, each dedicated to specific traffic types (e.g., PCIe transactions, non-PCIe transactions). This segmentation allows different traffic types to be transmitted simultaneously over the same physical medium without interfering with each other, thereby reducing traffic delays while maintaining a relatively simple physical channel structure.

Inventive Principle:
Principle #1Segmentation

2Productivity

If separate buffers are allocated for each traffic type, then traffic flow management is improved, but device complexity increases

Engineering Contradiction:
Improvetraffic flow managementVSAvoidbuffer management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal buffer management approach where multiple virtual channels share a common buffer pool with credit-based flow control. Instead of allocating separate physical buffers for each traffic type, the system uses a unified buffer structure that can dynamically serve different virtual channels based on their respective credit availability and traffic demands, thereby improving traffic flow management without proportionally increasing device complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If virtual channels are implemented over physical channels, then traffic interference is reduced, but device complexity increases due to additional management overhead

Engineering Contradiction:
Improvetraffic separationVSAvoidchannel management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent changes the organizational parameter of channel management from physical to virtual by introducing virtual channel identifiers and credit-based flow control parameters. This allows the system to achieve reliable traffic separation through software or firmware-controlled parameter management rather than requiring complex hardware isolation mechanisms, thereby improving traffic separation reliability while keeping the additional management overhead relatively minimal.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11836103B1Traffic separation in a multi-chip system
Publication Date: 2023.12.05 AMAZON TECH INC
  • US11836103B1 patent drawing
  • US11836103B1 patent drawing
  • US11836103B1 patent drawing

AI summary

Systems and methods are provided to differentiate different types of traffic going through the same physical channel such that the traffic flow for different traffic types does not impact each other. The physical channel can be configured to support a plurality of virtual channels. Each transaction that needs to be communicated through the physical channel can be classified into a certain traffic type, and each traffic type can be assigned to a virtual channel. Each transaction can be communicated on a respective virtual channel based on the corresponding traffic type. If the traffic flow through a first virtual channel for a transaction slows down, the traffic flow through a second virtual channel for another transaction can continue without getting impacted by the slow down on the first virtual channel.