Concurrent Write Erase Solid State Storage Channels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage devices like solid state drives (SSDs), the need to erase blocks prior to writing new data leads to performance bottlenecks, especially in high-access-load environments like data centers, as it reduces throughput due to the extra delay in freeing up space.

Innovation Solution

Implementing concurrent write and erase commands on separate media access channels allows the storage device to write data while simultaneously erasing blocks marked for deletion, eliminating the need for immediate erasure before writing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If the storage device erases blocks prior to writing new data, then the data can be written to the correct location, but the throughput performance decreases due to extra delay

Engineering Contradiction:
Improvedata writing accuracyVSAvoidthroughput performance
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system performs preliminary actions by marking blocks for deletion immediately when data is moved or deleted, rather than waiting until a write operation is needed. This allows the erase operation to be prepared in advance, reducing the delay when actual write operations occur. The deletion marker is set in the block metadata as soon as the block becomes available for reuse.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The write operation is segmented into multiple independent channels: a first media access channel handles write operations while a second media access channel handles erase operations simultaneously. This segmentation allows both operations to proceed in parallel without interfering with each other, improving overall throughput while maintaining data integrity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the storage device waits for adequate free pages before writing, then data integrity is maintained, but significant performance bottleneck occurs under heavy access load

Engineering Contradiction:
Improvedata integrityVSAvoidI/O rate
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system maintains continuous useful action by keeping multiple media access channels active simultaneously - one channel continuously accepting write requests while another channel continuously performing erase operations on marked blocks. This eliminates idle waiting time and maintains continuous data flow through the storage system, improving I/O rate without compromising data integrity.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

Blocks are marked for deletion in advance when they become available, creating a pool of pre-identified blocks ready for erasure. This preliminary marking action allows the system to quickly allocate clean blocks for new writes without searching or waiting, maintaining both reliability and high performance under heavy load.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If the local controller performs sequential erase then write operations, then proper block management is ensured, but the access delay increases

Engineering Contradiction:
Improveblock management simplicityVSAvoidaccess delay
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The block management process is segmented into independent operations executed on separate channels: block marking for deletion, erase operations, and write operations all occur simultaneously on different media access channels. This segmentation maintains proper block management through independent channel control while eliminating the sequential delay between erase and write operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system merges the erase operation and write operation into a concurrent process by allocating different media access channels for each operation. This combining of operations in parallel time slots achieves the same block management goals as sequential operations but without the time penalty of waiting for one operation to complete before starting the other.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9111598B2Increased I/O rate for solid state storage
Publication Date: 2015.08.18 NETAPP INC
  • US9111598B2 patent drawing
  • US9111598B2 patent drawing
  • US9111598B2 patent drawing

AI summary

The storage device receives a write request from a disk controller to write data to a storage array. The storage device determines that one or more blocks are marked for deletion. In response to receiving the write request and determining that blocks are marked for deletion, the storage device issues a write command on a first media access channel for a first location of the storage array, and issues an erase command on a second media access channel for a different storage location of the storage array. Thus, the commands are issued concurrently on different channels.