Memory Processing Unit
First Claim
1. An in-memory computing system for performing multiply-accumulate (MAC) operations and computing vector-matrix multiplications, comprising:
- an array of resistive memory devices arranged in columns and rows, such that resistive memory devices in each row of the array are interconnected by a respective wordline and resistive memory devices in each column of the array are interconnected by a respective bitline, each resistive memory device in the array of resistive memory devices has an associated threshold voltage and is configured to store a data value therein as a resistance value; and
an interface circuit electrically coupled to each bitline of the array of resistive memory devices and cooperatively operates with the array of resistive memory devices to compute a vector-matrix multiplication between an input applied to a set of wordlines and data values stored in the array of resistive memory devices, where the interface circuit, for each bitline;
receives an output in response to the input being applied to a given word line;
compares the output to a threshold; and
increments a count maintained for each bitline when the output exceeds the threshold, such that the count for a given bitline represents the MAC operation performed between the input and conductance of the resistive memory device interconnected by the given bitline and the given wordline.
1 Assignment
0 Petitions
Accused Products
Abstract
An in-memory computing system for computing vector-matrix multiplications includes an array of resistive memory devices arranged in columns and rows, such that resistive memory devices in each row of the array are interconnected by a respective wordline and resistive memory devices in each column of the array are interconnected by a respective bitline. The in-memory computing system also includes an interface circuit electrically coupled to each bitline of the array of resistive memory devices and computes the vector-matrix multiplication between an input vector applied to a given set of wordlines and data values stored in the array. For each bitline, the interface circuit receives an output in response to the input being applied to the given wordline, compares the output to a threshold, and increments a count maintained for each bitline when the output exceeds the threshold. The count for a given bitline represents a dot-product.
14 Citations
20 Claims
-
1. An in-memory computing system for performing multiply-accumulate (MAC) operations and computing vector-matrix multiplications, comprising:
-
an array of resistive memory devices arranged in columns and rows, such that resistive memory devices in each row of the array are interconnected by a respective wordline and resistive memory devices in each column of the array are interconnected by a respective bitline, each resistive memory device in the array of resistive memory devices has an associated threshold voltage and is configured to store a data value therein as a resistance value; and an interface circuit electrically coupled to each bitline of the array of resistive memory devices and cooperatively operates with the array of resistive memory devices to compute a vector-matrix multiplication between an input applied to a set of wordlines and data values stored in the array of resistive memory devices, where the interface circuit, for each bitline; receives an output in response to the input being applied to a given word line; compares the output to a threshold; and increments a count maintained for each bitline when the output exceeds the threshold, such that the count for a given bitline represents the MAC operation performed between the input and conductance of the resistive memory device interconnected by the given bitline and the given wordline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. An in-memory computing method for performing multiply-accumulate (MAC) operations and computing vector-matrix multiplications, comprising:
-
applying an input to an array of resistive memory devices arranged in columns and rows, wherein the array is arranged such that resistive memory devices in each row of the array are interconnected by a respective wordline and resistive memory devices in each column of the array are interconnected by a respective bitline, and wherein each resistive memory device in the array of resistive memory devices has an associated threshold voltage and is configured to store a data value therein as a resistance value; computing vector-matrix multiplication between an input applied to a given set of wordlines and data values stored in the array of resistive memory devices by, for each bitline; receiving an output in response to the input being applied to a given wordline; comparing the output to a threshold; and incrementing a count for each bitline when the output exceeds the threshold, such that the count of a given bitline performs MAC operation between the input and a conductance of the resistive memory device interconnected by the given bitline and the given wordline. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification