NAND Flash Memory Block Allocation for Parallelism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing NAND flash memory systems face challenges in maintaining parallelism during sequential write operations, leading to deteriorated transfer performance due to biased block usage across planes, which results in reduced product life and potential exhaustion of free blocks in specific groups.
Innovation Solution
A dynamic block allocation system is implemented, where free blocks are classified into management lists and selected based on priority, allowing for parallel processing across multiple channels, banks, and planes, with separate allocation management for high-density and low-density data to prevent block parallelism deterioration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If free blocks are selected without classification into management lists, then block allocation is simple, but parallelism deteriorates due to biased block usage across planes
Solution Approach 1:
The patent segments free blocks into multiple management lists (first free block management list and second free block management list) based on the number of free blocks they contain. This segmentation enables differentiated selection strategies: when the first list has sufficient free blocks, blocks are selected from it to maintain parallelism; when it is exhausted, the second list is used as backup. This resolves the contradiction by organizing blocks into structured groups that facilitate parallel access while preventing bias toward specific planes.
2Reliability
If blocks are allocated uniformly across planes, then product life is extended, but free blocks may be exhausted in specific groups reducing parallelism
Solution Approach 1:
The patent implements a dynamic block allocation mechanism that adapts the selection source based on real-time free block distribution. The system dynamically switches between the first and second free block management lists depending on which contains sufficient free blocks. This dynamic approach ensures uniform wear across planes (extending product life) while maintaining the ability to select blocks that preserve parallelism, resolving the contradiction between reliability and productivity.
3Productivity
If multiple free block management lists are maintained, then parallelism is preserved through selective allocation, but management complexity increases
Solution Approach 1:
The patent segments free blocks into two management lists based on a threshold criterion (number of free blocks). This segmentation creates a clear hierarchy: the first list for primary selection when resources are abundant, and the second list as backup. The segmentation strategy reduces management complexity compared to fully dynamic approaches while effectively preserving parallelism through selective allocation from appropriate lists.
4Speed
If free blocks are selected from any available list, then allocation is fast, but block exhaustion in specific groups reduces sequential write performance
Solution Approach 1:
The patent performs preliminary classification of free blocks into two management lists based on their free block counts before allocation occurs. This preliminary action organizes blocks in advance according to their suitability for maintaining parallelism. During allocation, the system first checks the first list (which contains blocks more likely to preserve parallelism) before falling back to the second list. This preliminary organization enables fast allocation while preventing block exhaustion patterns that would degrade sequential write performance.
Data Source
AI summary
According to one embodiment, a free blocks included in a nonvolatile semiconductor memory are classified into a plurality of free block management lists. When a free block is acquired at normal priority, the free block is acquired from the free block management list in which a number of free blocks is larger than a first threshold. When a free block is acquired at high priority, the free block is acquired from the free block management list irrespective of the first threshold.


