Flash Memory Controller Auto-Garbage Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional flash memory garbage collection requires significant resources and is inefficient, as it typically waits for host requests, leading to suboptimal utilization of system resources.

Innovation Solution

Implementing auto-background operations (auto-BKOPS) in the firmware of a data storage device's controller to perform garbage collection automatically when the firmware is idle for a predetermined time period, without host intervention, by classifying the flash memory as clean or dirty and moving valid data to spare spaces.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If garbage collection is performed conventionally (waiting for host requests), then the host can control the timing of garbage collection, but the system resources are not efficiently utilized and the operation is delayed

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoiddelay in garbage collection
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The firmware performs garbage collection operations in advance during idle periods before the host needs the storage space. By proactively moving valid data and erasing blocks when the firmware is available without host requests, the system prepares spare blocks ahead of time, eliminating delays when the host initiates write operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The firmware autonomously monitors its own availability and initiates garbage collection operations without external host commands. When the firmware detects it has been available for a predetermined time period without host requests, it automatically performs garbage collection, making the system self-managing and eliminating dependency on host-initiated operations.

Inventive Principle:
Principle #25Self-service

2Productivity

If garbage collection is performed automatically in the background, then system resource utilization is improved, but the firmware must be available without host requests for a predetermined time period

Engineering Contradiction:
Improvesystem resource utilizationVSAvoidfirmware availability monitoring
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The firmware continuously monitors host request patterns and maintains an availability timer that tracks how long it has been since the last host request. This feedback mechanism allows the firmware to determine when it is idle for the predetermined time period and automatically trigger garbage collection operations accordingly, managing complexity through systematic state tracking.

Inventive Principle:
Principle #23Feedback

3Ease of operation

If garbage collection requires host requests, then the operation can be triggered on-demand, but considerable resources are consumed for calculation and the operation is inefficient

Engineering Contradiction:
Improveon-demand garbage collectionVSAvoidcalculation resources
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

Instead of performing garbage collection only when the host requests it, the firmware executes garbage collection periodically during its idle periods. This periodic background operation spreads the computational workload across multiple small intervals when the firmware is unavailable, rather than concentrating all calculation resources at once when the host demands it, thereby improving efficiency and reducing peak resource consumption.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS9141533B2Data storage device and flash memory control method for performing garbage collection
Publication Date: 2015.09.22 SILICON MOTION INC
  • US9141533B2 patent drawing
  • US9141533B2 patent drawing
  • US9141533B2 patent drawing

AI summary

A data storage device and a Flash memory control method. A data storage device comprises a Flash memory and a controller. The controller controls the Flash memory in accordance with firmware. When the firmware is available for at least a predetermined time period without being requested by a host, the controller, driven according to the firmware, performs a garbage-collection operation on the Flash memory without a request from the host.