In-band Priority Adjustment Forwarding in Communication Fabric Arbitration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing systems with multiple components face challenges in meeting bandwidth requirements, leading to clients falling behind, and existing solutions often create new issues by processing requests out of order.
Innovation Solution
Implementing priority adjustment forwarding in a non-flow-control manner within a communication fabric, where clients can send in-band requests to arbitration points to elevate or reduce the priority of outstanding requests, ensuring correct ordering and improved bandwidth utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If priority adjustment is implemented to help clients catch up on bandwidth requirements, then bandwidth utilization is improved, but requests may be processed out of order creating new problems
Solution Approach 1:
The patent segments the request processing system into multiple priority queues (e.g., high priority, normal priority, low priority) within each arbitration point. This segmentation allows the system to handle different types of requests differently, enabling priority-based scheduling that improves bandwidth utilization for urgent requests while maintaining proper ordering through separate queue management for each priority level.
Solution Approach 2:
The patent changes the priority parameter of requests dynamically based on client needs. When a client falls behind on bandwidth requirements, the system adjusts the priority parameter of that client's requests upward, allowing them to be serviced faster. This parameter change approach enables flexible bandwidth allocation while maintaining request ordering through controlled priority transitions and queue management.
2Adaptability or versatility
If multiple components are integrated on a single chip or multi-chip module, then system functionality is improved, but complexity and power consumption increase
Solution Approach 1:
The patent implements universal arbitration points that can handle multiple types of requests (memory access, I/O, coherency, etc.) and multiple priority levels through a single standardized interface. This multi-functionality approach allows the fabric to support diverse components and communication patterns without requiring separate specialized routing logic for each component type, thereby managing complexity while maintaining high adaptability.
Solution Approach 2:
The patent introduces dynamic priority adjustment capabilities that allow the fabric to adapt to changing system conditions in real-time. Arbitration points can dynamically change request priorities based on current bandwidth utilization, client needs, and system state, enabling the fabric to optimize performance for integrated components without requiring static complex routing tables or fixed priority schemes.
3Productivity
If in-band requests are used for priority adjustment, then communication efficiency is improved, but request processing complexity increases
Solution Approach 1:
The patent merges the priority adjustment functionality with the existing in-band request communication channel. Instead of using separate out-of-band control signals, the system embeds priority adjustment requests within the same communication fabric used for normal data transfer. This merging approach improves communication efficiency by utilizing existing infrastructure while managing processing complexity through standardized request handling logic at arbitration points.
Data Source
AI summary
Systems, apparatuses, and methods for implementing priority adjustment forwarding are disclosed. A system includes at least one or more processing units, a memory, and a communication fabric coupled to the processing unit(s) and the memory. The communication fabric includes a plurality of arbitration points. When a client determines that its bandwidth requirements are not being met, the client generates and sends an in-band priority adjustment request to the nearest arbitration point. This arbitration point receives the in-band priority adjustment request and then identifies any pending requests which are buffered at the arbitration point which meet the criteria specified by the in-band priority adjustment request. The arbitration point adjusts the priority of any identified requests, and then the arbitration point forwards the in-band priority adjustment request on the fabric to the next upstream arbitration point which processes the in-band priority adjustment request in the same manner.


