Resistive Memory Matrix Multiplication via Orthogonal Vectors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computation methods are inefficient and energy-intensive due to the need to move data from memory devices to processors for processing, which limits speed and energy efficiency in performing operations like matrix multiplication.
Innovation Solution
Analog memory devices are used to perform parallel computation by storing matrix values in resistive memory elements and applying input vectors to these devices, which output resulting vectors representing matrix multiplications, with matched filters extracting specific results from these outputs, allowing for simultaneous processing of multiple vectors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is moved from memory devices to processors for computation, then computation can be performed, but speed and energy efficiency are limited
Solution Approach 1:
The patent merges storage and computation functions by implementing in-memory computing where analog memory devices perform matrix multiplication operations directly at their location. This eliminates the data movement bottleneck between memory and processor, achieving both speed improvement and energy efficiency by performing computation where data resides without transferring it to separate processing units.
2Productivity
If sequential processing is used for multiple vectors, then computation can be completed, but processing time increases
Solution Approach 1:
The patent segments the computation task by representing multiple input vectors as orthogonal components and processing them simultaneously through parallel matched filters. Each matched filter handles one orthogonal vector independently, allowing the system to compute multiple vector-matrix multiplications in parallel rather than sequentially, thereby reducing total processing time and increasing throughput.
3Productivity
If multiple vectors are processed simultaneously, then productivity increases, but system complexity increases
Solution Approach 1:
The patent changes the mathematical representation of input vectors from arbitrary forms to orthogonal representations. This parameter transformation enables simultaneous processing of multiple vectors through a single matrix multiplication operation followed by simple projection onto orthogonal bases via matched filters. The orthogonality property simplifies the extraction of individual vector results from the combined output, managing system complexity while achieving high productivity.
Data Source
AI summary
An array of resistive memory elements can be configured to store a plurality of values representing elements of a matrix. The array of resistive memory elements can be further configured to, responsive to an input vector being provided to the resistive memory elements, output a resulting vector representing a matrix multiplication of the matrix and the input vector, where the input vector includes a summation of a plurality of orthogonal vectors. A plurality of matched filters can be connected to outputs of the resistive memory elements, where each of the plurality of matched filters is configured to extract from the resulting vector a matrix multiplication result corresponding to a matrix multiplication of the matrix with one of the orthogonal vectors for which the respective matched filter is matched.


