Flash Memory Host Interface Logical Block Fragmentation Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory systems face inefficiencies in data storage and management due to fragmentation, where obsolete data occupies valuable space, and frequent data consolidation is needed to reclaim space, degrading system performance, especially when storage capacity is close to the addressable limit.
Innovation Solution
Implementing a direct data file management system that allocates data from a host to memory cell blocks in a manner that limits the number of blocks per file, reducing fragmentation by mapping logical blocks to physical blocks with similar storage capacity, and allowing the host to configure the logical address space to match physical memory characteristics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If data are stored in flash memory using traditional LBA interface, then the host can access data through continuous logical address space, but data fragmentation occurs and obsolete data occupies valuable space
Solution Approach 1:
The patent segments the continuous logical address space into discrete logical blocks that correspond to physical memory blocks. Each logical block can be independently managed and mapped to physical blocks, enabling fine-grained control over data placement while maintaining the simplicity of sequential address access for the host.
Solution Approach 2:
The patent introduces a logical block as an intermediary layer between the host's continuous logical address space and the physical flash memory blocks. This intermediary enables the host to access data through simple sequential addresses while the system manages the mapping to physical blocks, handling fragmentation and obsolete data reclamation automatically.
2Quantity of substance
If data consolidation is performed frequently to reclaim space, then storage capacity is maintained, but system performance degrades
Solution Approach 1:
The patent performs preliminary actions by pre-allocating logical blocks to physical blocks during data writing operations. This ensures that data is placed in optimal locations from the beginning, reducing the need for subsequent consolidation operations and maintaining performance even as storage fills up.
Solution Approach 2:
The patent implements a mechanism to discard obsolete data references and recover physical blocks for reuse. When data is deleted or overwritten, the system discards the old logical-to-physical mappings and recovers the physical blocks, making them available for new data without requiring full consolidation operations.
3Quantity of substance
If the number of blocks per file is limited, then data fragmentation is reduced, but flexibility in data allocation is constrained
Solution Approach 1:
The patent implements dynamic mapping where the number of logical blocks per file is not fixed but adapts based on the actual data size and physical block availability. The system can create multiple logical blocks for a single file if needed, or consolidate them when possible, providing flexibility while maintaining the benefit of block-level management.
Solution Approach 2:
The patent makes logical blocks universal by allowing them to serve multiple files and multiple physical blocks. A single logical block can be mapped to different physical blocks at different times, and a physical block can store data from multiple logical blocks, providing versatile reuse while maintaining efficient fragmentation control.
4Loss of time
If logical blocks are mapped to physical blocks with similar storage capacity, then data relocation is minimized, but mapping complexity increases
Solution Approach 1:
The patent changes the parameter of block size matching by configuring logical blocks to have the same size as physical blocks. This parameter change simplifies the mapping relationship and enables direct one-to-one correspondence, minimizing data relocation while keeping the mapping table manageable through standard flash block sizes.
Data Source
AI summary
Data files are assigned addresses within one or more logical blocks of a continuous logical address space interface (LBA interface) of a usual type of flash memory system with physical memory cell blocks. This assignment may be done by the host device which typically, but not necessarily, generates the data files. The number of logical blocks containing data of any one file is controlled in a manner that reduces the amount of fragmentation of file data within the physical memory blocks, thereby to maintain good memory performance. The host may configure the logical blocks of the address space in response to learning the physical characteristics of a memory to which it is connected.


