Nonvolatile Storage Domain Scrambling for Even Write Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices using nonvolatile memory devices face reduced endurance and performance due to concentrated access in certain areas, leading to I/O skew and the need for additional features like global wear leveling.
Innovation Solution
The storage device is partitioned into domains, with a scramble function determined based on seed bits of logical addresses to generate scrambled domain values, distributing write operations across these domains to prevent overcrowding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If access is concentrated in a certain area of the storage device, then the storage device can operate with simpler control logic, but the endurance and performance of the storage device decrease
Solution Approach 1:
The storage device is divided into multiple domains (first domain, second domain, etc.) based on physical address ranges. This segmentation allows write operations to be distributed across different domains using domain selection logic, preventing access concentration in a single area and thereby improving endurance and performance while maintaining relatively simple control logic.
2Reliability
If the storage device is partitioned into multiple domains with scramble functions, then access distribution is improved and I/O skew is prevented, but the device complexity increases
Solution Approach 1:
The system uses seed values (derived from logical address bits) to dynamically select scramble functions that map logical addresses to physical domains. By changing the seed value based on the logical address, the system achieves effective access distribution across domains without requiring complex hardwired domain assignment logic, thus balancing reliability improvement with acceptable device complexity.
3Productivity
If a scramble function is used to generate scrambled domain values, then write operations are evenly distributed across domains, but the computational overhead increases
Solution Approach 1:
Instead of implementing a single complex scramble function, the system uses multiple simple scramble functions (first scramble function, second scramble function, etc.) selected based on seed values. Each scramble function is relatively simple to compute, and the selection mechanism allows efficient distribution of write operations across domains with minimal computational overhead per operation.
Data Source
AI summary
A method of operating a storage device including a nonvolatile memory device and a storage controller that is configured to control the nonvolatile memory device, the method comprising: partitioning the nonvolatile memory device into a plurality of domains; determining a scramble function based on a seed value of seed bits that correspond to a first portion of a plurality of address bits of a logical address among a plurality of logical addresses that are provided from a host device; generating a scrambled domain value based on the scramble function and a domain value of domain bits that correspond to a second portion of the plurality of address bits of the logical address among the plurality of logical addresses; and assigning a write operation that corresponds to the logical address to a domain that corresponds to the scrambled domain value among the plurality of domains.


