Dynamic Programming Mode Selection for Flash Memory Wear

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In rewritable non-volatile memory modules, particularly MLC NAND flash memory, continuous use of physical erasing units leads to uneven erase counts, causing them to reach their limit faster and reducing the module's lifetime.

Innovation Solution

A data programming method that divides physical erasing units into two types with different programming modes, dynamically selecting units based on usage parameters to distribute data storage and prevent excessive wear, thereby improving reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If physical erasing units are continuously used to store data, then programming speed is improved, but erase counts reach upper limit faster and reliability deteriorates

Engineering Contradiction:
Improveprogramming speedVSAvoidmodule lifetime
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent divides physical erasing units into multiple groups (first group, second group, third group) based on their erase count status. This segmentation allows the system to manage worn units separately from fresh units, enabling continuous operation while distributing wear across all groups over time, thus maintaining both programming speed and reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic group switching where the memory controller can switch between different groups of physical erasing units based on current usage patterns and erase count thresholds. This dynamic allocation ensures that no single group is overused, balancing programming throughput with long-term reliability by adaptively managing resource distribution.

Inventive Principle:
Principle #15Dynamics

2Reliability

If physical erasing units are divided into different groups with different programming modes, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improvemodule lifetimeVSAvoidmanagement complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Different programming modes are applied to different groups of physical erasing units based on their specific wear status. First group units use one programming mode while second and third group units use another mode. This localized quality adjustment optimizes reliability for each group's condition without requiring complete system redesign, managing complexity through targeted differentiation.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes programming parameters (programming mode) based on the group to which physical erasing units belong. By adjusting programming parameters according to erase count thresholds and group classifications, the system achieves improved reliability through parameter optimization rather than structural complexity, keeping the management approach manageable.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10922028B2Data programming method, memory storage device and memory control circuit unit
Publication Date: 2021.02.16 HEFEI CORE STORAGE ELECTRONICS LTD
  • US10922028B2 patent drawing
  • US10922028B2 patent drawing
  • US10922028B2 patent drawing

AI summary

A data programming method, a memory storage device and a memory control circuit unit are provided. The method includes presetting a programming mode of a plurality of first type physical erasing units as a first programming mode, and presetting a programming mode of a plurality of second type physical erasing units as a second programming mode. The method also includes obtaining a change parameter according to usage parameters of the first type physical erasing units and the second type physical erasing units. The method further includes determining whether the change parameter matches a first change condition, and if the change parameter matches the first change condition, programming a write-data into the second type physical erasing unit by using the first programming mode.