Stream-Class Storage Blocks for Lower WAF and Power Use
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face challenges in managing data with varying stream class numbers, leading to deteriorated Write Amplification Factor (WAF) characteristics and increased power consumption due to inefficient data classification.
Innovation Solution
Implementing a storage device with a controller that performs garbage collection to program data with the same stream class number in the same block, using a stream mapping table and physical mapping table to manage data classification based on stream class numbers, and transmitting program operation information to the host or outside.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data with different stream class numbers are stored together in the same block, then storage capacity is maximized, but Write Amplification Factor deteriorates and power consumption increases
Solution Approach 1:
The storage device segments data storage by creating separate blocks for different stream class numbers. The controller classifies incoming data according to stream class numbers and directs each class to its dedicated block, preventing mixing of different data types and enabling optimized handling for each class.
Solution Approach 2:
Different blocks are assigned different qualities based on their designated stream class numbers. Each block is optimized for its specific data type, allowing the system to apply appropriate write strategies and management techniques tailored to each data class's characteristics.
2Quantity of substance
If data with different stream class numbers are stored together in the same block, then storage capacity is maximized, but Write Amplification Factor deteriorates
Solution Approach 1:
The storage device segments data storage by creating separate blocks for different stream class numbers. The controller classifies incoming data according to stream class numbers and directs each class to its dedicated block, preventing mixing of different data types and enabling optimized handling for each class.
Solution Approach 2:
Different blocks are assigned different qualities based on their designated stream class numbers. Each block is optimized for its specific data type, allowing the system to apply appropriate write strategies and management techniques tailored to each data class's characteristics.
3Reliability
If data are classified and stored in separate blocks based on stream class numbers, then WAF characteristics improve, but device complexity increases
Solution Approach 1:
The system incorporates a stream class number extraction unit that automatically extracts and identifies stream class numbers from incoming data without requiring complex external classification mechanisms. This self-service approach simplifies the overall system architecture while maintaining effective data classification.
4Loss of energy
If data are classified and stored in separate blocks based on stream class numbers, then power consumption is reduced, but device complexity increases
Solution Approach 1:
The system incorporates a stream class number extraction unit that automatically extracts and identifies stream class numbers from incoming data without requiring complex external classification mechanisms. This self-service approach simplifies the overall system architecture while maintaining effective data classification.
Data Source
AI summary
A storage device includes: a buffer to receive first data and second data from outside, and store the first data and the second data on a first page; a non-volatile memory to store the first data and the second data in a first block; and a controller to perform a program operation that programs the first and second data in free blocks different from each other through a garbage collection. The first data may include a first stream class number identifying characteristics of the first data, and the second data may include a second stream class number identifying characteristics of the second data and is different from the first stream class number. The controller may transmit information of the program operation to the outside before performing the program operation. The controller may perform the program operation when receiving a program execution permission command from the outside.


