Flash Memory Initialization via Sequential Random Read Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional flash memory initialization schemes are inefficient due to the time-consuming process of checking storage units, especially when dealing with consecutive damaged units, which limits the performance and capacity of flash memory devices.

Innovation Solution

A method that involves writing data into storage units and performing sequential and random read operations to identify damaged units, exiting the sequential read operation when a threshold of consecutive damaged units is reached, and switching to random read operations to efficiently check remaining units, thereby optimizing the initialization process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If sequential read operation is performed to check all storage units, then measurement precision is improved, but loss of time increases

Engineering Contradiction:
Improvechecking accuracyVSAvoidinitialization time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the storage units into different groups based on their sequential order. When consecutive damaged units are detected, the system segments the checking process by switching from sequential reading of remaining units to random reading of specific unchecked units. This segmentation allows the system to maintain checking accuracy while reducing time loss by avoiding unnecessary sequential reads of potentially damaged units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by not requiring all storage units to be checked sequentially. Instead, when a threshold of consecutive damaged units is reached, the system performs random reads on specific unchecked units rather than continuing sequential reads. This partial checking approach maintains sufficient measurement precision while significantly reducing the time loss associated with checking all units sequentially.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If conventional flash memory initialization scheme is used to read all storage units, then reliability is improved, but productivity deteriorates

Engineering Contradiction:
Improveinitialization reliabilityVSAvoidinitialization speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces dynamic adaptability into the initialization process by switching between sequential and random read operations based on the detected pattern of damaged units. The system dynamically adjusts the checking strategy: using sequential reads when damaged units are scattered, and random reads when consecutive damaged units are detected. This dynamic approach maintains initialization reliability while improving productivity by avoiding unnecessary sequential reads.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent uses random read operations as a substitute for sequential read operations in specific scenarios. When consecutive damaged units are detected, the system copies the checking function from sequential mode to random mode, selecting specific unchecked units for verification. This copying approach maintains reliability by still verifying storage units while improving productivity by skipping through potentially damaged areas.

Inventive Principle:
Principle #26Copying

3Measurement precision

If sequential read operation continues through consecutive damaged units, then measurement precision is maintained, but loss of time increases significantly

Engineering Contradiction:
Improvedamage detection accuracyVSAvoidtime for checking damaged units
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary anti-action by detecting consecutive damaged units and preemptively switching from sequential to random read mode before time is wasted on unnecessary sequential reads. The threshold mechanism serves as a preliminary indicator that triggers the mode switch, preventing the harmful effect of prolonged sequential reading through damaged areas while maintaining the ability to detect actual damage through random sampling.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent inverts the traditional approach by switching from sequential reading to random reading when consecutive damaged units are detected, rather than continuing with sequential reading. This inversion recognizes that when damage is concentrated in consecutive units, random sampling of unchecked units is more efficient while still maintaining detection accuracy, thus reducing time loss significantly.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS10825542B1Method for efficiently checking storage units of flash memory of flash memory device and corresponding electronic device executing the method
Publication Date: 2020.11.03 SILICON MOTION INC
  • US10825542B1 patent drawing
  • US10825542B1 patent drawing
  • US10825542B1 patent drawing

AI summary

A method for checking storage units of flash memory of flash memory device includes: writing data into storage units; and performing data read operation to read data from storage units to compare read data with written data to check whether data is correctly written into storage units, and data read operation includes: performing sequential read operation to sequentially select first storage unit and to read data from first storage unit according to serial order numbers; determining whether first storage unit is damaged; accumulating a number of damaged storage units if first storage unit is damaged; determining whether the number of damaged storage units is larger than first threshold number; and exiting sequential read operation and performing random read operation to read data of specific storage unit if the number of damaged storage units is larger than first threshold number.