Submission Queue Timestamp Tracking for Command Age Accuracy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices lack accurate methods to track the age of commands from when a host notifies the device that a command is available until it completes processing, leading to potential inaccuracies and inability to detect timeouts.
Innovation Solution
Implementing a data structure, such as a linked list, to store timestamps of doorbell events, allowing the storage device to track command age accurately by recording timestamps when the host notifies the device and when processing is completed, with mechanisms to manage memory efficiently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If storage devices track command processing time only from when processing begins to when it completes, then the tracking mechanism is simple, but the accuracy of command age tracking is insufficient and timeouts cannot be detected
Solution Approach 1:
The patent applies preliminary action by recording the timestamp when the host notifies the storage device of a command's availability (doorbell event) before the storage device begins processing. This preliminary timestamp recording enables accurate command age tracking from the moment the command becomes available, rather than only from when processing starts, thereby improving measurement precision without significantly increasing complexity.
2Reliability
If storage devices implement comprehensive command age tracking with timestamps, then timeout detection capability is improved, but memory usage increases
Solution Approach 1:
The patent applies the taking out principle by extracting only the essential timestamp information needed for command age tracking and timeout detection. Rather than storing complete command metadata or excessive tracking information, the system extracts and stores only the critical doorbell event timestamps, thereby achieving reliable timeout detection while minimizing memory consumption.
Solution Approach 2:
The patent employs cheap short-living objects by using lightweight timestamp entries that can be efficiently created and discarded. Each command age tracking entry stores only essential timestamp data with a small memory footprint, allowing the system to track multiple commands simultaneously while using minimal memory resources. These tracking entries are temporary and are discarded after timeout detection or command completion.
3Measurement precision
If storage devices use a data structure to store doorbell event timestamps, then command age tracking accuracy is enhanced, but the device complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the command age tracking system into distinct functional components: doorbell event detection, timestamp recording, and age calculation. The data structure is segmented into individual entries, each associated with a specific command, containing only the essential doorbell timestamp. This segmentation simplifies management by allowing independent handling of each command's tracking data without complex interdependencies.
Data Source
AI summary
A storage device is described. A first storage may store a data. An interface may be used to access a command from a host, the command applicable to the data. A controller may execute the command. A second storage may store an entry. The entry may include a first data field for a timestamp and a second data field for a reference to the command.


