Dynamic Logical Page Write Ordering for Flash Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data storage devices, the suspension of programming one memory die to program another can lead to delays in programming operations, particularly due to the need to manage parity writes and other data writes efficiently.

Innovation Solution

A data storage device with a controller that determines the availability of each memory die and dynamically changes the programming order based on die availability, optimizing the order of logical page writes to minimize delays and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If programming operations are performed in a fixed order across multiple memory dies, then the programming process is simple to manage, but delays occur when certain dies need to be suspended for parity writes or other operations

Engineering Contradiction:
Improveprogramming throughputVSAvoidprogramming delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic programming order adjustment by monitoring the availability status of each memory die and changing the programming sequence in real-time. When a die becomes unavailable for programming (e.g., undergoing erase, read, or parity write operations), the controller dynamically reorders the programming queue to skip unavailable dies and program only available ones, thereby maintaining high productivity without fixed-order constraints.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the programming parameter of 'programming order' based on the availability status of memory dies. By tracking each die's state (available, erasing, reading, parity write) and adjusting the programming sequence accordingly, the system optimizes throughput while avoiding delays caused by suspended programming operations.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the programming order is changed dynamically based on die availability, then programming delays are reduced and throughput improves, but the complexity of managing programming operations increases

Engineering Contradiction:
Improvemetapage write completion rateVSAvoidprogramming order management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The controller implements a feedback mechanism by continuously monitoring the availability status of each memory die and using this information to adjust the programming order. The system receives feedback about die states (erasing, reading, parity write operations) and dynamically reorders programming operations accordingly, optimizing metapage write completion while managing complexity through systematic status tracking.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The programming management system serves itself by automatically detecting die availability and reordering operations without external intervention. The controller autonomously manages the programming queue, selecting which dies to program next based on their current state, thereby reducing the need for complex external scheduling while improving throughput.

Inventive Principle:
Principle #25Self-service

3Reliability

If memory dies are suspended for parity writes, then data integrity is maintained, but the completion time of metapage writes increases

Engineering Contradiction:
Improvedata integrityVSAvoidmetapage write duration
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The system performs preliminary actions by identifying and suspending only the specific dies that need to undergo parity writes, while continuing to program other available dies without suspension. This selective approach maintains data integrity for dies requiring parity operations while minimizing the impact on overall metapage write completion time by keeping other dies productive.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the programming operations by die, allowing independent management of each die's programming status. By dividing the metapage write operation into individual die-level tasks, the system can suspend only the necessary dies for parity writes while continuing programming on other dies, thereby maintaining data integrity without extending the overall metapage write duration.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12210452B2Data storage device and method for dynamic logical page write ordering
Publication Date: 2025.01.28 SANDISK TECHNOLOGIES LLC
  • US12210452B2 patent drawing
  • US12210452B2 patent drawing
  • US12210452B2 patent drawing

AI summary

In some situations, the programming of one memory die can be suspended in favor of the programming of another memory die. This can lead to a delay in certain programming operations. To avoid this problem, a data storage device can perform dynamic logical page write ordering by determining an availability of each memory die of a plurality of memory dies and changing a programing order of the plurality of memory dies in response to the determined availability.