Flash Memory Partial Garbage Collection via Virtual Block Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Efficiently performing garbage collection in non-volatile memory data storage devices without degrading system resource efficiency as storage capacity increases, due to complex physical block structures.

Innovation Solution

A data storage device with a flash memory and microcontroller that selects source and destination blocks, divides blocks into virtual blocks, and uses a check map to efficiently copy valid data from source blocks to destination blocks, reducing repeated access to mapping tables and improving garbage collection efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a full garbage collection operation is performed on entire source blocks, then all valid data can be recovered and blocks can be reused, but system resources are heavily consumed and performance degrades

Engineering Contradiction:
Improvedata recovery completenessVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides a source block into multiple virtual blocks based on valid data distribution. Instead of treating the entire source block as one unit, the microcontroller segments it into smaller virtual blocks (e.g., first virtual block with valid data in first through fourth pages, second virtual block with valid data in fifth through eighth pages). This segmentation allows selective garbage collection on only the necessary portions, reducing overall operation time and resource consumption while maintaining data recovery completeness.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If mapping tables are accessed repeatedly during garbage collection to verify data validity, then accurate data identification is achieved, but access time increases and efficiency decreases

Engineering Contradiction:
Improvedata validity identification accuracyVSAvoidgarbage collection time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements a preliminary action by creating a check map before the actual garbage collection operation. The microcontroller traverses the logical-to-physical mapping table once to populate the check map with validity information for each page in the source block. During subsequent garbage collection, the system references this pre-computed check map instead of repeatedly accessing the mapping table, significantly reducing access time while maintaining accurate data validity identification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the mapping table information in the form of a check map. This check map is a simplified data structure that contains only the essential validity information needed for garbage collection. By copying and storing this information in advance, the system eliminates the need for repeated mapping table accesses during the garbage collection process, thereby reducing time loss while preserving identification accuracy.

Inventive Principle:
Principle #26Copying

3Ease of operation

If the entire source block is processed as one unit during garbage collection, then simplicity is maintained, but efficiency decreases when only partial data needs migration

Engineering Contradiction:
Improvegarbage collection simplicityVSAvoidgarbage collection efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the source block into multiple virtual blocks based on the distribution of valid data. Each virtual block contains a contiguous range of pages with valid data. This segmentation allows the garbage collection process to operate on smaller, more manageable units rather than processing the entire source block as one large unit, thereby improving efficiency while maintaining operational simplicity through automated segmentation logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing garbage collection only on the portions of the source block that contain valid data needing migration. Instead of unnecessarily processing the entire source block, the system identifies and processes only the relevant virtual blocks. This partial approach improves efficiency by avoiding redundant operations on pages that don't require migration, while the automated virtual block creation maintains ease of operation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10657047B2Data storage device and method of performing partial garbage collection
Publication Date: 2020.05.19 SILICON MOTION INC
  • US10657047B2 patent drawing
  • US10657047B2 patent drawing
  • US10657047B2 patent drawing

AI summary

A data storage device is provided. The data storage device includes: a flash memory and a microcontroller. The flash memory includes a plurality of physical blocks. The microcontroller selects one source block and one destination block from the plurality of physical blocks, and performs a garbage collection operation according to a check map corresponding to the selected source block to copy data stored in one or more valid physical addresses of the source block to the selected destination block.