Virtual Channel Usage Limits for Adaptive Interconnect Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing interconnect architectures, such as PCIe, lack standardized mechanisms for receivers to communicate ideal resource usage limits to transmitters, leading to suboptimal throughput due to resource contention and inability to dynamically adjust usage limits, especially with varying latency profiles and traffic types like Unordered I/O (UIO).
Innovation Solution
Implementing a protocol that allows receivers to communicate virtual channel usage limits directly over the link, using enhanced data link layer packets, enabling real-time adjustments and optimizing resource allocation through shared flow control mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If existing interconnect architectures use traditional flow control mechanisms, then device complexity is reduced, but throughput is limited due to resource contention and inability to dynamically adjust usage limits
Solution Approach 1:
The patent implements a feedback mechanism where the receiver sends usage limit information back to the transmitter through data link layer packets. This allows the transmitter to dynamically adjust its virtual channel usage limits based on receiver needs, resolving the contradiction by enabling dynamic throughput optimization without requiring complex centralized control
Solution Approach 2:
The flow control mechanism operates autonomously at the link level without requiring software intervention or external control. The transmitter and receiver independently negotiate and enforce usage limits through standardized packets, achieving high throughput while keeping device complexity manageable through self-managed flow control
2Adaptability or versatility
If virtual channel usage limits are statically configured, then device complexity is reduced, but adaptability to dynamic workloads and varying latency profiles is limited
Solution Approach 1:
The patent transforms static usage limits into dynamic, adjustable parameters that can be modified in real-time based on workload characteristics and latency requirements. The transmitter can adjust usage limits for different virtual channels (e.g., UIO vs. ordered channels) without reconfiguring the entire system, achieving high adaptability while maintaining manageable complexity through localized adjustments
Solution Approach 2:
The system changes usage limit parameters dynamically based on detected workload conditions and latency profiles. Different virtual channels can have different usage limit values adjusted according to traffic type (UIO, ordered, etc.), allowing the system to adapt to varying workloads without increasing overall device complexity
3Productivity
If receivers cannot communicate usage limits directly to transmitters, then device complexity is reduced, but resource allocation efficiency deteriorates due to suboptimal throughput
Solution Approach 1:
The patent uses data link layer packets as an intermediary mechanism to communicate usage limit information between receiver and transmitter. This standardized packet format enables efficient resource allocation by allowing receivers to directly convey their usage requirements to transmitters, improving throughput without introducing complex negotiation protocols
Solution Approach 2:
The patent replaces complex software-based resource allocation mechanisms with a hardware-level flow control system using standardized data link layer packets. This substitution enables direct communication of usage limits at the link layer, improving resource allocation efficiency while avoiding the complexity of higher-level software coordination
Data Source
AI summary
A device includes a port to couple to another device over an interconnect, where the port includes circuitry to: identify a receiver usage limit for a given virtual channel of a link to be implemented on the interconnect; generate a link layer packet, where the link layer packet includes a field to indicate the receiver usage limit; and send the link layer packet to the other device over the link.


