Flash Memory Controller Repeated Pattern Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional flash memory devices face inefficiencies due to inefficient garbage collection and memory block swaps, often resulting from all pages being considered valid even after formatting, leading to performance limitations.

Innovation Solution

A flash memory controller method that detects repeated patterns in data units, records them in a specific table, and adjusts valid page counts accordingly, allowing for efficient garbage collection and memory block management by treating pages with repeated patterns as invalid.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If conventional flash memory treats all pages as valid pages, then the memory can be formatted and written, but garbage collection and memory block swap become inefficient

Engineering Contradiction:
Improveformatting capabilityVSAvoidgarbage collection efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The flash memory controller performs preliminary detection of repeated patterns in data units before writing to the flash memory. When a repeated pattern is detected, the controller pre-records this information in a specific table and pre-adjusts the valid page count, so that subsequent garbage collection operations can efficiently identify and skip these pages without treating them as valid pages requiring collection.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If all pages are considered valid pages after formatting, then the memory is ready for use, but memory block swap becomes inefficient

Engineering Contradiction:
Improvememory readinessVSAvoidmemory block swap time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

During the formatting process, the controller performs preliminary detection of repeated patterns and records them in advance. This preliminary action ensures that when memory block swap is needed, the controller can immediately identify which pages are actually valid and which contain repeated patterns, thereby reducing the time required for block swap operations.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If repeated pattern detection and recording is implemented, then garbage collection efficiency improves, but device complexity increases

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidcontroller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The flash memory controller is segmented into distinct functional modules: a detection module that identifies repeated patterns in data units, a recording module that stores pattern information in a specific table, and a garbage collection module that uses this information to efficiently identify valid pages. This segmentation allows each module to perform its function independently, reducing overall controller complexity while improving garbage collection efficiency.

Inventive Principle:
Principle #1Segmentation

4Productivity

If valid page count is adjusted based on repeated patterns, then memory management efficiency improves, but measurement precision requirements increase

Engineering Contradiction:
Improvememory management efficiencyVSAvoidrepeated pattern detection accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The controller changes the parameter of valid page count dynamically based on the detection of repeated patterns. When a repeated pattern is detected in a data unit, the controller adjusts the valid page count for the corresponding block by the number of pages containing such patterns. This parameter change approach allows efficient memory management while using simple pattern matching logic rather than complex precision measurement mechanisms.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10838621B2Method and flash memory controller capable of avoiding inefficient memory block swap or inefficient garbage collection
Publication Date: 2020.11.17 SILICON MOTION INC
  • US10838621B2 patent drawing
  • US10838621B2 patent drawing
  • US10838621B2 patent drawing

AI summary

A method of a flash memory controller coupled between a flash memory and an electronic device is provided. The flash memory has a plurality of blocks each having a plurality of pages. The method includes: detecting whether a data unit is formed by a repeated pattern, the data unit being transmitted from the electronic device and to be written into the flash memory or the data unit being read from the flash memory; and making a record of the repeated pattern at a field of the specific table if determining that the data unit is formed by the repeated pattern.