Priority-Based Data Movement in SSD Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing flash memory systems face inefficiencies in internal data movement operations, such as garbage collection, wear leveling, and data relocation, which can impact the performance and endurance of Solid State Drives (SSDs) due to the lack of optimal prioritization of these commands, leading to suboptimal data integrity and operational continuity.

Innovation Solution

The proposed solution prioritizes internal data movement commands by logically grouping wear leveling and data relocation requests, with data relocation given higher priority over wear leveling, and ensures that garbage collection requests are serviced continuously, using a scheduler to manage these operations in a round-robin fashion to optimize performance and endurance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If internal data movement commands are processed without prioritization, then device complexity is reduced, but performance and endurance are degraded

Engineering Contradiction:
ImproveperformanceVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments internal data movement commands into different priority levels and categories (wear leveling, data relocation, garbage collection). A scheduler component divides the processing of these commands based on priority, allowing critical operations to be executed first while less critical operations follow. This segmentation resolves the contradiction by organizing command processing without requiring complete redesign of the device architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-establishing a priority scheme and categorization system for internal data movement commands before execution. The scheduler is configured in advance with knowledge of which command types have higher priority (wear leveling and data relocation) versus lower priority (garbage collection). This preliminary organization enables efficient performance without adding complex runtime decision-making logic.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If wear leveling and data relocation are prioritized over garbage collection, then data integrity is improved, but operational continuity may be compromised

Engineering Contradiction:
Improvedata integrityVSAvoidoperational continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by implementing a flexible scheduling mechanism that can adapt command processing based on current system state. While wear leveling and data relocation are generally prioritized for data integrity, the scheduler dynamically adjusts processing based on queue depths and operational needs. Garbage collection is not completely deprioritized but rather processed in a dynamic manner that ensures operational continuity when appropriate.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements periodic action through a round-robin scheduling approach where different command types are serviced in alternating cycles. The scheduler periodically switches between high-priority commands (wear leveling, data relocation) and lower-priority commands (garbage collection), ensuring that all operations receive attention over time. This periodic servicing maintains data integrity while preventing any single command type from monopolizing system resources.

Inventive Principle:
Principle #19Periodic action

3Productivity

If garbage collection is serviced continuously, then operational continuity is maintained, but data relocation and wear leveling may be delayed

Engineering Contradiction:
Improveoperational continuityVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent maintains continuity of useful action by ensuring that garbage collection, while not always the highest priority, receives continuous periodic attention through the round-robin scheduling mechanism. The scheduler ensures that garbage collection commands are periodically serviced without interruption, maintaining operational continuity. Simultaneously, the system continues to service wear leveling and data relocation commands in alternating cycles, preventing complete delay of these operations.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11816338B2Priority-based data movement
Publication Date: 2023.11.14 SANDISK TECHNOLOGIES LLC
  • US11816338B2 patent drawing
  • US11816338B2 patent drawing
  • US11816338B2 patent drawing

AI summary

A data storage device that provides priority-based internal data movement includes a controller communicatively coupled to volatile memory and to non-volatile memory circuits, where the controller is configured to queue requests in a plurality of queues in the volatile memory, where each of the requests is associated with one of a plurality of internal data movement command types. The controller is also configured to select one of the plurality of queues based on a prioritization of the plurality of internal data movement command types. The controller is also configured to determine that the selected queue includes at least one request of the associated internal data movement command type. The controller is also configured to issue the at least one request from the selected queue to at least one of the non-volatile memory circuits.