Storage Controller Shared Block Pool Wear-Leveling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage devices require a large number of system memory blocks, leading to inefficient use and performance issues due to unbalanced program/erase cycles across different memory block pools, resulting in increased memory block requirements and reduced efficiency.
Innovation Solution
A storage controller that integrates and manages system memory blocks by assigning memory blocks of varying types to a shared block pool based on erase counts, optimizing the assignment of memory blocks and performing wear-leveling across the entire pool to balance program/erase cycles.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If separate memory block pools are used for different memory block types, then memory blocks can be managed independently, but the number of required memory blocks increases and efficiency decreases
Solution Approach 1:
The patent merges multiple separate memory block pools (first memory block area and second memory block area) into a unified shared block pool. The storage controller manages different types of memory blocks (first type and second type) within this single pool, allowing dynamic allocation and reducing the total number of memory blocks required while maintaining type-specific management capabilities through logical separation rather than physical segregation.
2Adaptability or versatility
If separate memory block pools are used for different memory block types, then type-specific management is enabled, but system performance deteriorates due to unbalanced program/erase cycles
Solution Approach 1:
The patent combines multiple memory block pools into a shared block pool where wear-leveling operations can balance program/erase cycles across all memory blocks regardless of type. This unified approach allows the storage controller to distribute wear evenly across the entire pool, preventing any single pool from becoming a performance bottleneck while still maintaining type-specific allocation policies when needed.
Solution Approach 2:
The patent dynamically adjusts allocation parameters and wear-leveling strategies based on the erase counts and usage patterns of different memory block types within the shared pool. By changing management parameters adaptively rather than using fixed separate pools, the system optimizes performance while maintaining type-specific characteristics where necessary.
3Ease of manufacture
If separate memory block pools are used, then dedicated allocation is achieved, but memory resource efficiency is reduced
Solution Approach 1:
The shared block pool serves multiple functions simultaneously: it stores both first type and second type memory blocks, performs wear-leveling across all blocks, and allows dynamic allocation based on current system needs. This multi-functional approach replaces the need for dedicated separate pools, improving memory resource efficiency while maintaining the ability to provide dedicated allocation when required through software-controlled assignment.
Data Source
AI summary
According to an embodiment of the present technology, a storage device includes a non-volatile memory device including a first memory block area and a second memory block area, and a storage controller configured to control the non-volatile memory device, determine a target erase count based on a generated assignment request among a first assignment request and a second assignment request, and assign a target memory block corresponding to the target erase count, as a memory block corresponding to the generated assignment request, to a shared block pool. The first assignment request corresponds to a memory block of a first type in the first memory block area, the second assignment request corresponds to a memory block of a second type in the first memory block area, and the target memory block is included in the first memory block area.


