Data Shaping Engine for Memory Wear Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges in reducing wear on memory cells, particularly when storing data with high threshold voltage values, and existing data shaping techniques increase data size or complicate decoding processes.

Innovation Solution

A data shaping engine applies a mapping to input data to generate transformed data with fewer high threshold voltage bits, using gray coding and error correction techniques to reduce wear and enable efficient decoding, while maintaining the same data size and reducing bit errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of stationary object

If data shaping is applied to reduce wear on memory cells, then memory endurance is improved, but data size increases

Engineering Contradiction:
Improvememory enduranceVSAvoiddata size
Core Design Contradiction:
Duration of action of stationary objectVSQuantity of substance

Solution Approach 1:

The patent applies data shaping techniques before data is written to the memory device. By pre-processing the data to control the distribution of logical values (particularly reducing consecutive identical values), the system reduces wear on memory cells during programming operations without requiring additional error correction overhead, thereby avoiding data size expansion.

Inventive Principle:
Principle #10Preliminary action

2Duration of action of stationary object

If data shaping is applied to non-random data, then wear reduction is achieved, but parity portion cannot be shaped

Engineering Contradiction:
Improvememory enduranceVSAvoiddata shaping capability
Core Design Contradiction:
Duration of action of stationary objectVSAdaptability or versatility

Solution Approach 1:

The patent segments the data processing into distinct stages: first shaping the data portion to reduce wear, then handling the parity portion separately. The system applies wear-aware shaping selectively to portions of data where it provides benefit, while maintaining compatibility with error correction coding schemes that require unshaped parity data for proper decoding.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent modifies parameters of the data representation (such as the distribution of logical values and transition patterns) through shaping techniques. By controlling these parameters in the data portion while leaving the parity portion unchanged, the system achieves wear reduction without compromising the integrity of error correction mechanisms.

Inventive Principle:
Principle #35Parameter changes

3Duration of action of stationary object

If position of unshaped parity data is shifted to reduce wear, then wear distribution is improved, but decoding complexity increases

Engineering Contradiction:
Improvememory enduranceVSAvoiddecoding complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

Instead of shifting parity data positions as a post-processing step, the patent applies shaping to the data portion before parity generation. This preliminary action ensures that the data portion is optimized for wear reduction while the parity portion remains in its natural position, eliminating the need for complex position-tracking and shifting mechanisms during decoding operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10114549B2Error correction code processing and data shaping for reducing wear to a memory
Publication Date: 2018.10.30 SANDISK TECHNOLOGIES LLC
  • US10114549B2 patent drawing
  • US10114549B2 patent drawing
  • US10114549B2 patent drawing

AI summary

A device includes a memory and a controller including a data shaping engine. The data shaping engine is configured to apply a mapping to input data that includes one or more m-tuples of bits to generate transformed data. The transformed data includes one or more n-tuples of bits, and n is greater than m. A relationship of a gray coding of m-tuples to a gray coding of n-tuples is indicated by the mapping. The input data includes a first number of bit values that represent a particular logical state, and the transformed data includes a second number of bit values that represent the particular logical state, the second number of bit values being less than the first number of bit values.