Gating Circuitry for Shared Resource Arbitration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data processing systems, as the number of components sharing access to a shared resource increases, the likelihood of simultaneous access requests grows, necessitating an efficient technique to arbitrate between these requests to prevent access violations and improve system performance.

Innovation Solution

An apparatus and method that utilize shared resource management circuitry to select and identify the currently granted initiator component within a storage structure, and gating circuitry to allow or block transactions based on this identification, triggering recovery actions when access violations occur, thereby simplifying reallocation and improving efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple initiator components share access to a shared resource, then resource utilization improves, but the likelihood of simultaneous access requests and access violations increases

Engineering Contradiction:
Improveresource utilizationVSAvoidaccess violation prevention
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

An arbitration circuit is introduced as an intermediary between multiple initiator components and the shared resource. The arbitration circuit receives access requests from initiators, determines which initiator should currently access the resource based on arbitration logic, and grants access accordingly. This mediator prevents access violations by ensuring only the granted initiator can access the resource at any given time, thus maintaining reliability while allowing multiple initiators to share the resource.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If continuous monitoring is implemented to prevent access violations, then system reliability improves, but system complexity and performance overhead increase

Engineering Contradiction:
Improveaccess control enforcementVSAvoidmonitoring system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The arbitration circuit performs preliminary action by determining which initiator component is granted access to the shared resource before actual access occurs. The circuit maintains current grant information and uses it to preemptively allow or block access requests. This approach ensures reliability through proactive access control rather than continuous monitoring, reducing system complexity while maintaining access violation prevention.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If traditional arbitration methods are used to manage shared resource access, then access control is maintained, but system performance and efficiency deteriorate due to continuous monitoring requirements

Engineering Contradiction:
Improveaccess controlVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the complex continuous monitoring function from the access control system and replaces it with a simplified arbitration circuit that maintains current grant information. Instead of continuously monitoring all initiator requests, the system only needs to check whether the requesting initiator matches the current grant information stored in the arbitration circuit. This extraction of the monitoring function significantly improves system performance while maintaining reliable access control.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20240241755A1Apparatus and method for controlling access to a shared resource
Publication Date: 2024.07.18 ARM LTD
  • US20240241755A1 patent drawing
  • US20240241755A1 patent drawing
  • US20240241755A1 patent drawing

AI summary

An apparatus and method for controlling access to a shared resource accessible to a plurality of initiator components is provided. The apparatus has shared resource management circuitry to select, from amongst the plurality of initiator components, a currently granted initiator component that is currently allowed to access the shared resource, and to identify the currently granted initiator component within a storage structure. Gating circuitry is located in a communication path between the given initiator component and the shared resource which, on receipt of a given transaction initiated by a given initiator component, determines with reference to the storage structure whether the given initiator component is the currently granted initiator component. The gating circuitry is arranged, when the currently granted initiator component is the given initiator component, to allow onward propagation of the given transaction to the shared resource, and is arranged, when the currently granted initiator component is other than the given initiator component, to block onward propagation of the given transaction to the shared resource and to trigger a recovery action to seek to facilitate future handling of the given transaction.