SSD ECC Code-Rate Allocation for Wordline Noise Variability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage devices face variability in reliability and error rates among pages within a block due to manufacturing and use characteristics, with current methods providing uniform protection levels across all pages, which is inadequate as cell density increases.

Innovation Solution

Dynamically allocate code rates and redistribute overhead among pages within a block to provide varying levels of protection, clustering pages into groups based on reliability characteristics and transferring side information and additional overhead bits to enhance reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If uniform protection level is applied to all pages in a block, then device complexity is reduced and ease of manufacture is improved, but reliability is worsened due to variability in error rates among pages

Engineering Contradiction:
Improveerror correction capabilityVSAvoidcode rate allocation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments pages into different groups (first group and second group) based on their error rate characteristics. Each group is assigned a different code rate, allowing tailored error correction protection. This segmentation resolves the contradiction by enabling differentiated protection levels without requiring completely individualized treatment of each page, thus managing complexity while improving reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by assigning different code rates to different page groups based on their specific error rate characteristics. Pages with higher error rates receive stronger protection (lower code rate), while pages with lower error rates use weaker protection (higher code rate). This localized adaptation improves overall reliability without uniformly increasing complexity across all pages.

Inventive Principle:
Principle #3Local quality

2Reliability

If higher code rates are applied to all pages, then reliability is improved, but loss of information increases due to greater overhead

Engineering Contradiction:
Improveerror correction capabilityVSAvoidoverhead bits
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent changes the code rate parameter dynamically based on page error rate characteristics. Instead of using a fixed high code rate for all pages, the system adjusts the code rate parameter to match the actual error characteristics of each page group. This resolves the contradiction by applying stronger error correction only where needed, thereby improving reliability without incurring overhead costs across all pages.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies partial action by providing enhanced error correction (lower code rate) only to specific page groups that require it, rather than applying excessive protection uniformly to all pages. This selective approach improves reliability for vulnerable pages while minimizing the overall overhead burden on the system.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of information

If lower code rates are applied to all pages, then loss of information is reduced, but reliability is worsened due to insufficient error correction for high error rate pages

Engineering Contradiction:
Improveoverhead bitsVSAvoiderror correction capability
Core Design Contradiction:
Loss of informationVSReliability

Solution Approach 1:

The patent dynamically adjusts the code rate parameter based on measured error rates of different page groups. Pages exhibiting high error rates are automatically assigned lower code rates for stronger protection, while pages with low error rates use higher code rates to minimize overhead. This adaptive parameter change resolves the contradiction by matching protection levels to actual needs.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If dynamic code rate allocation is implemented for each page, then reliability is improved, but device complexity and ease of operation are worsened

Engineering Contradiction:
Improveerror correction capabilityVSAvoidoperation simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent simplifies dynamic code rate allocation by segmenting pages into a limited number of groups (first group and second group) rather than individually configuring each page. This segmentation maintains improved reliability through differentiated protection while significantly reducing operational complexity compared to fully individualized page-level configuration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies universality by using the same code rate allocation mechanism for all pages within each group. Rather than requiring unique configuration for each page, the system uses group-level universality to simplify operations while still achieving differentiated protection. This multi-functional approach handles both high and low error rate pages through a unified grouping framework.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12578884B2Dynamic online code-rate allocation according to wordline noise for adapative ECC in SSD/UFS
Publication Date: 2026.03.17 SAMSUNG ELECTRONICS CO LTD
  • US12578884B2 patent drawing
  • US12578884B2 patent drawing
  • US12578884B2 patent drawing

AI summary

A storage device, including a non-volatile memory including a plurality of pages; and a storage controller. The storage controller is configured to allocate a plurality of code rates to the plurality of pages, cluster the plurality of pages into a first plurality of pages and a second plurality of pages based on the plurality of code rates, determine a plurality of page associations such that each second page from the second plurality of pages with at least one first page from the first plurality of pages, encode data based on the plurality of code rates to generate encoded data, and store the encoded data in the plurality of pages. The encoding includes obtaining side information corresponding to the second plurality of pages and transferring the side information to the first plurality of pages.