Memory Device Command Scheduling with CXL Priority Logic
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Productivity
If priority-based scheduling is implemented for multiple requesters, then command processing efficiency is improved, but scheduling overhead and latency increase
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.
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
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.
Data Source
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.


