Dynamic Priority Arbitration for Fair Bus Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing microprocessor systems with multiple processors and shared memory face challenges in ensuring fair access to the bus, as current arbitration methods like fixed priority, iterative, and round-robin arbiters fail to provide equal opportunities for all ports, leading to unfair stalling and priority assignment issues.

Innovation Solution

A high fairness arbiter mechanism that adjusts priorities based on stall history and the number of stalled ports, ensuring no single port wins more often than others by reducing the priority of granted ports and increasing the priority of stalled ports, with arbitrary selection methods like random or fixed priority based on port number.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If fixed priority arbitration is used, then the arbitration mechanism is simple to comprehend and implement, but fairness is severely compromised as lower priority ports are permanently stalled when higher priority ports need access

Engineering Contradiction:
Improveease of implementationVSAvoidfairness
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent implements dynamic priority adjustment where port priorities are not fixed but change based on historical access patterns and stall experiences. Each port's priority is modified upward when it experiences stalls, allowing the system to adapt to actual usage patterns rather than relying on static predetermined priorities

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The arbitration mechanism incorporates feedback loops that monitor stall history and access patterns for each port. This feedback information is used to continuously adjust priority assignments, creating a closed-loop system that self-corrects fairness issues by responding to actual system behavior and performance metrics

Inventive Principle:
Principle #23Feedback

2Reliability

If round-robin arbitration is used, then fairness is improved by rotating priority assignments, but the mechanism becomes more complex and may cease to behave fairly when priority index numbers reach minimum and maximum limits

Engineering Contradiction:
ImprovefairnessVSAvoidarbitration mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent changes the parameter of priority assignment from fixed rotational indices to dynamically adjusted values based on stall history. Instead of rotating through predetermined priority levels, the system modifies priority parameters continuously based on observed performance, allowing unlimited adjustment range without hitting artificial minimum or maximum limits

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system transitions from static round-robin priority rotation to dynamic priority adjustment where priorities evolve based on real-time system behavior. This dynamic approach eliminates the rigidity of fixed rotation schedules while avoiding the complexity of managing bounded priority indices

Inventive Principle:
Principle #15Dynamics

3Reliability

If oblivious arbitration with shift registers or random number generators is used, then fairness is partially improved, but implementation complexity and cost increase significantly

Engineering Contradiction:
ImprovefairnessVSAvoidimplementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The arbitration system uses self-service by having each port track its own stall history and using this information to adjust its priority. Rather than requiring external random number generators or complex oblivious arbitration logic, each port autonomously contributes to the fairness mechanism through its own performance data

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback-based priority adjustment where stall history information flows back into the priority assignment mechanism. This feedback loop creates fairness through information about actual system behavior rather than through complex external arbitration logic or randomization mechanisms

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8706940B2High fairness variable priority arbitration method
Publication Date: 2014.04.22 TEXAS INSTRUMENTS INC
  • US8706940B2 patent drawing
  • US8706940B2 patent drawing
  • US8706940B2 patent drawing

AI summary

Multiprocessor systems often share access to a centralized memory and experience conflicting access requests. An arbitration unit mediates priorities of requestor preferably ensuring both priority and fairness. In this invention upon an access conflict the arbitrator grants access to one requestor having the highest priority level and stalls other conflicting requestors. If plural requestors have the same priority level, the arbiter grants access to one and stalls the others. The arbiter then adjusts the priority levels of the requestors. The priority of the requestor granted access is decreased by the number of stalled requestors. The stalled requestors have their priority levels increased by one. The arbitration decision is thus based on the stall history and the caused stall history of each requestor.