Grown Bad Block Management in Memory Sub-systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory sub-systems face challenges in managing grown bad blocks (GBBs) due to wear, which can lead to unreliable data storage and retrieval, necessitating effective replacement strategies to extend system lifetime and minimize performance impact.

Innovation Solution

A GBB management component is introduced to detect and replace GBBs by maintaining a replacement block pool of extra and free valid blocks, allowing for seamless data migration and operation continuation, even when GBBs occur, by replacing them with available blocks from the pool or switching to read-only mode when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If grown bad blocks are replaced using traditional methods, then data reliability is improved, but system performance and lifetime are degraded due to frequent interruptions and lack of proactive management

Engineering Contradiction:
Improvedata reliabilityVSAvoidsystem lifetime
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The system performs preliminary actions by monitoring memory blocks and identifying potential grown bad blocks before they cause failures. Replacement blocks are pre-selected and prepared in advance, allowing proactive replacement rather than reactive response to failures, thus extending system lifetime while maintaining reliability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The replacement threshold is dynamically adjusted based on wear indicators and block usage patterns. The system adapts the replacement criteria in real-time, replacing blocks when they cross the dynamic threshold rather than using fixed schedules, optimizing both reliability and system lifetime

Inventive Principle:
Principle #15Dynamics

2Duration of action of moving object

If memory blocks are monitored and replaced proactively, then system lifetime is extended, but device complexity increases due to additional management components and monitoring mechanisms

Engineering Contradiction:
Improvesystem lifetimeVSAvoidmanagement complexity
Core Design Contradiction:
Duration of action of moving objectVSDevice complexity

Solution Approach 1:

The memory subsystem performs self-diagnosis and self-replacement operations. The controller monitors its own memory blocks, identifies grown bad blocks, and executes replacement using available replacement pools, eliminating the need for external intervention or complex host-side management software

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The same controller that manages normal memory operations also handles monitoring, detection, and replacement of grown bad blocks. The replacement pools are integrated into the existing memory structure, allowing the controller to perform multiple functions without adding separate dedicated hardware components

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If replacement blocks are reserved in advance, then replacement speed is improved, but available storage capacity is reduced due to blocks set aside for replacement

Engineering Contradiction:
Improvereplacement speedVSAvoidstorage capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system reserves a partial number of blocks for replacement purposes rather than allocating excessive blocks. The replacement pool size is optimized to provide sufficient replacement capacity while minimizing impact on usable storage, balancing replacement speed requirements with storage capacity constraints

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11728006B2Grown bad block management in a memory sub-system
Publication Date: 2023.08.15 MICRON TECHNOLOGY INC
  • US11728006B2 patent drawing
  • US11728006B2 patent drawing
  • US11728006B2 patent drawing

AI summary

A replacement block pool for a memory device is established. The replacement block pool comprises one or more valid blocks from a set of valid blocks in the memory device determined based on a constraint defining a minimum number of valid blocks for the memory device. A grown bad block is detected in the memory device. The grown bad block is replaced with a replacement block from the replacement block pool in response to detecting the grown bad block.