Flash Memory Controller Garbage Collection Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing booting process in memory systems is prolonged due to the inclusion of garbage collection recovery operations, which can exceed limited booting time, leading to repeated reboots and potential run-out of spare blocks if garbage collection recovery is not efficiently managed.

Innovation Solution

A controller is designed to perform garbage collection recovery as a background operation in a runtime state after the booting process, using first and second operation logs to schedule and update L2P mapping information, thereby reducing booting time and preventing run-out of spare blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If garbage collection recovery operation is performed during booting process, then data consistency is ensured, but booting time is prolonged beyond limited booting time

Engineering Contradiction:
Improvedata consistencyVSAvoidbooting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs garbage collection recovery operation as a background operation during runtime state before booting is officially completed. The scheduling unit schedules the GC recovery operation to execute in advance during the runtime state, using operation logs to identify and recover valid pages. This preliminary action ensures data consistency is restored before the booting process finishes, preventing booting time extension while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If garbage collection recovery operation is delayed to runtime state, then booting time is reduced, but spare blocks may run out leading to system failure

Engineering Contradiction:
Improvebooting timeVSAvoidspare block availability
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent employs operation logs (first operation log and second operation log) that record the locations of valid pages and L2P mapping information updates. The scheduling unit continuously monitors these logs during runtime state to identify pages requiring garbage collection recovery. This feedback mechanism ensures that GC recovery operations are triggered based on actual system state, preventing spare block exhaustion while maintaining reduced booting time.

Inventive Principle:
Principle #23Feedback

3Productivity

If garbage collection recovery is performed using operation logs, then recovery efficiency is improved, but device complexity increases due to additional logging mechanisms

Engineering Contradiction:
Improverecovery efficiencyVSAvoidlogging mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent utilizes existing operation logs that are naturally generated during normal flash memory operations to track valid page locations and L2P mapping updates. The scheduling unit simply reads and processes these pre-existing logs during runtime state to identify pages needing garbage collection recovery. This self-service approach leverages already-collected operational data, improving recovery efficiency without requiring complex additional logging mechanisms or increased device complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10838858B2Controller and operating method of the same
Publication Date: 2020.11.17 SK HYNIX INC
  • US10838858B2 patent drawing
  • US10838858B2 patent drawing
  • US10838858B2 patent drawing

AI summary

A controller comprising: a scheduling unit suitable for scheduling a garbage collection recovery operation to be performed in a runtime state after end of abnormal situation using first and second operation logs; a scanning unit suitable for scanning a destination block to detect one or more valid pages during the garbage collection recovery operation; and a map updating unit suitable for updating L2P mapping information of the detected valid pages, wherein the first operation log indicates a location of a valid page, into which source block data is most recently copied, in a destination block, and wherein the second operation log indicates a location of a valid page, L2P mapping information of which is most recently updated, in the destination block.