Arbiter with Random Tie Breaking for Fabric Congestion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computer fabrics, arbiters often face challenges in selecting routes or transactions fairly when multiple options have equal priorities, leading to congestion and unequal transaction latencies due to biases in selection.
Innovation Solution
A tree-based arbiter system that employs a combination of priority weighting and random weighting to ensure fair and randomized tie-breaking among candidates with equal prioritizations, using a priority weighting system to assign weights based on metrics like age or congestion and a random weighting system to generate uncorrelated random weights, which are combined to select the overall winning candidate.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If weighted arbitration is used to select routes or transactions based on biases, then system behavior can be improved, but congestion and unequal transaction latencies occur due to selection biases
Solution Approach 1:
The arbiter pre-calculates priority values for each candidate based on weighted criteria (age, destination distance, congestion) before the selection decision. This preliminary weighting ensures that when selection occurs, the most appropriate candidate is already identified, improving system behavior while maintaining efficiency.
Solution Approach 2:
The system dynamically changes the weight parameters assigned to different candidates based on current system state (congestion levels, transaction ages, path conditions). By adjusting these parameters in real-time, the arbiter can adapt to changing conditions and avoid persistent selection biases that cause congestion.
2Ease of operation
If an arbiter has a bias to select one or more particular paths, then selection is simplified, but fabric traffic experiences greater congestion resulting in longer transaction latencies
Solution Approach 1:
The arbiter uses multiple parameters (age weight, distance weight, congestion weight) to evaluate candidates. By changing the relative weights of these parameters dynamically, the system can simplify selection in some cases while avoiding congestion in others, balancing ease of operation with performance.
Solution Approach 2:
The weighted priority value acts as an intermediary that combines multiple selection criteria into a single comparable metric. This intermediary simplifies the selection process by reducing multiple factors to one decisive value, while still accounting for congestion and other performance factors.
3Stability of the object's composition
If an arbiter is biased toward selecting equal age transactions from one source over others, then source-specific priorities are maintained, but fabric latencies become unequal based on the source of transactions
Solution Approach 1:
The system adjusts the weight parameters dynamically based on current system state. When one source's transactions are already being prioritized, the arbiter can reduce that source's weight and increase others, maintaining stability in priority assignment while preventing unequal latencies across sources.
Data Source
AI summary
Candidates for selection in a weighted arbitration system are assigned priority weights and random weights. The winning candidate is determined using a tree of selectors such as a comparators. At each stage of the tree, the candidate having the greatest priority weight is selected to pass to the next stage. If multiple candidates are tied for the greatest priority weight, the candidate having the greatest random weight is selected to pass to the next stage.


