Nonvolatile Memory ECC Decoding with Hard-Soft Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory systems face challenges in effectively decoding error correction codes, particularly in scenarios where hard decision decoding fails, as they lack a robust mechanism to transition seamlessly from hard decision to soft decision decoding and back, leading to incomplete error correction.

Innovation Solution

A memory system architecture that incorporates a nonvolatile memory and a memory controller with an encoding/decoding unit capable of executing hard decision decoding of a first component code, followed by soft decision decoding of a second component code, using index information and log likelihood ratios (LLRs) to improve decoding accuracy and error correction capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If hard decision decoding is used for error correction, then decoding speed is improved, but decoding accuracy deteriorates when errors are severe

Engineering Contradiction:
Improvedecoding speedVSAvoiddecoding accuracy
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system dynamically switches between hard decision decoding and soft decision decoding based on the decoding result. When hard decision decoding succeeds, the system uses the faster hard decision method. When it fails, the system transitions to soft decision decoding for improved accuracy, creating a dynamic adaptive decoding process that optimizes both speed and reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements a feedback mechanism where the result of hard decision decoding is evaluated, and based on this feedback, the system determines whether to proceed with soft decision decoding. This feedback loop ensures that soft decision decoding is only invoked when necessary, maintaining speed while improving accuracy when errors are detected.

Inventive Principle:
Principle #23Feedback

2Reliability

If soft decision decoding is always used, then decoding accuracy is improved, but decoding speed deteriorates

Engineering Contradiction:
Improvedecoding accuracyVSAvoiddecoding speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

Instead of always applying soft decision decoding, the system applies it partially - only when hard decision decoding fails. This partial action approach maintains high decoding accuracy for difficult cases while avoiding the speed penalty of soft decision decoding for all cases, achieving an optimal balance between accuracy and speed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The decoding process is segmented into two stages: first hard decision decoding is attempted, and only if it fails does the system proceed to soft decision decoding. This segmentation allows the system to use the faster method for most cases while reserving the slower but more accurate method for difficult cases.

Inventive Principle:
Principle #1Segmentation

3Reliability

If multi-dimensional error correction code is used, then error correction capability is improved, but device complexity increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddecoding mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The multi-dimensional error correction code is decoded by segmenting the process into component codes (first component code and second component code). Each component code is decoded separately using appropriate methods, which simplifies the overall decoding complexity while maintaining the error correction capability of the multi-dimensional code structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the decoding parameter dynamically by selecting different decoding methods (hard decision vs. soft decision) based on the decoding result. This parameter change allows the system to handle multi-dimensional error correction codes effectively without requiring complex fixed decoding mechanisms for all cases.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10908994B2Memory system and method of controlling nonvolatile memory
Publication Date: 2021.02.02 KIOXIA CORP
  • US10908994B2 patent drawing
  • US10908994B2 patent drawing
  • US10908994B2 patent drawing

AI summary

A memory system in an embodiment includes a nonvolatile memory and a memory controller. The memory stores a multi-dimensional error correction code including at least one symbol that is capable of being protected by at least a first and a second component code. The controller reads the error correction code from the memory, executes hard decision decoding of the first component code with respect to the read error correction code and outputs a first decoding result and index information for calculating likelihood of the first decoding result, executes, when the hard decision decoding fails, soft decision decoding of the second component code by using the first decoding result and the index information and outputs a decoding result as a hard bit, and, executes, when the soft decision decoding fails, the hard decision decoding with respect to the result of the soft decision decoding output.