Processor Shared Resource Scheduling via Cycle Delay
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing processor systems face challenges in managing shared resources efficiently, particularly when multiple operations require simultaneous access, often necessitating additional resource instances or altering scheduling schemes that negatively impact processor function.
Innovation Solution
A method and system where a scheduler determines that a first operation will require a shared resource, causing a second operation to delay its use by N cycles, allowing the shared resource to be used for the first operation's aspects at cycle X and the second operation's aspects at cycle X+N, thereby optimizing resource usage without adding physical instances.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If additional instances of shared resource are added to address simultaneous access requirements, then resource availability for multiple operations is improved, but device complexity and manufacturing cost increase
Solution Approach 1:
The patent implements dynamic resource allocation by allowing a single shared resource to be temporarily allocated to different operations based on real-time needs. The scheduler dynamically adjusts resource allocation by stalling operations and issuing commands to hold the shared resource, enabling one resource instance to serve multiple operations sequentially without requiring multiple physical instances.
Solution Approach 2:
The patent applies preliminary action by having the scheduler detect when an operation will need a shared resource and proactively stalling conflicting operations before they can access the resource. The scheduler issues hold commands in advance to ensure the shared resource is reserved for the operation that needs it, preventing conflicts before they occur.
2Productivity
If scheduling scheme is changed to allow simultaneous access to shared resource by multiple operations, then processor productivity is improved, but reliability and correctness of resource access deteriorate
Solution Approach 1:
The patent implements feedback mechanisms where the scheduler continuously monitors operation status and shared resource usage. When an operation is stalled and the shared resource becomes available, the scheduler receives feedback and issues commands to release the resource and allow the stalled operation to proceed, ensuring correct sequential access while maintaining high throughput.
Solution Approach 2:
The scheduler acts as an intermediary between multiple operations and the shared resource. It mediates access requests by stalling operations that would conflict, allocating the shared resource to the appropriate operation at the appropriate time, and coordinating the sequence of access to maintain correctness while enabling parallel operation execution.
3Productivity
If shared resource is allocated to first operation at cycle X and second operation at cycle X+N, then resource sharing efficiency is improved, but loss of time for individual operations increases
Solution Approach 1:
The patent implements periodic action through cyclic scheduling where operations are stalled for specific numbers of cycles (N cycles) to allow shared resource allocation. This periodic stalling pattern enables systematic resource sharing while minimizing overall time loss, as operations resume execution systematically rather than being indefinitely delayed.
Data Source
AI summary
Methods and systems that reduce the number of instance of a shared resource needed for a processor to perform an operation and/or execute a process without impacting function are provided. a method of processing in a processor is provided. Aspects include determining that an operation to be performed by the processor will require the use of a shared resource. A command can be issued to cause a second operation to not use the shared resources N cycles later. The shared resource can then be used for a first aspect of the operation at cycle X and then used for a second aspect of the operation at cycle X+N. The second operation may be rescheduled according to embodiments.


