Adaptive Code Rate Controller for Flash Memory Endurance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices experience increased failure rates due to manufacturing defects and degradation over time, leading to charge loss and reduced endurance, which compromises data retention and storage capacity, often resulting in the decommissioning of memory blocks and capacity loss in storage systems.

Innovation Solution

A data storage system with a controller that monitors bit error counts, corrects errors, and inserts pre-defined data with tags into error-prone memory blocks, adapting the code rate to maintain data integrity and extend storage capability by reconfiguring memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory blocks are decommissioned when bit error count exceeds threshold, then data integrity is maintained, but storage capacity is reduced

Engineering Contradiction:
Improvedata integrityVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically adjusts the code rate parameter based on the bit error count of memory blocks. When errors are detected, the system increases the code rate (adds more redundancy bits) to maintain data integrity, rather than decommissioning the block. This allows the same memory block to remain usable with adaptive error correction strength.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The error correction mechanism transitions from a static threshold-based decommissioning approach to a dynamic adaptive code rate system. The code rate is continuously adjusted based on real-time error measurements, allowing the system to respond flexibly to degradation while maintaining both data integrity and storage capacity.

Inventive Principle:
Principle #15Dynamics

2Duration of action of stationary object

If adaptive code rates are used to maintain storage capacity, then endurance is extended, but device complexity increases

Engineering Contradiction:
ImproveenduranceVSAvoidcontroller complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The memory system is divided into multiple segments (memory blocks) that can be independently monitored and managed. Each block can have its own adaptive code rate applied, allowing localized error correction without affecting the entire storage system. This segmentation reduces the overall complexity by isolating error management to specific regions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements a feedback mechanism where bit error counts are continuously monitored and used to adjust the code rate for subsequent operations on the same memory block. This closed-loop control allows the system to automatically adapt to degradation without manual intervention, managing complexity through automated feedback-based adjustment.

Inventive Principle:
Principle #23Feedback

3Reliability

If more redundancy bits are added to correct errors, then data integrity is improved, but storage efficiency decreases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically changes the code rate parameter based on actual error conditions. When memory blocks are healthy, a lower code rate (fewer redundancy bits) is used, maximizing storage efficiency. When errors are detected, the code rate is increased only for affected blocks, maintaining data integrity while minimizing the impact on overall storage efficiency.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Different code rates are applied to different memory blocks based on their individual error characteristics. Instead of applying a uniform high code rate to the entire system, the system applies localized error correction strength only where needed, preserving storage efficiency in healthy regions while ensuring data integrity in degraded regions.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10423345B2Devices, systems, and methods for increasing endurance on a storage system having a plurality of components using adaptive code-rates
Publication Date: 2019.09.24 SMART IOPS INC
  • US10423345B2 patent drawing
  • US10423345B2 patent drawing
  • US10423345B2 patent drawing

AI summary

Devices, systems, and methods are provided that include a controller configured to receive a first data packet from a memory device; determine a bit error count for the first data packet; and determine whether the bit error count exceeds a predetermined threshold. When the bit error count exceeds the predetermined threshold, the controller corrects errors identified in the bit error count; generates and inserts pre-defined data into the first data packet at a location where errors occurred in the first data packet; and generates and inserts a tag into the first data packet. The tag includes information indicating a size and a location of the pre-defined data in the first data packet.