SSD Array Write Granularity for Power-Failure Data Retention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing solid-state storage systems face inefficiencies in write granularity, leading to compromised read performance and data loss during power failures due to the requirement for writes to be in multiples of logical pages, which cannot accommodate data of sizes less than a single NAND programming cycle.

Innovation Solution

The solution involves reducing the write granularity to less than the logical block size by caching remaining data in a buffer, such as DRAM, and upon power loss, relocating this data to non-volatile memory for storage, ensuring data retention and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If writes are performed in multiples of logical pages, then write operations can be executed with standard NAND programming cycles, but data loss occurs during power failures and write granularity cannot accommodate smaller data sizes

Engineering Contradiction:
Improvedata retention during power failureVSAvoidwrite operation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The write operation is segmented into two parts: data that fits complete logical pages is written to non-volatile storage, while remaining data that doesn't fit complete pages is cached in volatile memory. This segmentation allows the system to handle both complete and partial write scenarios efficiently, improving reliability without sacrificing productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Volatile memory serves as an intermediary between the write operation and non-volatile storage. It temporarily holds remaining data that cannot be written in complete logical page multiples, acting as a buffer that prevents data loss during power failures while maintaining write efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If write granularity is reduced below logical page size, then smaller data sizes can be accommodated, but read performance deteriorates due to inability to read less than a logical page

Engineering Contradiction:
Improvewrite size flexibilityVSAvoidread performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The system applies different quality characteristics to different parts of the storage hierarchy: volatile memory provides fine-grained access for small writes, while non-volatile storage maintains its native page-based structure for optimal read performance. Each storage medium operates in its optimal performance zone.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The solution adds a temporal dimension to the storage system by using volatile memory for immediate, fine-grained write operations and non-volatile storage for persistent, page-aligned data. This two-layer approach resolves the contradiction between write flexibility and read performance.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If volatile memory is used to cache remaining data, then data retention during power failure is improved, but device complexity increases due to additional memory management requirements

Engineering Contradiction:
Improvedata retention during power failureVSAvoidmemory management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by allocating and preparing volatile memory buffers in advance of actual write operations. This pre-configuration simplifies the write path and reduces the complexity of real-time memory management decisions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The volatile memory cache is discarded (cleared) after successful write completion or power failure, and recovered (reallocated) for the next write operation. This simple lifecycle management reduces complexity compared to persistent cache management schemes.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS12499043B2Writing data to a solid state storage array to accommodate power failure
Publication Date: 2025.12.16 PURE STORAGE INC
  • US12499043B2 patent drawing
  • US12499043B2 patent drawing
  • US12499043B2 patent drawing

AI summary

A storage array controller may receive a write request comprising data to be stored at one or more solid-state storage devices. A write granularity associated with the write request may be generated that is less than a logical block size associated with the storage array controller. The data associated with the write request may be segmented based on the generated write granularity. The write request may be executed to store the segmented data at the one or more solid-state storage devices.