Flash Memory Error Correction Using Sub-Data ECC Layers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As flash memory devices increase in storage capacity, maintaining reliable performance becomes challenging due to the difficulty in effectively correcting errors, especially when the number of error bits exceeds the capacity of existing error correction codes.

Innovation Solution

A memory controller that analyzes read data and generates multiple units of sub-data, along with first and second error correction codes using the same algorithm, to correct errors in flash memory devices, particularly in cases where the number of error bits exceeds the initial error correction code's capacity, thereby improving error correction capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If storage capacity of flash memory is increased, then storage capacity is improved, but error correction capability deteriorates

Engineering Contradiction:
Improvestorage capacityVSAvoiderror correction capability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent divides data into multiple units and generates separate first and second ECC data for each unit. This segmentation allows the system to handle errors in larger storage capacities by treating them as manageable segments, resolving the contradiction between increased storage capacity and maintained error correction capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to error correction by generating both first ECC data (for normal error correction) and second ECC data (for additional error correction capability). This multi-layered approach enables the system to maintain reliability in high-capacity storage by adding another dimension of error protection.

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

2Reliability

If number of error bits exceeds first ECC capacity, then error correction capability is improved by generating second ECC data, but device complexity increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic error correction approach where the system first attempts correction using first ECC data, and only generates second ECC data when the number of error bits exceeds the first ECC capacity. This dynamic adaptation avoids unnecessary complexity while maintaining enhanced error correction capability when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies partial error correction using first ECC data for typical error cases, and only employs the additional second ECC data when necessary (excessive action) for cases where error bits exceed the first ECC capacity. This selective approach balances reliability improvement with complexity management.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8615702B2Method and apparatus for correcting errors in memory device
Publication Date: 2013.12.24 SAMSUNG ELECTRONICS CO LTD
  • US8615702B2 patent drawing
  • US8615702B2 patent drawing
  • US8615702B2 patent drawing

AI summary

A memory controller analyzes read data received from a memory device and first error correction code (ECC) data of the read data. A control unit generates a plurality of sub-data from write data to be written in the memory device where the number of error bits in the read data is greater than a number of error bits that can be corrected using the first ECC data. An ECC block generates the first ECC data and second ECC data by using substantially the same algorithm to correct errors in each of the sub-data. The control unit transmits each of the sub-data, the first ECC data and the second ECC data to the memory device.