Memory Controller Bitmap Merging for Lower-Latency Garbage Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory technologies face inefficiencies in garbage collection processes due to repeated reading of page table entry tables, leading to increased response latency and reduced overall efficiency.

Innovation Solution

A memory system and controller that utilize bitmaps to merge data blocks, obtaining a merge bitmap through OR operations, and reading the page table entry table based on this merge bitmap to reduce repeated reads, thereby improving garbage collection efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If garbage collection is performed on multiple source data blocks separately, then each data block can be processed individually, but the page table entry table is repeatedly read causing increased response latency

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidresponse latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges multiple source data blocks into a single target data block during garbage collection. By combining multiple source blocks (first source data block to Nth source data block) into one target block, the system performs a single read of the page table entry table rather than repeated reads for each source block, thereby reducing response latency while maintaining garbage collection efficiency

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs preliminary actions by obtaining bitmaps for all source data blocks before reading the page table entry table. The bitmap merging operation is performed in advance to identify all valid data locations across multiple source blocks, allowing the system to read the page table entry table only once with complete information about all valid data that needs to be migrated

Inventive Principle:
Principle #10Preliminary action

2Loss of information

If the page table entry table is read for each source data block, then complete data migration information is obtained, but repeated reading increases processing time

Engineering Contradiction:
Improvedata migration information completenessVSAvoidprocessing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent merges the bitmap information from multiple source data blocks into a single merged bitmap before reading the page table entry table. This combined bitmap contains identifiers for all valid data across all source blocks, enabling the system to obtain complete data migration information from a single page table read operation rather than multiple separate reads

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces a bitmap as an intermediary data structure that consolidates information about valid data locations across multiple source data blocks. This bitmap serves as a mediator between the multiple source blocks and the page table entry table, allowing the system to gather complete migration information without repeatedly accessing the page table

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20250284636A1Memory systems, memory controllers, garbage collection methods, and storage mediums
Publication Date: 2025.09.11 YANGTZE MEMORY TECH CO LTD
  • US20250284636A1 patent drawing
  • US20250284636A1 patent drawing
  • US20250284636A1 patent drawing

AI summary

Examples of the present disclosure provide a memory system, a memory controller, a garbage collection method, and a storage medium. An example method includes: obtaining a first bitmap corresponding to a first source data block to a Nth bitmap corresponding to a Nth source data block; obtaining a merge bitmap based on the first bitmap to the Nth bitmap; reading a page table entry table according to the merge bitmap; writing valid data corresponding to the first source data block to the Nth source data block in the page table entry table into a target data block.