Submission Queue Entry Extension for NVMe Overflow
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The limited space in submission queue entries for storage devices, particularly in standard formats like NVMe, leaves no room for additional data that hosts may want to include, as fields are increasingly assigned specific purposes, leaving no room for future expansion.
Innovation Solution
Repurpose two bits (FUSED) in the submission queue entry to identify a second submission queue entry as an extension of the original, allowing additional data to be stored in a separate data structure, which can be linked using existing fields or new opcodes, enabling out-of-order processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the amount of data included in a submission queue entry is increased, then the data capacity is improved, but the space available for additional information shrinks
Solution Approach 1:
The submission queue entry is segmented into two parts: a first submission queue entry containing command identification information and a second submission queue entry containing additional data. This segmentation allows the command metadata to remain in the standard 64-byte format while additional data is stored in a separate extendable structure, resolving the contradiction between maintaining standard compliance and increasing data capacity.
Solution Approach 2:
The patent transitions from a single-dimensional 64-byte submission queue entry to a multi-dimensional structure where additional data is stored in a separate dimension (second submission queue entry or associated data structure). This allows the original submission queue entry to maintain its standard size and format while the system accommodates extended data capacity through the additional dimensional structure.
2Productivity
If fields in the submission queue entry are assigned specific purposes, then the command processing capability is improved, but the room for additional data shrinks
Solution Approach 1:
The patent segments the submission queue entry into a first entry for command processing metadata and a second entry for additional data. This segmentation allows command fields to be fully utilized for processing capability while additional data is stored separately, eliminating the trade-off between field specialization and data capacity.
Solution Approach 2:
The patent introduces an intermediary structure (second submission queue entry or associated data structure) that mediates between the standard submission queue entry and the additional data. This intermediary allows the standard entry to maintain its optimized command processing fields while the additional data is stored in the intermediary structure.
3Quantity of substance
If a second submission queue entry is added to store additional data, then the data capacity is increased, but the device complexity increases
Solution Approach 1:
The patent makes the second submission queue entry universal by using it for multiple purposes: storing additional data, maintaining command association through identification information, and enabling flexible data capacity extension. This multi-functionality reduces the need for separate dedicated structures, thereby limiting the increase in device complexity while achieving enhanced data capacity.
Data Source
AI summary
A memory is disclosed. The memory may include a first data structure and a second data structure. The first data structure may include a first field to store a first data relating to a command, and a related command field, the related command field to store a value. The second data structure may include a second field to store a second data relating to the command. A queue stored in the memory, may include the first data structure. A storage device may be configured to identify the first data structure and the second data structure (405, 705) as related based at least in part on the value.


