Command Packets for Direct SSD Channel Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SSD interface protocols, such as NVMe, limit the flexibility and control of host systems over solid-state drives (SSDs), particularly in manipulating individual NAND flash devices and specific channels, due to restricted command sets and lack of control over physical address spaces, wait times, and data protection at the flash level.

Innovation Solution

The use of user-defined DWords within the NVMe Submission Queue Entry (SQE) packet structure allows for linking and reordering of command packets, enabling the execution of ONFI and user-defined commands to provide more granular control over SSD operations, including physical address access and timing management, thereby overcoming the limitations of the NVMe protocol.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional NVMe interface protocols are used, then compatibility and standardization are improved, but host system flexibility and control over SSD operations deteriorate

Engineering Contradiction:
Improveprotocol compatibilityVSAvoidhost control flexibility
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The command packet structure is segmented into standardized fields (for NVMe compatibility) and user-defined DWord fields (for extended control). This segmentation allows the protocol to maintain standardization while providing segments for custom host control operations, resolving the contradiction between protocol compatibility and host flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds another dimension to the command structure by introducing user-defined DWords beyond the standard NVMe fields. This dimensional extension allows hosts to specify additional parameters (such as wait times, protection flags, and channel-specific controls) without breaking NVMe compatibility, thus resolving the control flexibility limitation.

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

2Adaptability or versatility

If NVMe protocol command structures are used, then interface standardization is improved, but granular control over flash memory channels and physical addresses deteriorates

Engineering Contradiction:
Improveinterface standardizationVSAvoidgranular control capability
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The command packet is divided into standardized NVMe header fields and extended user-defined DWord fields. This segmentation enables the interface to maintain NVMe standardization while providing dedicated segments for granular control of flash channels and physical addresses through the user-defined portion.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The user-defined DWords act as an intermediary layer between the standardized NVMe interface and the underlying flash memory hardware. This intermediary structure translates standardized commands into granular hardware control operations, resolving the contradiction between interface standardization and granular control capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Device complexity

If standard NVMe commands are used, then protocol simplicity is improved, but control over wait times and data protection at flash level deteriorates

Engineering Contradiction:
Improveprotocol complexityVSAvoidtiming and protection control
Core Design Contradiction:
Device complexityVSEase of operation

Solution Approach 1:

The command structure segments timing control and protection parameters into specific user-defined DWords, separating these control functions from the core NVMe protocol. This segmentation maintains protocol simplicity while providing dedicated fields for precise timing and protection control at the flash level.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12197349B2Command packets for the direct control of non-volatile memory channels within a solid state drive
Publication Date: 2025.01.14 MICRON TECHNOLOGY INC
  • US12197349B2 patent drawing
  • US12197349B2 patent drawing
  • US12197349B2 patent drawing

AI summary

Apparatuses and methods for providing and interpreting command packets for direct control of memory channels are disclosed herein. An example apparatus includes flash memories configured into channels and a controller coupled to the flash memories. The controller receives packets and interpret the packets based at least on a first protocol, and determines whether any packets are linked based on a link identifier included in a block of each packet. The controller arranges the subset of packets based on an index included in the block of each packet of the subset of packets, and the subset of packets are arranged in order based on the respective indexes. A target flash memory and a target channel are determined by the controller based on flash memory and channel identifiers included in the block of each of the packet of the subset of packets.