Data Storage Device Priority Queue Controller

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in processing jobs with varying priorities, leading to potential starvation of low-priority jobs due to processing delays and missed response deadlines in near-pooled memory processing systems.

Innovation Solution

A data storage device with a shared command queue and queue controller that classifies jobs into priority levels and assigns them to processors, using interrupt mechanisms to manage context switching and processing, allowing for efficient handling of jobs based on priority and deadlines, preventing starvation through dynamic reclassification of jobs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If jobs are processed sequentially according to priority, then high priority jobs are handled efficiently, but low priority jobs may experience starvation and missed deadlines

Engineering Contradiction:
Improvejob processing efficiencyVSAvoiddeadline meeting guarantee
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically adjusts job priority levels based on waiting time thresholds. When a low-priority job exceeds its threshold waiting time, its priority is upgraded to prevent starvation. This dynamic reclassification ensures that both high-priority processing efficiency and low-priority deadline reliability are maintained through adaptive priority management.

Inventive Principle:
Principle #15Dynamics

2Reliability

If context switching is implemented for priority jobs, then response deadlines are met, but processing delays occur for already running jobs

Engineering Contradiction:
Improveresponse deadline complianceVSAvoidjob processing delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system changes the parameter of job priority classification based on waiting time thresholds. By monitoring how long jobs wait in the queue and reclassifying them when thresholds are exceeded, the system balances deadline compliance with minimal processing disruption, reducing unnecessary context switching while ensuring reliability.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If multiple priority levels are implemented, then job scheduling flexibility improves, but system complexity increases

Engineering Contradiction:
Improvejob scheduling flexibilityVSAvoidqueue control mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments jobs into multiple priority levels (first, second, third priority) with distinct waiting time thresholds for each level. This segmentation provides scheduling flexibility while managing complexity through clear, hierarchical classification rules that are easier to implement and maintain than a single complex priority system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11573824B2Data storage device and operating method thereof
Publication Date: 2023.02.07 SK HYNIX INC
  • US11573824B2 patent drawing
  • US11573824B2 patent drawing
  • US11573824B2 patent drawing

AI summary

A data storage device includes a shared command queue, a queue controller, a processor, and a memory. The command queue is configured to queue a plurality of jobs transmitted from a plurality of host processors. The queue controller is configured to classify the plurality of jobs into a plurality of levels of jobs according to priority threshold values and assign jobs of the plurality of levels of jobs the processor. The processor is configured to process the jobs assigned by the queue controller. The memory may store data needed to process the job.