UFS Command Scheduling by Type, Interval, and Size

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing Universal Flash Storage (UFS) systems face inefficiencies in processing commands due to long waiting times for subsequent commands, leading to delayed data feedback to the host end.

Innovation Solution

A command processing method that adjusts the execution order of consecutive commands based on command type, time interval, and size, using first and second execution order values to optimize the sequence and reduce waiting times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If commands are executed in the order they enter the queue (FIFO), then the processing sequence is simple and straightforward, but the waiting time for subsequent commands becomes too long and data feedback is delayed

Engineering Contradiction:
Improvecommand processing sequence simplicityVSAvoidcommand waiting time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent applies dynamics by making the command execution order adjustable rather than fixed. The system dynamically determines execution order based on multiple factors including command type (read/write), time interval between commands, and command size, transforming the static FIFO queue into a dynamic scheduling system that adapts to varying workloads

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes multiple parameters to determine execution order: command type (first execution order value), time interval between commands (second execution order value), and command size. By varying these parameters, the system optimizes command processing to reduce waiting time while maintaining reasonable complexity

Inventive Principle:
Principle #35Parameter changes

2Productivity

If command execution order is adjusted based on multiple factors, then command processing efficiency improves and waiting time reduces, but the complexity of determining execution order increases

Engineering Contradiction:
Improvecommand processing efficiencyVSAvoidexecution order determination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the execution order determination into two independent parts: first execution order value based on command type, and second execution order value based on time interval and size. This segmentation allows each component to be calculated independently using simple formulas, reducing overall complexity while achieving efficient processing

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a second dimension to command scheduling by introducing execution order values calculated from multiple parameters (command type, time interval, size) rather than relying on a single dimension like arrival time. This multi-dimensional approach enables more intelligent scheduling decisions without excessive complexity

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS20250370658A1Command processing method, electronic device, and non-transitory computer-readable recording medium
Publication Date: 2025.12.04 HEFEI KAIMENG TECHNOLOGY CO LTD
  • US20250370658A1 patent drawing
  • US20250370658A1 patent drawing
  • US20250370658A1 patent drawing

AI summary

The invention provides a command processing method, an electronic device, and a non-transitory computer-readable recording medium. The command processing method includes receiving a command issued by a host system and generating a corresponding command unit, treating a plurality of consecutive command units as a same command group, determining a first execution order value of each of the command units based on a command type, determining a second execution order value of each of the command units based on a time interval between each of the command units and a size of each of the command units, and adjusting an execution order of each of the command units in each of the command groups according to the first execution order value and the second execution order value of each of the command units to improve the processing efficiency of the command.