Nonvolatile Memory Controller Read Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage devices using memory devices face challenges in optimizing read operations across varying workloads, leading to suboptimal performance due to the lack of efficient strategies for handling overlapping read commands and group operations.

Innovation Solution

A data storage device and operating method that selectively apply cache read and interleaving read operations based on the overlap of read regions across multiple groups, allowing for parallel data read and output operations within the same or different groups, thereby optimizing processing time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If plane interleaving read operation is performed to increase random read performance, then read performance is improved, but device complexity increases due to need for group management and overlap detection

Engineering Contradiction:
Improveread performanceVSAvoidgroup management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory device is divided into multiple groups, each containing one or more planes, with each group operating as an independent interleaving unit. This segmentation allows the controller to manage read operations at the group level, reducing complexity compared to managing individual planes while maintaining parallel read performance benefits.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs preliminary checking to determine whether read commands overlap before executing read operations. By pre-determining the relationship between current and previous read groups, the controller can select the optimal read mode (cache read or interleaving read) in advance, avoiding complex real-time decisions during data retrieval.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If cache read operation is performed to increase full page read performance, then read performance is improved, but processing time increases when read regions overlap

Engineering Contradiction:
Improvefull page read performanceVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system dynamically switches between cache read mode and interleaving read mode based on the detected overlap between read commands. When read regions do not overlap, cache read is used for optimal full page performance. When overlap is detected, the system transitions to interleaving read mode to prevent conflicts and reduce processing time, making the system adaptable to varying workload conditions.

Inventive Principle:
Principle #15Dynamics

3Productivity

If interleaving read operation is performed on planes across multiple groups, then parallel read performance is improved, but data conflicts occur when read regions overlap

Engineering Contradiction:
Improveparallel read performanceVSAvoiddata conflict avoidance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The controller continuously monitors the read command queue and provides feedback about overlapping read regions. Based on this feedback, the controller determines whether to execute read operations in cache read mode or interleaving read mode, ensuring that data conflicts are avoided while maximizing parallel read performance when safe to do so.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11231882B2Data storage device with improved read performance and operating method thereof
Publication Date: 2022.01.25 SK HYNIX INC
  • US11231882B2 patent drawing
  • US11231882B2 patent drawing
  • US11231882B2 patent drawing

AI summary

A data storage device may include: a nonvolatile memory apparatus including a plurality of groups configured by dividing a plurality of planes in interleaving units; and a controller configured to check whether a group including a read region of a current read command is included in a group including a read operation of a previous read command and whether the read region of the current read command extends over two or more groups, when receiving the current read command, and control the nonvolatile memory apparatus to perform cache read or interleaving read based on the check result.