Adaptive Code Rate Encoding for Non-Volatile Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Non-volatile memory systems face challenges in efficiently managing data storage and error correction due to varying conditions such as data retention time, temperature, and read frequency, leading to inefficiencies in space utilization and error protection.

Innovation Solution

A variable code rate encoding system that adapts to different data types based on predictive indicators from the host, such as expected retention time, temperature range, and read frequency, allowing for flexible redundancy encoding and efficient use of memory space by storing code words of varying lengths, including non-integer numbers per page.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a fixed nominal code rate is used for all data, then the error correction capability is consistent, but the memory space utilization is inefficient

Engineering Contradiction:
Improveerror correction capabilityVSAvoidmemory space utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic code rate adjustment where the code rate is not fixed but adapts based on data characteristics and host indicators. The system selects from multiple code rates (e.g., 0.5, 0.6, 0.7, 0.8) depending on the expected retention time, temperature range, and read frequency of the data being stored, thereby optimizing both error correction capability and space utilization for different data types.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the code rate parameter based on predictive indicators from the host. By adjusting this key parameter according to data-specific conditions (retention time, temperature, read frequency), the system achieves variable redundancy levels that match actual error risks, improving space efficiency without compromising reliability where needed.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If higher code rate (more redundancy) is used, then error correction capability improves, but memory space waste increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidmemory space waste
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent applies different code rates to different data based on their specific requirements. Data with higher reliability needs (long retention, extreme temperatures, low read frequency) receive higher redundancy with lower code rates, while data with lower needs receive lower redundancy with higher code rates. This localized quality approach ensures error correction capability is optimized only where necessary, reducing overall space waste.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system applies redundancy selectively rather than uniformly. By using partial action (applying higher code rates only to specific data types that need them), the system avoids the excessive redundancy that would occur with a fixed high code rate applied to all data, thereby reducing memory space waste while maintaining adequate error correction where required.

Inventive Principle:
Principle #16Partial or excessive action

3Quantity of substance

If adaptive encoding with variable code rates is implemented, then memory space efficiency improves, but system complexity increases

Engineering Contradiction:
Improvememory space efficiencyVSAvoidencoding system complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system performs preliminary action by receiving predictive indicators from the host before encoding data. These indicators (expected retention time, temperature range, read frequency) are obtained in advance, allowing the system to pre-determine the appropriate code rate before the actual encoding process, thereby managing complexity through advance planning rather than complex real-time decisions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from the host in the form of predictive indicators to guide the code rate selection. This feedback mechanism allows the system to adapt its encoding strategy based on external information about data requirements, simplifying the decision-making process by relying on host-provided guidance rather than requiring the memory system to independently analyze all data characteristics.

Inventive Principle:
Principle #23Feedback

4Quantity of substance

If code words of varying lengths are stored, then space utilization optimizes, but data management complexity increases

Engineering Contradiction:
Improvespace utilizationVSAvoiddata management
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent segments the storage space into variable-length code word units based on the encoding requirements of different data. By dividing the storage into manageable segments that accommodate different code word lengths, the system optimizes space utilization while maintaining organized data structures that facilitate management despite the variability in code word sizes.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10403377B2Non-volatile storage with adaptive redundancy
Publication Date: 2019.09.03 SANDISK TECHNOLOGIES LLC
  • US10403377B2 patent drawing
  • US10403377B2 patent drawing
  • US10403377B2 patent drawing

AI summary

A non-volatile storage apparatus includes a set of non-volatile memory cells, one or more control circuits in communication with the set of non-volatile memory cells, the one or more control circuits are configured to encode data with a code rate prior to storage in the set of non-volatile memory cells, the code rate selected from two or more code rates according to one or more predictive indicators received with the data, the one or more predictive indicators relating to expected conditions for storage of the data in the set of non-volatile memory cells.