Codeword Management for Flash Memory Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face inefficiencies in data storage and retrieval due to variable code rates across pages, leading to increased data transmission and power consumption, as well as performance degradation and reduced user data capacity, especially when using stronger error correction codes to account for differing page reliabilities.

Innovation Solution

A method for managing encoding processes that determines code rates and codeword sizes for multiple pages while minimizing split data segments and optimizing redundancy, allowing for efficient data storage and retrieval by maintaining consistent code rates and reducing the number of split data segments across codewords.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If variable code rates are used to match page reliability, then reliability is improved, but device complexity increases and performance degrades

Engineering Contradiction:
ImprovereliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies parameter changes by dynamically adjusting the code rate parameter based on page reliability characteristics. Different code rates are assigned to different pages according to their error rates, transforming a static fixed code rate system into a dynamic variable code rate system that adapts to actual page conditions, thereby improving reliability without requiring complete system redesign

Inventive Principle:
Principle #35Parameter changes

2Reliability

If stronger ECC codes are used for low quality pages, then reliability is improved, but user data capacity decreases

Engineering Contradiction:
ImprovereliabilityVSAvoiduser data capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by assigning different code rates to different pages based on their specific reliability characteristics. High quality pages use weaker ECC codes with higher code rates to maximize capacity, while low quality pages use stronger ECC codes with lower code rates to ensure reliability. This localized adaptation allows each page to use the appropriate level of error protection, optimizing the overall balance between reliability and user data capacity

Inventive Principle:
Principle #3Local quality

3Reliability

If variable code rates are used, then reliability is improved, but data transmission increases

Engineering Contradiction:
ImprovereliabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent changes the code rate parameter dynamically based on page quality assessment. By identifying high quality pages that require less error correction, the system can use higher code rates and transmit less redundancy data, thereby reducing power consumption while maintaining reliability. The parameter adjustment is based on measured page characteristics rather than uniform application across all pages

Inventive Principle:
Principle #35Parameter changes

4Reliability

If variable code rates are used, then reliability is improved, but performance degrades

Engineering Contradiction:
ImprovereliabilityVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-assessing page quality characteristics before encoding data. The system performs page quality evaluation and determines appropriate code rates in advance, before actual data storage operations. This preliminary characterization allows the system to optimize encoding parameters proactively, avoiding performance degradation during actual data operations while maintaining high reliability

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9524211B1Codeword management
Publication Date: 2016.12.20 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9524211B1 patent drawing
  • US9524211B1 patent drawing
  • US9524211B1 patent drawing

AI summary

A method for managing an encoding process, the method includes receiving or determining, by a processor, (i) code rates for multiple pages, and (ii) sizes of a plurality of data segments to be stored in the multiple pages after being encoded to provide multiple codewords; determining, by the processor, sizes of the multiple codewords while maintaining the code rates for the multiple pages and minimizing a number of split data segments out of the plurality of data segments, wherein each split data segment is split between at least two codewords of the multiple codewords, wherein a retrieval of the split data segment involves a retrieval of the at least two codewords; and sending to an encoder information about the sizes of the multiple codewords.