Memory Controller Read Wait Timing for Multi-Plane Sequential Reads
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Sequential read performance of memory systems is degraded due to delayed or irregular command transmission from hosts, leading to inefficiencies in data retrieval.
Innovation Solution
A memory system and controller that wait to receive read commands from a reference time point, allowing simultaneous data retrieval from multiple planes within the memory device when conditions are met, or after a maximum wait time has elapsed, to optimize read operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the memory controller waits to receive read commands to enable parallel reading from multiple planes, then sequential read performance is improved, but read latency increases due to waiting time
Solution Approach 1:
The memory controller performs preliminary actions by proactively checking whether data for upcoming read commands is already available in the buffer memory before the actual read command is executed. This allows the controller to prepare parallel read operations in advance, reducing the effective waiting time and enabling faster data retrieval when multiple planes can read simultaneously.
Solution Approach 2:
The memory controller dynamically adjusts its read operation strategy by continuously monitoring the availability of data in the buffer memory and the arrival of read commands. When data is available and multiple planes can read in parallel, the controller activates parallel read operations; otherwise, it falls back to sequential reading. This dynamic adaptation optimizes both read performance and latency based on real-time system conditions.
2Productivity
If the memory controller checks data availability in buffer memory before executing read commands, then parallel reading efficiency is improved, but control complexity increases
Solution Approach 1:
The buffer memory automatically tracks and maintains information about which data is available for reading, eliminating the need for the memory controller to manually query each memory plane. The buffer memory's internal structure and management logic handle the complexity of tracking data availability, while the controller simply checks the buffer status to determine whether parallel reads can be executed.
3Loss of time
If read commands are processed immediately upon receipt, then read latency is reduced, but sequential read performance degrades due to inability to perform parallel reads
Solution Approach 1:
The system performs preliminary checks of buffer memory content availability before executing read commands. This preliminary action enables the controller to identify opportunities for parallel reading in advance, so that when read commands arrive, the system is already prepared to execute them in parallel if conditions permit, thus maintaining low latency while maximizing throughput.
Solution Approach 2:
The memory controller dynamically decides whether to process read commands immediately or to wait for optimal parallel execution opportunities. By continuously monitoring buffer memory status and command arrival patterns, the controller adapts its processing strategy in real-time, switching between immediate execution and delayed parallel execution modes to optimize both latency and throughput based on current system conditions.
Data Source
AI summary
A memory system may wait to receive one or more read commands from a reference time point, and read data, requested by the one or more read commands, from the memory device in response to a determination that it is possible to simultaneously read data divided and stored, as an M number of data units, in an M number of planes among a plurality of planes in response to the one or more read commands or that a maximum read wait time has elapsed from the reference time point, M being a natural number.


