Super Memory Block Swapping to Balance Bad Memory Units
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices experience performance degradation and reduced data processing throughput due to the presence of bad memory units, which can lead to increased wear and decreased lifespan.
Innovation Solution
A storage device that includes a controller capable of exchanging bad memory units within super memory blocks with normal memory units from other super memory blocks when certain conditions are met, thereby redistributing bad memory units to minimize their impact.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If bad memory units are concentrated in specific super memory blocks, then data processing throughput is improved by avoiding blocks with bad units, but the lifespan of the storage device is reduced due to increased wear on remaining good blocks
Solution Approach 1:
The patent extracts bad memory units from super memory blocks by identifying and isolating them, then redistributes these extracted bad units to different super memory blocks. This extraction process allows the system to separate problematic units from functional blocks, improving throughput while balancing wear across all blocks to extend lifespan.
Solution Approach 2:
The patent applies local quality by treating each super memory block differently based on its specific composition of bad and good memory units. Instead of uniform treatment, the system dynamically adjusts which blocks are used for data storage based on their local quality characteristics, optimizing both performance and durability.
2Duration of action of stationary object
If bad memory units are redistributed across multiple super memory blocks, then the lifespan of the storage device is extended by balancing wear, but data processing throughput may be reduced due to more blocks containing bad units
Solution Approach 1:
The patent implements dynamics by creating a dynamic mapping system that continuously adapts the association between logical addresses and physical memory blocks based on the current distribution of bad memory units. This dynamic adjustment allows the system to optimize throughput at any given time while maintaining balanced wear distribution, rather than using a static allocation scheme.
Solution Approach 2:
The patent changes the parameter of block selection by using erase count as a key criterion for redistributing bad memory units. By selecting target blocks with lower erase counts for receiving bad units, the system dynamically adjusts the wear distribution parameter to extend lifespan while maintaining acceptable throughput performance.
3Reliability
If super memory blocks with many bad memory units are identified and exchanged, then performance degradation is minimized, but the complexity of memory management increases
Solution Approach 1:
The patent applies preliminary action by performing bad memory unit redistribution during idle periods or garbage collection operations, rather than waiting for performance degradation to occur. This proactive approach maintains performance stability while managing complexity through scheduled operations rather than reactive interventions.
Solution Approach 2:
The patent implements feedback mechanisms by monitoring the distribution of bad memory units across super memory blocks and using this information to guide redistribution decisions. The system continuously feedbacks on block quality metrics and adjusts its management strategy accordingly, maintaining reliability while keeping complexity manageable through data-driven decisions.
Data Source
AI summary
When it is determined that a first super memory block among a plurality of super memory blocks satisfies an exchange condition, the storage device may exchange a first memory unit in the first super memory block with a second memory unit included in a second super memory block among the plurality of super memory blocks. In this case, the first memory unit is a bad memory unit and the second memory unit is a normal memory unit.


