Probabilistic Data Structure for Flash Memory Quality Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory devices, particularly flash memory, face issues such as read disturb, program disturb, and charge loss, which can lead to reduced data quality and shorter lifespan due to changes in threshold voltage, necessitating proactive corrective actions to maintain data integrity.

Innovation Solution

Implementing a probabilistic data structure, like a counting Bloom filter, to track indicators of data quality, allowing for proactive determination of when corrective actions are needed, reducing the need for additional counters and minimizing memory usage while effectively monitoring data quality indicators.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional methods are used to track data quality indicators in memory, then data quality can be monitored, but memory usage increases significantly

Engineering Contradiction:
Improvedata quality monitoringVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent uses a probabilistic data structure (Bloom filter) as a compact copy or representation of the actual data quality state. Instead of storing complete information about each memory block's quality indicators, the system maintains a probabilistic fingerprint that can detect potential issues with minimal memory overhead, resolving the contradiction between monitoring reliability and memory consumption

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system changes the parameter representation from exact counts to probabilistic estimates. By using hash functions and bit manipulation in the Bloom filter structure, the patent transforms precise tracking requirements into approximate monitoring that achieves sufficient reliability with dramatically reduced memory usage (75% reduction as stated in the effects)

Inventive Principle:
Principle #35Parameter changes

2Duration of action of stationary object

If proactive corrective actions are implemented, then memory lifetime is extended, but additional processing overhead is introduced

Engineering Contradiction:
Improvememory lifetimeVSAvoidprocessing overhead
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by proactively identifying memory blocks that are likely to fail based on the probabilistic data structure indicators. Before actual failures occur, the system triggers corrective actions such as data migration or remapping, thereby extending memory lifetime. The Bloom filter enables this proactive approach by efficiently flagging suspicious blocks without requiring continuous monitoring of all memory operations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system performs self-service by automatically detecting quality degradation and initiating corrective measures without external intervention. The probabilistic data structure serves as a self-monitoring mechanism that triggers remediation protocols when threshold violations occur, reducing the need for complex external management systems while extending memory operational duration

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11586679B2Proactive corrective actions in memory based on a probabilistic data structure
Publication Date: 2023.02.21 MICRON TECHNOLOGY INC
  • US11586679B2 patent drawing
  • US11586679B2 patent drawing
  • US11586679B2 patent drawing

AI summary

The present disclosure includes apparatuses and methods for proactive corrective actions in memory based on a probabilistic data structure. A number of embodiments include a memory, and circuitry configured to input information associated with a subset of data stored in the memory into a probabilistic data structure and proactively determine, at least partially using the probabilistic data structure, whether to take a corrective action on the subset of data stored in the memory.