Dynamic Arbitration Scheme for SoC Shared Resources
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing arbitration schemes for shared resources in systems-on-chip (SoC) are inadequate in meeting real-time requirements and bandwidth needs, particularly for ultra high priority requesters, as they lack flexibility and often result in wasted bandwidth or insufficient access for other requesters.
Innovation Solution
A software programmable dynamic arbitration scheme that allows ultra high priority requesters to access a shared resource for a programmable number of accesses based on data access patterns, while masking them for a programmable duration to allow other requesters to meet their real-time requirements, utilizing a priority hierarchy with levels of ultra high, time out, and normal priority, and counters to manage access sequences.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If periodic time slots are allocated for ultra high priority requesters, then the ultra high priority requester is sure to get access on a regular basis, but the scheme is sensitive to time alignment and may not meet real time requirements while wasting bandwidth for other requesters
Solution Approach 1:
The arbitration scheme dynamically adjusts the priority status of requesters based on real-time conditions rather than using fixed periodic time slots. The system can transition requesters between different priority levels (normal, timeout, ultra high priority) based on current system state and requirements, allowing flexible response to real-time needs while optimizing bandwidth utilization.
Solution Approach 2:
The system changes the priority parameter of requesters dynamically. By modifying the priority level assignment based on timeout status and current system conditions, the arbitration mechanism adapts to meet real-time requirements without the bandwidth waste associated with rigid periodic time slot allocation.
2Reliability
If access is granted to ultra high priority accessor each time another requester completes one access, then the ultra high priority requester is sure to get access on a regular basis, but this may not be sufficient to meet real time requirements and hurts bandwidth requirements of other accessors
Solution Approach 1:
Instead of a fixed rule granting access after every completion, the system dynamically determines when to grant ultra high priority access based on timeout status and current system conditions. This allows the system to balance the needs of ultra high priority requesters with the bandwidth requirements of other accessors by making intelligent, context-aware decisions.
Solution Approach 2:
The arbitration mechanism uses feedback from timeout status and current system state to determine priority allocation. By monitoring whether requesters have timed out and adjusting priority assignments accordingly, the system optimizes both the regular access of ultra high priority requesters and the overall bandwidth utilization of the system.
3Reliability
If static priority is assigned to permit high priority requester to have needed access, then high priority requester gets guaranteed access, but user has no control over resource allocation
Solution Approach 1:
The system implements dynamic priority assignment where requesters can transition between normal, timeout, and ultra high priority levels based on their timeout status and system conditions. This provides both guaranteed access for high priority requesters when needed and user control over resource allocation through programmable timeout values and priority management.
Solution Approach 2:
The arbitration scheme allows dynamic changing of priority parameters based on timeout status. Users can control resource allocation by setting programmable timeout values that determine when requesters transition to ultra high priority status, combining guaranteed access with flexible control.
Data Source
AI summary
A method for arbitration among a plurality of requesting devices for a shared resource in which one device is an ultra high priority device grants access to one requesting device at a time. The ultra high priority device is granted access if it requests access interrupting access by another device. The ultra high priority device is limited to a selectable number of accesses and thereafter is masked for a selectable interval. This interval permits access may by other devices. Each of the other devices is also limited to a selectable number of accesses followed by re-arbitration. The other devices can have a normal priority or a time out priority if a request hasn't been granted in a selectable amount of time.


