Memory Subsystem Read Latency Interruption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory sub-systems experience increased read latency due to the sequential nature of operations, where read operations are delayed until program operations are completed, leading to inefficiencies and potential data integrity issues.

Innovation Solution

A controller with a hardware component and firmware component that allows for the interruption of program operations when a read operation is received, enabling the performance of read operations without waiting for program operations to finish, and resumes the interrupted program operations safely using a determined sequence of operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If read operations are delayed until program operations are completed, then data integrity is maintained, but read latency increases

Engineering Contradiction:
Improvedata integrityVSAvoidread latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by checking whether a read operation targets data that has been fully programmed before allowing the read to proceed. The controller determines the programming status in advance and only permits the read operation if the data is ready, thus maintaining data integrity while avoiding unnecessary delays when data is already available.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by making the read operation timing flexible rather than strictly sequential. The system dynamically adjusts whether a read can proceed immediately or must wait, based on the real-time programming status of the target data. This dynamic approach resolves the contradiction by allowing reads to bypass the wait queue when data integrity conditions are met.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If sequential operations are used, then hardware complexity is reduced, but productivity decreases

Engineering Contradiction:
Improvehardware complexityVSAvoidoperation throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent uses dynamics to enable conditional parallel processing without increasing hardware complexity. The controller dynamically determines whether program and read operations can proceed in parallel based on their target addresses and timing, allowing the system to achieve higher throughput while maintaining a relatively simple hardware architecture.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies parameter changes by modifying the operational parameters (timing, sequencing) of memory operations based on the specific read and program operation characteristics. The controller adjusts operation parameters dynamically to optimize throughput without requiring complex hardware modifications.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If read operations interrupt program operations, then read latency is reduced, but manufacturing precision requirements increase

Engineering Contradiction:
Improveread latencyVSAvoidoperation timing precision
Core Design Contradiction:
Loss of timeVSManufacturing precision

Solution Approach 1:

The patent applies preliminary action by determining the programming completion status before allowing read operations to interrupt or proceed. This preliminary check ensures that reads only interrupt or access data when it is safe to do so, reducing read latency while maintaining sufficient timing precision through firmware logic rather than hardware complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11803321B2Interruption of program operations at a memory sub-system
Publication Date: 2023.10.31 MICRON TECHNOLOGY INC
  • US11803321B2 patent drawing
  • US11803321B2 patent drawing
  • US11803321B2 patent drawing

AI summary

A method can include receiving, by a first controller component of a memory sub-system, a read operation, responsive to receiving the read operation, interrupting, by the first controller component, one or more program operations being performed by the memory sub-system, receiving, by the first controller component, a control sequence from a second controller component, wherein the control sequence is based on context data associated with the interrupted one or more program operations, and performing, by the first controller component, the control sequence by copying data of the interrupted one or more program operations from a first memory location to a second memory location of a memory component associated with the memory sub-system, and performing the read operation.