Memory Controller Bad Block Replacement Strategy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage devices face inefficiencies in managing bad blocks, leading to decreased performance when all replacement blocks in a plane are used, as they lack effective mechanisms to replace bad blocks with system blocks, resulting in reduced multi-plane operations and overall device performance.

Innovation Solution

A storage device with a memory controller that detects bad blocks and replaces them with target system blocks from the same plane, allowing for continued multi-plane operations by moving data from system blocks to replacement blocks in another plane when necessary, thereby maintaining performance even when all replacement blocks are exhausted.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If replacement blocks are used to replace bad blocks in a plane, then bad block management is improved, but when all replacement blocks are exhausted, the system cannot continue replacing bad blocks and multi-plane operations are reduced

Engineering Contradiction:
Improvebad block managementVSAvoidmulti-plane operations performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

System blocks, originally designed for storing system information, are given a dual function: they can still store system information and can also be used to replace bad blocks when replacement blocks are exhausted. This multi-functionality allows the system to continue operating with multiple planes even after all dedicated replacement blocks have been used.

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

Solution Approach 2:

The system dynamically changes the state and usage parameters of system blocks based on the condition of replacement blocks. When replacement blocks are available, system blocks maintain their original function. When replacement blocks are exhausted, system blocks transition to serving as bad block replacements, changing their functional parameter from 'system information storage' to 'bad block replacement'.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If system blocks are used to replace bad blocks, then multi-plane operations can continue, but data from system blocks must be moved to replacement blocks in another plane

Engineering Contradiction:
Improvemulti-plane operationsVSAvoiddata migration process
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The controller acts as an intermediary that manages the complex data migration process. It identifies system blocks needing relocation, finds available replacement blocks in other planes, and orchestrates the data transfer. This intermediary role simplifies the overall system architecture by centralizing the complexity in the controller rather than requiring complex interactions between memory planes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system resolves the data migration issue by moving data across the plane dimension. When a system block in plane 0 needs to be replaced, its data is relocated to a replacement block in plane 1 (or another plane), effectively using the plane dimension as an additional space for data redistribution and bad block management.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11543984B2Memory controller, storage device and operating method thereof
Publication Date: 2023.01.03 SK HYNIX INC
  • US11543984B2 patent drawing
  • US11543984B2 patent drawing
  • US11543984B2 patent drawing

AI summary

A storage device includes a memory device and a memory controller. The memory device includes a first plane and a second plane, each including data blocks configured to store user data, one or more replacement blocks configured to replace one or more bad blocks, and system blocks configured to store system information. The memory controller is configured to replace, when a bad block is detected in the first plane after all the one or more replacement blocks in the first plane are used to replace previously detected bad blocks, the detected bad block with a target system block selected among the system blocks in the first plane.