Memory Controller Speculative Read Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In memory systems like SSDs using NAND type flash memory, the time from receiving a command to completing the process is prolonged, leading to delayed data retrieval for host systems.

Innovation Solution

The memory system predicts sequential read commands by determining if the read data size matches a predetermined maximum size, allowing speculative execution of subsequent read commands, thereby reducing processing time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If the memory system waits for the host to issue each read command sequentially, then it ensures accurate command processing, but the processing time from command reception to completion is prolonged

Engineering Contradiction:
Improveprocessing timeVSAvoidcommand processing accuracy
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The memory controller performs preliminary actions by speculatively executing subsequent read commands before the host issues them. When sequential read commands are detected, the controller proactively prepares and executes the next read command in advance, reducing the time from command reception to completion while maintaining reliability through validation mechanisms that ensure only correct speculative executions are committed.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the memory system executes read commands strictly in the order received, then it maintains processing accuracy, but the productivity is reduced due to idle waiting time

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidcommand execution control
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory controller dynamically adjusts its command execution strategy based on the detected access pattern. When sequential reads are identified, the controller transitions from strict sequential execution to speculative parallel execution, issuing multiple read commands concurrently. This dynamic adaptation increases productivity while managing complexity through pattern recognition and conditional execution logic.

Inventive Principle:
Principle #15Dynamics

3Loss of time

If the memory system initiates read operations immediately upon receiving commands, then the response time is reduced, but energy consumption increases due to unnecessary read operations

Engineering Contradiction:
Improvecommand response timeVSAvoidenergy consumption
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The memory controller uses feedback from the host's read command patterns to intelligently control speculative execution. By monitoring whether subsequent read commands are actually issued by the host, the controller validates its speculative actions and only commits energy-consuming read operations when they prove beneficial, thus reducing wasted energy while maintaining fast response times.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9684459B2Memory system
Publication Date: 2017.06.20 KIOXIA CORP
  • US9684459B2 patent drawing
  • US9684459B2 patent drawing
  • US9684459B2 patent drawing

AI summary

According to one embodiment, there is provided a memory system including a nonvolatile memory, a host interface, and a controller. The host interface is configured to receive a first read command including a logical address to access the nonvolatile memory from a host system. The controller is configured to, when a size of read data requested in the first read command matches a predetermined data size, execute a process according to a second read command including a logical address sequential to the logical address included in the first read command before the host interface receives the second read command.