Arbitration Circuitry for Dynamic Transaction Priority
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data processing systems lack flexibility in arbitration mechanisms, as they typically associate priority levels with requester elements rather than individual transactions, limiting the ability to dynamically set priorities and provide quality of service (QoS) on a transaction-by-transaction basis.
Innovation Solution
The implementation of arbitration circuitry that performs a priority determination operation considering both the priority level of each asserted request and the relative priorities of the requester elements, allowing for dynamic priority setting on a per-request basis and enabling flexible arbitration between multiple requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If priority levels are associated with requester elements rather than individual transactions, then the arbitration mechanism is simpler to implement, but the flexibility to dynamically set priorities on a per-transaction basis is lost
Solution Approach 1:
The patent applies dynamics by enabling priority levels to be dynamically assigned to individual transactions rather than being fixed to requester elements. The arbitration circuitry can receive priority information as part of each transaction request, allowing priorities to change on a per-transaction basis while maintaining a relatively simple arbitration structure. This resolves the contradiction by introducing dynamic priority assignment without requiring complete redesign of the arbitration mechanism.
2Reliability
If separate dedicated communication paths are provided for each master device, then access contention at the slave device input is reduced, but the overall system complexity and resource consumption increase
Solution Approach 1:
The patent applies universality by using shared communication paths that can be dynamically allocated to different master devices based on transaction priorities. Instead of providing dedicated paths for each master device, the system uses a common communication infrastructure that can be flexibly assigned, reducing overall system complexity while maintaining reliable access to shared resources through priority-based arbitration.
3Productivity
If arbitration circuitry is provided to arbitrate between multiple simultaneous access requests, then access to the shared slave device is controlled, but the system complexity and arbitration overhead increase
Solution Approach 1:
The patent applies parameter changes by using priority levels as a key parameter to simplify the arbitration process. Instead of complex arbitration algorithms, the system assigns priority levels to transactions and uses these levels to determine access order. This parameter-based approach reduces arbitration circuitry complexity while maintaining high transaction throughput by quickly resolving contention based on priority comparisons rather than complex decision logic.
Data Source
AI summary
A data processing apparatus and method are provided for arbitrating access to a shared resource. The data processing apparatus includes a plurality of requester elements sharing access to the shared resource, and arbitration circuitry which is responsive to requests asserted by one or more of the requester elements for access to the shared resource, to perform a priority determination operation to select one of the asserted requests as a winning request. Each of the asserted requests has a priority level associated therewith, and the apparatus further comprises relative priority ordering circuitry for attributing relative priorities to the plurality of requester elements. The arbitration circuitry is responsive to the asserted requests to perform the priority determination operation in order to select as the winning request the request asserted by the requester element with the highest relative priority whose asserted request has a priority level not exceeded by any other asserted request. This provides a very flexible mechanism for performing arbitration, while allowing priority levels to be set on a request-by-request basis, thereby facilitating use of the arbitration circuitry with various quality of service mechanisms.


