Memory Error Handling via Parity Check and Confidence Assessment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory errors in computing systems, particularly soft errors caused by particle interactions, can disrupt normal operation and require system reboot or costly error correction codes, leading to computational delays and increased system size and cost.

Innovation Solution

An error handling technique that allows execution to continue despite memory errors by suppressing interrupts, generating error notifications, and determining a confidence level for computational results, enabling the system to tolerate sporadic errors while flagging critical failures for immediate attention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error correction codes are implemented to handle memory errors, then reliability is improved, but device complexity and cost increase

Engineering Contradiction:
Improvememory error handlingVSAvoidsystem size
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent employs inexpensive parity check circuits instead of complex error correction codes. When memory errors are detected through parity checks, the system performs simple data rewriting operations rather than using sophisticated correction mechanisms. This approach treats error handling as a disposable, simple recovery process rather than requiring permanent complex correction infrastructure.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The patent extracts the error detection and handling functionality from the main computational flow by implementing separate parity check circuits and error handling logic. This allows the main system to operate with full speed while error checking occurs in parallel through dedicated hardware components, reducing the impact on overall system complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If error correction codes are used to handle memory errors, then reliability is improved, but productivity decreases due to computational delays

Engineering Contradiction:
Improvememory error handlingVSAvoidexecution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements periodic parity checking at specific checkpoints during computation rather than continuous error correction. The system performs parity checks at defined intervals and only interrupts execution when errors are actually detected. This periodic approach maintains high productivity during normal operation while providing reliability assurance at critical points.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent allows computational execution to continue without interruption even when potential errors are present, rushing through the computation and only stopping to handle errors after completion or at checkpoints. This skipping approach minimizes the impact on execution speed by avoiding repeated error checking and correction interruptions during the computational process.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Reliability

If system execution is halted to handle memory errors, then reliability is improved, but productivity decreases due to computational delays

Engineering Contradiction:
Improveerror handling accuracyVSAvoidcomputational delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary parity checking of memory data before computational operations to detect errors early. By checking data integrity in advance and only halting execution when actual errors are found, the system minimizes unnecessary interruptions while maintaining reliability through proactive error detection at critical checkpoints.

Inventive Principle:
Principle #10Preliminary action

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 minimizes the impact of memory errors on execution speed, maintains system throughput, and improves robustness by allowing continued operation with error notifications and immediate corrective actions for critical errors.

Implementation Method 1

an alpha particle (e.g., from cosmic rays), which carries a positive charge and kinetic energy, can hit a memory cell and cause the cell to change state to a different value. When an alpha particle interacts with the semiconductor substrate, electron-hole pairs can be generated.

Methodology Applied
Scientific EffectAlpha particle interaction: Ionisation

Data Source

PatentUS10908987B1Handling memory errors in computing systems
Publication Date: 2021.02.02 AMAZON TECH INC
  • US10908987B1 patent drawing
  • US10908987B1 patent drawing
  • US10908987B1 patent drawing

AI summary

An error handling technique for a computing device includes detecting a memory error during execution of the program instructions to generate a computational result, and generating an error message containing information about the memory error. The error message can be stored in a notification memory space, and be made available for access, for example, by a host system. The execution of the program instructions is allowed to continue to generate the computational result despite detecting the memory error. When the computation result becomes available, a confidence level of the computational result can be determined based on which program instruction or which computational stage resulted in the memory error. The confidence level can be used to assess whether the computational result is acceptable.