Phase Change Memory Write Buffer for Small Block I/O

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Standard phase change memory (PCM)-based storage devices suffer from significant write amplification and higher latency due to their reliance on large sector sizes, leading to reduced efficiency and shorter lifespan, especially with frequent small block I/O updates.

Innovation Solution

Incorporating volatile memory, such as DRAM, into the PCM-based storage device with a controller module to manage data paths, allowing incremental storage and updates in volatile memory before writing optimized codewords to PCM media based on predetermined conditions, thereby reducing write amplification and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If standard PCM-based storage device writes data using large block size (4 KB), then the device can maintain simple write operations, but it suffers significant write amplification (32x) and higher latency when handling small block I/O updates

Engineering Contradiction:
Improvewrite operation simplicityVSAvoidstorage system efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the write operation into two distinct paths: small block writes (less than 4 KB) are handled separately from large block writes. Small writes are accumulated in a write buffer and processed in batches, while large writes go directly to PCM. This segmentation allows the system to optimize for both small and large write operations, reducing write amplification for small blocks while maintaining efficiency for large blocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by accumulating small writes in a write buffer before processing them. Instead of immediately writing each small block to PCM, the system buffers these writes and processes them in batches when certain conditions are met (buffer full, timeout, or host flush). This preliminary accumulation reduces the number of write operations to PCM, thereby reducing write amplification.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If standard PCM-based storage device performs read-modify-write operations for small updates, then data can be updated correctly, but the latency becomes 2-3 times higher than direct overwriting

Engineering Contradiction:
Improvedata update correctnessVSAvoidupdate latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent merges multiple small write operations into a single batch operation. Instead of performing separate read-modify-write cycles for each small update, the system accumulates multiple writes in the buffer and processes them together. This merging reduces the total number of read and write operations to PCM, significantly reducing latency while maintaining data correctness through proper buffer management and error correction coding.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The write buffer acts as an intermediary between the host and PCM media. It temporarily holds small writes and manages the timing and batching of writes to PCM. This intermediary layer allows the system to decouple the host's write requests from the actual PCM write operations, enabling optimization of write patterns and reducing latency without compromising data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If PCM media is written to frequently with small blocks, then the storage device can handle high I/O updates, but the lifespan of PCM media decreases due to limited program cycles (10^-7)

Engineering Contradiction:
ImproveI/O update frequencyVSAvoidPCM media lifespan
Core Design Contradiction:
ProductivityVSDuration of action of stationary object

Solution Approach 1:

The patent implements periodic action by flushing the write buffer to PCM at specific intervals rather than continuously. The flush conditions include: when the buffer is full, when a timeout period expires, when the host issues a flush command, or when power is lost. This periodic flushing reduces the frequency of writes to PCM, thereby extending media lifespan while still maintaining the ability to handle high I/O update frequencies through buffer accumulation.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent applies discarding and recovering by temporarily holding write data in the volatile write buffer instead of immediately committing it to PCM. This allows the system to discard individual small writes in favor of batch processing, recovering the benefit of high I/O frequency while minimizing actual writes to PCM media. The buffer is periodically discarded (flushed) to PCM when conditions warrant, optimizing the balance between productivity and lifespan.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10564856B2Method and system for mitigating write amplification in a phase change memory-based storage device
Publication Date: 2020.02.18 CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PTE LTD
  • US10564856B2 patent drawing
  • US10564856B2 patent drawing
  • US10564856B2 patent drawing

AI summary

One embodiment facilitates mitigating write amplification in a phase change memory-based storage device. During operation, the system receives, by a controller of the storage device, data to be stored in a phase change memory (PCM) of the storage device. The system writes, by the controller, the data to a sector of a volatile memory of the same storage device to obtain an updated portion of the sector. In response to detecting a predetermined condition, the system writes the updated portion to the PCM.