Storage Controller Garbage Collection via Effective Weight Values

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In rewritable non-volatile memory modules, garbage collection operations are less efficient when bad physical blocks are present, as they release less available space compared to blocks without such issues, necessitating a method to select appropriate block stripes for garbage collection while considering bad physical blocks.

Innovation Solution

A memory management method and storage controller that scan for bad physical blocks, calculate effective weight values based on data accessing time parameters and valid data counts, and select a target block stripe for garbage collection to optimize space release.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If garbage collection operation is performed on block stripe with bad physical block, then garbage collection can be executed, but the released available space is less compared to block stripe without bad physical block

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidreleased available space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent introduces an effective weight value parameter that combines valid data count, data accessing time parameters, and bad physical block information to quantify the suitability of each block stripe for garbage collection. By calculating and comparing effective weight values, the system dynamically selects the optimal block stripe, thereby resolving the contradiction between executing garbage collection and maximizing released space.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If block stripe without bad physical block is selected for garbage collection, then more available space is released, but the system cannot handle the case where all block stripes contain bad physical blocks

Engineering Contradiction:
Improvereleased available spaceVSAvoidhandling capability for various block stripe conditions
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The effective weight value parameter dynamically adapts to different block stripe conditions by incorporating bad physical block information. When all block stripes contain bad physical blocks, the system can still compare their effective weight values and select the relatively optimal one, thus maintaining adaptability while still aiming to maximize space release.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If simple valid data count is used for block stripe selection, then selection process is simple, but it does not consider data accessing time and bad physical block location

Engineering Contradiction:
Improveselection process complexityVSAvoidgarbage collection efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent extends the selection criterion from simple valid data count to a composite effective weight value that includes valid data count, data accessing time parameters (read time, write time, erase time), and bad physical block information. This parameter expansion improves garbage collection efficiency by considering multiple factors, while the systematic calculation method keeps the process manageable.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10817416B2Memory management method and storage controller
Publication Date: 2020.10.27 SHENZHEN EPOSTAR ELECTRONICS LTD
  • US10817416B2 patent drawing
  • US10817416B2 patent drawing
  • US10817416B2 patent drawing

AI summary

A Memory management method for a storage device having a rewritable non-volatile memory module is provided. The rewritable non-volatile memory module has a plurality of physical blocks divided into a plurality of block stripes. The method includes: scanning the physical blocks to identify one or more bad physical blocks among the physical blocks; calculating a plurality of effective weight values corresponding to the block stripes according to a plurality of data accessing time parameters of the rewritable non-volatile memory module, a plurality of valid data counts, and the identified one or more bad physical blocks; and selecting a target block stripe from the block stripes according to the effective weight values to perform a garbage collection operation.