Sub-Block Storage Allocation for Random Write Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices using flash memory struggle to efficiently manage memory blocks due to varying user patterns and constraints, leading to inefficiencies in data management and resource utilization.
Innovation Solution
A storage device that manages sub-blocks with different sizes, utilizing a memory controller to select and allocate sub-blocks based on predetermined criteria into sub-block pools and virtual memory blocks, optimizing user patterns and constraints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If memory blocks are divided into multiple groups and managed as sub-blocks, then data management efficiency is improved, but device complexity increases
Solution Approach 1:
The patent divides memory blocks into multiple sub-blocks (first sub-blocks and second sub-blocks) with different characteristics. This segmentation allows independent management and allocation of sub-blocks based on specific access patterns, improving data management efficiency while maintaining manageable complexity through structured organization.
Solution Approach 2:
The patent implements dynamic allocation of sub-blocks to virtual memory blocks based on access patterns. The memory controller dynamically selects and allocates sub-blocks from different pools (first sub-block pool and second sub-block pool) according to specific criteria, enabling adaptive management that balances efficiency improvements with operational simplicity.
2Adaptability or versatility
If sub-blocks with different sizes are used to optimize user patterns, then adaptability is improved, but device complexity increases
Solution Approach 1:
The patent assigns different characteristics to different sub-blocks (first sub-blocks with one set of characteristics, second sub-blocks with another set). This local differentiation enables optimization for specific user patterns and access requirements while maintaining overall system manageability through consistent allocation rules.
Solution Approach 2:
The patent changes the parameters of sub-block allocation by introducing multiple sub-block pools with different characteristics. The memory controller adjusts allocation parameters based on access patterns, selecting from different sub-block pools to optimize performance for varying user requirements while maintaining systematic management.
3Productivity
If sub-block allocation is optimized for frequent data changes and random write requests, then productivity is improved, but loss of time increases due to additional allocation operations
Solution Approach 1:
The patent pre-organizes sub-blocks into different pools (first sub-block pool and second sub-block pool) with specific characteristics before allocation requests arrive. This preliminary organization allows the memory controller to quickly select appropriate sub-blocks based on access patterns without performing complex analysis during allocation, reducing allocation time while maintaining optimization for random write requests.
Data Source
AI summary
A storage device includes: memory device including a plurality of memory blocks, each of the plurality of memory blocks comprising a plurality of sub-blocks, wherein at least two sub-blocks of the plurality of sub-blocks have different sizes; and a memory controller configured to manage the plurality of memory blocks and the plurality of sub-blocks, wherein the memory controller is further configured to: based on a predetermined sub-block attribute criteria, select at least one sub-block from the plurality of sub-blocks, add the selected at least one sub-block to at least one sub-block pool, and based on the predetermined sub-block attribute criteria, allocate the selected at least one sub-block in the at least one sub-block pool to a virtual memory block.


