Flash Memory Randomization for Cell State Uniformity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face limitations in the number of program and erase operations due to data retention degradation and non-uniform distribution of memory cell states, leading to reduced lifespan and reliability.

Innovation Solution

A method and system that randomize data units including page data and metadata by generating a random seed, which is programmed within the metadata, and varying its position based on page data characteristics, to prevent bias and deterioration of memory cells.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is programmed into nonvolatile memory without randomization, then programming operation is simple and fast, but memory cell state distribution becomes non-uniform leading to reduced lifespan and reliability

Engineering Contradiction:
Improvememory device lifespanVSAvoidprogramming operation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing randomization operation on data before programming it into the nonvolatile memory. A randomization unit generates randomized data units by applying randomization to page data and metadata, and stores random seeds that track the randomization state. This preliminary randomization prevents non-uniform distribution of memory cell states during subsequent programming operations, thereby extending memory lifespan and improving reliability without adding complexity during the actual programming process.

Inventive Principle:
Principle #10Preliminary action

2Duration of action of stationary object

If randomization operation is performed on data before programming, then uniform distribution of memory cell states is achieved extending lifespan, but data processing time increases

Engineering Contradiction:
Improvememory device lifespanVSAvoiddata processing time
Core Design Contradiction:
Duration of action of stationary objectVSLoss of time

Solution Approach 1:

The randomization operation is performed in advance before the actual programming operation. The randomization unit processes data and generates random seeds beforehand, so that when programming occurs, the data is already randomized and ready for uniform distribution in memory cells. This separates the time-consuming randomization task from the critical programming path, minimizing impact on overall data processing time while still achieving the lifespan benefits of uniform distribution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through random seeds that are stored in the nonvolatile memory alongside the randomized data. These random seeds provide feedback information about the randomization state and allow the system to track and manage the randomization process. This feedback mechanism enables efficient re-randomization operations when needed without requiring complete reprocessing of data, thus reducing time loss while maintaining uniform distribution for extended lifespan.

Inventive Principle:
Principle #23Feedback

3Reliability

If fixed position for random seed is used in metadata, then data processing is simplified, but security and reliability are reduced due to predictable patterns

Engineering Contradiction:
Improvedata securityVSAvoidmetadata structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by making the random seed position within the metadata not fixed but variable. The randomization unit determines the position of random seeds based on the randomized data characteristics, creating a dynamic metadata structure. This dynamic positioning prevents predictable patterns and improves security and reliability, while the variability is managed through systematic rules in the randomization process that balance security requirements with processing complexity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8255643B2Memory system and data processing method thereof
Publication Date: 2012.08.28 SAMSUNG ELECTRONICS CO LTD
  • US8255643B2 patent drawing
  • US8255643B2 patent drawing
  • US8255643B2 patent drawing

AI summary

A method of processing data of a nonvolatile memory includes performing a randomization operation on a data unit including page data to be programmed into the nonvolatile memory and page metadata corresponding to the page data and generating a random seed; and programming the randomized data unit, and the random seed into the nonvolatile memory, the randomized data unit including the randomized page data and the randomized page metadata. The random seed is programmed within the page metadata and a position at which the random seed is programmed is based on a characteristic of the page data.