SSD Garbage Collection Victim Block Selection Using Invalidation Factor

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing garbage collection mechanisms in SSDs are not optimal for selecting source or victim blocks, particularly when dealing with self-invalidating data patterns, as they do not adequately consider the host data pattern, leading to inefficient data management and reduced performance.

Innovation Solution

A method and apparatus that calculate an invalidation factor for each block based on the percentage of invalid pages and the recentness of invalidation, categorizing blocks as hot, warm, or cold, and prioritizing garbage collection operations to select blocks in the order from cold to hot, thereby improving the selection process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If garbage collection selects victim blocks based on valid page count only, then the selection process is simple and fast, but it performs poorly for self-invalidating data patterns and frequently invalidated blocks

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidblock selection mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system pre-calculates and stores invalidation factors for each block before garbage collection operations. This preliminary action includes tracking the number of invalid pages and the recency of invalidation events, so that when GC is needed, the controller can quickly identify suitable victim blocks without complex real-time analysis

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an invalidation factor as an intermediary metric that combines multiple characteristics (invalid page count, recency of invalidation) into a single selection criterion. This intermediary simplifies the block selection process while improving effectiveness for self-invalidating patterns

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If garbage collection frequently targets hot blocks (frequently invalidated blocks), then it quickly clears invalid data, but it increases write amplification and reduces SSD endurance

Engineering Contradiction:
Improvedata management accuracyVSAvoidwrite amplification
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies different selection criteria to different blocks based on their local characteristics. Cold blocks (frequently invalidated) are prioritized as victim blocks, while hot blocks (recently invalidated) are protected from GC operations. This localized quality approach ensures each block is treated according to its specific invalidation pattern

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the selection parameter from simple valid page count to a composite invalidation factor that includes recency information. This parameter change allows the system to distinguish between blocks that are frequently invalidated versus recently invalidated, enabling smarter GC decisions that reduce unnecessary writes

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If the system tracks detailed invalidation timing for each block, then it can optimize victim block selection, but it increases processing overhead and memory requirements

Engineering Contradiction:
Improveinvalidation timing accuracyVSAvoidtracking mechanism complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts only the essential timing information (recency of invalidation) needed for optimization, rather than tracking complete invalidation histories. This extraction approach provides sufficient precision for distinguishing hot versus cold blocks while minimizing processing overhead and memory usage

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10838859B2Recency based victim block selection for garbage collection in a solid state device (SSD)
Publication Date: 2020.11.17 SANDISK TECHNOLOGIES LLC
  • US10838859B2 patent drawing
  • US10838859B2 patent drawing
  • US10838859B2 patent drawing

AI summary

Methods and apparatus for controlling garbage collection in solid state devices (SSDs) are provided. Once such apparatus includes a non-volatile memory (NVM), and a controller communicatively coupled to a host device and the NVM, and configured to calculate an invalidation factor for each of a plurality of blocks in the NVM, wherein the invalidation factor is determined based on a percentage of invalid pages in a respective block of the plurality of blocks and a most recent time of invalidation of one or more pages in the respective block; classify each block of the plurality of blocks into one of three categories based on the calculated invalidation factor; and perform a garbage collection operation for the NVM, wherein the garbage collection operation includes selecting a source block for the garbage collection operation based on the classifications of the plurality of blocks.