Memory Controller Token Scheduling for Host QoS
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory controllers use fixed scheduling methods like FCFS and FR-FCFS, which do not optimize request processing sequences according to the varying characteristics of host devices, leading to inefficient operations.
Innovation Solution
A memory controller and request scheduling method that utilize two types of tokens (first and second tokens) to determine the output sequence of requests from host devices, allowing for optimized scheduling based on the characteristics of each host device, such as CPU, GPU, or display, by using different rules like FR-FCFS and FR for first and second tokens respectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a fixed scheduling method (FCFS or FR-FCFS) is used, then the scheduling process is simple, but the system cannot provide optimized scheduling conforming to host device characteristics
Solution Approach 1:
The patent segments the scheduling mechanism by dividing requests into different queues based on host device characteristics, and applies different scheduling rules (FR-FCFS for CPU, FR for GPU) to different queues. This segmentation allows the system to provide optimized scheduling for each host type while maintaining overall manageability through modular queue structures.
Solution Approach 2:
The patent implements dynamic scheduling by selecting different scheduling rules based on the characteristics of the host device making the request. The memory controller dynamically adjusts the scheduling approach - using FR-FCFS for CPU requests and FR for GPU requests - rather than applying a fixed rule to all requests, thereby achieving adaptability without excessive complexity.
2Productivity
If conventional fixed scheduling is used, then the implementation is straightforward, but the request processing efficiency is not optimized
Solution Approach 1:
The patent applies local quality by implementing different scheduling rules in different contexts - FR-FCFS scheduling for CPU request queues and FR scheduling for GPU request queues. Each queue type receives customized scheduling treatment appropriate to its characteristics, thereby optimizing request processing efficiency for each host device type while maintaining clear implementation boundaries.
3Reliability
If multiple scheduling rules are applied based on host characteristics, then QoS control is optimized, but the scheduling mechanism becomes more complex
Solution Approach 1:
The patent applies preliminary action by pre-classifying requests into different queues based on host device characteristics before scheduling. The memory controller identifies whether a request comes from a CPU or GPU and places it in the appropriate queue in advance, so that the correct scheduling rule (FR-FCFS or FR) can be automatically applied without complex real-time decision-making, thereby achieving precise QoS control with manageable complexity.
Data Source
AI summary
A memory controller includes a plurality of request queues for storing requests transmitted from corresponding host devices among a plurality of host devices, and a token information generation unit for generating information related to the numbers of first and second tokens corresponding to the plurality of respective host devices. The memory controller also includes a request scheduler for selecting repeatedly and sequentially the plurality of request queues, and outputting requests stored in a selected request queue, by using the first and second tokens, wherein the request scheduler outputs one request per one first token and, when first tokens are all consumed, outputs one request per one second token. The scheduler may output requests according to a first-ready first-come first-served (FR-FCFS) rule when using a first token, and output requests according to a first-ready (FR) rule when using a second token. The number of first tokens and second tokens may depend on characteristics of the host devices. A bandwidth control unit may control the number of first and second tokens based on bandwidth. The scheduler may stop outputting requests of a currently selected request queue, and output requests of a request queue corresponding to a top-priority host device.


