Storage Controller Write Stream Separation for Lower Write Amplification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing amount of data production, particularly with the rise of IoT devices and complex machine learning models, has made efficient data storage challenging due to resource-intensive write processes and limitations in write cache capacity in non-volatile storage controllers.

Innovation Solution

The method involves forming write stripes using blocks from non-volatile storage channels, grouping them into first and second logical erase units, and assigning these units to store new data and relocation data separately, with sub-page stripe writing to reduce write amplification and improve data retention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is written to non-volatile storage using traditional methods, then data storage capacity is increased, but write amplification increases and data retention deteriorates

Engineering Contradiction:
Improvedata storage capacityVSAvoidwrite amplification
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The patent segments write operations into two distinct streams: new data writes and relocation data writes. Each stream is handled separately through dedicated sub-stripes within logical erase units, allowing optimized processing for each type of write operation and reducing overall write amplification

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts relocation data from the general write stream and handles it separately through dedicated sub-stripes. This separation allows the controller to optimize new data writes without being constrained by relocation operations, thereby reducing write amplification

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If write cache capacity is increased to handle more data, then data writing efficiency is improved, but controller complexity and resource requirements increase

Engineering Contradiction:
Improvedata writing efficiencyVSAvoidcontroller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the write cache into dedicated sub-stripes for new data and relocation data within logical erase units. This segmentation allows efficient utilization of existing cache resources without requiring additional cache capacity, thereby improving writing efficiency without increasing controller complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic allocation of sub-stripes within logical erase units, where the controller can flexibly assign sub-stripes to different write streams based on current workload requirements. This dynamic approach optimizes cache utilization without requiring fixed additional cache resources

Inventive Principle:
Principle #15Dynamics

3Loss of energy

If data is stored in separate locations for new data and relocation data, then write amplification is reduced, but storage organization complexity increases

Engineering Contradiction:
Improvewrite amplificationVSAvoidstorage organization complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent nests sub-stripes within logical erase units, creating a hierarchical structure where multiple sub-stripes are contained within each logical erase unit. This nesting allows separate handling of new data and relocation data while maintaining a unified storage organization framework, reducing the complexity increase that would result from completely separate storage locations

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS12561098B1Write stream separation for storage controllers
Publication Date: 2026.02.24 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12561098B1 patent drawing
  • US12561098B1 patent drawing
  • US12561098B1 patent drawing

AI summary

A method according to one approach is for organizing blocks in a non-volatile storage controller. The method includes: forming a write stripe using a single block from channels of the non-volatile storage. First and second logical erase units are also formed by grouping the blocks from the formed write stripe into at least first and second sub-stripes. The first sub-stripe is assigned to store new data, and the second sub-stripe is assigned to store relocation data. Moreover, writing data to the respective sub-stripes is performed sub-page stripe by sub-page stripe.