Memory Command Scheduling During Initialization to Reduce Transition Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory systems experience undesirable latency and performance degradation due to the duration required for components in a powered-off state to power up and process commands when transitioning between power modes.

Innovation Solution

The memory system analyzes commands during the initialization of components, allowing processing after all components are initialized, thereby reducing latency by processing commands before full initialization is complete.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If components are powered off to save energy, then power consumption is reduced, but latency increases when transitioning to active state

Engineering Contradiction:
Improvepower consumptionVSAvoidlatency
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The system performs preliminary actions by initializing components in advance before they are actually needed for command processing. When a power mode transition occurs, the controller begins initializing components proactively, and if a command arrives during initialization, the system can process it immediately once initialization completes, rather than waiting for the full initialization period. This reduces the effective latency experienced by commands while maintaining the power savings of the powered-off state.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If components remain powered on to process commands immediately, then latency is reduced, but power consumption increases

Engineering Contradiction:
ImprovelatencyVSAvoidpower consumption
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The system dynamically adjusts the power state of components based on operational needs. Rather than maintaining a static powered-on state, the controller transitions components to powered-off state to save energy, and implements a dynamic initialization mechanism that can be interrupted or accelerated based on incoming command timing. This dynamic approach allows the system to optimize between power consumption and latency response based on actual workload conditions.

Inventive Principle:
Principle #15Dynamics

3Stability of the object's composition

If command processing waits for full component initialization, then system stability is improved, but performance decreases

Engineering Contradiction:
Improvesystem stabilityVSAvoidperformance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system maintains continuity of useful action by allowing the initialization process to proceed in the background while simultaneously preparing to process commands. Rather than halting command processing until initialization completes, the system continues its initialization sequence and can accept and process commands as soon as they become available, ensuring that useful work (both initialization and command processing) continues without unnecessary idle time.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20250231716A1Command scheduling for a memory system
Publication Date: 2025.07.17 MICRON TECHNOLOGY INC
  • US20250231716A1 patent drawing
  • US20250231716A1 patent drawing
  • US20250231716A1 patent drawing

AI summary

Methods, systems, and devices for command scheduling for a memory system are described. A memory system may be configured to analyze a received command during an initialization procedure for one or more components. In some examples, the memory system may initialize an interface and one or more processing elements as part of an initialization procedure upon transitioning from a first power mode to a second power mode. Accordingly, the command may be analyzed while the processing elements are being initialized such that, upon the processing elements being fully initialized, the command may be processed (e.g., executed).