Command Queue Segmentation for Storage Actuator Short-Stroke

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep command queues in data storage systems can lead to reduced throughput performance and data mismatches due to excessive acknowledged but unsatisfied access commands, necessitating efficient command queue management.

Innovation Solution

A data storage system with a RAID configuration and a command queue controller that independently moves actuators to short-stroke data storage devices, prioritizing commands based on the proximity of heads to Logical Block Addresses (LBAs) to minimize seek distance and optimize command processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the command queue is allowed to grow deep to buffer access commands, then the system can acknowledge commands immediately to the host, but throughput performance deteriorates and data mismatches become more problematic

Engineering Contradiction:
Improvecommand acknowledgmentVSAvoidthroughput performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The command queue is segmented into multiple queues based on the destination storage device. Each queue is associated with a specific storage device, allowing commands to be distributed across multiple queues rather than accumulating in a single deep queue. This segmentation reduces the depth of individual queues while maintaining the ability to buffer commands, thereby improving throughput performance while preserving command acknowledgment functionality.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If the command queue is allowed to grow deep to buffer access commands, then immediate acknowledgment to host is enabled, but data mismatches become more problematic due to excessive acknowledged but unsatisfied commands

Engineering Contradiction:
Improvecommand acknowledgmentVSAvoiddata match accuracy
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

By segmenting the command queue into device-specific queues, the system reduces the number of commands waiting in each queue. This limits the accumulation of acknowledged but unsatisfied commands, thereby reducing the probability of data mismatches while maintaining immediate acknowledgment capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements feedback mechanisms to monitor command satisfaction status. When commands are acknowledged to the host, the system tracks their satisfaction status and provides feedback to prevent data mismatches by ensuring that only satisfied commands are processed further. This feedback loop maintains data integrity while allowing immediate acknowledgment.

Inventive Principle:
Principle #23Feedback

3Speed

If actuators move independently to access information from different domains, then short-stroking can be continuously employed to reduce average seek distance, but command queue ordering becomes more complex

Engineering Contradiction:
Improveseek distanceVSAvoidcommand queue ordering
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The command queue is segmented into multiple queues, each associated with a specific storage device or domain. This segmentation allows actuators to move independently within their respective domains without interfering with other actuators. The simplified queue structure for each domain makes command ordering easier to manage while enabling continuous short-stroking to reduce average seek distance.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7890696B2Command queue ordering with directional and floating write bands
Publication Date: 2011.02.15 SEAGATE TECH LLC
  • US7890696B2 patent drawing
  • US7890696B2 patent drawing
  • US7890696B2 patent drawing

AI summary

A data storage system is provided having identical information stored on two different domains, actuators independently moveable in a data transfer relationship with each domain, and a command queue controller configured for short-stroking the actuators in accessing the information from one of the domains. A method is provided for virtualizing a storage space to store user data in a first domain and redundant data in a second domain; pushing access commands from a command queue with a first head adjacent the first domain and a second head adjacent the second domain, the heads being independently moveable in relation to each other; and satisfying a retrieve command from one of the first and second domains, depending on which head is nearest an LBA associated with the retrieve command.