SLC Write Buffer Threshold Control for Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage systems face sub-optimal read performance, power waste, and excessive write amplification due to premature flushing of data from single-level cell (SLC) write buffers to multi-level cell (MLC) blocks, which can lead to bottlenecks and inefficient energy use.

Innovation Solution

Implementing a method where the host provides a threshold for data storage in the SLC write buffer, allowing the controller to flush data to MLC blocks only when the buffer exceeds this threshold, thereby maintaining a controlled amount of data in the SLC buffer and optimizing write amplification, energy usage, and read latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is flushed frequently from SLC write buffer to MLC blocks, then data loss is reduced, but write amplification increases and energy is wasted

Engineering Contradiction:
Improvedata loss preventionVSAvoidenergy waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent changes the parameter of flush timing from frequent/periodic flushing to threshold-based flushing. The controller monitors the amount of data in the SLC write buffer and only initiates flush operations when the data volume exceeds a predetermined threshold, thereby reducing unnecessary flush operations and associated energy consumption while maintaining data reliability.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Instead of flushing data continuously or at every possible opportunity, the patent applies partial action by flushing only when necessary (when threshold is exceeded). This reduces the frequency of flush operations to the minimum required level, decreasing write amplification and energy waste while still preventing data loss.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If data is flushed frequently from SLC write buffer to MLC blocks, then data reliability is improved, but write speed decreases

Engineering Contradiction:
Improvedata loss preventionVSAvoidwrite speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the flush operation parameter from frequent/continuous to threshold-based, allowing data to accumulate in the SLC buffer up to a certain point. This reduces the frequency of flush operations, minimizing interruptions to write operations and maintaining higher write speeds while ensuring data is eventually flushed for reliability.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent maintains continuous write operations into the SLC buffer without interruption, only pausing briefly when threshold-based flush operations are triggered. This continuity of useful write action preserves write speed while periodic flushes ensure data reliability.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of time

If data is kept in SLC write buffer longer, then read latency is improved, but buffer overflow risk increases

Engineering Contradiction:
Improveread latencyVSAvoidbuffer overflow
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent introduces a threshold parameter that controls when flush operations occur. By setting an appropriate threshold value, the system allows data to remain in the SLC buffer long enough to improve read latency (faster reads from SLC compared to MLC), while the threshold mechanism prevents the buffer from overflowing by triggering flushes when the threshold is reached.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements feedback control by continuously monitoring the data volume in the SLC write buffer and comparing it against the predetermined threshold. When the threshold is exceeded, the system triggers a flush operation, creating a feedback loop that dynamically adjusts buffer management to prevent overflow while maximizing read performance.

Inventive Principle:
Principle #23Feedback

4Loss of energy

If threshold-based flushing is implemented, then energy consumption is reduced, but system complexity increases

Engineering Contradiction:
Improveenergy consumptionVSAvoidcontrol mechanism
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent implements a simple parameter change approach by introducing a single threshold value that the controller compares against the current buffer data volume. This straightforward parameter-based control mechanism achieves energy reduction through reduced flush operations without requiring complex algorithms or control logic, thus minimizing the increase in system complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11842069B2Storage system and method for delaying flushing of a write buffer based on a host-provided threshold
Publication Date: 2023.12.12 SANDISK TECHNOLOGIES LLC
  • US11842069B2 patent drawing
  • US11842069B2 patent drawing
  • US11842069B2 patent drawing

AI summary

A storage system allocates single-level cell (SLC) blocks in its memory to act as a write buffer. A host sends the storage system a threshold indicating an amount of data that should be stored in the write buffer before the storage system flushes the write buffer to multi-level cell (MLC) blocks in the memory. Using this threshold can extend the amount of time that data is maintained in the write buffer, which can reduce the write-amplification factor and power consumption, as well as increase read performance of the data.