Relinquish Instruction for Unused Storage Circuit Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data processing apparatuses face inefficiencies due to the presence of unused storage circuits, which can cause stalls during speculative execution and increase context switching time, as they need to be saved and restored during process changes.

Innovation Solution

Incorporating a relinquish instruction that indicates unused storage circuits, allowing the execution circuitry to modify the execution of future instructions based on the state of these circuits, thereby reducing unnecessary operations and saving only used storage circuits during context switching.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all storage circuits are saved during context switching, then data integrity is maintained, but context switching time increases

Engineering Contradiction:
Improvedata integrityVSAvoidcontext switching time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the necessary storage circuits (those that are live or marked as used) from the full set of storage circuits during context switching. The relinquish instruction mechanism allows the system to identify and exclude unused storage circuits from the save operation, thereby reducing context switching time while maintaining data integrity for only those circuits that actually need to be preserved.

Inventive Principle:
Principle #2Taking out (Extraction)

2Speed

If speculative execution is performed without checking storage circuit usage, then execution speed increases, but stalls occur when branches are incorrectly predicted

Engineering Contradiction:
Improveexecution speedVSAvoidexecution correctness
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent applies preliminary action by having the relinquish instruction mark storage circuits as unused before speculative execution occurs. This pre-marking allows the execution unit to safely overwrite storage circuits during speculative execution without causing stalls, because the system has already determined that these circuits are not needed by other instructions. If speculation is incorrect, the harm is limited to already-marked-unused circuits.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If storage circuits are frequently saved and restored, then context switching reliability is maintained, but processing efficiency decreases

Engineering Contradiction:
Improvecontext switching reliabilityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements partial action by saving only a subset of storage circuits—specifically, those that are live or have been marked as used via the relinquish instruction mechanism. This partial save approach maintains context switching reliability for the necessary circuits while avoiding the overhead of saving and restoring all storage circuits, thereby improving processing efficiency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11269634B2Data structure relinquishing
Publication Date: 2022.03.08 ARM LTD
  • US11269634B2 patent drawing
  • US11269634B2 patent drawing
  • US11269634B2 patent drawing

AI summary

A data processing apparatus is provided comprising: a plurality of storage circuits to store data. Execution circuitry performs one or more operations using the storage circuits in response to instructions. The instructions include a relinquish instruction. The execution circuitry responds to the relinquish instruction by indicating that at least one of the plurality of storage circuits is an unused storage circuit and the execution circuitry affects execution of future instructions based on the unused storage circuit after executing the relinquish instruction.