RAID Controller Parity Buffering for SSD Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices, such as SSDs, face challenges in using file systems due to their erase-before-write characteristic, which hinders efficient non-sequential input/output processes and requires optimized interfaces for different usage scenarios, and RAID storage systems aim to enhance reliability by distributing data across multiple devices but may face issues with simultaneous failures.

Innovation Solution

A storage device comprising multiple nonvolatile memories and a controller that performs parity operations across these memories, buffering intermediate results and transferring them between different memory components to ensure data reliability and efficiency, even in the presence of errors or data flow delays.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If flash memory devices are used for high capacity storage, then storage capacity increases, but the erase-before-write characteristic hinders efficient non-sequential input/output processes

Engineering Contradiction:
Improvestorage capacityVSAvoidnon-sequential input/output efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the storage system into multiple storage devices forming a RAID array, where data is divided into stripes and distributed across devices. This segmentation allows parallel processing of different stripe segments, improving non-sequential I/O efficiency while maintaining high storage capacity through distributed storage architecture

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a buffer memory as an intermediary component between the host and flash memory devices. The buffer memory temporarily stores data during transfer operations, enabling efficient handling of non-sequential I/O by decoupling the host's data access patterns from the flash memory's erase-before-write constraints

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If RAID storage system distributes data across multiple devices, then data reliability improves, but system complexity increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the control functions of multiple storage devices into a single RAID controller that manages the entire array. The controller handles parity calculations, data distribution, and error recovery centrally, simplifying the overall system architecture while maintaining the reliability benefits of distributed storage across multiple devices

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The RAID controller is designed as a universal component that performs multiple functions including data striping, parity generation, error detection, and recovery operations. This multi-functional approach consolidates complex RAID management tasks into a single device, reducing system complexity while ensuring data reliability across the distributed storage array

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If parity operation is performed continuously, then data reliability is maintained, but processing time increases when errors occur

Engineering Contradiction:
Improvedata reliabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary parity calculations on received data stripes before storing them in the buffer memory. By pre-computing parity information and storing it alongside the data stripes, the system avoids time-consuming parity recalculations during error recovery scenarios, thus maintaining data reliability while reducing processing time when errors occur

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10521152B2Storage device storing data in raid manner
Publication Date: 2019.12.31 SAMSUNG ELECTRONICS CO LTD
  • US10521152B2 patent drawing
  • US10521152B2 patent drawing
  • US10521152B2 patent drawing

AI summary

A storage device includes a plurality of nonvolatile memories and a controller. The plurality of nonvolatile memories are configured to distributively store first and second stripes of a stripe set. The controller includes a first memory and a second memory within the controller. The controller is configured to receive the first and second stripes from a host, distributively store the first and second stripes in the plurality of nonvolatile memories, and to perform a parity operation based on the first and second stripes. The controller is configured to generate intermediate parity based on the first stripe and store the intermediate parity in the first memory. If the parity operation is stopped, the controller is configured to move the intermediate parity stored in the first memory to the second memory.