ECC Protection for Volatile Memory Bit Flips in Sleep Mode

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory systems in battery-powered mobile devices face unpredictable device failures due to bit flips in volatile memory during sleep mode, caused by reduced power supply voltage, leading to erroneous command bits and processor confusion.

Innovation Solution

A memory system and method that utilizes an error correction code (ECC) module to encode, decode, and correct data in volatile memory during sleep mode, leveraging the same ECC module used for non-volatile memory during active mode, generating parity bits upon entering sleep mode and correcting errors upon exiting.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If power is reduced to volatile memory during sleep mode to conserve battery energy, then energy consumption is reduced, but bit flips occur causing data corruption

Engineering Contradiction:
Improvepower consumptionVSAvoiddata integrity
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The system performs preliminary error correction by using the ECC module to correct bit flips in volatile memory immediately upon waking from sleep mode, before the corrupted data is used. This preliminary action prevents data corruption from propagating through the system while still allowing power reduction during sleep mode.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The ECC module serves as an intermediary between the volatile memory and the processor. During sleep mode transitions, the ECC module mediates by detecting and correcting bit flips in the volatile memory data before it reaches the processor, thus protecting against data corruption without requiring continuous power to the volatile memory.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If the ECC module is dedicated solely to non-volatile memory during active mode, then hardware complexity is minimized, but volatile memory cannot be protected during sleep mode

Engineering Contradiction:
Improvehardware complexityVSAvoidvolatile memory protection
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The ECC module is designed with multi-functionality to serve both non-volatile memory during active mode and volatile memory during sleep mode transitions. The controller detects the system state and dynamically assigns the ECC module's functionality accordingly, eliminating the need for separate error correction hardware for volatile memory while maintaining protection capabilities.

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

Data Source

PatentUS9612904B2Memory system and method for securing volatile memory during sleep mode using the same ECC module used to secure non-volatile memory during active mode
Publication Date: 2017.04.04 SANDISK TECHNOLOGIES LLC
  • US9612904B2 patent drawing
  • US9612904B2 patent drawing
  • US9612904B2 patent drawing

AI summary

In one embodiment, a memory system is provided comprising a volatile memory, a non-volatile memory, and an error correction code (ECC) module. The ECC module is configured to encode, decode, and correct data stored in the volatile memory when the memory system enters and exits a sleep mode and is further configured to encode, decode, and correct data stored in the non-volatile memory when the memory system is in an active mode.