Memory Controller Parallel Write Scheduling for NAND Flash Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory systems face challenges in optimizing write and read operations in NAND flash memory systems, leading to increased tail latency and decreased performance due to overlapping write and read requests, as well as limited parallel write operations across memory chips.

Innovation Solution

The memory system employs a configuration with multiple memory chips and a memory controller that independently manage write and read operations, utilizing error correction codes and parity data to distribute data across memory chips, allowing for parallel write operations and selective read strategies to minimize latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If write and read operations are performed independently without coordination, then operation simplicity is maintained, but tail latency increases and performance decreases due to overlapping requests

Engineering Contradiction:
Improveoperation simplicityVSAvoidtail latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The memory controller monitors the operation status of each memory chip and uses this feedback information to determine whether to perform read operations in parallel or sequentially. When a memory chip is busy with write/erase operations, the controller waits for completion before initiating read operations on that chip, thereby reducing tail latency while maintaining operational simplicity through automated status-based decision making.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adjusts the read operation strategy based on real-time status of memory chips. The memory controller changes from sequential processing to parallel processing when memory chips are available, and switches to sequential processing when chips are busy. This dynamic adaptation allows the system to optimize performance without complex manual intervention.

Inventive Principle:
Principle #15Dynamics

2Productivity

If parallel write operations are enabled across multiple memory chips, then write performance and processing capability are improved, but device complexity increases due to independent management requirements

Engineering Contradiction:
Improvewrite performanceVSAvoidindependent management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory system is divided into multiple independent memory chips, each capable of performing write operations independently. The memory controller manages each chip as a separate unit, tracking its status (busy/idle) and coordinating operations accordingly. This segmentation enables parallel writes across multiple chips while keeping the management structure modular and manageable through standardized status-based control.

Inventive Principle:
Principle #1Segmentation

3Reliability

If read operations wait for write operations to complete, then data integrity is ensured, but processing time increases and productivity decreases

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing capability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory controller performs preliminary status checking before initiating read operations. By checking whether memory chips are in busy or idle state beforehand, the controller can queue read operations for chips that will be ready soon, rather than immediately waiting for current write operations to complete. This preliminary assessment enables more efficient scheduling that maintains data integrity while reducing unnecessary waiting time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The memory controller continuously monitors the status of all memory chips and maintains ready queues for read operations. When memory chips transition from busy to idle state, the controller immediately initiates pending read operations without idle waiting periods. This continuous monitoring and immediate action ensures that data integrity is maintained (by only reading when data is stable) while maximizing processing throughput through continuous useful actions.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20240345734A1Memory system
Publication Date: 2024.10.17 KIOXIA CORP
  • US20240345734A1 patent drawing
  • US20240345734A1 patent drawing
  • US20240345734A1 patent drawing

AI summary

According to one embodiment, a memory system includes a plurality of memory chips each including a first memory area and a second memory area and a memory controller. The memory controller is configured to control a first group including a plurality of first memory areas and a second group including a plurality of second memory areas independently of each other, form a data group including a plurality of write data items of respective pages and first data including an erasure correction code corresponding to the write data items, and distribute each of the write data items and the first data of the data group in the plurality of first memory areas of the first group to write the distributed write data items and first data at different timings.