NVRAM Error Correction via Volatile RAM Copying

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current information handling systems lack the ability to detect and correct corrupted non-volatile random access memory (NVRAM) data, which can lead to system failures due to permanent damage from excessive write/erase cycles, without increasing the bill of materials cost or altering the NVRAM format.

Innovation Solution

Implementing a system that uses Error Correcting Code (ECC) data stored in volatile RAM to detect and correct NVRAM errors, reducing the need for additional storage and maintaining the existing NVRAM format, by writing ECC data only during low power state transitions and using it to update NVRAM when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If Error Correcting Code (ECC) data is stored in volatile RAM and used to correct NVRAM errors, then system reliability is improved, but the system requires additional volatile memory resources

Engineering Contradiction:
ImproveNVRAM error detection and correction capabilityVSAvoidvolatile memory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent creates a copy of the NVRAM data in volatile RAM, generates ECC data from this copy, and uses the ECC data to detect and correct errors in the original NVRAM data. This copying approach allows error correction without permanently storing redundant data in NVRAM, thus improving reliability while minimizing additional storage requirements.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary ECC data generation and error checking before the NVRAM data is actually needed for system operation. By pre-calculating ECC data from a copy in volatile RAM and comparing it with the original NVRAM data upon boot or low-power state transitions, the system prepares error correction capabilities in advance without requiring continuous memory resources.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If ECC data is written to NVRAM during every system operation, then error correction capability is maintained, but wear on NVRAM parts increases due to excessive write/erase cycles

Engineering Contradiction:
Improveerror correction capabilityVSAvoidNVRAM part lifespan
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

Instead of continuously writing ECC data to NVRAM during every operation, the system periodically updates ECC data only during low-power state transitions (such as S3, S4, or S5 states). This periodic approach maintains error correction capability while significantly reducing the frequency of write/erase cycles, thereby extending NVRAM lifespan.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent changes the operational parameters of ECC data management by transitioning from continuous updates to periodic updates based on system power states. This parameter change allows the system to maintain adequate error protection while adapting the update frequency to match actual usage patterns and reduce unnecessary wear on NVRAM components.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If a second backup copy of NVRAM data is stored to enable error recovery, then data recovery capability is improved, but bill of materials cost increases

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidstorage components
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent creates a temporary copy of NVRAM data in volatile RAM for the purpose of generating ECC data, rather than creating a permanent second backup copy in additional storage media. This approach enables error detection and correction functionality without requiring extra non-volatile storage components, thus maintaining data recovery capability while avoiding increased bill of materials costs.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10684913B2Systems and methods for detecting errors and/or restoring non-volatile random access memory using error correction code
Publication Date: 2020.06.16 DELL PROD LP
  • US10684913B2 patent drawing
  • US10684913B2 patent drawing
  • US10684913B2 patent drawing

AI summary

Systems and methods are provided that may be implemented to detect and optionally recover corrupted system configuration data written to non-volatile random access memory (NVRAM). The disclosed systems and methods may be implemented by writing a copy of the NVRAM data to volatile system memory (e.g., RAM) while the system is active. Error correction code (ECC) data may written to the NVRAM when the system enters a lower power state. When the system resumes from the low power state, the copy of data is made in system RAM from the NVRAM, and the ECC data is used to determine whether there are errors in NVRAM data, in which case the ECC data may be used to correct data in the copy on RAM before writing the corrected data to NVRAM from the system RAM.