SSD Controller Die Coloring for Write Collision Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current solid-state drives (SSDs) face challenges in improving read reply performance due to tail latency caused by die collisions during write and erase operations in NAND flash memory, which can lead to reduced lifespan and increased load on application development to manage varying SSD models.

Innovation Solution

The SSD employs a 'coloring' function that assigns priorities to non-volatile memory die sets, allowing the controller to select a writing destination die based on received identifiers from the host, distributing write operations across dies within a set to manage wear leveling and performance, thereby reducing die collisions and extending SSD lifespan.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If write operations are concentrated on specific dies to improve write speed, then productivity is improved, but die collisions increase causing tail latency and reducing reliability

Engineering Contradiction:
Improvewrite speedVSAvoidread reply performance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the plurality of dies into multiple die sets, where each die set includes two or more dies. The controller manages these die sets separately and selects writing destination dies from different die sets based on die collision probability, thereby distributing write operations to reduce collisions while maintaining write speed.

Inventive Principle:
Principle #1Segmentation

2Reliability

If write operations are distributed across all dies to reduce die collisions, then reliability is improved, but device complexity increases due to management overhead

Engineering Contradiction:
Improveread reply performanceVSAvoidcontroller management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

By segmenting dies into die sets and managing them as unified units rather than individual dies, the controller reduces management complexity. The segmentation allows the controller to handle die collision probability at the die set level, simplifying the selection process while still achieving distributed write operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller dynamically selects writing destination dies based on die collision probability calculations, adapting to the current state of the memory system. This dynamic selection process optimizes write distribution without requiring complex static management structures.

Inventive Principle:
Principle #15Dynamics

3Duration of action of stationary object

If priorities are assigned to individual dies for wear leveling, then lifespan is extended, but device complexity increases due to priority management

Engineering Contradiction:
ImproveSSD lifespanVSAvoidpriority management complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The patent assigns priorities to die sets rather than individual dies, reducing the granularity of priority management. This segmentation approach maintains wear leveling effectiveness while simplifying the priority management mechanism, as the controller manages fewer priority levels corresponding to die sets instead of individual dies.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10365857B2Memory system
Publication Date: 2019.07.30 KIOXIA CORP
  • US10365857B2 patent drawing
  • US10365857B2 patent drawing
  • US10365857B2 patent drawing

AI summary

A memory system capable of being connected to a host, includes a non-volatile memory that includes a plurality of non-volatile memory dies, and a controller that is electrically connected to the non-volatile memory. The controller is configured to manage the plurality of non-volatile memory dies as a plurality of die sets, each die set including two or more of the non-volatile memory dies to which priorities are assigned respectively, select one die set from the plurality of die sets based on an identifier received from the host, and select, based on the assigned priorities, a non-volatile memory die from the selected die set as a writing destination die of write data received from the host.