Copy Redundancy in Content Addressable Memory for Key-Value Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional content addressable memory (CAM) systems in key-value data storage face limitations due to limited memory capacity and high error susceptibility, leading to 'false negatives' and 'false positives' during data retrieval, as they rely on a single copy of stored keys, which can result in data going unidentified or incorrectly matched.

Innovation Solution

Implementing copy redundancy in CAM by maintaining multiple redundant copies of stored keys, allowing for comparison with input search words and using timestamps to verify data integrity, ensuring data retrieval even if one copy is corrupted, and reducing reliance on volatile memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a single copy of stored keys is used in CAM, then memory capacity is optimized, but reliability deteriorates due to error susceptibility and false positives/negatives

Engineering Contradiction:
Improvememory capacityVSAvoiddata retrieval accuracy
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent implements copy redundancy by maintaining multiple redundant copies of stored keys in the CAM block. Each key is stored in multiple locations within the CAM, allowing the system to tolerate errors in individual copies while maintaining reliable data retrieval. This directly addresses the contradiction by sacrificing some memory capacity to multiple copies in exchange for significantly improved reliability and reduced false positives/negatives.

Inventive Principle:
Principle #26Copying

2Reliability

If multiple redundant copies of keys are maintained in CAM, then reliability improves, but memory capacity is reduced

Engineering Contradiction:
Improvedata retrieval accuracyVSAvoidmemory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent organizes multiple redundant copies of keys across different dimensions within the CAM structure, utilizing various memory locations and associations. This dimensional organization allows efficient use of CAM capacity while maintaining redundancy, as the system can access multiple copies through different address paths and association mechanisms without requiring linear increases in total capacity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Device complexity

If conventional CAM systems are used, then device complexity is low, but error correction capability is insufficient

Engineering Contradiction:
Improvesystem structureVSAvoiderror correction capability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms through timestamp verification and majority voting logic. When multiple key copies are retrieved, the system uses timestamps to verify data freshness and majority voting to determine the correct key value. This feedback loop enables automatic error correction without requiring complex external error correction codes, maintaining relatively simple device architecture while significantly improving error correction capability.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11955175B2Copy redundancy in a key-value data storage system using content addressable memory
Publication Date: 2024.04.09 MICRON TECHNOLOGY INC
  • US11955175B2 patent drawing
  • US11955175B2 patent drawing
  • US11955175B2 patent drawing

AI summary

A memory system includes a memory device comprising a value data block a content addressable memory (CAM) block storing a plurality of stored search keys. The memory system further includes a processing device that receives an input search key, identifies, from the plurality of stored search keys in a CAM block of a memory device, multiple redundant copies of a stored search key that match the input search key, and determines a plurality of locations in a value data block, the plurality of locations corresponding to the multiple redundant copies, wherein one of the plurality of locations comprises a first timestamp and data representing a value associated with the input search key, and wherein a remainder of the plurality of locations comprises one or more additional timestamps. The processing device further determines whether the first timestamp matches the one or more additional timestamps, and responsive to the first timestamp matching the one or more additional timestamps, retries from the one of the plurality of locations, the data representing the value associated with the input search key.