SSD Controller Valid Data Rate Threshold for Garbage Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional solid state drives experience increased system latency and reduced performance due to inefficient garbage collection processes, leading to uneven Program/Erase counts and reduced use life, as they sequentially check and manage valid data rates across numerous blocks.

Innovation Solution

Implementing a control method that sets an upper limit for the valid data rate of each block during programming and garbage collection, allowing for predictable system latency and balanced Program/Erase counts by determining selected blocks based on predetermined capacities and over-provisioning rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the controller sequentially checks all blocks to determine valid data rates for garbage collection, then the garbage collection process can identify blocks needing cleanup, but the system latency increases and performance decreases

Engineering Contradiction:
Improvegarbage collection effectivenessVSAvoidsystem latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The controller pre-calculates and stores the valid data rate for each block before garbage collection is needed. When garbage collection is triggered, the controller directly retrieves these pre-calculated values instead of sequentially checking all blocks, thereby reducing system latency while maintaining garbage collection effectiveness

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The controller determines and records the number of valid pages in each block in advance. During garbage collection operations, this pre-determined information allows the controller to quickly identify candidate blocks without performing time-consuming sequential checks, thus improving performance while ensuring reliable garbage collection

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the controller performs garbage collection on all blocks with low valid data rates, then more space is freed for future writes, but the Program/Erase counts become uneven and use life is reduced

Engineering Contradiction:
Improvewrite capacityVSAvoiduse life
Core Design Contradiction:
ProductivityVSDuration of action of stationary object

Solution Approach 1:

The controller introduces a threshold parameter for the valid data rate that determines whether a block is selected for garbage collection. By adjusting this threshold, the controller can control which blocks undergo erasure, ensuring that blocks with higher Program/Erase counts are protected from further erasure operations, thereby maintaining use life while still freeing sufficient write capacity

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The controller monitors the Program/Erase counts of blocks and uses this information to adjust garbage collection decisions. Blocks that have already undergone multiple erasure cycles are excluded from further garbage collection, preventing excessive wear on specific blocks and extending the overall use life of the storage device

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If the controller uses all available blocks for data storage, then the storage capacity is maximized, but the garbage collection process becomes more complex and time-consuming

Engineering Contradiction:
Improvestorage capacityVSAvoidgarbage collection complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The controller divides the non-volatile memory into multiple channels, with each channel independently managed for garbage collection purposes. This segmentation allows the controller to process fewer blocks simultaneously in each channel, reducing the complexity and time required for garbage collection while maintaining overall storage capacity through the combined capacity of all channels

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11579795B2Control method for solid state drive
Publication Date: 2023.02.14 SOLID STATE STORAGE TECH CORP
  • US11579795B2 patent drawing
  • US11579795B2 patent drawing
  • US11579795B2 patent drawing

AI summary

A control method for a solid state drive is provided. The solid state drive includes a non-volatile memory with plural blocks. In a step (a1), a block is opened. In a step (a2), a program action is performed to store a valid write data into the open block. Then, a step (a3) is performed to judge whether an amount of the valid write data in the open block reaches a predetermined capacity. In a step (a4), if the amount of the valid write data in the open block does not reach the predetermined capacity, the step (a2) is performed again. In a step (a5), if the amount of the valid write data in the open block reaches the predetermined capacity, the open block is closed and the step (a1) is performed again. The predetermined capacity is lower than a capacity of one block.