Memory Device Command Scheduling with CXL Priority Logic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory devices and scheduling methods struggle to efficiently manage and prioritize commands from multiple requesters in heterogeneous computing environments, leading to increased latency and overhead.

Innovation Solution

A memory device and scheduling method that utilize an inter-chip interconnection protocol to determine and process command priorities, incorporating a request register, checker module, command generator, and memory controller to schedule commands based on requester identifiers and request types using different CXL protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If commands are processed in a heterogeneous computing environment with multiple requesters, then computing capability and functionality are improved, but command management complexity and scheduling overhead increase

Engineering Contradiction:
Improveheterogeneous computing capabilityVSAvoidcommand management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments command management by creating separate command queues for different requester types (e.g., host requester and accelerator requester). The memory controller divides the command processing workflow into distinct stages: command reception, priority determination, queue selection, and execution. This segmentation allows independent optimization of each segment without increasing overall system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by determining command priorities before commands are placed in queues. The priority determination logic analyzes requester identifiers and command types in advance, assigning priority levels that guide subsequent scheduling decisions. This preliminary classification simplifies the actual execution phase by pre-resolving potential conflicts.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If priority-based scheduling is implemented for multiple requesters, then command processing efficiency is improved, but scheduling overhead and latency increase

Engineering Contradiction:
Improvecommand processing efficiencyVSAvoidscheduling latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies local quality by implementing priority determination logic that is specific to each requester type and command category. Different requester identifiers (host vs. accelerator) receive different priority evaluation criteria. This localized approach allows efficient scheduling decisions to be made contextually without requiring a complex universal scheduling algorithm, thereby reducing overall scheduling overhead.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If different protocols (CXL.io and CXL.mem) are used for command reception, then protocol versatility and functionality are improved, but protocol conversion complexity and processing overhead increase

Engineering Contradiction:
Improveprotocol compatibilityVSAvoidprotocol handling complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism in the form of a unified command interface that receives commands from multiple protocol sources (CXL.io and CXL.mem). This intermediary layer translates diverse protocol-specific commands into a standardized internal representation, allowing the memory controller to handle different protocols without requiring separate processing paths for each protocol type.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20250165153A1Memory device and scheduling method thereof
Publication Date: 2025.05.22 SAMSUNG ELECTRONICS CO LTD
  • US20250165153A1 patent drawing
  • US20250165153A1 patent drawing
  • US20250165153A1 patent drawing

AI summary

A memory includes: a request register configured to receive a first signal including a requester identifier using a first protocol from a host and configured to output a first priority corresponding to the requester identifier; a checker module configured to receive a second signal including a command and a request type from the host and using a second protocol that is different than the first protocol, where the checker module is configured to receive the first priority from the request register, and where the checker module is configured to determine a second priority of the command based on the first priority and the request type; a command generator configured to generate an internal command for memory operation based on the command; and a memory controller configured to schedule the internal command in a command queue based on the second priority.