SSD Block Allocation for Multi-CE Die Imbalance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional 1:N Flash Translation Layer:NAND Group Module (FTL:NG) mapping schemes face performance issues due to imbalanced block allocation across Chip Enable (CE)/die, leading to negative performance impacts and potential read-only mode activation when insufficient free blocks are available to replace defective blocks.

Innovation Solution

The method involves scanning an unallocated block repository to reallocate blocks as free blocks when insufficient free blocks are available in the free block list, and transitioning the CE to read-only mode when no further unallocated blocks are found, thereby maintaining balanced block allocation and preventing premature read-only mode activation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If conventional block sorting processes are used to maintain struck block allocation policy, then block allocation balance is maintained, but performance deteriorates due to continual sorting operations

Engineering Contradiction:
Improveblock allocation balanceVSAvoidperformance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system pre-organizes free blocks into CE-specific free block lists before they are needed for replacement. When blocks are decommissioned or erased, they are immediately sorted and added to the appropriate CE's free block list based on their CE/die affiliation. This preliminary organization eliminates the need for continual sorting operations during runtime, maintaining block allocation balance without performance penalty.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If free blocks are chosen based on program erase count without balancing, then allocation simplicity is maintained, but free block list composition becomes imbalanced for specific CE/die

Engineering Contradiction:
Improveallocation simplicityVSAvoidfree block list composition balance
Core Design Contradiction:
Ease of manufactureVSStability of the object's composition

Solution Approach 1:

The system segments the free block management by creating separate free block lists for each CE (Chip Enable). Instead of maintaining a single unified free block list, each CE has its own dedicated list, ensuring that blocks are properly associated with their respective CEs/dies. This segmentation maintains simplicity by using straightforward selection within each CE's list while simultaneously ensuring balanced composition across the entire storage device.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If CE/die scans imbalanced free block list when decommission block needs replacement, then scanning process is simplified, but CE/die may not find appropriate free block and enters read-only mode

Engineering Contradiction:
Improvescanning process simplicityVSAvoidcontinuous operation capability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system introduces an intermediary unallocated block pool that acts as a backup resource when CE-specific free block lists are depleted. The FTL first scans the CE's own free block list, and only when that is exhausted does it scan the unallocated block pool for additional blocks. This intermediary mechanism ensures continuous operation by providing a fallback source of blocks without complicating the primary scanning process.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Quantity of substance

If unallocated blocks are reallocated from unallocated block pool, then free block availability is increased, but device complexity increases due to additional scanning and management processes

Engineering Contradiction:
Improvefree block availabilityVSAvoidblock management process complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system performs preliminary allocation of blocks to the unallocated block pool during initialization and during block erasure operations. By pre-positioning blocks in the unallocated pool and maintaining metadata about their CE/die affiliations, the system reduces the complexity of runtime block management. When free blocks are needed, the FTL can efficiently scan this pre-prepared pool without complex reallocation algorithms.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11875038B2Block allocation for multi-CE/die structure SSD
Publication Date: 2024.01.16 SANDISK TECHNOLOGIES LLC
  • US11875038B2 patent drawing
  • US11875038B2 patent drawing
  • US11875038B2 patent drawing

AI summary

The present disclosure generally relates to methods and systems for allocating free blocks as decommissioned blocks to replace bad blocks. In certain embodiments, when there are insufficient free blocks in a free block list to replace a bad or defective block for a CE, an FTL scans blocks stored in an unallocated block repository. If there are unallocated blocks available for the CE, one or more is reallocated as free blocks and used to replace the bad or defective block. When only one or no further unallocated blocks for the CE are available, the FTL places the CE in a read-only mode.