uLayer Sorting for Random Read Latency in SSD Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage devices face performance issues with random read commands due to the inefficiencies in the uLayer structure, such as increased latency and memory usage caused by the need for additional searches and storage space, especially with the use of bloom filters and sub-lists.

Innovation Solution

Organizing the uLayer into a sorted and unsorted section, where data mappings are sorted by chronological order, allowing the controller to provide only the most recent updates for read commands, thereby ignoring non-recent updates and optimizing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a bloom filter is added per region of the uLayer to answer if a requested entry is not in the searched region, then random access performance may be improved, but storage space is consumed and false positive results may cause additional searches increasing latency

Engineering Contradiction:
Improverandom access performanceVSAvoidlatency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent extracts only the essential sorting information from the uLayer data structures, organizing mSets by their lowest LBA range in sorted order without implementing full bloom filters or sub-lists. This extraction approach provides sufficient performance improvement for random access while avoiding the storage overhead and false positive issues associated with bloom filters.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies sorting locally to the mSet groups based on their lowest LBA ranges, creating a localized organizational structure that improves search efficiency without requiring global restructuring of all uLayer data. This local sorting provides targeted performance improvement where needed while minimizing overall system complexity.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If updates to the uLayer are located in a sub-list, then update management may be improved, but additional memory storage space is required increasing latency

Engineering Contradiction:
Improveupdate managementVSAvoidmemory storage space
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent merges the sorted mSet group structure with the update management functionality, where the same sorted structure serves both as the organizational framework and as the mechanism for tracking updates. This eliminates the need for separate sub-lists while maintaining efficient update management capabilities.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The sorted mSet group structure serves multiple functions simultaneously: it organizes data for efficient searching, tracks update locations, and manages the uLayer structure. This multi-functional approach replaces dedicated sub-lists for update management, reducing overall memory storage requirements while maintaining operational ease.

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

3Reliability

If the uLayer is searched for every read command to locate the most recent update, then data accuracy is ensured, but additional search time is required decreasing performance

Engineering Contradiction:
Improvedata accuracyVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary sorting of mSet groups by their lowest LBA ranges during data ingestion or idle periods, organizing the structure in advance to enable efficient sequential scanning during read operations. This preliminary organization allows the system to quickly identify the most recent updates without performing exhaustive searches, maintaining data accuracy while improving performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11989431B2Write updates sorting during BKOPS idle
Publication Date: 2024.05.21 SANDISK TECHNOLOGIES LLC
  • US11989431B2 patent drawing
  • US11989431B2 patent drawing
  • US11989431B2 patent drawing

AI summary

A data storage device includes a memory device and a controller coupled to the memory device. The controller is configured to store data mappings in an uLayer, where the uLayer includes a plurality of mSet updates, and where the uLayer is organized into a sorted section and an unsorted section, sort one or more of the plurality of mSet updates of the uLayer, and provide, to a host device, data stored in the memory device corresponding to a most recent update of a data mapping by ignoring non-recent updates for a read command associated with an mSet group of the sorted section.