Processor Store Pairing for Reduced Hardware Requirements

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In current out-of-order processors, store instructions must be executed in-order to maintain data integrity, which requires significant hardware resources and restricts parallel execution of store operations due to the destructive nature of write operations and strict memory ordering rules.

Innovation Solution

Implementing a method to simultaneously dispatch and execute pairs of store operations that meet specific eligibility criteria, such as accessing the same cache line and memory type, without duplicating cache tag and fill-buffer tag match logic, thereby reducing hardware requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If store instructions are executed in-order to maintain data integrity, then data integrity is preserved, but hardware resources increase and parallel execution is restricted

Engineering Contradiction:
Improvedata integrityVSAvoidhardware resources
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments store instructions into two categories: senior stores (already retired, safe to execute) and junior stores (not yet retired, must maintain order). This segmentation allows the processor to selectively execute senior stores out-of-order while keeping junior stores in-order, reducing hardware complexity without compromising data integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic store pairing where the processor evaluates eligibility criteria at runtime to determine which store pairs can be simultaneously dispatched. This dynamic approach allows flexible parallel execution when conditions permit, while maintaining in-order execution when needed, optimizing both hardware utilization and data integrity.

Inventive Principle:
Principle #15Dynamics

2Productivity

If store operations are executed simultaneously, then processor efficiency improves, but data integrity may be compromised without additional hardware

Engineering Contradiction:
Improveprocessor efficiencyVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary evaluation of store instructions to identify senior stores that have already been retired and are safe to execute. By pre-classifying stores as senior or junior based on retirement status, the processor can confidently execute senior stores in parallel without compromising data integrity, thereby improving processor efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary eligibility check mechanism that evaluates store pairs against specific criteria (same cache line, same memory type, both senior stores) before allowing simultaneous dispatch. This intermediary layer ensures data integrity is maintained while enabling parallel execution of eligible store operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Device complexity

If hardware resources are reduced, then device complexity decreases, but the ability to execute store operations in parallel is limited

Engineering Contradiction:
Improvehardware requirementsVSAvoidparallel execution capability
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements partial parallel execution by selectively pairing only those store instructions that meet specific eligibility criteria. Rather than attempting to parallelize all store operations (which would require significant hardware), the processor identifies and executes eligible pairs, achieving meaningful parallelism with minimal hardware overhead.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the evaluation parameters from strict in-order execution to conditional out-of-order execution based on store retirement status and eligibility criteria. This parameter change enables parallel execution of senior stores while maintaining in-order execution of junior stores, reducing hardware complexity while preserving data integrity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11544062B2Apparatus and method for store pairing with reduced hardware requirements
Publication Date: 2023.01.03 INTEL CORP
  • US11544062B2 patent drawing
  • US11544062B2 patent drawing
  • US11544062B2 patent drawing

AI summary

An apparatus and method for pairing store operations. For example, one embodiment of a processor comprises: a grouping eligibility checker to evaluate a plurality of store instructions based on a set of grouping rules to determine whether two or more of the plurality of store instructions are eligible for grouping; and a dispatcher to simultaneously dispatch a first group of store instructions of the plurality of store instructions determined to be eligible for grouping by the grouping eligibility checker.