Memory Parity Reconstruction for Parallel Die Read Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face limitations in reading data from multiple dies concurrently, leading to suboptimal performance and reduced bandwidth due to the need to read one data portion at a time from a die, while other dies are busy, which affects the efficiency of memory read operations.

Innovation Solution

Implementing a method that utilizes striping and parity data to read data from multiple dies in parallel, where the parity data is used to reconstruct missing data from one die without actually reading it, allowing concurrent reads from other dies, thereby increasing data readout bandwidth without altering the read/write speed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is read sequentially from multiple dies, then data integrity is maintained, but bandwidth and read efficiency are reduced

Engineering Contradiction:
Improveread efficiencyVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Parity data is pre-calculated and stored alongside the main data before any read operations occur. This preliminary preparation enables subsequent parallel reads to proceed without waiting for integrity verification, as the parity information is already available to reconstruct any missing data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Parity data acts as an intermediary element that mediates between multiple dies during parallel read operations. When one die cannot be read simultaneously with others, the parity data serves as a substitute that allows the system to maintain data integrity while proceeding with parallel reads from other dies.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If parallel reads are performed from multiple dies, then bandwidth is increased, but data reconstruction complexity increases

Engineering Contradiction:
ImprovebandwidthVSAvoiddata reconstruction complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The data storage is segmented into multiple independent dies, each containing portions of the overall data set. This segmentation allows parallel read operations to access different dies simultaneously, increasing bandwidth while the parity mechanism handles the coordination of data reconstruction across these segmented units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the parameter of data representation by introducing parity data as an additional parameter. This parity parameter transforms the reconstruction process from a complex multi-variable problem into a simpler calculation where missing data can be directly derived through XOR operations with the stored parity information.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If concurrent reads from multiple dies are enabled, then access time is reduced, but the need for parity management increases system complexity

Engineering Contradiction:
Improveaccess timeVSAvoidparity management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The parity data mechanism is designed to be self-sufficient, automatically handling the reconstruction of missing data without requiring complex external management. The XOR-based parity calculation and reconstruction processes are inherently simple operations that can be executed automatically by the storage system itself, minimizing the need for sophisticated parity management infrastructure.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11675661B2Increased memory access parallelism using parity
Publication Date: 2023.06.13 MICRON TECHNOLOGY INC
  • US11675661B2 patent drawing
  • US11675661B2 patent drawing
  • US11675661B2 patent drawing

AI summary

Disclosed in some examples are memory devices which increase a parallelism of host operations of a memory device. While a first block of data from a first stripe in a first memory die is being read, blocks of data belonging to a second stripe stored in memory dies other than the first memory die are concurrently read. This includes reading the parity value of the second stripe. The parity data, along with the blocks of data from the second stripe from dies other than the first die are then used to determine the block of data of the second stripe stored in the first memory die without actually reading the value from the block in the first memory die. This reconstruction may be done in parallel with additional read operations for other data performed on the first die.