Dynamic Arbitration Circuitry for Adaptive Message Priority

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing arbitration techniques for shared communication channels are inflexible and introduce additional latency to messages based on fixed priority or round robin schemes, which do not account for dynamic changes in process requirements, leading to unfair performance allocation among processes.

Innovation Solution

A data processing apparatus and method that uses arbitration circuitry responsive to progress data from each processing element to dynamically adjust priority ordering, taking into account latency implications for each process, allowing for adaptive Quality-of-Service allocation without pre-defined requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If fixed priority or round robin arbitration schemes are used, then the arbitration decision is simple to implement, but the latency allocation is unfair and does not adapt to dynamic process requirements

Engineering Contradiction:
Improvearbitration decision implementationVSAvoidlatency allocation adaptability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The arbitration scheme transitions from static fixed priority or round robin to dynamic arbitration that adapts to real-time process conditions. The system continuously monitors process progress data and dynamically adjusts priority assignments based on current latency implications, ensuring fairness while maintaining simplicity in the core arbitration mechanism.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback by having processing elements report progress data to the arbitration circuitry. This feedback loop enables the arbitration logic to observe actual process states and adjust priority assignments accordingly, creating an adaptive system that responds to changing conditions without requiring complex pre-configuration.

Inventive Principle:
Principle #23Feedback

2Reliability

If QoS techniques with pre-defined process characteristics are used, then bandwidth and latency can be controlled, but the system becomes inflexible to changes in process requirements and requires higher level protocol configuration

Engineering Contradiction:
Improvebandwidth and latency controlVSAvoidflexibility to process changes
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The arbitration system operates autonomously by having processing elements self-report their progress data and latency implications. The arbitration circuitry independently makes priority decisions based on this data without requiring external configuration or higher-level protocol intervention, enabling both control and adaptability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system replaces static QoS configurations with dynamic priority adjustment based on real-time process state monitoring. Priority assignments are continuously updated according to current progress data and latency implications, allowing the system to adapt to changing process requirements while maintaining reliable bandwidth and latency control.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If message-by-message arbitration is used, then the arbitration decision is simple, but processes with high access levels receive disproportionately high additional latency

Engineering Contradiction:
Improvearbitration mechanism complexityVSAvoidcumulative latency for high-access processes
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system maintains continuous monitoring of process progress data and cumulative latency across multiple messages. By tracking the ongoing state of each process and accumulating latency information, the arbitration circuitry can identify processes that are experiencing excessive cumulative delay and adjust priorities to maintain continuous fair service across the message stream.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The arbitration system uses feedback from progress data to detect when processes are experiencing excessive cumulative latency. This feedback enables the system to adjust priority assignments dynamically, preventing any single process from accumulating excessive delay even when that process generates high message volumes, while keeping the arbitration logic relatively simple.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7769936B2Data processing apparatus and method for arbitrating between messages routed over a communication channel
Publication Date: 2010.08.03 ARM LTD
  • US7769936B2 patent drawing
  • US7769936B2 patent drawing
  • US7769936B2 patent drawing

AI summary

A data processing apparatus and method are provided for arbitrating between messages routed over a communication channel. The data processing apparatus has a plurality of processing elements, each processing element executing a process requiring messages to be issued to recipient elements, and a communication channel shared amongst those processing elements over which the messages are routed. Arbitration circuitry performs an arbitration process to arbitrate between multiple messages routed over the communication channel. Each processing element issues progress data for the process executing on that processing element, the progress data indicating latency implications for the process. Arbitration control circuitry is then responsive to the progress data from each processing element to perform a priority ordering process taking into account the latency implications of each process as indicated by the progress data in order to generate priority ordering data. That priority ordering data is then output to the arbitration circuitry in order to control the arbitration process. This enables quality of service to be determined and allocated automatically between the various processes, without the need to know the requirements of the processes in advance, and the prioritization mechanism adapts dynamically to changes in communication between the processes.