KV Storage ECC Parity Allocation for Lower-Latency Error Correction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Key-Value (KV) databases in data storage devices face inefficiencies due to the need for translation layers and complex transaction mapping, leading to increased latency, power consumption, and reduced performance in data storage operations.

Innovation Solution

A data storage controller with an error correction code (ECC) engine and flash translation layer (FTL) that separates data into sub-code blocks and allocates parity bits, enabling asymmetric ECC coding and spatially-coupled LDPC coding to improve data storage efficiency and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a translation layer is used to map key/value to block storage, then data can be stored in traditional block storage format, but performance decreases due to multiple mapping layers and increased latency

Engineering Contradiction:
Improvetransactions per secondVSAvoidtranslation layer complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent removes the traditional translation layer from the storage system architecture. Instead of using a Flash Translation Layer (FTL) to map logical key/value addresses to physical block locations, the system directly stores key/value pairs in the flash memory, eliminating the complexity of multiple mapping layers and improving transaction throughput

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the storage space into key-value specific regions rather than traditional block structures. Each key/value pair is allocated its own storage region with dedicated metadata, eliminating the need for complex translation mappings and reducing latency

Inventive Principle:
Principle #1Segmentation

2Reliability

If traditional ECC coding is used on entire data blocks, then error correction is provided, but latency increases due to processing large blocks and reduced correction capability

Engineering Contradiction:
Improveerror correction capabilityVSAvoidECC processing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides traditional large data blocks into smaller sub-code blocks for independent ECC processing. Each sub-code block is processed separately by the ECC engine, reducing the time required for error correction while maintaining or improving correction capability through finer-grained error detection and correction

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different ECC coding strategies to different portions of data based on their importance and access patterns. Critical data portions receive stronger error correction while less critical portions use lighter coding, optimizing both reliability and processing latency

Inventive Principle:
Principle #3Local quality

3Ease of manufacture

If parity bits are uniformly distributed across all data, then simple ECC processing is achieved, but correction capability is reduced for specific data portions

Engineering Contradiction:
ImproveECC processing simplicityVSAvoiderror correction capability
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent implements asymmetric parity distribution where different portions of data receive different amounts of parity protection based on their importance. Critical data regions receive higher parity density while less critical regions receive lower density, optimizing correction capability where needed while maintaining processing efficiency

Inventive Principle:
Principle #4Asymmetry

Solution Approach 2:

The patent applies localized quality enhancement by concentrating ECC resources on specific data portions that require higher reliability. This allows the system to maintain overall processing simplicity while providing enhanced correction capability for critical data regions

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11934264B2ECC parity biasing for Key-Value data storage devices
Publication Date: 2024.03.19 SANDISK TECHNOLOGIES LLC
  • US11934264B2 patent drawing
  • US11934264B2 patent drawing
  • US11934264B2 patent drawing

AI summary

Error correction code (ECC) coding for key-value data storage devices. In one embodiment, a controller includes a memory interface configured to interface with a memory; an ECC engine configured to perform ECC coding on data stored in memory; a controller memory including a flash translation layer and a namespace database; and an electronic processor. The electronic processor is configured to receive data to be stored, separate the data into a plurality of sub-code blocks, and allocate parity bits to each sub-code block of the plurality of sub-code blocks.