Multi-namespace Storage Device Mapping Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current NVMe storage devices in multi-tenant environments face performance degradation due to shared physical addresses across different logical namespaces, which are divided based on purposes like metadata write or sequential write, leading to inefficient resource allocation and mapping.

Innovation Solution

A multi-namespace storage device and system that utilize distinct mapping attributes for each namespace, where a dedicated physical address is mapped to a namespace using sequential write, allowing for separate logical and physical mapping operations based on namespace classification, enhancing resource utilization and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If physical addresses are shared across different logical namespaces, then device complexity is reduced, but performance degradation occurs due to inefficient resource allocation

Engineering Contradiction:
Improvemapping structureVSAvoidstorage device performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the address mapping system into two distinct modes: logical mapping for metadata/random write operations and physical mapping for sequential write operations. This segmentation allows each namespace to use the most appropriate mapping strategy for its specific workload characteristics, thereby improving overall storage device performance without significantly increasing device complexity.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If a single mapping method is used for all namespaces, then ease of operation is maintained, but resource allocation efficiency decreases

Engineering Contradiction:
Improvemapping operationVSAvoidresource allocation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements a dynamic mapping selection mechanism where the storage device automatically chooses between logical mapping and physical mapping based on the namespace classification and workload type. This dynamic approach maintains ease of operation for the user while significantly improving resource allocation efficiency, as each namespace receives the optimal mapping strategy without requiring manual configuration.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If logical addresses are divided by purpose, then adaptability to different workloads is improved, but mapping overhead increases due to shared physical addresses

Engineering Contradiction:
Improvenamespace classificationVSAvoidmapping overhead
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies local quality by assigning different mapping attributes to different namespaces based on their specific workload characteristics. Metadata namespaces use logical mapping with wear leveling for random write optimization, while sequential write namespaces use physical mapping to minimize mapping overhead. This localized optimization reduces the time loss associated with mapping operations while maintaining high adaptability to various workload types.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11698738B2Multi-namespace storage device, electronic system including the storage device, and method of operating the storage device
Publication Date: 2023.07.11 SAMSUNG ELECTRONICS CO LTD
  • US11698738B2 patent drawing
  • US11698738B2 patent drawing
  • US11698738B2 patent drawing

AI summary

A multi-namespace storage device includes a nonvolatile memory which includes a first memory block and a second memory block different from the first memory block, and a memory controller which receives, from a host, a command for requesting creation of a first namespace including a first logical block number and a second namespace including a second logical page number not included in the first logical block number and receives a physical mapping command for instructing physical mapping of the first namespace. The memory controller performs a first mapping operation by mapping the first logical block number to the first memory block and performs a second mapping operation by mapping the second logical page number to a second memory page included in the second memory block in response to the physical mapping command.