Flash Data Block Encoding for Program Disturb and Error Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face challenges in minimizing the number of cells undergoing program erase cycles, reducing write operations, and improving error recovery due to shrinking geometries and increased bit error probabilities, with existing solutions failing to effectively address these issues, especially in multi-level cell flash arrays.

Innovation Solution

A method and system that partitions data blocks into sub-blocks using index value descriptors, generates transition vectors, and encodes them to create a composite data block with dynamic error correction bits, allowing flexible configuration and reduced write width to minimize cell usage and error recovery efforts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multi-level cell flash memory devices are used to reduce storage costs, then storage capacity increases, but error susceptibility increases due to shrinking geometries

Engineering Contradiction:
Improvestorage capacityVSAvoiderror susceptibility
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies preliminary action by performing data reorganization and encoding transformations before writing data to flash memory cells. The system reconfigures data blocks into optimized patterns that reduce the number of cells requiring programming, thereby preemptively minimizing error exposure before it occurs during storage operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes parameters by dynamically adjusting the number of error correction bits based on the specific data being stored. Instead of using a fixed error correction capacity, the system adapts the error correction strength to match the actual error risk of each data block, optimizing both reliability and storage efficiency for multi-level cell devices.

Inventive Principle:
Principle #35Parameter changes

2Duration of action of stationary object

If wear leveling is implemented to prolong SSD service life, then cell endurance improves, but write amplification increases

Engineering Contradiction:
Improveservice lifeVSAvoidwrite amplification
Core Design Contradiction:
Duration of action of stationary objectVSProductivity

Solution Approach 1:

The patent applies segmentation by dividing data blocks into smaller sub-blocks and processing them independently. This allows the system to update only the necessary portions of data rather than writing entire blocks, significantly reducing the number of write operations required for wear leveling operations and thereby reducing write amplification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial action by performing selective data reconfiguration and writing only to the minimum necessary cells. The system analyzes each data block and applies programming operations only where changes are needed, rather than performing full-block writes, thus reducing write amplification while still achieving wear leveling objectives.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If error correction bits are increased to improve error recovery, then reliability improves, but storage flexibility decreases due to predetermined bit allocation

Engineering Contradiction:
Improveerror recoveryVSAvoidconfiguration flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent applies dynamics by making the error correction bit allocation adaptive rather than static. The system dynamically determines the number of error correction bits needed based on the characteristics of each data block and the specific storage conditions, allowing flexible adjustment of error correction strength to match actual requirements rather than using a fixed predetermined allocation.

Inventive Principle:
Principle #15Dynamics

4Reliability

If conventional error correction solutions are used with separate pages, then error recovery is provided, but device complexity increases and storage efficiency decreases

Engineering Contradiction:
Improveerror correctionVSAvoidstructural complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies merging by integrating error correction capabilities directly into the data storage structure rather than using separate dedicated error correction pages. The error correction bits are embedded within the same storage structure as the data blocks, eliminating the need for separate error correction regions and thereby reducing overall device complexity and improving storage efficiency.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8732538B2Programmable data storage management
Publication Date: 2014.05.20 ICFORM
  • US8732538B2 patent drawing
  • US8732538B2 patent drawing
  • US8732538B2 patent drawing

AI summary

A method and system for managing storage of one or more data blocks in a programmable data storage device is provided. A data storage controller partitions each of multiple data blocks into multiple sub data blocks comprising a number of bits based on one or more index value descriptors. The data storage controller generates transition vectors from each of the sub data blocks by applying one or more transition functions. The data storage controller encodes one of the transition vectors for each sub data block for obtaining a residual sub data block comprising a reduced number of bits, thereby resulting in increased bit space. The data storage controller generates a composite data block by merging each residual sub data block. The composite data block is configurable for writing to one or more regions in the programmable data storage device free from a disturbance caused by write operations to other regions.