Memory System Queue Management for Latency and Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory systems lack the ability to prioritize or deprioritize commands based on expected latency, error correction capabilities, or other metrics, leading to suboptimal quality of service and throughput.

Innovation Solution

A memory system that selectively assigns commands to decoders based on expected latency, error correction capabilities, and other metrics by using multiple queues with different error control capabilities, allowing firmware to determine the appropriate queue for each command based on its characteristics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If commands are processed in sequential order without prioritization, then device complexity is reduced, but quality of service and throughput deteriorate

Engineering Contradiction:
ImprovethroughputVSAvoidqueue management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the command processing system into multiple queues (first queue, second queue, third queue) with different error control capabilities. Each queue is associated with a specific decoder that has tailored error correction parameters, allowing commands to be segmented and processed according to their priority and error correction requirements, thereby improving throughput without excessive complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically assigns commands to different queues based on real-time characteristics such as expected latency and error correction needs. The memory system controller can adaptively determine which queue a command should join, enabling flexible resource allocation that improves quality of service while maintaining manageable system complexity through rule-based decision making

Inventive Principle:
Principle #15Dynamics

2Reliability

If high error correction capability is applied to all commands, then reliability is improved, but processing latency increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidprocessing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies different error correction capabilities to different queues locally. The first queue is associated with a decoder having high error correction capability for reliable but time-consuming processing, while the second queue is associated with a decoder having lower error correction capability for faster processing. This local differentiation allows the system to match error correction strength to command requirements, improving reliability where needed while minimizing latency for time-sensitive operations

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the error correction parameters based on the queue assignment. By adjusting the error correction capability parameter according to which queue a command is assigned to, the system can optimize the trade-off between reliability and latency. Commands that require high reliability can be routed to queues with stronger error correction, while time-critical commands can use queues with faster, lighter error correction

Inventive Principle:
Principle #35Parameter changes

3Productivity

If multiple queues with different error control capabilities are implemented, then quality of service is improved, but device complexity increases

Engineering Contradiction:
Improvequality of serviceVSAvoiddecoder and queue architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal queue management framework where multiple queues share a common memory system controller and can utilize any available decoder based on current workload and command characteristics. This multi-functionality allows the system to provide differentiated quality of service through queue assignment while avoiding the complexity of having dedicated hardware for each queue, as decoders can be dynamically allocated to different queues based on needs

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Productivity

If commands are processed without considering expected latency, then ease of operation is maintained, but timeouts occur and throughput decreases

Engineering Contradiction:
ImprovethroughputVSAvoidcommand assignment simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent performs preliminary assessment of command characteristics, including expected latency requirements, before assigning commands to queues. By evaluating and categorizing commands in advance based on their latency sensitivity and error correction needs, the system can proactively route them to appropriate queues, preventing timeouts and improving throughput without requiring complex real-time decision-making during command execution

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11940874B2Queue management for a memory system
Publication Date: 2024.03.26 MICRON TECHNOLOGY INC
  • US11940874B2 patent drawing
  • US11940874B2 patent drawing
  • US11940874B2 patent drawing

AI summary

Methods, systems, and devices for queue management for a memory system are described. The memory system may include a first decoder associated with a first error control capability and a second decoder associated with a second error control capability. The memory system may receive a command and identify an expected latency for performing an error control operation on the command. The memory system may determine whether to assign the command to a first queue associated with the first decoder or a second queue associated with the second decoder based at least in part on the expected latency for processing the command using the first decoder. Upon assigning the command to a decoder, the command may be processed by the first queue or the second queue.