ZNS Storage Controller Zone-Based Block Assignment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Non-volatile memory devices face reduced lifetime and decreased available storage capacity due to frequent garbage collection operations, which are necessitated by random access storage methods, leading to increased program/erase cycles and over provisioning requirements.
Innovation Solution
Implementing a storage controller that manages data in zones, using a ZNS standard, allowing for sequential write operations and reducing garbage collection load by assigning memory blocks based on type and state, thereby optimizing memory usage and extending device lifespan.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If random access storage method is used, then data storage flexibility is improved, but garbage collection frequency increases leading to reduced device lifetime
Solution Approach 1:
The storage device is divided into multiple zones (first zone, second zone, third zone) with different characteristics. Each zone can be independently managed for sequential writes, reducing the need for frequent garbage collection across the entire device and thereby extending device lifetime while maintaining storage flexibility.
Solution Approach 2:
Different zones are assigned different characteristics and management strategies. The first zone is optimized for sequential writes with low garbage collection frequency, while other zones have different characteristics. This local differentiation allows the system to maintain flexibility where needed while reducing overall garbage collection pressure to extend lifetime.
2Reliability
If over provisioning region is increased for garbage collection and wear leveling, then device reliability is improved, but available storage capacity decreases
Solution Approach 1:
By segmenting the storage device into multiple zones with different characteristics, the system can reduce the overall over provisioning requirement. The first zone, optimized for sequential writes, requires less over provisioning for garbage collection, thereby increasing the available storage capacity while maintaining reliability through targeted over provisioning in specific zones.
3Productivity
If sequential write operations are implemented, then garbage collection load is reduced, but data processing speed for random access may decrease
Solution Approach 1:
The storage device is segmented into zones with different access patterns. The first zone is optimized for sequential writes to reduce garbage collection load, while other zones can handle random access operations. This segmentation allows the system to achieve low garbage collection load for sequential writes while maintaining acceptable performance for random access through the other zones.
Solution Approach 2:
Different zones are assigned different characteristics and optimization targets. The first zone prioritizes sequential write performance with low garbage collection, while other zones are optimized for different access patterns. This local quality differentiation allows the system to achieve reduced garbage collection load without uniformly degrading all data processing speeds.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Disclosed is a storage controller (110) and an operating method of a storage controller (110) which communicates with a host (11) and a non-volatile memory device (120). The method includes receiving a first request indicating a first zone of a plurality of zones from the host (11), setting a state of the first zone to an active state in response to the first request, assigning a first memory block of a plurality of memory blocks of the non-volatile memory device (120) to the first zone updated to the active state, and storing user data corresponding to the first request in the first memory block. The first memory block is higher in reliability than a second memory block assigned to a second zone having a non-active state from among the plurality of zones, and the storage controller (110) supports a zoned namespace (ZNS) standard of a NVM express.