Non-Volatile Memory Word Line Programming Order for Error Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing non-volatile storage systems face challenges in error recovery due to data inconsistencies when reading back data from storage devices, as current techniques such as Error Correction Codes (ECC) can be time-consuming and not always successful.

Innovation Solution

The proposed solution involves varying the programming order of word lines in non-volatile storage systems, either by reversing the sequential order or programming different sets of word lines in different orders, to improve error recovery. This includes changing the programming order based on program/erase cycle counts and identifying problem word lines to place them earlier or later in the sequence, which helps in reducing un-recoverable errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If Error Correction Codes (ECC) are used to recover data from non-volatile memory, then data reliability is improved, but processing time increases and recovery may still fail

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

Solution Approach 1:

The system performs preliminary actions by varying the programming order of word lines during data writing. This creates diverse data placement patterns in advance, so that when read errors occur, the probability of error overlap is reduced without needing time-consuming processing during recovery

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If the same programming order is used for all word lines, then programming process is simple, but error recovery capability is reduced

Engineering Contradiction:
Improveprogramming process simplicityVSAvoiderror recovery capability
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The system dynamically changes the programming order of word lines based on different conditions (e.g., different blocks, different pages, or error patterns). This dynamic adjustment improves error recovery capability while maintaining reasonable process complexity through systematic order variation rather than random changes

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system inverts or reverses the programming order for certain word lines or blocks. By programming word lines in reverse order or using different sequences for different sections, the system reduces the likelihood of simultaneous failures and improves error recovery without significantly complicating the overall programming process

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS10943662B1Different word line programming orders in non-volatile memory for error recovery
Publication Date: 2021.03.09 SANDISK TECHNOLOGIES LLC
  • US10943662B1 patent drawing
  • US10943662B1 patent drawing
  • US10943662B1 patent drawing

AI summary

An apparatus includes non-volatile memory and a control circuit configured to program the non-volatile memory. The control circuit is configured to change a programming order. In one aspect, the control circuit changes the order in which word lines are programmed from one point in time to another. In one aspect, the control circuit uses one order for programming one set of word lines and a different order for a different set of word lines. The sets of word lines could be in different sub-blocks, memory blocks, or memory dies. Such programming order differences can improve performance of error recovery.