Die-Based Error Recovery Queues for NAND Memory Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory controller processors face inefficiencies in scheduling error recovery commands, leading to increased latency due to the grouping of error recovery commands into a single queue, which does not account for different types and priorities of read commands, and worsens with wear and age of memory devices.

Innovation Solution

Implementing die-based error recovery message queues, where each NAND memory die has a separate queue for error recovery messages, allowing for parallel scheduling and prioritization of error recovery commands based on the destination die and type of read command.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If error recovery commands are grouped into a single queue, then the queue management is simple, but the latency of read commands increases significantly

Engineering Contradiction:
Improvequeue management complexityVSAvoidread command latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent divides the single error recovery queue into multiple die-based queues, with each queue dedicated to a specific memory die. This segmentation allows parallel processing of error recovery commands across different dies, reducing the overall latency while maintaining manageable complexity through organized structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of organization by mapping error recovery queues to specific memory dies spatially. Instead of a single sequential queue, the system creates a multi-dimensional queue structure where each die has its own dedicated queue, enabling parallel error recovery operations across multiple dies simultaneously.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If a single error recovery queue is used, then the scheduling is simple, but the productivity of error recovery operations decreases

Engineering Contradiction:
Improvescheduling complexityVSAvoiderror recovery throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the error recovery operations into die-specific queues, allowing multiple error recovery commands to be processed in parallel across different dies. This increases throughput by eliminating the serial bottleneck of a single queue while maintaining scheduling simplicity through die-based organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent ensures continuous error recovery processing by maintaining dedicated queues for each die, allowing the scheduler to continuously draw commands from multiple queues in parallel. This eliminates idle time and maintains continuous productive action across all memory dies.

Inventive Principle:
Principle #20Continuity of useful action

3Device complexity

If all read commands are treated equally in the queue, then the queue structure is simple, but the priority handling of different command types is poor

Engineering Contradiction:
Improvequeue structure complexityVSAvoidpriority handling capability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the queue system into die-based queues that can independently handle different command types and priorities. Each die queue can be managed separately, allowing the system to adapt to different command priorities without complicating the overall structure, as each queue remains simple but collectively they provide sophisticated priority handling.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12260927B2Die-based high and low priority error queues
Publication Date: 2025.03.25 KIOXIA CORP
  • US12260927B2 patent drawing
  • US12260927B2 patent drawing
  • US12260927B2 patent drawing

AI summary

A processor coupled to a NAND memory device comprising an n by m array of dies having n channels performs error recovery message scheduling and read error recovery on the dies by receiving indications of read errors responsive to attempted execution of a read command on a destination die and creates an error recovery message or instruction in response to the indication. The processor determines the destination die of the error recovery message and sends the error recovery message to a die queue based on the determined destination die. The n×m die queues can each be further divided into p priority queues, and error recovery messages are sent to the appropriate die priority queue based on a priority associated with the error recovery message. The processor fetches error recovery messages from a head of each die priority queue and performs read error recovery at the destination die.