SSD Controller Stream Selection via Application Tags

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid state drives (SSDs) experience reduced read and write performance and shortened lifetimes due to the need for garbage collection operations, which scatter data across the flash memory and increase write amplification, leading to inefficient use of memory blocks.

Innovation Solution

A data storage device with a nonvolatile memory system that divides memory blocks into streams and uses an application tag to direct write data to specific streams, ensuring data with similar lifetimes are written to the same memory block, thereby reducing the number of garbage collection operations and improving performance and endurance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If garbage collection operation is performed to obtain free memory blocks, then storage space is reclaimed, but read and write performance is reduced

Engineering Contradiction:
Improvefree memory blockVSAvoidread and write performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The flash memory is divided into multiple independent streams (e.g., stream 0, stream 1, stream 2, stream 3), each with its own memory blocks. This segmentation allows the storage controller to perform garbage collection on individual streams independently, reducing the impact on overall system performance while maintaining sufficient free blocks for write operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The storage controller proactively monitors the usage state of each stream and performs garbage collection operations in advance before free blocks are depleted. By detecting when a stream's valid page count drops below a threshold, the controller initiates garbage collection to maintain available space, preventing performance degradation before it occurs.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If garbage collection operation is performed to move effective pages, then free memory blocks are obtained, but the number of write operations increases

Engineering Contradiction:
Improvefree memory blockVSAvoidwrite amplification
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

By dividing memory into multiple streams, the patent isolates garbage collection operations to specific streams rather than requiring system-wide operations. This reduces the total number of pages that need to be moved and copied, thereby decreasing write amplification while still providing free blocks for new writes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each stream independently manages its own garbage collection needs based on its valid page count. When a stream requires garbage collection, the storage controller performs operations only on that stream's memory blocks, allowing the system to service itself locally without requiring extensive data movement across the entire flash memory.

Inventive Principle:
Principle #25Self-service

3Productivity

If data are continuously written to flash memory, then storage capacity is utilized, but data become scattered over the entire flash memory

Engineering Contradiction:
Improvestorage utilizationVSAvoiddata distribution
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the flash memory into multiple streams, creating distinct data distribution zones. This segmentation organizes scattered data into manageable groups within each stream, making it easier to track and manage data locations while maintaining high storage utilization through efficient space management in each stream.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The storage controller applies different management strategies to different streams based on their individual usage patterns. By monitoring valid page counts and garbage collection needs locally for each stream rather than uniformly across all memory, the system efficiently handles scattered data while optimizing performance for each region.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10120606B2Data storage devices including storage controller circuits to select data streams based on application tags and computing systems including the same
Publication Date: 2018.11.06 SAMSUNG ELECTRONICS CO LTD
  • US10120606B2 patent drawing
  • US10120606B2 patent drawing
  • US10120606B2 patent drawing

AI summary

A data storage device includes a nonvolatile memory device including a plurality of memory blocks, and a storage controller that manages a plurality of streams in the plurality of memory blocks. The storage controller receives, from a host, a write command that requests a write operation and a data block including write data and an application tag appended to the write data, and selects one of the plurality of streams based on the application tag included in the data block. The storage controller writes the write data included in the data block into the selected one of the plurality of streams.