Storage Device Stream Block Management for Write Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As the number of streams increases, storage devices face issues with decreased physical blocks for overprovisioning and garbage collection, leading to increased latency, misalignment of data boundaries, reduced reliability, and higher write amplification factors.
Innovation Solution
A storage device with a controller that associates physical blocks with stream IDs, remaps blocks as needed to manage unwritten space and handle write data efficiently, using a method that involves issuing commands to store data based on stream IDs and remapping physical blocks to maintain optimal data alignment and capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If physical blocks are dedicated to each stream ID, then data type uniformity and erase probability are improved, but the number of physical blocks for overprovisioning and garbage collection decreases
Solution Approach 1:
The patent segments physical blocks into different pools: stream-specific input blocks for each stream ID and a shared pool of overprovisioning blocks. This segmentation allows dedicated blocks for stream data while maintaining a separate pool for system operations like garbage collection and overprovisioning.
Solution Approach 2:
The patent creates a universal pool of overprovisioning blocks that can serve multiple streams simultaneously. These blocks are not dedicated to any single stream but can be dynamically allocated to any stream that needs additional input blocks, thereby improving block utilization while maintaining stream data uniformity.
2Reliability
If physical blocks are dedicated to each stream ID, then data type uniformity is improved, but response latency increases
Solution Approach 1:
The patent pre-allocates input blocks for each stream ID in advance, so when write commands arrive, the controller can immediately use the pre-prepared blocks without waiting for allocation. This preliminary preparation of blocks reduces the time delay in responding to write commands while maintaining the benefits of stream-specific data uniformity.
3Productivity
If physical blocks are dedicated to each stream ID, then stream data handling is improved, but data boundary alignment decreases
Solution Approach 1:
The patent changes the parameter of block allocation from fixed dedicated assignment to dynamic assignment with boundary alignment checks. The controller monitors the alignment status of data boundaries and dynamically selects blocks that maintain proper alignment, thereby preserving both stream data handling efficiency and boundary alignment precision.
4Reliability
If physical blocks are dedicated to each stream ID, then stream-specific storage is improved, but write amplification factor increases
Solution Approach 1:
The patent merges multiple streams' overprovisioning needs into a single shared pool of overprovisioning blocks. Instead of each stream having its own separate overprovisioning blocks, the system combines these resources and dynamically allocates them to streams that need them, thereby reducing the total number of blocks required and lowering the write amplification factor while maintaining stream-specific storage benefits.
Data Source
AI summary
A storage device includes a non-volatile semiconductor memory device including a plurality of physical blocks, and a controller configured to associate one of the physical blocks with a stream ID, receive a first command including the stream ID, and in response thereto, transmit information on capacity of unwritten space in the physical block associated with the stream ID.


