Memory Controller Dynamic Garbage Collection Threshold

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory controllers autonomously determine when garbage collection is necessary, leading to frequent and unnecessary operations, which can delay operations and cause inefficiencies due to fixed conditions for performing garbage collection.

Innovation Solution

A memory controller that determines the necessity of garbage collection based on the number of free blocks in relation to the difference between total and bad blocks, allowing for dynamic threshold adjustments based on the memory device's state, thereby preventing infinite garbage collection operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If the memory controller autonomously determines garbage collection necessity based on fixed conditions, then garbage collection operations can be performed without host intervention, but this leads to frequent and unnecessary operations that delay system operations

Engineering Contradiction:
Improveautonomous garbage collection determinationVSAvoidsystem operation efficiency
Core Design Contradiction:
Extent of automationVSProductivity

Solution Approach 1:

The patent applies dynamics by making the garbage collection threshold dynamic rather than fixed. The threshold is adjusted based on the ratio of bad blocks to total blocks, allowing the system to adapt garbage collection behavior to the actual wear state of the memory device. This resolves the contradiction by enabling autonomous operation while preventing unnecessary GC operations through state-dependent threshold adjustment.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter used for garbage collection decision-making from a fixed threshold to a dynamic threshold based on bad block ratio. By calculating the threshold as (total blocks - bad blocks) / total blocks and comparing free block ratio against this dynamic value, the system optimizes garbage collection timing based on actual memory device conditions, improving overall system efficiency.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If garbage collection is performed frequently based on fixed thresholds, then memory management can be maintained, but unnecessary operations occur that waste time and resources

Engineering Contradiction:
Improvememory management reliabilityVSAvoidgarbage collection operation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent changes the garbage collection threshold parameter from a fixed value to a dynamic value based on bad block ratio. This ensures garbage collection is performed reliably when needed (maintaining memory management reliability) while avoiding unnecessary operations that would waste time, as the threshold adapts to the actual memory device state.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements feedback by continuously monitoring the bad block ratio and adjusting the garbage collection threshold accordingly. The system receives bad block information from the memory device, calculates the appropriate threshold, and uses this feedback to make informed garbage collection decisions, preventing both unnecessary operations and ensuring reliable memory management.

Inventive Principle:
Principle #23Feedback

3Reliability

If the garbage collection threshold is set low to ensure frequent memory management, then memory reliability is maintained, but this causes unnecessary operations when many blocks are already bad

Engineering Contradiction:
Improvememory management reliabilityVSAvoidoperation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the garbage collection threshold adaptive rather than static. When bad blocks increase, the threshold automatically increases, preventing unnecessary garbage collection operations. This resolves the contradiction by maintaining reliability through continuous monitoring while improving productivity by avoiding futile operations when many blocks are already bad.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the threshold parameter dynamically based on the bad block ratio. Instead of using a fixed low threshold that causes unnecessary operations, the system calculates the threshold as (total blocks - bad blocks) / total blocks, ensuring reliable memory management while adapting to the actual device state to maintain high operation efficiency.

Inventive Principle:
Principle #35Parameter changes

4Extent of automation

If autonomous garbage collection determination is implemented without considering bad block ratio, then the system can operate independently, but this leads to inefficient operations due to fixed conditions

Engineering Contradiction:
Improveautonomous garbage collection determinationVSAvoidgarbage collection control logic
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent enhances autonomous garbage collection determination by incorporating bad block ratio as a dynamic parameter. The control logic receives bad block information, calculates the threshold based on this parameter, and makes GC decisions accordingly. This maintains high automation while managing complexity through a straightforward calculation and comparison process.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11194712B2Memory controller and operating method for performing garbage collection operation in memory devices
Publication Date: 2021.12.07 SK HYNIX INC
  • US11194712B2 patent drawing
  • US11194712B2 patent drawing
  • US11194712B2 patent drawing

AI summary

A memory controller for controlling a memory device including memory blocks is provided. The memory controller includes: a garbage collection state determiner in communication with a host device and configured to receive a garbage collection state request from the host device and determine whether the memory device is in a state that garbage collection is necessary and a block information storage unit in communication with the garbage collection state determiner and configured to receive, from the memory device, bad block generation information including a number of bad blocks included in the memory device that are unable to store data, and store block information including a total number of the memory blocks, the number of bad blocks, and a number of free blocks included in the memory device that are assigned for garbage collection.