ML ECC Controller for NAND Flash Speed-Reliability Tradeoff

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Error-correcting codes (ECC) used in universal flash storage (UFS) and solid-state drives (SSD) are mismatched for flash memory controllers with NAND flash memory, lacking dynamic random-access memory (DRAM), leading to inefficiencies in error detection and correction.

Innovation Solution

A memory controller incorporating a hard-decision (HD) ECC decoder, a soft-decision (SD) ECC decoder, and a machine-learning equalizer (MLE) that selects between them based on a learned cost function for optimal data word decoding and noise cancellation, optimized for NAND-Flash memories using a combination of soft Hamming permutation code (SHPC) decoding and machine-learning equalization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If hard-decision (HD) ECC decoding is used, then decoding speed is improved, but decoding reliability deteriorates

Engineering Contradiction:
Improvedecoding speedVSAvoiddecoding reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system dynamically selects between HD and SD ECC decoding methods based on real-time channel conditions and error patterns. The controller adapts the decoding approach by evaluating syndrome results and error counts, switching from fast HD decoding under good conditions to more reliable SD decoding when errors exceed thresholds, thus optimizing both speed and reliability according to actual operational context.

Inventive Principle:
Principle #15Dynamics

2Reliability

If soft-decision (SD) ECC decoding is used, then decoding reliability is improved, but decoding speed deteriorates

Engineering Contradiction:
Improvedecoding reliabilityVSAvoiddecoding speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system applies SD ECC decoding selectively rather than universally. It performs HD decoding first as a partial solution for most cases, and only invokes the more computationally intensive SD decoding when HD decoding fails to correct errors within acceptable thresholds. This partial application of SD decoding maintains reliability for critical cases while avoiding the speed penalty for routine operations.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If machine-learning equalization is applied, then noise cancellation performance is improved, but computational complexity increases

Engineering Contradiction:
Improvenoise cancellation performanceVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The machine-learning equalizer performs preliminary noise cancellation and signal conditioning before data is passed to the ECC decoders. By pre-processing the received signal to reduce noise and interference upfront, the system improves subsequent decoding performance for both HD and SD methods while managing computational complexity through early intervention rather than repeated processing during decoding stages.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12119840B2Machine-learning error-correcting code controller
Publication Date: 2024.10.15 SAMSUNG ELECTRONICS CO LTD
  • US12119840B2 patent drawing
  • US12119840B2 patent drawing
  • US12119840B2 patent drawing

AI summary

A machine-learning (ML) error-correcting code (ECC) controller may include a hard-decision (HD) ECC decoder optimized for high-speed data throughput, a soft-decision (SD) ECC decoder optimized for high-correctability data throughput, and a machine-learning equalizer (MLE) configured to variably select one of the HD ECC decoder or the SD ECC decoder for data throughput. An embodiment of the ML ECC controller may provide speed-optimized HD throughput based on a linear ECC. The linear ECC may be a soft Hamming permutation code (SHPC).