Smart Host Stream Release in Storage Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing stream release process in storage devices is inefficient due to the need for multiple DSM commands to deallocate thousands of logical block address ranges, leading to increased host overhead and potential performance and latency issues.

Innovation Solution

The proposed solution involves a smart stream release process where the storage device controller handles the deallocation of logical addresses associated with a stream release request, eliminating the need for explicit DSM commands from the host. This includes setting a self-deallocate option in the stream release request and internally handling the invalidation of logical space by the controller.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple DSM commands are used to deallocate logical block address ranges, then the stream release process can be completed, but host overhead increases and performance/latency deteriorates

Engineering Contradiction:
Improvestream release completionVSAvoidhost overhead and latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The storage device controller automatically deallocates logical block addresses associated with a stream when it receives a stream release request, without requiring explicit DSM commands from the host. The controller identifies the logical addresses through internal mapping tables and performs deallocation autonomously, making the system self-service in handling the deallocation task.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent segments the stream release process into two independent parts: (1) the host sends a stream release request containing stream identification information, and (2) the controller independently handles the deallocation of logical block addresses using internal mapping tables. This segmentation eliminates the need for the host to manage individual DSM commands for each logical address range.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the host sends numerous DSM commands for deallocation, then all logical blocks can be released, but device complexity and operation complexity increase

Engineering Contradiction:
Improvelogical block deallocationVSAvoidhost operation simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The controller automatically manages the deallocation process by maintaining internal mapping tables that track logical block addresses associated with each stream. When a stream release request is received, the controller autonomously identifies and deallocates all associated logical addresses without requiring the host to construct or send multiple DSM commands.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The stream release request mechanism serves multiple functions: it releases the stream identifier for reuse, automatically deallocates all associated logical block addresses, and updates internal mapping tables. This multi-functional approach replaces the need for multiple specialized DSM commands, simplifying the host's operation while ensuring complete deallocation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20250123760A1Smart Host Stream Release
Publication Date: 2025.04.17 SANDISK TECHNOLOGIES LLC
  • US20250123760A1 patent drawing
  • US20250123760A1 patent drawing
  • US20250123760A1 patent drawing

AI summary

Aspects of a storage device are provided for intelligently releasing a stream. The storage device includes one or more non-volatile memories, and one or more controllers operable to release a stream in the storage device. In particular, the controller(s) may, individually or in combination, obtain a stream release request from a host device, the stream release request indicating a stream identifier and including an indication of whether to deallocate a stream associated with the stream identifier, and deallocate, in response to the stream release request and based on the indication, a plurality of logical addresses associated with the stream from corresponding physical addresses associated with the one or more non-volatile memories. The deallocation may be performed without waiting for dataset management commands for deallocation from the host. Thus, reduced performance impact and latency may be achieved in the process of deallocating logical address ranges associated with a released stream identifier.