Write Sequence for MLC Flash Memory Abort Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-level cell flash memory systems, earlier-written data is at risk of being damaged during the programming of later data, leading to potential unrecoverability, especially when write aborts occur or when data is programmed in intermediate states that do not reflect the original bits.

Innovation Solution

Data is programmed in multi-level cell flash memory systems by ensuring that no data from a write command is left in a lower page with an unwritten upper page, with data assigned to word lines sequentially, and any remaining data is stored in an alternate location to avoid partial word lines in the main memory array, allowing both lower and upper pages to be programmed together in parallel across multiple planes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is programmed in lower page first then upper page in MLC flash memory, then storage capacity is improved, but data reliability deteriorates because earlier-written data may be damaged during programming of later data

Engineering Contradiction:
Improvestorage capacityVSAvoiddata reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies preliminary action by checking whether a lower page contains data from a previous write command before programming an upper page. If such data exists, the lower page is programmed first to complete the write sequence, ensuring that intermediate states are avoided and data integrity is maintained. This preliminary check and conditional programming sequence prevents damage to earlier-written data while enabling multi-level cell storage.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If write abort protection is implemented by checking and conditionally programming lower pages, then data integrity is improved, but programming complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidprogramming complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements feedback by continuously monitoring the state of lower pages during upper page programming operations. A check is performed to determine if lower pages contain data from previous write commands, and based on this feedback, the programming sequence is dynamically adjusted. This feedback mechanism ensures data integrity by preventing write aborts while maintaining a relatively simple programming structure through conditional logic rather than complex error correction codes.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9384839B2Write sequence providing write abort protection
Publication Date: 2016.07.05 SANDISK TECHNOLOGIES LLC

AI summary

In a multi-level cell (MLC) nonvolatile memory array, data is assigned sequentially to the lower and upper page of a word line, then both lower and upper pages are programmed together before programming a subsequent word line. Word lines of multiple planes are programmed together using latches to hold data until all data is transferred. Tail-ends of data of write commands are stored separately.