Dynamic Flash Interface Module Allocation Across Shared Memory Dies

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveoverall throughputVSAvoiddynamic allocation system
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #35Parameter changes

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

Engineering Contradiction:
Improvestorage capacityVSAvoidpipeline performance
Core Design Contradiction:
Quantity of substanceVSProductivity

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

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.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250298663A1Data Storage Device and Method for Dynamic Flash Interface Module (FIM) Load Balancing for Memory Die Sharing
Publication Date: 2025.09.25 SANDISK TECHNOLOGIES LLC
  • US20250298663A1 patent drawing
  • US20250298663A1 patent drawing
  • US20250298663A1 patent drawing

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.