Memory Controller ECC Encoding for Read Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Non-volatile flash memory devices face challenges in accurately reading data due to overlapping threshold voltage distributions, leading to increased error bits as the number of bits programmed in each memory cell increases, causing reliability issues and read failures.

Innovation Solution

A controller and operating method that generates internal and external parities through ECC encoding to accurately read data from memory cells, using meta data and error correction decoding to ensure reliable data retrieval even when initial decoding fails.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the number of bits programmed in each memory cell increases (MLC, TLC), then the data storage capacity and integration density improve, but the threshold voltage distributions overlap and read failure rate increases

Engineering Contradiction:
Improvedata storage capacityVSAvoidread failure rate
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent divides the data storage and error correction process into multiple independent ECC codes (first ECC code, second ECC code, third ECC code) that operate on different portions or aspects of the data. This segmentation allows each code to handle specific error patterns independently, improving overall reliability without reducing storage capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies multiple ECC encoding operations before data is written to memory cells. By performing preliminary error correction encoding with multiple different ECC codes, the system proactively prepares for potential read failures caused by threshold voltage overlap, enabling recovery even when initial reads fail.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple ECC codes are applied to correct errors, then the read reliability improves, but the device complexity and processing overhead increase

Engineering Contradiction:
Improvedata reading accuracyVSAvoidcontroller complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic error correction process where the controller adaptively selects and applies different ECC codes based on the specific error conditions detected during reading. The system can adjust which ECC decoding path to follow (first, second, or third ECC code) depending on the severity and type of errors encountered, optimizing the balance between reliability and complexity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces multiple intermediate ECC codes as mediators between the raw data and the final corrected data. Each ECC code acts as an intermediate layer of protection, and the controller can use these intermediaries in sequence or combination to achieve reliable data recovery without requiring a single overly complex error correction mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11966589B2Controller and operating method thereof
Publication Date: 2024.04.23 SK HYNIX INC
  • US11966589B2 patent drawing
  • US11966589B2 patent drawing
  • US11966589B2 patent drawing

AI summary

An operating method of a controller that controls a memory device, comprises: generating a data chunk including user data to be programmed in a page of the memory device and an internal parity generated by performing first ECC encoding on the user data, the internal parity being generated when a size of the user data is smaller than a size of a data area of the page, generating a page chunk including the data chunk, meta data of the user data and an external parity generated by performing second ECC encoding on the meta data and the data chunk, and controlling the memory device to program the page chunk into the page.