Stochastic Associative Search in 3D Cross-Point Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory devices face inefficiencies in accessing and searching large datasets due to computationally expensive row and column access methods, particularly when searching for a subset of data, which can be time-consuming and inefficient in large memory systems.

Innovation Solution

Implementing a stochastic associative search operation in a 3D cross-point memory architecture that allows for bit-level addressability and column-major data access, using error correction codes to identify candidate data sets and reduce the need for exhaustive searches by evaluating columns against a search key, thereby speeding up data retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional row and column access methods are used in memory devices, then data can be accessed, but the operations become computationally expensive and increase latency

Engineering Contradiction:
Improvedata access speedVSAvoidcomputational efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent replaces traditional mechanical row-column access operations with a stochastic search approach that evaluates columns against a search key to identify candidate data sets, substituting computationally expensive sequential access with a more efficient probabilistic search mechanism

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The invention changes the access parameter from traditional row-major or column-major sequential access to a stochastic search that samples columns probabilistically, transforming the search process into a parameter-driven evaluation that can identify matching data sets more efficiently

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If exhaustive search through each row is performed to locate a subset of data, then complete search coverage is achieved, but the process becomes inefficient for large datasets

Engineering Contradiction:
Improvesearch completenessVSAvoidsearch time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by evaluating only a subset of columns against the search key rather than exhaustively searching all rows, using stochastic sampling to achieve sufficient search coverage without the time cost of complete enumeration

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The invention creates a copy of the search key and evaluates columns against this copy to identify candidate data sets, allowing the system to search for matches without requiring exhaustive comparison of all data rows, thus reducing search time while maintaining acceptable precision

Inventive Principle:
Principle #26Copying

3Reliability

If error correction codes are applied to each row, then data reliability is improved, but storage space requirements increase

Engineering Contradiction:
Improvedata accuracyVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies error correction codes during the write operation as a preliminary action, enabling the system to detect and correct errors during subsequent read operations without requiring additional verification steps, thus maintaining reliability while minimizing storage overhead

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11262913B2Technologies for efficient stochastic associative search operations with error-correcting code
Publication Date: 2022.03.01 INTEL CORP
  • US11262913B2 patent drawing
  • US11262913B2 patent drawing
  • US11262913B2 patent drawing

AI summary

Technologies for stochastic associative search operations in memory (e.g., a three-dimensional cross-point memory) using error correction codes include a compute device. The compute device has a memory including a matrix that stores individually addressable bit data and is formed by rows and columns. The compute device receives a request to retrieve a subset of the bit data stored in the matrix. The compute device identifies, based on a search performed on the columns in the matrix, one or more candidate data sets. Each candidate data set corresponds to one of the rows in the matrix. The compute device performs an error correction operation on the identified one or more candidate data sets to determine whether the identified one or more candidate data sets is an exact match with the subset of the bit data.