Dynamic Flash Interface Module Allocation Across Shared Memory Dies
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data storage devices with more memory dies than flash interface modules (FIMs), there is an imbalance leading to inefficient pipeline performance due to some FIMs being underutilized while others are fully active, limiting overall throughput.
Innovation Solution
Implementing a dynamic allocation system that dynamically maps memory dies to FIMs based on workload, using schedulers and selectors to balance the load, ensuring all FIMs are efficiently utilized.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a fixed allocation is used that fixedly allocates a backend module to more than one memory die, then the device complexity is reduced, but the productivity is limited due to uneven workload distribution and FIM underutilization
Solution Approach 1:
The patent implements dynamic FIM allocation by allowing FIMs to be reassigned to different memory dies based on real-time workload conditions. The system transitions from a static fixed allocation to a dynamic allocation mechanism where FIMs can be moved between memory dies to balance the workload, thereby improving overall throughput and eliminating FIM underutilization.
Solution Approach 2:
The system changes the allocation parameter from a fixed mapping to a dynamic mapping that adjusts based on workload distribution. By monitoring which FIMs are fully active and which are underutilized, the system modifies the allocation parameters to redistribute workloads more evenly, optimizing productivity without requiring complete system redesign.
2Quantity of substance
If more memory dies are added to increase storage capacity, then the quantity of substance is increased, but the productivity is limited due to imbalance between memory dies and FIMs
Solution Approach 1:
The patent enables FIMs to serve multiple memory dies dynamically rather than being dedicated to a single memory die. This multi-functionality allows the same FIM to be allocated to different memory dies based on workload conditions, effectively utilizing the FIMs to handle operations from multiple memory dies and thereby improving pipeline performance despite having more memory dies than FIMs.
Solution Approach 2:
The system dynamically adjusts the mapping between FIMs and memory dies to optimize productivity. When additional memory dies are introduced, the dynamic allocation mechanism redistributes workloads to ensure all FIMs are fully utilized, preventing the productivity limitation that would otherwise result from having more memory dies than FIMs.
Data Source
AI summary
A data storage device can have a memory with one or more memory dies. The data storage device can also have one or more backend modules (e.g., flash interface modules (FIMs)) that send sense/transfer or program operations to the memory dies. In some situations, there can be more memory dies than FIMs. Using a fixed allocation between memory dies and FIMs in this situation can result in an inefficient pipeline of memory commands, where some FIMs are idle while other FIMs are busy. In one embodiment, the FIMs are dynamically allocated to the memory dies to provide a more-efficient workload distribution. Other embodiments are provided.


