SSD Trim Management via Foreground-Background Splitting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid-state drives (SSDs) face inefficiencies in managing trim operations, leading to increased wear on memory cells and potential system timeouts due to the inability to complete trim operations within host-defined time limits, especially with large sequential trim operations.

Innovation Solution

Implementing a method where a controller of an SSD performs trim operations on a first set of trim blocks within a predetermined time and defers the remaining blocks to background operations, updating a pending trim table to indicate blocks that require further trimming, thereby reducing wear and preventing timeouts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If the controller performs trim operations on all blocks within a single foreground operation, then the trim operation completes quickly and returns to the host, but the operation may exceed host timeout limits and cause system timeouts

Engineering Contradiction:
Improvetrim operation completion timeVSAvoidsystem timeout occurrence
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent divides trim operations into foreground and background portions. The foreground trim operation processes a first set of trim blocks that can be completed within the host timeout limit, then returns control to the host. The remaining second set of trim blocks is processed asynchronously in the background, eliminating system timeouts while maintaining trim functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs a preliminary foreground trim operation on a subset of blocks that can be completed within the timeout constraint, returning success to the host before the timeout occurs. This preliminary action ensures the host receives timely confirmation while the remaining trim work continues in the background without causing system timeouts.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the controller defers trim operations to background processes, then system timeouts are prevented, but the trim operation may not complete timely and affects productivity

Engineering Contradiction:
Improvesystem timeout preventionVSAvoidtrim operation throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent maintains continuous trim operations by processing the first set of blocks in the foreground and seamlessly transitioning to background processing of the second set. This continuous action ensures trim operations are never fully abandoned but rather extended beyond the immediate foreground timeout constraint, maintaining both reliability and productivity.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The controller dynamically adjusts the boundary between foreground and background trim operations based on the host timeout limit. By determining which trim blocks can be completed within the timeout and which must be deferred, the system adaptively manages trim productivity while preventing system timeouts, optimizing both reliability and throughput.

Inventive Principle:
Principle #15Dynamics

3Reliability

If the controller performs trim operations on all blocks, then complete data block erasure is achieved, but memory cell wear increases

Engineering Contradiction:
Improvedata block erasure completenessVSAvoidmemory cell wear
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent performs a partial trim operation in the foreground on a first set of blocks that can be completed within the timeout limit, providing immediate benefit while reducing memory wear compared to trimming all blocks. The remaining second set of blocks is trimmed in the background, ensuring eventual completeness while spreading the wear impact over time rather than concentrating it in a single high-stress operation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9927999B1Trim management in solid state drives
Publication Date: 2018.03.27 SANDISK TECHNOLOGIES LLC
  • US9927999B1 patent drawing
  • US9927999B1 patent drawing
  • US9927999B1 patent drawing

AI summary

A storage device may include a data storage portion, including a plurality of blocks of data, and a controller. The controller may be configured to receive a command that includes an inherent trim request for the plurality of blocks of data. The controller may be configured to perform a trim operation on a first set of trim blocks from the plurality of blocks of data, which may include fewer than all blocks of the plurality of blocks of data and may include trim blocks on which the controller can complete the trim operation within a predetermined time. The controller may be configured to update a pending trim table to include an indication of a second set of trim blocks on which trim is to be performed, which may include blocks of data on which the controller cannot complete the trim operation within the predetermined time.