Storage Controller Stream State Management for Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage devices, such as SSDs, face challenges with limited volatile memory capacity and write delays due to the need for generating and storing parity data, which consumes valuable memory space and time for data transfer.

Innovation Solution

Implementing a controller that restricts the number of open and active streams, switches streams between active and closed states based on time, and optimizes parity data generation and transfer between RAM1 and RAM2 to manage memory usage efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple streams are kept open simultaneously to handle multiple write operations, then the storage device can service multiple streams in parallel, but the volatile memory space is consumed excessively and write delays increase

Engineering Contradiction:
Improveparallel stream servicing capabilityVSAvoidvolatile memory space consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic stream state management where streams can transition between open and closed states based on activity. The controller monitors stream usage and automatically closes inactive streams to free volatile memory resources while keeping active streams open for continued operations, optimizing the balance between parallel processing capability and memory consumption.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of streams by introducing time-based thresholds and state transitions. Streams are monitored for inactivity periods, and when exceeding predetermined thresholds, their state changes from open to closed, altering memory allocation parameters and freeing volatile memory for other uses while maintaining serviceability of active streams.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If more volatile memory is allocated to store parity data for multiple open streams, then data protection capability is improved, but the device cost increases and memory availability for other data decreases

Engineering Contradiction:
Improvedata protection capabilityVSAvoidvolatile memory capacity requirement
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic allocation of volatile memory for parity data based on the number of currently open streams. When streams are closed due to inactivity, the parity memory associated with those streams is freed and reallocated to active streams, maintaining adequate data protection for all open streams without requiring excessive total memory capacity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system discards parity data storage for closed streams and recovers that volatile memory space for use by active streams. When a stream transitions from open to closed state, its parity data is no longer maintained in volatile memory, freeing resources that are immediately available for protecting data from currently active streams.

Inventive Principle:
Principle #34Discarding and recovering

3Productivity

If the number of open streams is increased to improve data throughput, then write capacity is improved, but transfer time between volatile memories increases causing write delays

Engineering Contradiction:
Improvewrite throughput capacityVSAvoiddata transfer time between memories
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic stream lifecycle management with automatic activation and deactivation based on usage patterns. By closing inactive streams and activating new ones only when needed, the system maintains an optimal number of concurrent streams that maximizes throughput while keeping data transfer operations within acceptable time limits, preventing write delays.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11194521B1Rate limit on the transitions of streams to open
Publication Date: 2021.12.07 SANDISK TECHNOLOGIES LLC
  • US11194521B1 patent drawing
  • US11194521B1 patent drawing
  • US11194521B1 patent drawing

AI summary

The present disclosure generally relates to methods of operating storage devices. The storage device comprises a controller comprising first random access memory (RAM1), second random access memory (RAM2), and a storage unit divided into a plurality of streams. The controller restricts the host to a maximum number of streams that can be in the open and active state at a time. Open streams can be switched to the closed state, and vice versa, upon a predetermined amount of time expiring. The maximum number of open streams is based on one or more amounts of time to: generate parity data, copy the parity data from the RAM2 to the RAM1, update the parity data, switch a stream from the open and active state to the closed state, and the amount of space in a temporary RAM1 buffer.