Persistent Memory Buffering for QLC NAND Flash Endurance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

QLC NAND flash memory exhibits limited endurance and inefficient write operations due to its requirement for writing entire blocks, leading to unnecessary write cycles and reduced performance in high-density storage scenarios, particularly in servers.

Innovation Solution

Implementing a persistent, non-volatile memory system that uses 3D XPoint memory for metadata indexing and buffering, allowing for efficient storage and retrieval of data by grouping small objects into storage bins and utilizing SSD sequential I/O bandwidth to improve write performance and endurance, while eliminating the need for background compaction processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If QLC NAND flash memory is used to increase storage density, then storage capacity is improved, but write throughput and endurance deteriorate

Engineering Contradiction:
Improvestorage capacityVSAvoidwrite throughput
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments storage objects into smaller units that can be independently managed in persistent memory, allowing selective buffering and coalescing. This enables fine-grained control over write operations, preventing unnecessary full-block writes to QLC NAND flash while maintaining high storage capacity utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by buffering storage objects in persistent memory before writing to SSD. Objects are coalesced and prepared in advance, allowing optimized write operations that consolidate multiple small writes into fewer larger writes, thereby improving write throughput without sacrificing storage density.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If QLC NAND flash memory writes entire blocks, then storage density is improved, but write efficiency deteriorates due to unnecessary write cycles

Engineering Contradiction:
Improvestorage densityVSAvoidwrite efficiency
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The patent applies partial action by writing only the necessary portions of data to SSD blocks rather than forcing entire block writes. By maintaining a buffer in persistent memory, the system can accumulate data until a complete block is ready for writing, avoiding excessive write cycles and improving write efficiency while preserving high storage density.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Persistent memory serves as an intermediary between application data and QLC NAND flash SSD. This mediator layer allows the system to decouple the application's fine-grained write operations from the SSD's block-level write requirements, enabling optimized write patterns that reduce unnecessary write cycles and improve overall write efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If persistent memory buffering is implemented, then write throughput is improved, but system complexity increases

Engineering Contradiction:
Improvewrite throughputVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes persistent memory serve multiple functions: it acts as a write buffer, a coalescing point for storage objects, a cache for metadata, and a temporary storage location during flush operations. This multi-functionality reduces the need for separate components and simplifies the overall system architecture while maintaining high write throughput.

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

Solution Approach 2:

The persistent memory buffer automatically manages storage object coalescing and prepares data for SSD writes without requiring complex external control mechanisms. The system self-regulates by monitoring buffer status and initiating flush operations when appropriate, reducing overall system complexity while improving write throughput.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10468077B2Adaptive object buffering and meta-data indexing using persistent memory to improve flash memory durability in tiered storage
Publication Date: 2019.11.05 INTEL CORP
  • US10468077B2 patent drawing
  • US10468077B2 patent drawing
  • US10468077B2 patent drawing

AI summary

Examples include techniques for storing an object in a non-volatile memory in a solid-state storage device (SSD), the SDD supporting input/output (I/O) operations of a block size, when a size of the object is greater than or equal to the block size. The object may be stored in a write buffer in a persistent memory in a computing platform when the size of the object is less than the block size. An object metadata component may be updated in the persistent memory to store attributes of stored objects, the attributes comprising at least an object identifier, an object state, and a location where the object is stored, the location being one or more of a cache in volatile memory, the write buffer, and the SSD. A flush operation may be performed to coalesce objects smaller than the block size together in the write buffer and to store the coalesced objects in the SSD when a size of coalesced objects is equal to the block size.