Memristive Crossbar Array for High-Precision Matrix-Vector Multiplication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cognitive computing systems based on von Neumann architecture face inefficiencies in performing matrix-vector multiplications due to limited precision and dynamic range when using memristive devices, which are critical for high-precision operations in various computing fields.

Innovation Solution

A memristive crossbar array device that decomposes matrices and vectors into sub-matrices and sub-vectors, allowing standard memristive devices with limited precision to perform parallel operations, achieving higher precision and dynamic range through scaling and summing partial results, either in software or hardware, without requiring higher precision devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If standard memristive devices are used for matrix-vector multiplication, then device complexity is reduced and ease of manufacture is improved, but measurement precision and dynamic range are limited

Engineering Contradiction:
Improveprecision of matrix-vector multiplicationVSAvoidcomplexity of decomposition and summing units
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent divides the matrix A and vector x into multiple sub-matrices and sub-vectors (A1, A2, ..., An and x1, x2, ..., xn). Each sub-matrix is programmed into a separate memristive crossbar array, allowing parallel computation of partial results. This segmentation enables high-precision computation by combining results from multiple lower-precision devices, resolving the contradiction between precision and device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces decomposition units and summing units as intermediary components. The decomposition units break down the input matrix and vector into sub-components, while the summing units aggregate the partial results from multiple crossbar arrays. These intermediaries enable standard memristive devices to achieve high precision without requiring each individual device to have high precision, thus managing the complexity-precision tradeoff.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If matrix and vector are decomposed into multiple sub-matrices and sub-vectors, then precision and dynamic range are improved, but device complexity and computational overhead increase

Engineering Contradiction:
Improvespeed of matrix-vector multiplicationVSAvoidcomplexity of control and summing circuitry
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines multiple memristive crossbar arrays into a unified computational system that processes decomposed sub-matrices in parallel. By merging the computational capabilities of multiple devices and using analog summing circuits to aggregate results, the system achieves high-speed computation that outweighs the added complexity of control and summing circuitry.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The decomposition of the matrix and vector into sub-components is performed in advance before the actual multiplication operation. This preliminary action allows the system to prepare all necessary sub-matrices and sub-vectors for parallel processing, improving the overall speed of computation by avoiding runtime decomposition overhead.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If multiple crossbar arrays are used for parallel processing, then computation speed is improved, but manufacturing cost and device complexity increase

Engineering Contradiction:
Improveprecision of computation resultVSAvoidease of programming and device fabrication
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

The patent changes the parameter of matrix elements from full-precision values to decomposed sub-matrix elements that can be represented within the limited precision range of standard memristive devices. By transforming the computational parameters into a form suitable for standard devices, the system achieves high precision results while maintaining ease of manufacture and programming.

Inventive Principle:
Principle #35Parameter changes

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach enables high-precision matrix-vector multiplications using standard memristive devices, improving performance and efficiency by leveraging parallel processing and error tolerance, thus overcoming the limitations of traditional memristive device precision and dynamic range.

Implementation Method 1

a memristive crossbar array comprising a plurality of memristive devices... programming the plurality of the memristive devices with values representing elements of the sub-matrices... applying elements of one of the multiple sub-vectors as input values to the memristive crossbar array

Methodology Applied
Scientific EffectConduction (electrical): Conduction (electrical)

Data Source

PatentUS10210138B2Higher accuracy of non-volatile memory-based vector multiplication
Publication Date: 2019.02.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10210138B2 patent drawing
  • US10210138B2 patent drawing
  • US10210138B2 patent drawing

AI summary

A multiplication device for performing a matrix-vector-multiplication may be provided. The multiplication device comprises a memristive crossbar array comprising a plurality of memristive devices. The device comprises a decomposition unit adapted for decomposing a matrix into a partial sum of multiple sub-matrices, and decomposing a vector into a sum of multiple sub-vectors, a programming unit adapted for programming the plurality of the memristive devices with values representing elements of the sub-matrices such that each one of the memristive devices corresponds to one of the elements of the sub-matrices, an applying unit adapted for applying elements of one of the multiple sub-vectors as input values to the memristive crossbar array to input lines of the memristive crossbar array resulting in partial results at output lines of the memristive crossbar array, and a summing unit adapted for scaling and summing the partial results building the product of the matrix and the vector.