Flash Memory Block Pool Management for Reorganization Overhead
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The processing load in storage systems with flash memory increases during reorganization processes, leading to potential data access blockages and system performance degradation due to the need for intensive data erasure and copy operations.
Innovation Solution
A storage apparatus and flash memory control method that manage data in units smaller than blocks, using a control portion to perform specific write and erasure processes, including a first write process and a second write process, which eliminates the need for a copy process during reorganization, by utilizing a write flag to track data status across blocks, allowing for efficient data management and reduced overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a reorganization process is performed to prepare empty blocks by erasing data and copying valid data, then the availability of empty blocks is improved, but the processing load increases and data access may be blocked
Solution Approach 1:
The patent applies preliminary action by pre-erasing blocks in advance and maintaining them in a pool of empty blocks before they are needed. Instead of performing erasure and copy operations when blocks are actually needed (reactive), the system proactively prepares empty blocks by erasing them ahead of time and storing them in a dedicated pool, thereby reducing the processing load during actual data access operations.
Solution Approach 2:
The patent introduces an intermediary structure called a 'block pool' that acts as a buffer between the flash memory blocks and the data access operations. This block pool serves as a mediator that holds pre-prepared empty blocks, allowing data to be quickly written to empty blocks from the pool without triggering intensive erasure and copy operations at the time of data access, thus reducing the processing load.
2Quantity of substance
If a reorganization process is performed with intensive data erasure and copy operations, then empty blocks are prepared for future writes, but data access during the process is blocked
Solution Approach 1:
The system performs block erasure operations in advance and stores the empty blocks in a pool before they are needed for data writing. This preliminary preparation ensures that when data needs to be written, pre-erased empty blocks are immediately available from the pool, eliminating the need to block data access during erasure operations.
Solution Approach 2:
The patent segments the block management system into distinct functional areas: actively used blocks for data storage and a separate block pool for empty blocks. This segmentation allows data access operations to proceed independently on active blocks while erasure and preparation operations occur on blocks in the pool, preventing access blocking.
3Reliability
If the storage apparatus performs the reorganization process itself, then data management is maintained, but system performance deteriorates during longer reorganization periods
Solution Approach 1:
The block pool acts as an intermediary buffer that decouples the intensive reorganization operations from normal data access operations. By maintaining a pool of pre-erased empty blocks, the system can satisfy data write requests without immediately triggering reorganization processes, thereby maintaining data management reliability while reducing the impact on system performance during reorganization.
Solution Approach 2:
The system performs erasure operations preliminarily and maintains empty blocks in the pool for future use. This allows the storage apparatus to maintain data management control while spreading out reorganization operations over time rather than concentrating them, thereby reducing the performance impact during any single reorganization period.
Data Source
AI summary
A storage apparatus includes a flash memory that includes multiple blocks; and a control portion that reads data written in the block and writes the data into the block. The flash memory includes one block set having n pieces of the blocks including BR1 to BRn. A write data and a write flag are capable of being written into each of blocks BRi, the write data being written in accordance with a request, the write flag indicating that the write data has been written into a target block BRj. In accordance with a write request, the control portion performs an erasure process, a first write process, and a second write process. The erasure process erases the data including the write data and the write flag. The first write process writes the new write data into the block BRl. The second write process writes the write flag into a block BRm.


