Nonvolatile Memory Read Scheduling During Erase and Program

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in efficiently controlling access to nonvolatile memories, particularly in balancing the execution of read, erase, and program commands to manage latency and ensure optimal performance in storage devices like SSDs.

Innovation Solution

A memory system controller employs a scheduling algorithm that prioritizes commands based on cumulative weights, suspending longer operations like erase/program commands when certain conditions are met to maintain optimal read command execution and reduce latency variability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If erase/program commands are executed with high priority, then data management operations are completed faster, but read command latency increases significantly

Engineering Contradiction:
Improveerase/program command execution speedVSAvoidread command latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The scheduler dynamically adjusts command execution priority based on real-time system state and command types. Read commands are assigned higher priority during normal operation, while erase/program commands can be expedited when memory management requires, creating a flexible priority system that adapts to different operational conditions rather than using fixed priorities

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

A command scheduling algorithm acts as an intermediary between command submission and execution. This scheduler queue manages the timing and priority of different command types, buffering read and erase/program commands to balance their execution without direct conflict, thereby reducing read latency while still completing data management operations

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If read commands are prioritized over erase/program commands, then read latency is reduced, but data management efficiency deteriorates

Engineering Contradiction:
Improveread command latencyVSAvoiddata management efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The scheduling system implements periodic evaluation of command queues and memory state, alternating between prioritizing read commands for low latency and processing erase/program commands for data management. This periodic switching ensures both read performance and data management efficiency are maintained over time rather than one consistently dominating

Inventive Principle:
Principle #19Periodic action

3Reliability

If command execution is strictly sequential, then resource conflicts are avoided, but overall system throughput decreases

Engineering Contradiction:
Improvecommand execution stabilityVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system transitions from strict sequential execution to dynamic parallel execution where multiple commands can be processed simultaneously based on resource availability and command compatibility. The scheduler monitors system state and adjusts execution patterns in real-time, allowing parallel processing when safe and sequential when conflicts might occur

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The command scheduling system uses feedback from memory state monitoring and command completion status to dynamically adjust execution timing. When resources are available and no conflicts are detected, commands are executed in parallel; when conflicts are anticipated, the scheduler adjusts timing to maintain stability while still improving throughput compared to strict sequencing

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20250370662A1Memory system and method of controlling nonvolatile memory
Publication Date: 2025.12.04 KIOXIA CORP
  • US20250370662A1 patent drawing
  • US20250370662A1 patent drawing
  • US20250370662A1 patent drawing

AI summary

According to one embodiment, when a command executed in a nonvolatile memory is an erase/program command and when a cumulative weight value satisfies a condition that a first input is selected as an input of high priority, a memory system suspends execution of the erase/program command by transmitting a suspend command to the nonvolatile memory. The memory system repeats executing an operation of starting the execution of one read command of the first input and an operation of updating the cumulative weight by using the weight associated with the read command until read command no longer exists in the first input or until the condition that the cumulative weight is larger than the first value is not satisfied, and resumes the execution of the suspended erase/program command.