US 11,853,846 B2
Acceleration of model/weight programming in memristor crossbar arrays
Sai Rahul Chalamalasetti, Milpitas, CA (US); Paolo Faraboschi, Milpitas, CA (US); Martin Foltin, Fort Collins, CO (US); Catherine Graves, Milpitas, CA (US); Dejan S. Milojicic, Milpitas, CA (US); John Paul Strachan, Milpitas, CA (US); and Sergey Serebryakov, Milpitas, CA (US)
Assigned to Hewlett Packard Enterprise Development LP, Spring, TX (US)
Appl. No. 17/044,633
Filed by HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, Houston, TX (US)
PCT Filed Apr. 30, 2018, PCT No. PCT/US2018/030219
§ 371(c)(1), (2) Date Oct. 1, 2020,
PCT Pub. No. WO2019/212488, PCT Pub. Date Nov. 7, 2019.
Prior Publication US 2021/0201136 A1, Jul. 1, 2021
Int. Cl. G11C 11/00 (2006.01); G06N 3/08 (2023.01); G11C 13/00 (2006.01)
CPC G06N 3/08 (2013.01) [G11C 13/0069 (2013.01); G11C 2213/77 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A memristive dot product system for vector processing, comprising:
a crossbar array having a number of memory elements, the crossbar array having N rows, M columns and N×M memory elements;
a vector input register comprising N voltage inputs to the crossbar array;
a vector output register comprising M voltage outputs from the crossbar array; and
an analog-to-digital converter (ADC) electronically coupled to the vector output register;
a digital-to-analog converter (DAC) electronically coupled to the vector input register;
a comparator processor electronically coupled to the ADC and to the DAC, the comparator processor configured to:
compare output vector data from the vector output register to input vector data from a memory register;
determine changed data values as between the output vector data and the input vector data; and
write the changed data values to the memory elements of the crossbar array.