Partially Good Block Handling in Memory Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional approaches to bad block management in memory devices fail to distinguish between fully bad blocks and partially good blocks, leading to the wastage of usable memory resources and inefficient power consumption, as they do not effectively differentiate between good and bad portions of blocks.
Innovation Solution
A memory sub-system component identifies partially good blocks by determining the number of failed bytes in each block and isolating the unfailing portion, allowing data operations to be executed on the reliable part while disabling the failed portion, thereby preventing interference and reducing power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional bad block management approaches are used, then block failure detection is simple, but usable memory resources are wasted and power consumption increases
Solution Approach 1:
The patent segments each block into multiple pages and further divides pages into strings, creating a hierarchical structure that allows granular identification of failed portions. This segmentation enables the system to distinguish between fully bad blocks and partially good blocks, allowing only the failed portions to be disabled while preserving usable memory resources in the good portions.
Solution Approach 2:
The patent implements local quality by differentiating the status of different portions within blocks. Instead of treating all blocks uniformly, the system tracks the good/bad status of individual pages and strings, allowing the memory controller to identify and disable only the failed portions while maintaining access to good portions, thus optimizing the balance between reliability and usable memory capacity.
2Device complexity
If conventional bad block management approaches are used, then implementation is simple, but power consumption is inefficient
Solution Approach 1:
The patent introduces dynamic status tracking for blocks, pages, and strings, where the good/bad status is continuously monitored and updated during operations. This dynamic approach allows the memory controller to adaptively manage block access based on actual failure conditions, disabling only the necessary portions and avoiding unnecessary power consumption that would result from disabling entire blocks or performing comprehensive scans.
Solution Approach 2:
The system implements self-service by automatically detecting and tracking failures during normal read and program operations without requiring separate diagnostic scans. The memory controller monitors status during regular operations and updates the good/bad status accordingly, eliminating the need for additional power-intensive scanning processes while maintaining accurate block status information.
3Device complexity
If blocks are treated as fully good or fully bad, then management is simple, but interference between good and bad portions occurs
Solution Approach 1:
The patent segments blocks into pages and pages into strings, creating a hierarchical structure that isolates failed portions from good portions. This segmentation prevents interference by ensuring that read operations on good portions are not affected by bad portions, as the controller can direct operations to specific good strings within a block without accessing bad areas.
Solution Approach 2:
The patent introduces status tracking mechanisms and control logic as intermediaries between the physical block structure and the memory controller. These intermediaries monitor and manage the good/bad status of different portions, mediating the access control to prevent interference between good and bad portions while maintaining simple overall block management.
Data Source
AI summary
A programming failure is detected at a block of a memory device. Based on detecting the programming failure, the block is determined to be partially good based on a number of failed bytes in the block. An unfailing portion of the block is identified in response to determining the block is partially good. A record indicating the block is partially good and identifying the unfailing portion of the block is stored.


