Relocating Straddled Logical Pages in NAND Flash

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In non-volatile memory systems like NAND Flash-based SSDs, read amplification occurs due to data misalignment between ECC payload and stored data words, leading to reduced bandwidth and efficiency, especially when data straddles across multiple ECC codewords, which is exacerbated by wear and read errors.

Innovation Solution

A method to detect and relocate logical pages straddled across codewords, storing an indication of read counts and relocating them to a different physical location when the read count exceeds a threshold, ensuring non-straddled writing to reduce read amplification and improve efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data is written out-of-place in Flash-based SSDs to accommodate block erase operations, then write flexibility is improved, but read amplification occurs when logical pages straddle across ECC codeword boundaries

Engineering Contradiction:
Improvewrite flexibilityVSAvoidread amplification
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by detecting when a logical page is straddled across ECC codeword boundaries and proactively relocates it to an aligned position before read operations occur. This prevents read amplification by ensuring that frequently accessed pages are positioned optimally in advance, resolving the contradiction between write flexibility and read efficiency.

Inventive Principle:
Principle #10Preliminary action

2Speed

If logical pages are relocated to non-straddled positions to reduce read amplification, then read performance is improved, but additional write operations are required

Engineering Contradiction:
Improveread performanceVSAvoidwrite operations
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The system employs feedback mechanisms by monitoring read access patterns of logical pages. When a page is detected to be straddled and frequently accessed, the system triggers relocation. This feedback-driven approach ensures that relocation operations are performed only when necessary, balancing read performance improvement with minimal additional write operations.

Inventive Principle:
Principle #23Feedback

3Reliability

If the entire block is erased before reuse in NAND Flash, then data integrity is maintained, but the time required to reuse blocks increases significantly

Engineering Contradiction:
Improvedata integrityVSAvoidblock reuse time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system extracts and relocates only the valid data pages from a block that needs erasure, rather than erasing the entire block. By moving valid pages to new locations and then erasing the original block, the system maintains data integrity while significantly reducing the time required to reuse blocks, as the erase operation can proceed immediately after valid data is extracted.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10528424B2Selectively de-straddling data pages in non-volatile memory
Publication Date: 2020.01.07 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10528424B2 patent drawing
  • US10528424B2 patent drawing
  • US10528424B2 patent drawing

AI summary

A computer-implemented method, according to one embodiment, includes: detecting at least one read of a logical page straddled across codewords, storing an indication of a number of detected reads of the straddled logical page, and relocating the straddled logical page to a different physical location in response to the number of detected reads of the straddled logical page. When relocated, the logical page is written to the different physical location in a non-straddled manner. Other systems, methods, and computer program products are described in additional embodiments.