Adaptive Resource Arbiter for Pipelined Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems that manage shared resources often inefficiently allocate resources due to always requiring the maximum possible resources needed, leading to unnecessary resource unavailability and reduced system performance, especially in clocked systems where resource requirements vary over time.

Innovation Solution

Implementing an adaptive resource management approach where a resource arbiter determines the minimum resources required for each request, allowing requests to be granted in the first available clock cycle or subsequent cycles based on availability, and prioritizing high-priority requestors to optimize resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the arbiter requires maximum possible resources to be available for allocation, then the reliability of resource allocation is improved, but the productivity of the system deteriorates due to unnecessary resource unavailability

Engineering Contradiction:
Improveresource allocation reliabilityVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The arbiter dynamically determines the minimum resource requirements for each request based on current system state and timing constraints, rather than using a fixed maximum requirement. This dynamic adaptation allows the system to grant requests when sufficient resources are available without unnecessarily blocking other requests, thereby improving throughput while maintaining allocation reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The arbiter changes the parameter of resource requirement from a static maximum value to a dynamic minimum value that varies based on timing constraints and system state. This parameter change enables the system to optimize resource allocation by considering when resources will be needed rather than requiring maximum resources to be available at all times.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the arbiter uses time-varying resource requirements, then the productivity of the system is improved, but the device complexity increases due to additional arbitration logic

Engineering Contradiction:
Improvesystem throughputVSAvoidarbiter logic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The arbiter performs preliminary determination of minimum resource requirements based on timing constraints before making allocation decisions. By pre-calculating what the minimum requirements will be based on known timing information, the arbiter avoids complex real-time calculations during the allocation decision process, reducing instantaneous complexity while maintaining high productivity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The arbiter uses feedback from the system state and timing information to adjust resource requirement determinations. By continuously monitoring system conditions and using this feedback to refine minimum requirement calculations, the arbiter achieves adaptive resource management without requiring overly complex logic, as the feedback mechanism guides the arbitration decisions systematically.

Inventive Principle:
Principle #23Feedback

3Speed

If the arbiter grants requests in the first available clock cycle, then the speed of resource allocation is improved, but the loss of time increases due to pipeline delays in determining resource requirements

Engineering Contradiction:
Improveresource allocation speedVSAvoidpipeline delay time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The arbiter performs preliminary determination of minimum resource requirements using timing information that becomes available during the request process. By using this preliminary information to make allocation decisions in the first available clock cycle, the system minimizes pipeline delays while ensuring that resource requirements are properly accounted for, thus reducing time loss without sacrificing allocation speed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10268604B2Adaptive resource management in a pipelined arbiter
Publication Date: 2019.04.23 ORACLE INT CORP
  • US10268604B2 patent drawing
  • US10268604B2 patent drawing
  • US10268604B2 patent drawing

AI summary

A resource arbiter in a system with multiple shared resources and multiple requestors may implement an adaptive resource management approach that takes advantage of time-varying requirements for granting access to at least some of the shared resources. For example, due to pipelining, signal timing issues, or a lack of information, more resources than are required to perform a task may need to be available for allocation to a requestor before its request for the needed resources is granted. The requestor may request only the resources it needs, relying on the arbiter to determine whether additional resources are required in order to grant the request. The arbiter may park a high priority requestor on idle resources, thus allowing requests for those resources by the high priority requestor to be granted on the first clock cycle of a request. Other requests may not be granted until at least a second clock cycle.