DRAM-Less Garbage Collection Using Segmented Volatile Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face challenges in efficiently performing garbage collection without Dynamic Random Access Memory (DRAM), leading to potential data modification issues during the process due to large memory block sizes exceeding volatile memory capacity.

Innovation Solution

The system partitions source data into multiple portions and temporarily stores them in volatile memory to perform garbage collection, pausing data change operations while allowing passive operations like read and error handling to continue, ensuring data integrity during the process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If memory block size is increased to improve storage capacity, then storage density is improved, but garbage collection becomes problematic when block size exceeds volatile memory capacity

Engineering Contradiction:
Improvestorage capacityVSAvoidgarbage collection efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The source data is divided into multiple portions (first portion and second portion) that are separately loaded into volatile memory. This segmentation allows the system to process large memory blocks even when they exceed the capacity of volatile memory, enabling garbage collection to proceed efficiently without requiring the entire block to fit in volatile memory simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system loads valid source data portions into volatile memory before performing the garbage collection operation. This preliminary action prepares the data in advance, allowing the garbage collection to proceed smoothly by having the source data readily available in volatile memory for copying to the destination block.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If garbage collection is performed on large memory blocks without DRAM, then storage system cost is reduced, but data integrity may be compromised during the collection process

Engineering Contradiction:
Improvestorage system costVSAvoiddata integrity
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

By dividing the source data into multiple portions and processing them separately, the system maintains data integrity even when the total block size exceeds volatile memory capacity. Each portion is loaded, processed, and copied completely before moving to the next portion, ensuring that no data is lost or corrupted during the garbage collection operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Volatile memory serves as an intermediary between the source and destination memory blocks. The source data portions are loaded into volatile memory, which acts as a temporary holding area, and then copied to the destination block. This intermediary approach ensures data integrity by providing a controlled transfer mechanism that prevents data corruption.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If volatile memory is used to temporarily store source data portions, then processing bandwidth is improved, but volatile memory capacity must be sufficient to hold at least two portions of source data

Engineering Contradiction:
Improveprocessing bandwidthVSAvoidvolatile memory capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system loads only the necessary portions of source data (specifically, at least two portions) into volatile memory at any given time, rather than loading the entire source block. This partial action approach optimizes the use of volatile memory capacity while still enabling efficient garbage collection processing, as the system only needs enough volatile memory to hold the portions being processed simultaneously.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12498873B2System and methods for DRAM-less garbage collection with improved performance
Publication Date: 2025.12.16 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US12498873B2 patent drawing
  • US12498873B2 patent drawing
  • US12498873B2 patent drawing

AI summary

A system and related method, including system memory with a source memory block and a destination memory block each of a memory block size, a first volatile memory and a second volatile memory, each of a volatile memory size. The system includes processing circuitry to receive a garbage collection request associated with the destination memory block. The processing circuitry then determines whether the memory block size is greater than the volatile memory size and pauses data change operations but allows for passive operations to continue. While data change operations are paused the processing circuitry loads a first portion of data of the source memory block to the first volatile memory and a second portion of the data to the second volatile memory. The processing circuitry writes each portion of data from the volatile memory to the destination memory block to complete garbage collection and unpauses the data change operations.