Patentable/Patents/US-12001847
US-12001847

Processor implementing parallel in-order execution during load misses

PublishedJune 4, 2024
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A processor may include an instruction pipeline that executes program instructions in-order according to a program order. During operation, the instruction pipeline may detect that data is missing for a first instruction. In response, the instruction pipeline may send a request to load the missing data for the first instruction. However, the instruction pipeline may not necessarily stall operation to wait for the missing data to be loaded. Instead, the instruction pipeline may continue executing instructions subsequent to the first instruction. During the continued execution, the instruction pipeline may detect that data is missing for a second instruction, and send a request to load the missing data for the second instruction. The instruction pipeline may continue such operation until it determines that a condition occurs that prevents the continued execution. When the condition occurs, the instruction pipeline may stop the continued execution, and then re-execute the first instruction.

Patent Claims
5 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 2

Original Legal Text

2. The processor of claim 1, wherein the instruction pipeline is configured to determine that the condition occurs based on a determination that the missing data of the first instruction is required by another instruction of the sequence of instructions.

Plain English Translation

The invention relates to a processor with an instruction pipeline that improves efficiency by handling missing data dependencies between instructions. The processor includes a pipeline that detects when a first instruction lacks required data and determines whether this missing data is needed by another instruction in the sequence. If the condition is met, the pipeline adjusts execution to avoid stalls or inefficiencies caused by data dependencies. The processor may also include a data storage unit that tracks available and missing data for instructions, allowing the pipeline to make informed decisions about execution order. The system ensures that instructions are executed in a way that minimizes delays while maintaining correct program behavior. This approach is particularly useful in scenarios where data dependencies between instructions could otherwise lead to performance bottlenecks. The processor dynamically adapts to these conditions, optimizing performance without requiring manual intervention or complex pre-processing. The invention addresses the problem of inefficient instruction execution due to unresolved data dependencies, providing a solution that enhances processing speed and resource utilization.

Claim 5

Original Legal Text

5. The processor of claim 1, wherein responsive to a determination that the condition occurs, the instruction pipeline is configured to re-execute the sequence of instructions using the missing data loaded for the first instruction.

Plain English Translation

A processor system is designed to handle data dependencies in instruction execution, particularly when missing data is required for correct processing. The system includes an instruction pipeline that processes a sequence of instructions, where at least one instruction in the sequence depends on data that may not be immediately available. When a condition indicating missing data is detected, the processor re-executes the sequence of instructions using the newly loaded data for the first instruction in the sequence. This ensures that subsequent instructions in the pipeline receive the correct data, preventing errors or incorrect results due to missing or incomplete data. The re-execution mechanism may involve flushing and restarting the pipeline or selectively re-executing only the affected instructions. The system may also include a data dependency checker to identify instructions that rely on missing data and trigger the re-execution process. This approach improves processing accuracy and reliability in scenarios where data availability is uncertain or delayed.

Claim 10

Original Legal Text

10. The device of claim 9, wherein the instruction pipeline is configured to determine that the condition occurs based on a determination that the missing data of the first program instruction is required by another program instruction of the sequence of instructions.

Plain English Translation

This invention relates to a computing device with an instruction pipeline designed to handle missing data in program execution. The problem addressed is the inefficiency or errors that occur when a program instruction requires data that is not yet available, causing delays or incorrect processing. The device includes an instruction pipeline that detects when a first program instruction lacks required data and determines whether this missing data is needed by another instruction in the sequence. If the missing data is required by another instruction, the pipeline takes corrective action, such as stalling execution, reordering instructions, or fetching the missing data. The pipeline may also track dependencies between instructions to identify when data is needed by subsequent instructions. This ensures that instructions are executed in an order that avoids data dependencies, improving performance and correctness. The device may further include a memory system that stores instructions and data, and a processor that executes the instructions while managing data dependencies. The pipeline's ability to detect and resolve missing data requirements dynamically enhances the efficiency of program execution.

Claim 13

Original Legal Text

13. The device of claim 9, wherein responsive to a determination that the condition occurs, the instruction pipeline is configured to re-execute the sequence of instructions using the missing data loaded for the first program instruction.

Plain English Translation

A computing device includes an instruction pipeline that processes sequences of instructions for execution. The device monitors for a condition where a program instruction in the sequence requires data that is not yet available, causing a stall in the pipeline. When this condition is detected, the pipeline re-executes the sequence of instructions, this time using the previously missing data that has now been loaded for the first program instruction. This re-execution ensures that the instruction sequence proceeds correctly without further stalls. The device may include a data cache to store the loaded data and a control unit to manage the re-execution process. The re-execution may involve flushing and restarting the pipeline or selectively re-executing only the affected instructions. The system improves processing efficiency by avoiding repeated stalls due to missing data, particularly in scenarios where data dependencies exist between instructions. The solution is applicable in processors, microcontrollers, or other computing systems where instruction pipeline performance is critical.

Claim 17

Original Legal Text

17. The method of claim 16, wherein determining that the condition occurs comprises determining that the missing data of the first instruction is required by another instruction of the sequence of instructions.

Plain English Translation

The invention relates to data processing systems and methods for handling missing data in instruction sequences. The problem addressed is ensuring correct execution of instructions when required data is missing, which can lead to errors or inefficiencies in processing. The solution involves detecting missing data in a first instruction and determining whether that missing data is required by another instruction in the sequence. If the missing data is needed by a subsequent instruction, the system takes corrective action, such as fetching the missing data or adjusting the execution flow to prevent errors. This method improves system reliability by preventing data dependencies from causing execution failures. The approach may involve analyzing instruction dependencies, tracking data requirements, and dynamically resolving missing data issues during execution. The system can be implemented in processors, compilers, or runtime environments to enhance instruction processing accuracy and efficiency.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

August 30, 2022

Publication Date

June 4, 2024

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Processor implementing parallel in-order execution during load misses” (US-12001847). https://patentable.app/patents/US-12001847

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-12001847. See llms.txt for full attribution policy.