Processor History Reset via Model-Specific Register

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processors lack an instruction to effectively reset their internal history, which is essential for secure context switching and performance optimization, as they cannot clear prediction histories and cache data structures efficiently, leading to potential security breaches and performance issues.

Innovation Solution

A new instruction is introduced that allows an operating system to request a history reset for a processor core, utilizing a model-specific register to hint at the need for a history reset without modifying architectural state, thereby enabling secure context switching and performance optimization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If no history reset instruction is provided, then the processor maintains continuous execution state, but security is compromised due to information leaks between context switches

Engineering Contradiction:
ImprovesecurityVSAvoidinstruction set complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the history reset functionality into a dedicated instruction (IA32_HRESET) that can be selectively executed. This allows the processor to maintain continuous execution state by default while providing a specific mechanism to reset history when needed for security, thus resolving the contradiction between security and instruction set complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary model-specific register (IA32_HRESET_ENABLE) that mediates between the software's security requirements and the processor's execution state. This register acts as a control interface that enables or disables history reset functionality without requiring complex instruction set changes, thereby improving security while minimizing complexity increases.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If internal history is not reset, then processor performance is maintained through cached prediction data, but security breaches occur due to information leakage between threads

Engineering Contradiction:
ImprovesecurityVSAvoidprocessor performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent enables preliminary action by allowing the operating system to issue the IA32_HRESET instruction before context switching occurs. This proactive approach ensures that prediction histories are cleared in advance of potential security threats, preventing information leakage while allowing performance optimization through selective resetting rather than continuous clearing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements partial action by providing selective history reset capability through the IA32_HRESET instruction and IA32_HRESET_ENABLE register. Instead of forcing complete history clearance that would always degrade performance, the system can partially reset only when security requirements demand it, thus balancing security needs with performance maintenance.

Inventive Principle:
Principle #16Partial or excessive action

3Stability of the object's composition

If model-specific register is used to hint history reset, then architectural state is preserved, but implementation complexity increases

Engineering Contradiction:
Improvearchitectural state stabilityVSAvoidregister implementation complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The patent extracts the history reset control functionality from the main architectural state into a separate model-specific register (IA32_HRESET_ENABLE). This extraction allows the core architectural state to remain stable and unchanged while providing the necessary control mechanism in a dedicated register that does not interfere with existing architecture, thus maintaining stability while managing complexity through separation of concerns.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11436018B2Apparatuses, methods, and systems for instructions to request a history reset of a processor core
Publication Date: 2022.09.06 INTEL CORP
  • US11436018B2 patent drawing
  • US11436018B2 patent drawing
  • US11436018B2 patent drawing

AI summary

Systems, methods, and apparatuses relating to instructions to reset software thread runtime property histories in a hardware processor are described. In one embodiment, a hardware processor includes a hardware guide scheduler comprising a plurality of software thread runtime property histories; a decoder to decode a single instruction into a decoded single instruction, the single instruction having a field that identifies a model-specific register; and an execution circuit to execute the decoded single instruction to check that an enable bit of the model-specific register is set, and when the enable bit is set, to reset the plurality of software thread runtime property histories of the hardware guide scheduler.