Memory Cell Programming with Concurrent Redundant Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In semiconductor memory devices, the challenge lies in ensuring data integrity during power loss events, particularly during multi-pass programming operations, where initial pages of data can be corrupted due to overlapping threshold voltage distributions and limited storage capabilities, leading to difficulties in distinguishing between data states.

Innovation Solution

The solution involves concurrently storing backup data in separate memory cells, either as Single-Level Cell (SLC) data or by encoding Multi-Level Cell (MLC) data into SLC data, allowing for recovery of initial pages in case of power loss. This is achieved through a first, foggy program pass followed by a second, fine program pass, where SLC data is stored in backup sets, enabling accurate data retrieval even after power loss.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If MLC programming is used to increase storage density, then storage capacity is improved, but data reliability deteriorates due to overlapping threshold voltage distributions and corruption during power loss events

Engineering Contradiction:
Improvestorage densityVSAvoiddata integrity
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent segments the programming process into multiple passes (first pass and second pass) and segments the data storage into primary memory cells and backup memory cells. The initial pages of data are programmed in the first pass, and additional pages are programmed in the second pass. Backup copies of the initial pages are stored separately to enable recovery if power loss occurs during the second pass, thus resolving the contradiction between storage density and data integrity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If backup data is stored to protect against power loss, then data reliability is improved, but device complexity increases due to additional storage requirements

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidbackup storage structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by storing backup copies of the initial pages of data before performing the second programming pass. This advance preparation ensures that if power loss occurs during the second pass, the data can be recovered from the backup copies without requiring complex error correction or data reconstruction mechanisms, thus improving reliability while managing device complexity.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If multi-pass programming is used to improve data states, then manufacturing precision is improved, but loss of time increases due to multiple programming operations

Engineering Contradiction:
Improvethreshold voltage distributionVSAvoidprogramming time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary programming of the initial pages of data in the first pass, establishing a foundation that enables faster second pass programming. The backup copies are also created during the first pass, allowing the second pass to proceed efficiently without requiring time-consuming error correction or data verification operations, thus reducing overall programming time while maintaining manufacturing precision.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11625172B2Programming memory cells with concurrent redundant storage of data for power loss protection
Publication Date: 2023.04.11 SANDISK TECHNOLOGIES LLC
  • US11625172B2 patent drawing
  • US11625172B2 patent drawing
  • US11625172B2 patent drawing

AI summary

Apparatuses and techniques are described for programming data in memory cells while concurrently storing backup data. One or more initial pages of data are programmed into both a primary block and a first backup block in a first program pass. A power loss then occurs which can corrupt the data or otherwise prevent reading of the one or more initial pages of data from the primary block. The one or more initial pages of data are read from the first backup block and used to perform a second program pass in which one or more additional pages of data are programmed into the primary block. Single bit per cell data can be stored in a second backup block to decode the one or more initial pages of data as read from the first backup block.