CPU Error Correction via Delayed Register File Rollback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing CPU error correction methods using rollback control are limited in error detection range and can malfunction when errors propagate to the rollback control unit, especially when errors affect peripheral modules like RAM and DMA controllers.

Innovation Solution

The method involves restoring the register file content from a delayed register file to re-execute instructions and using parity checks to detect errors, canceling CPU bus writes, and adjusting error detection signal delays to prevent propagation and erroneous writes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If rollback control is performed from the previous instruction when an error is detected, then error correction is achieved, but the error detection range is limited to instructions only

Engineering Contradiction:
Improveerror correction capabilityVSAvoiderror detection range
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system segments error detection into multiple independent components: instruction error detection, data error detection, and control signal error detection. Each component monitors specific aspects of CPU operation, allowing errors in instructions, data, and control signals to be detected and corrected independently through rollback control.

Inventive Principle:
Principle #1Segmentation

2Reliability

If rollback control is used to correct errors, then instruction-level errors are corrected, but errors in peripheral modules like RAM and DMA controller cannot be corrected

Engineering Contradiction:
Improveinstruction error correctionVSAvoidperipheral module error correction
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The rollback control mechanism is enhanced to serve multiple functions: it not only corrects instruction errors but also handles data errors from RAM and control signal errors from peripheral modules like DMA controller. The single rollback mechanism universally addresses errors across different CPU components by detecting them through multiple parallel detection paths.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If error detection is expanded to cover more CPU components, then error detection range increases, but the rollback control unit may malfunction due to error propagation

Engineering Contradiction:
Improveerror detection rangeVSAvoidrollback control unit stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The error detection function is extracted from the rollback control unit and implemented as separate independent detection circuits for instructions, data, and control signals. This separation prevents error propagation to the rollback control unit while maintaining comprehensive error detection capability across all CPU components.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Independent error detection circuits serve as intermediaries between various CPU components and the rollback control unit. These detection circuits filter and validate errors before presenting them to the rollback control unit, preventing direct error propagation from peripheral modules to the control unit itself.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If comprehensive error detection is implemented across all CPU components, then error detection capability improves, but system complexity increases

Engineering Contradiction:
Improvecomprehensive error detectionVSAvoiddetection and control circuit complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Multiple independent error detection circuits for instructions, data, and control signals are merged into a unified rollback control mechanism. This consolidation allows comprehensive error detection across all CPU components while sharing common correction logic, thereby reducing overall system complexity compared to having separate correction mechanisms for each error type.

Inventive Principle:
Principle #5Merging (Combining)

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach allows for comprehensive error detection and correction within the CPU, preventing rollback unit malfunctions and erroneous CPU bus writes, thereby ensuring reliable error correction and system stability.

Implementation Method 1

a parity check result of arbitrary Flip-Flops in the CPU is collected so as to detect an error

Methodology Applied
Scientific EffectParity check:

Data Source

PatentUS8095825B2Error correction method with instruction level rollback
Publication Date: 2012.01.10 RENESAS ELECTRONICS CORP
  • US8095825B2 patent drawing
  • US8095825B2 patent drawing
  • US8095825B2 patent drawing

AI summary

This method is an error correction method such that, when an error is detected in a CPU with pipeline structure, a content of a register file is restored by a delayed register file which holds an execute completion state of an [Instruction N] correctly executed before this error, and a rollback control that re-executes an instruction from the [Instruction N+1] which is the next instruction of the [Instruction N] is performed. The method collects a parity check result of arbitrary Flip-Flops existing inside the CPU, and detects an error. As a result, the content of the register file is restored into the instruction execute completion state preceding to the instruction range likely to malfunction by the error, and the instruction can be roll backed from the beginning of the instruction range likely having malfunctioned by the error.