Convolutional Encoding for Flash Memory Error Correction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional flash memory technologies face challenges in effectively correcting errors beyond a certain limit, leading to data loss due to individual bit errors in solid-state non-volatile memory devices like NAND flash, which are more prone to such errors compared to traditional hard disks.

Innovation Solution

The implementation of convolutional encoding and decoding methods that spread error correction codes across multiple non-volatile memory devices, using a high code rate and puncturing techniques to enhance error correction capabilities and reduce vulnerability to errors, while maintaining compatibility with existing systems by mimicking conventional hard disk operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional error correction codes are used in flash memory, then data can be corrected up to a certain error limit, but data loss occurs when errors exceed this limit

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddata loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The invention divides data into multiple segments and distributes them across different flash memory devices. Each segment is independently encoded with error correction codes, allowing the system to recover from errors in individual segments without losing the entire dataset. This segmentation approach transforms a single point of failure into multiple independent failure points.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention extends error correction from a single-dimension approach (correcting errors within one memory device) to a multi-dimensional approach by distributing data across multiple devices. This spatial distribution across devices creates additional dimensions for error recovery, where data can be reconstructed from surviving segments even when some devices fail.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If data is stored in a single flash memory device, then storage is simple, but vulnerability to errors and data loss increases

Engineering Contradiction:
Improvestorage simplicityVSAvoiderror vulnerability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system segments data and distributes it across multiple flash memory devices, transforming a single complex storage operation into multiple simpler independent operations. Each device stores a portion of the data with its own error correction, making the overall system more reliable while maintaining operational simplicity through standardized interfaces.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention changes the parameter of data distribution from concentrated (single device) to distributed (multiple devices). This parameter change fundamentally alters the error vulnerability profile, where the failure of one device no longer compromises the entire dataset, as long as the minimum required segments remain intact.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If high density storage is achieved in NAND flash memory, then more data can be stored, but error correction becomes more challenging

Engineering Contradiction:
Improvestorage densityVSAvoiderror correction complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

By segmenting data across multiple devices, the invention reduces the error correction complexity for each individual device while maintaining high overall storage density. Each device handles a smaller portion of the total data with simpler error correction requirements, yet the system as a whole achieves robust error correction through the distributed architecture.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9152546B2Fault-tolerant non-volatile integrated circuit memory
Publication Date: 2015.10.06 MICRON TECHNOLOGY INC
  • US9152546B2 patent drawing
  • US9152546B2 patent drawing
  • US9152546B2 patent drawing

AI summary

Apparatus and methods are disclosed, such as those that store data in a plurality of non-volatile integrated circuit memory devices, such as NAND flash, with convolutional encoding. A relatively high code rate for the convolutional code consumes relatively little extra memory space. In one embodiment, the convolutional code is spread over portions of a plurality of memory devices, rather than being concentrated within a page of a particular memory device. In one embodiment, a code rate of m/n is used, and the convolutional code is stored across n memory devices.