Shared Flow Control Credits for Interconnect Bandwidth
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current interconnect architectures in computing systems face challenges in efficiently managing bandwidth and power consumption as the demand for higher processing power and complex communication between components increases, particularly in servers and mobile devices, where traditional credit-based flow control solutions lead to inefficiencies due to unused buffer resources and intermittent traffic suspension.
Innovation Solution
Implementing a credit-based flow control scheme that reserves resources for specific queues while maintaining a shared credit pool to guarantee a minimum service level and provide extra credits when dedicated credits are exhausted, allowing for flexible allocation across multiple channels and request types.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional credit-based flow control is used with dedicated credits per queue, then bandwidth is reserved for each channel, but buffer resources are wasted when credits are not fully utilized and traffic is suspended when credits are exhausted
Solution Approach 1:
The patent merges dedicated queue credits with a shared credit pool into a unified flow control mechanism. Each queue maintains its dedicated credits for guaranteed service, while also having access to a shared pool of credits that can be dynamically allocated. This combination eliminates the waste of dedicated buffers when credits are unused, as other queues can utilize the shared pool, while still maintaining service guarantees through dedicated credits.
Solution Approach 2:
The flow control system transitions from static dedicated credit allocation to dynamic credit management. The shared credit pool allows credits to be dynamically allocated and released based on actual traffic demands and buffer availability. When a queue exhausts its dedicated credits, it can temporarily borrow from the shared pool, and when buffer space becomes available, credits are dynamically returned to the pool for reuse by other queues.
2Reliability
If dedicated flow control credits are allocated to each queue, then minimum service level is guaranteed, but bandwidth utilization decreases due to unused buffer resources
Solution Approach 1:
The patent combines dedicated queue credits with a shared credit pool to create a hybrid flow control system. Each queue retains its dedicated credits that guarantee minimum service levels, while the shared pool aggregates unused buffer resources from all queues. This merging allows high-bandwidth utilization through the shared pool while maintaining reliability through dedicated credits, resolving the contradiction between service guarantee and resource efficiency.
Solution Approach 2:
The shared credit pool serves multiple functions simultaneously: it acts as a supplemental credit source for queues that exhaust their dedicated credits, provides a mechanism for dynamic resource allocation, and enables cross-queue resource sharing. This multi-functionality allows the system to maintain service guarantees while maximizing bandwidth utilization across all channels.
3Reliability
If buffer resources are reserved for specific queues, then service reliability is improved, but system efficiency decreases due to intermittent traffic suspension
Solution Approach 1:
The system performs preliminary allocation of dedicated credits to each queue to guarantee minimum service levels before traffic arrives. The shared credit pool is pre-configured as a supplemental resource that can be immediately accessed when dedicated credits are exhausted. This preliminary setup eliminates the need for complex runtime negotiations and reduces traffic suspension time by having credits readily available from the shared pool.
Solution Approach 2:
The shared credit pool acts as an intermediary resource between dedicated queue credits and actual buffer space. When a queue exhausts its dedicated credits, the shared pool provides an intermediate credit source that prevents immediate traffic suspension. This intermediary mechanism smooths out temporary buffer shortages and reduces service interruptions while maintaining overall system reliability.
Data Source
AI summary
Traffic control logic is provided to support a plurality of channels on a link. A plurality of reserved credit counters is provided to each identify reserved flow control credits for a corresponding one of the plurality of channels. Further, a shared credit counter is provided to identify shared flow control credits to be shared between two or more of the plurality of virtual channels.


