Memory Command Scheduling Component for Performance Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Iterating through all commands in a memory sub-system to schedule and assign priorities decreases performance due to time and processing power consumption, diverting resources from other essential functions.

Innovation Solution

Implementing a command scheduling component that iterates through less than the full amount of commands received, allowing saved resources to be allocated to other functions, thereby enhancing performance by prioritizing and executing only necessary commands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the memory sub-system iterates through all received commands to schedule and assign priorities, then command execution completeness is improved, but performance decreases due to increased time and processing power consumption

Engineering Contradiction:
Improvecommand execution completenessVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by iterating through only a subset of commands rather than all received commands. The command scheduling component selectively processes commands based on priority levels and execution criteria, examining fewer commands than the total received to achieve acceptable scheduling outcomes while reducing processing overhead and improving system performance.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If the memory sub-system iterates through all received commands to assign priorities, then scheduling accuracy is improved, but processing power consumption increases

Engineering Contradiction:
Improvescheduling accuracyVSAvoidprocessing power consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system performs partial prioritization by assigning priorities to only the most critical or recently received commands rather than all commands in the queue. This selective approach maintains adequate scheduling accuracy for time-sensitive operations while significantly reducing the processing power required for priority assignment.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If the memory sub-system iterates through all commands for scheduling, then command prioritization completeness is improved, but time consumption increases

Engineering Contradiction:
Improveprioritization completenessVSAvoidcommand iteration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The command scheduling component implements partial iteration by processing only a portion of the command queue during each scheduling cycle. It focuses on commands that meet specific criteria such as high priority flags or time-sensitive markers, thereby achieving sufficient prioritization completeness for critical commands while minimizing the time spent on full queue iteration.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20250014628A1Command scheduling component for memory
Publication Date: 2025.01.09 MICRON TECHNOLOGY INC
  • US20250014628A1 patent drawing
  • US20250014628A1 patent drawing
  • US20250014628A1 patent drawing

AI summary

A system includes a processing device that determines whether a memory bank is active and adds an activate command for a row of the memory bank accessed by an oldest command for the memory bank to a command scheduler in response to determining the memory bank is not active. The processing device determines whether the row of the memory bank has a corresponding row command in response to determining the memory bank is active. The processing device determines whether a close page mode is enabled or an open row timer has expired on the row and adds a precharge command to the command scheduler in response to determining the close page mode is enabled or the open row timer has expired. The processing device executes a command in the command scheduler based on a priority of commands included in the command scheduler.