Memory Controller Garbage Collection Policy for Flash Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Garbage collection in flash memory devices leads to accumulation of invalid pages, reducing usable storage space and slowing down operations, as existing techniques do not effectively manage the reclaiming of storage space occupied by invalid data.

Innovation Solution

A memory controller with a garbage collection management unit that executes a policy selecting memory blocks for garbage collection based on different criteria for user data and metadata blocks, considering garbage collection costs and valid data characteristics, such as the number of valid pages and data patterns, to determine if data can be erased without copying, optimizing the process for each type of data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If garbage collection is performed on all memory blocks with invalid pages, then storage space is reclaimed, but operation speed decreases due to unnecessary copying of valid data

Engineering Contradiction:
Improveusable storage spaceVSAvoidoperation speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent applies different garbage collection criteria to different types of memory blocks based on their data characteristics. User data blocks and metadata blocks are evaluated using different standards, allowing the system to optimize GC operations for each block type rather than applying a uniform approach to all blocks.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the evaluation parameters for garbage collection based on the type of data stored in memory blocks. By considering data patterns and validity characteristics specific to user data versus metadata, the system adjusts which blocks are selected for GC, avoiding unnecessary operations on blocks where valid data can be efficiently handled in-place.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If garbage collection selects blocks with most invalid pages, then storage space reclamation is maximized, but time consumption increases due to copying large amounts of valid data

Engineering Contradiction:
Improvereclaimed storage spaceVSAvoidgarbage collection time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent evaluates memory blocks using type-specific criteria: user data blocks are assessed based on their invalid page ratio, while metadata blocks are assessed based on whether their valid data can be erased without copying. This localized evaluation approach identifies GC candidates more efficiently.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs preliminary assessment of memory blocks to determine their GC suitability before initiating the actual garbage collection process. By pre-evaluating blocks based on their data characteristics and GC costs, the system avoids selecting blocks that would require excessive copying time.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If uniform garbage collection criteria are applied to all memory blocks, then implementation is simple, but efficiency decreases due to inability to account for different data characteristics

Engineering Contradiction:
Improvegarbage collection policy complexityVSAvoidgarbage collection efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the memory space into different block groups (user data blocks and metadata blocks) and applies tailored garbage collection criteria to each segment. This segmentation allows the system to handle different data types with appropriate strategies, improving overall GC efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic garbage collection criteria that adapt to the specific characteristics of each memory block type. The GC policy is not static but adjusts its evaluation parameters based on whether the block contains user data or metadata, optimizing performance for each data type.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11645199B2Storage device and garbage collection method thereof
Publication Date: 2023.05.09 SAMSUNG ELECTRONICS CO LTD
  • US11645199B2 patent drawing
  • US11645199B2 patent drawing
  • US11645199B2 patent drawing

AI summary

A memory controller is for controlling operations of a nonvolatile memory including a first memory block group for storing a first type of data and a second memory block group for storing a second type of data. The memory controller includes a garbage collection management unit configured to execute a garbage collection policy in which a first garbage collection criteria is applied to the first memory block group, and a second garbage collection criteria is applied to the second memory block group, where first garbage collection criteria is different than the second garbage collection criteria.