IP Library Granted Patent US 10,169,297
Granted Patent B2
US 10,169,297 · App. 15/500,486 · Granted Jan 1, 2019

Resistive memory arrays for performing multiply-accumulate operations

Inventor: Brent Buchanan (Palo Alto, CA)
Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
G06F17/16G06F7/50G06F7/523G06F7/5443G11C7/1006G11C13/004G06F2207/4802G11C2213/77
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,169,297
App. No.
15/500,486
Granted
Jan 1, 2019
Kind
B2
Abstract

In one example in accordance with the present disclosure a resistive memory array is described. The array includes a number of resistive memory elements to receive a common-valued read signal. The array also includes a number of multiplication engines to perform a multiply operation by receiving a memory element output from a corresponding resistive memory element, receiving an input signal, and generating a multiplication output based on a received memory element output and a received input signal. The array also includes an accumulation engine to sum multiplication outputs from the number of multiplication engines.

Claims (47)

1. A resistive memory array comprising:

a number of resistive memory elements to receive a common-valued read signal, in which a resistance of a resistive memory element defines a value within a matrix;

a number of multiplication engines to perform a multiply operation by:

receiving a memory element output from a corresponding resistive memory element;

receiving an input signal; and

generating a multiplication output based on a received memory element output and a received input signal;

a conditioning resistor to condition the multiplication outputs; and

an accumulation engine to sum the multiplication outputs from the number of multiplication engines, in which the summed multiplication outputs represent a multiplication of the matrix and a number of input signals.

2. The array of claim 1 , in which the number of resistive memory elements are to receive one of a shared read signal and distinct instances of read signals having the same value.

3. The array of claim 1 , in which the number of multiplication engines comprise a voltage-to-resistance converter to convert an input voltage signal into an input resistance.

4. The array of claim 1 , in which the number of multiplication engines comprise a current-to-resistance converter to convert an input current signal into an input resistance.

5. The array of claim 1 , in which the number of resistive memory elements are memristors.

6. The array of claim 1 , in which each of the number of multiplication engines is respectively coupled to a corresponding one of the number of resistive memory elements.

7. A method for performing a multiply-accumulate operation, the method comprising:

applying a common-valued read signal to inputs of a number of resistive memory elements;

applying a number of input signals to a number of multiplication engines, in which a multiplication engine is coupled to a resistive memory element;

conditioning a number of the multiplication outputs;

summing a number of the multiplication outputs from the number of multiplication engines, in which a multiplication output represents a multiplication of a resistive memory element output and an input signal; and

determining an array output based on a summed number of the multiplication outputs.

8. The method of claim 7 , in which:

the common-valued read signal comprises a common-valued read voltage;

the resistive memory element output comprises a current;

the number of input signals comprises a number of input voltages;

the number of multiplication outputs comprise a number of multiplication output voltages; and

the array output comprises an array output voltage.

9. The method of claim 7 , in which conditioning the number of multiplication outputs comprises passing the number of multiplication outputs through a conditioning resistor, in which a multiplication engine is coupled to a corresponding conditioning resistor.

10. The method of claim 7 , in which:

applying a number of input signals to a number of multiplication engines comprises applying a vector input signal to the number of multiplication engines; and

an entry in the vector input signal is directed to a different multiplication engine.

11. The method of claim 7 , in which applying a common-valued read signal to inputs of a number of resistive memory elements comprises applying a common-valued read voltage that is a largest voltage less than a switching voltage of the number of resistive memory elements.

12. A computing device comprising:

a processor; and

a resistive memory array coupled to the processor, the resistive memory array comprising:

a number of resistive memory elements to receive a common-valued read voltage, in which a resistance of a resistive memory element defines a value within a matrix;

a number of multiplication engines to perform a multiplication operation, in which each multiplication engine:

is respectively coupled to a resistive memory element;

is to receive a resistive memory element output current;

is to output a multiplication current;

comprises an operational amplifier to amplify the resistive memory element output current; and

comprises an input converter to convert a received input voltage into a resistance, in which the received input voltage represents an input signal to be multiplied by the matrix;

a conditioning resistor to condition a number of the output multiplication currents; and

an accumulation engine to sum a number of the multiplication currents to generate an array output voltage.

13. The computing device of claim 12 , in which the resistive memory array is a resistive crossbar array comprising:

a number of row lines; and

a number of column lines intersecting the row lines to form a number of junctions;

in which the number of resistive memory elements are coupled between the row lines and the column lines at the junctions.

14. The computing device of claim 12 , in which the voltage-to-resistance converter is a metal-oxide semiconductor field-effect transistor (MOSFET).

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2017
From: BUCHANAN, BRENT
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 041477/0172 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2017
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 041893/0001 →
Continuity (1)
Related Publication 20170220526A1 · Aug 3, 2017
Cited By (7)
US 12,197,891 US 12,387,090 US 12,670,121 US 12,688,146 US 12,730,759 US 12,737,317 US 12,737,318