Nonvolatile Memory Error Logging for Defect Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Nonvolatile memory systems face challenges in efficiently detecting and addressing physical defects that cause high error rates, leading to potential data loss and reduced memory capacity due to the inability to distinguish between transient and persistent errors.

Innovation Solution

Implementing a method to log and aggregate error rates over multiple write-erase cycles to identify persistently defective physical units, which are then designated as 'bad' and excluded from subsequent data storage, while using Error Correction Code (ECC) and block folding schemes to manage and correct errors effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error rates are monitored and blocks are discarded when error rates exceed a threshold, then data reliability is improved, but memory capacity is reduced due to unnecessary discarding of blocks with mostly usable sections

Engineering Contradiction:
Improvedata reliabilityVSAvoidmemory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent divides a memory block into multiple physical units (e.g., pages or sectors) and monitors error rates at the physical unit level rather than discarding the entire block. This segmentation allows selective identification of defective areas while preserving usable sections, thereby maintaining memory capacity while improving data reliability through targeted error management.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If individual physical units are monitored and logged over multiple write-erase cycles, then detection precision of physical defects is improved, but device complexity increases due to error logging and aggregation mechanisms

Engineering Contradiction:
Improvedetection precisionVSAvoiddevice complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements error logging at the physical unit level during normal write-erase operations, accumulating error rate data over multiple cycles before making discard decisions. This preliminary action of continuous monitoring and aggregation enables precise detection of physical defects while distributing the complexity across routine operations rather than requiring complex real-time analysis systems.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an error log as an intermediary data structure that stores error rate information for individual physical units across multiple write-erase cycles. This intermediary mechanism simplifies the detection process by pre-aggregating error data, allowing the system to make informed discard decisions based on accumulated evidence rather than complex real-time analysis.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If error correction codes are applied to correct high error rates, then data reliability is improved, but processing time increases significantly

Engineering Contradiction:
Improvedata reliabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs error logging and physical unit identification during idle periods or background operations rather than during active data access. By preliminarily identifying and marking defective physical units in advance, the system avoids time-consuming error correction processing during critical data operations, thus improving processing time while maintaining data reliability through preventive exclusion of bad units.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9558847B2Defect logging in nonvolatile memory
Publication Date: 2017.01.31 SANDISK TECHNOLOGIES LLC
  • US9558847B2 patent drawing
  • US9558847B2 patent drawing
  • US9558847B2 patent drawing

AI summary

A method of operating a nonvolatile memory block includes reading data from physical units in the block and determining individual error rates for data from the physical units. The error rate data is stored. This is repeated over multiple iterations and aggregated stored error rates are used to identify bad physical units in the block.