Instruction Storage Circuitry Threshold Fetching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing instruction storage methods, such as caches, are inefficient when filled with instructions that are unlikely to be executed, reducing their utility and performance.

Innovation Solution

Implementing a fetch circuitry that preferentially stores consecutive instructions based on a storage condition indicating their utility, ceasing storage when a threshold is reached, to maximize the likelihood of storing useful instructions and prevent unnecessary evictions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If the instruction storage is filled with consecutive instructions, then the spatial locality is improved, but the storage may be filled with low-utility instructions reducing overall efficiency

Engineering Contradiction:
Improvespatial localityVSAvoidinstruction fetch efficiency
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system performs preliminary actions by storing a threshold number of consecutive instructions in advance when a storage condition is met. This preliminary storage ensures that when these instructions are later needed, they are already available in the instruction cache, improving fetch efficiency while maintaining spatial locality through the consecutive storage pattern.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the parameter of instruction utility by evaluating storage conditions before storing consecutive instructions. By monitoring whether a threshold number of instructions have been stored and whether storage conditions are met, the system dynamically adjusts storage behavior to ensure high-utility instructions are prioritized, preventing the cache from being filled with low-utility instructions.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the instruction storage is frequently refilled, then the availability of useful instructions is improved, but the refill operations consume additional time and resources

Engineering Contradiction:
Improveinstruction availabilityVSAvoidrefill time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary storage of consecutive instructions when storage conditions are met, proactively preparing the instruction cache before instructions are actually needed. This reduces the frequency and urgency of refill operations, as the cache is pre-filled with potential future instructions, thereby reducing refill time and improving instruction availability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from monitoring the number of stored instructions and evaluating storage conditions to control when to store and when to cease storage. This feedback mechanism ensures that the instruction cache is optimally filled with useful instructions, improving availability while minimizing unnecessary refill operations that would consume time and resources.

Inventive Principle:
Principle #23Feedback

3Productivity

If the storage threshold is set low, then the refill frequency is reduced, but the likelihood of storing all useful instructions is decreased

Engineering Contradiction:
Improverefill efficiencyVSAvoidinstruction completeness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically adjusts the storage threshold parameter based on storage conditions. By monitoring whether a threshold number of consecutive instructions have been stored, the system can adaptively determine when to cease storage, ensuring that the threshold is high enough to capture all useful instructions while not being so high as to cause excessive refilling. This parameter optimization balances refill efficiency with instruction completeness.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11748105B2Methods and apparatus for storing a copy of a current fetched instruction when a miss threshold is exceeded until a refill threshold is reached
Publication Date: 2023.09.05 ARM LTD
  • US11748105B2 patent drawing
  • US11748105B2 patent drawing
  • US11748105B2 patent drawing

AI summary

Aspects of the present disclosure relate an apparatus comprising fetch circuitry and instruction storage circuitry. The fetch circuitry is to fetch instructions for execution by execution circuitry. The instruction storage circuitry is to store temporary copies of fetched instructions. The fetch circuitry is configured to preferentially fetch instructions from the instruction storage circuitry. The instruction storage circuitry is configured to, responsive to a storage condition being met, begin storing copies of consecutive fetched instructions, the storage condition indicating a utility of a current fetched instruction; and to, responsive to determining that a number of said stored consecutive instructions has reached a storage threshold, cease storing copies of subsequent fetched instructions.