LDPC Flash Memory Decoding With Segment Skipping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing length of LDPC codes leads to longer decoding times, resulting in delayed data response and increased waiting times during data access in flash memory systems, as existing technologies do not efficiently manage the decoding process.

Innovation Solution

A flash memory controller with an LDPC decoder that includes a variable-node circuit, check-node circuit, segment detection circuit, syndrome check circuit, and control circuit, which skips already decoded codeword segments and updates messages iteratively, reducing decoding time by focusing on segments with failed decoding status and reassembling the codeword with successful segments for re-decoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the length of LDPC code is increased to improve error correction capability, then the correction ability is improved, but the decoding time increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddecoding time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the codeword into multiple segments and performs segment detection to identify which segments have been successfully decoded. This segmentation allows the system to process and identify successful segments independently, enabling the skipping mechanism to work effectively on a per-segment basis rather than requiring complete codeword processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a skipping mechanism where successfully decoded segments are identified through segment detection and then skipped in subsequent decoding iterations. The control circuit tracks which segments have passed decoding status and excludes them from further variable-node and check-node calculations, allowing the decoding process to rush through already-successful portions and focus only on problematic segments.

Inventive Principle:
Principle #21Skipping (Rushing through)

2Reliability

If the decoding process processes all codeword segments to ensure complete error correction, then the reliability is improved, but the productivity decreases

Engineering Contradiction:
Improvedecoding accuracyVSAvoiddecoding efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements feedback through segment detection that provides information about which codeword segments have been successfully decoded. This feedback mechanism allows the control circuit to adjust the decoding process by identifying successful segments and excluding them from further processing, creating a feedback loop that optimizes resource allocation and improves decoding efficiency while maintaining reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies partial action by performing complete decoding operations only on segments that have failed decoding status, while successfully decoded segments receive minimal or no further processing. This partial action approach avoids the excessive processing of already-correct segments while ensuring that only the necessary portions undergo full decoding scrutiny, thereby improving productivity without sacrificing reliability.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If the decoding process iterates multiple times to ensure complete decoding, then the reliability is improved, but the loss of time increases

Engineering Contradiction:
Improvedecoding completenessVSAvoidwaiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the codeword into multiple independent detectable units and applies segment detection to each segment individually during decoding iterations. This segmentation allows the system to track decoding status per segment across iterations, enabling the skipping mechanism to eliminate successfully decoded segments from subsequent iterations and reduce overall processing time while maintaining decoding completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs segment detection as a preliminary action before subsequent decoding iterations to identify successfully decoded segments in advance. By detecting successful segments early and marking them for skipping, the system prepares the decoding process to avoid redundant work in later iterations, reducing waiting time while ensuring that all necessary decoding operations are performed on segments that actually need them.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11115063B2Flash memory controller, storage device and reading method
Publication Date: 2021.09.07 SILICON MOTION INC
  • US11115063B2 patent drawing
  • US11115063B2 patent drawing
  • US11115063B2 patent drawing

AI summary

A flash memory controller is configured to decode a codeword. During the decoding process, the flash memory can check the decoding status of each codeword segment in the codeword and skip the decoding of a codeword segment whose decoding status is passed, thereby saving time decoding and also improving decoding efficiency. Even though only a part of the codeword segments in the codeword have been successfully decoded in the decoding process at the previous time, the flash memory controller can replace the part of the codeword segments in the codeword with the correct results obtained previously, and then decoding the re-formed codeword again. Accordingly, the decoding accuracy can be increased and the burden on the subsequent decoding process or data recovery can be reduced.