Token-Based Decoder Allocation for SSD Endurance Groups
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data storage devices, such as solid state drives (SSDs), face challenges in efficiently sharing decoding resources between multiple non-volatile memory (NVM) sets or endurance groups, leading to higher latency and lower quality of service due to shared components and resource requests.
Innovation Solution
A data storage device with a controller that allocates tokens to each endurance group, allowing access to decoders based on token payments, with different tiers of decoders having varying power consumption and correction capabilities, and adjusting syndrome weight thresholds for fair resource distribution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If multiple NVM sets or endurance groups share decoding resources, then device complexity is reduced and resource utilization is improved, but latency increases and quality of service deteriorates
Solution Approach 1:
The patent segments decoding resources into multiple independent decoder instances (first decoder, second decoder, etc.) rather than using a single shared decoder. Each endurance group can be mapped to specific decoder instances, reducing contention and access latency while maintaining resource sharing benefits. This segmentation allows parallel decoding operations without the bottlenecks of a single shared resource.
Solution Approach 2:
The patent implements dynamic allocation of decoders to endurance groups based on operational conditions, wear leveling states, and performance requirements. The mapping between endurance groups and decoders is not fixed but can be adjusted dynamically, allowing the system to optimize for low latency when needed while maintaining efficient resource sharing during normal operation.
2Reliability
If decoding resources are rigidly partitioned between endurance groups, then quality of service is improved and performance is guaranteed, but resource utilization decreases and productivity is reduced
Solution Approach 1:
The patent makes decoders multi-functional by allowing them to serve multiple endurance groups under different conditions. A single decoder can handle decoding operations for different endurance groups depending on workload, priority, and performance requirements. This universality ensures that quality of service is maintained through guaranteed access while improving productivity by preventing idle decoder resources.
Solution Approach 2:
The patent changes operational parameters such as decoder assignment, allocation priorities, and access permissions dynamically based on system state. When quality of service requirements are high, parameters are adjusted to guarantee decoder access. When utilization is low, parameters change to allow more flexible sharing, thus maintaining reliability while improving productivity.
3Device complexity
If components are shared between multiple relatively independent drives, then device complexity is reduced, but requests for resources cause higher latency and lower quality of service
Solution Approach 1:
The patent introduces an intermediary layer (controller or resource management unit) that mediates between multiple endurance groups and shared decoding resources. This intermediary manages resource allocation, arbitration, and priority handling, reducing the negative effects of sharing while maintaining the benefits of reduced complexity. The intermediary ensures quality of service by coordinating access requests and preventing conflicts.
Data Source
AI summary
A data storage device includes a memory device having a plurality of endurance groups and a controller coupled to the memory device. The controller includes at least one decoder or at least one decoder group. The controller is configured to allocate a plurality of tokens to each endurance group of the plurality of endurance groups, receive a payment of tokens from an endurance group to access the at least one decoder or the at least one decoder group, and grant access to the at least one decoder or the at least one decoder group to the endurance group based on the payment of tokens. Each decoder or each decoder group is associated with the same or different payment of tokens and each endurance group has a maximum capacity of tokens.


