Direct-Mapped Flash Storage With Host-Side Address Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage systems face inefficiencies in managing flash memory, particularly in addressing data blocks directly without address translation, leading to increased latency and reduced reliability due to unnecessary write operations.

Innovation Solution

Implementing a direct-mapped flash storage system where the operating system initiates and controls processes across flash drives, offloading device management from storage controllers, and using non-volatile RAM as a buffer to improve write performance and reduce wear on flash memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If storage controllers manage flash drives with address translation, then data access flexibility is improved, but write latency increases and flash memory wear increases due to unnecessary write operations

Engineering Contradiction:
Improvedata access flexibilityVSAvoidwrite latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent extracts the address translation function from the storage controller and moves it to the host system. This allows the storage controller to operate in a simpler direct-mapped mode, reducing its processing overhead and write latency while the host system handles the complexity of address translation independently

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a buffer memory as an intermediary between the host system and flash memory. This buffer absorbs write operations, allowing the host to initiate writes without waiting for flash completion, thereby reducing perceived write latency while preventing unnecessary flash wear through selective write operations

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If storage controllers manage flash drives with address translation, then data access flexibility is improved, but reliability decreases due to increased write operations

Engineering Contradiction:
Improvedata access flexibilityVSAvoidflash memory reliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

By removing the address translation function from the storage controller, the patent eliminates the controller's need to manage complex write operations and translations, reducing the overall number of write operations to flash memory and improving reliability

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The host system takes self-responsibility for address translation and write optimization, making intelligent decisions about which writes are necessary. This self-service approach prevents unnecessary writes that would occur with traditional controller-managed translation, thereby extending flash memory lifespan

Inventive Principle:
Principle #25Self-service

3Extent of automation

If storage controllers manage flash drives, then device management is centralized, but system complexity increases

Engineering Contradiction:
Improvedevice management automationVSAvoidstorage system complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent extracts the address translation and data management functions from the storage controller and relocates them to the host system. This simplifies the storage controller to a basic I/O device while distributing the complexity to the host, which already has the computational resources to handle it

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20240370209A1Dynamic Interfaces Created Using Generative Artificial Intelligence
Publication Date: 2024.11.07 PURE STORAGE INC
  • US20240370209A1 patent drawing
  • US20240370209A1 patent drawing
  • US20240370209A1 patent drawing

AI summary

Dynamic interfaces created using generative artificial intelligence, including: receiving a natural language input via a natural language interface for a storage system; providing an input to a generative artificial intelligence (AI) model comprising the natural language input; and receiving, from the generative AI model and based on the input, one or more user interface elements.