Multi-bit dot product engine

US10825510B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10825510-B2
Application numberUS-201916271811-A
CountryUS
Kind codeB2
Filing dateFeb 9, 2019
Priority dateFeb 9, 2019
Publication dateNov 3, 2020
Grant dateNov 3, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of obtaining an in-memory vector-based dot product is disclosed, which includes providing a matrix of memory cells having M rows, each memory cell in each row holding a value and having dedicated read transistors T1 and T2, where T1 is controlled by the value held in the associated memory cell and T2 is controlled by a row-dedicated source (vin) for each row, the combination of the T1 and T2 transistors for each cell selectively (i) couple a reference voltage with a column-dedicated read bit line (RBL) for each column for an in-memory vector-based dot product operation or (ii) couple ground with the column-dedicated read bit line (RBL) for each column for a memory read operation, where total resistance of the read transistors (R) for each cell in each row is based on Rmax/2(M-1), . . . Rmax, where Rmax is the resistance of the least significant cell in each row.

First claim

Opening claim text (preview).

The invention claimed is: 1. A multi-bit dot product engine-based memory for carrying out vector-based dot products, comprising: a matrix of memory cells having M rows (M- 1 , M- 2 , . . . 0) and N columns (N- 1 , N- 2 , . . . 0), each memory cell (C) in each of the rows ((C N-1 , C N-2 , . . . , C 0 ) M-1 , (C N-1 , C N-2 , . . . , C 0 ) M-2 , . . . (C N-1 , C N-2 , . . . , C 0 ) 0 ) holding a value and having dedicated read transistors T 1 and T 2 , where T 1 is controlled by the value held in the associated memory cell and T 2 is controlled by a row-dedicated read word line RWL i (RWL M-1 , RWL M-2 , . . . RWL 0 ), the combination of the T 1 and T 2 transistors for each cell selectively (i) couple a row-dedicated source (v in ) for each row ((v in ) M-1 , (v in ) M-2 , . . . (v in ) 0 ) with a column-dedicated read bit line (RBL) for each column (RBL N-1 , RBL N-2 , . . . RBL 0 ) for an in-memory vector-based dot product operation or (ii) couple ground with the column-dedicated read bit line (RBL) for each column (RBL N-1 , RBL N-2 , . . . RBL 0 ) for a memory read operation, where total resistance of the T 1 and T 2 transistors (R) for each cell (R N-1 , R N-2 , . . . , R 0 ) in each row (M- 1 , M- 2 , . . . 0) is based on Rmax/2 (M-1) , Rmax/2 (M-2) , . . . Rmax, where Rmax is the resistance of the least significant cell in each row and where current in each RBL (I RBL ) for each column ((I RBL ) N-1 , (I RBL ) N-2 , . . . (I RBL ) 0 ) is summed as I out ; and a sensing circuit coupled to the matrix of memory cells and adapted to selectively (i) receive and convert the current I out to a digital value representing an output of the vector-based dot product, or (ii) sense voltage at each of the RBLs (RBL N-1 , RBL N-2 , . . . RBL 0 ) to read value of the corresponding cells. 2. The multi-bit dot product engine-based memory of claim 1 , wherein the sensing circuit is based on a sense resistor generating an analog voltage and an analog-to-digital converter generating a digital representation of the analog voltage. 3. The multi-bit dot product engine-based memory of claim 1 , wherein the sensing circuit includes an operational amplifier (op-amp) generating an analog voltage and an analog-to-digital converter generating a digital representation of the analog voltage. 4. The multi-bit dot product engine-based memory of claim 3 , wherein the op-amp receives the analog current I out at its negative terminal, a reference voltage (V pos ) at its positive terminal and a feedback resistor R f between its output and the negative terminal, wherein the op-amp's output is Vout=−I out ·R f +V pos . 5. The multi-bit dot product engine-based memory of claim 1 , wherein R is adjusted for each cell based on adjusting conductances of corresponding T 1 and T 2 . 6. The multi-bit dot product engine-based memory of claim 5 , wherein the conductances are adjusted for each cell based on adjusting threshold voltages of corresponding T 1 and T 2 . 7. The multi-bit dot product engine-based memory of claim 5 , wherein the conductances are adjusted for each cell based on adjusting sizes of corresponding T 1 and T 2 . 8. A multi-bit dot product engine-based memory for carrying out vector-based dot products, comprising: a matrix of memory cells having M rows (M- 1 , M- 2 , . . . 0) and N columns (N- 1 , N- 2 , . . . 0), each memory cell (C) in each of the rows ((C N-1 , C N-2 , . . . , C 0 ) M-1 , (C N-1 , C N-2 , . . . , C 0 ) M-2 , . . . (C N-1 , C N-2 , . . . , C 0 ) 0 ) holding a value and having dedicated read transistors T 1 and T 2 , where T 1 is controlled by the value held in the associated memory cell and T 2 is controlled by a row-dedicated source (v in ) for each row ((v in ) M-1 , (v in ) M-2 , . . . (v in ) 0 ), the combination of the T 1 and T 2 transistors for each cell selectively (i) couple a reference voltage (V bias ) with a column-dedicated read bit line (RBL) for each column (RBL N-1 , RBL N-2 , . . . RBL 0 ) for an in-memory vector-based dot product operation or (ii) couple ground with the column-dedicated read bit line (RBL) for each column (RBL N-1 , RBL N-2 , . . . RBL 0 ) for a memory read operation, where total resistance of the T 1 and T 2 transistors (R) for each cell (R N-1 , R N-2 , . . . , R 0 ) in each row (M- 1 , M- 2 , . . . 0) is based on Rmax/2 (M-1) , Rmax/2 (M-2) , . . . Rmax, where Rmax is the resistance of the least significant cell in each row and where current in each RBL (I RBL ) for each column ((I RBL ) N-1 , (I RBL ) N-2 , . . . (I RBL ) 0 ) is summed as I out ; and a sensing circuit coupled to the matrix of memory cells and adapted to selectively (i) receive and convert the current I out to a digital value representing an output of the vector-based dot product, or (ii) sense voltage at each of the RBLs (RBL N-1 , RBL N-2 , . . . RBL 0 ) to read value of the corresponding cells. 9. The multi-bit dot product engine-based memory of claim 8 , wherein the sensing circuit is based on a sense resistor generating an analog voltage and an analog-to-digital converter generating a digital representation of the analog voltage. 10. The multi-bit dot product engine-based memory of claim 8 , wherein the sensing circuit includes an operational amplifier (op-amp) generating an analog voltage and an analog-to-digital converter generating a digital representation of the analog voltage. 11. The multi-bit dot product engine-based memory of claim 10 , wherein the op-amp receives the analog current I out at its negative terminal, a reference voltage (V pos ) at its positive terminal and a feedback resistor R f between its output and the negative terminal, wherein the op-amp's output is Vout=−I out ·R f +V pos . 12. The multi-bit dot product engine-based memory of claim 8 , wherein R is adjusted for each cell based on adjusting conductances of corresponding T 1 and T 2 . 13. The multi-bit dot product engine-based memory of claim 12 , wherein the conductances are adjusted for each cell based on adjusting threshold voltages of corresponding T 1 and T 2 . 14. The multi-bit dot product engine-based memory of claim 12 , wherein the conductances are adjusted for each cell based on adjusting sizes of corresponding T 1 and T 2 . 15. A method of obtaining an in-memory vector-based dot product, comprising: providing a matrix of memory cells having M rows (M- 1 , M- 2 , . . . 0) and N columns (N- 1 , N- 2 , . . . 0), each memory cell (C) in each of the rows ((C N-1 , C N-2 , . . . , C 0 ) M-1 , (C N-1 , C N-2 , . . . , C 0 ) M-2 , . . . (C N-1 , C N-2 , . . . , C 0 ) 0 ) holding a value and having dedicated read transistors T 1 and T 2 , where T 1 is controlled by the value held in the associated memory cell and T 2 is controlled by a row-dedicated source (v in ) for each row ((v in ) M-1 , (v in ) M-2 , . . . (v in ) 0 ), the combination of the T 1 and T 2 transistors for each cell selectively (i) couple a reference voltage (V bias ) with a column-dedicated read bit line (RBL) for each column (RBL N-1 , RBL N-2 , . . . RBL 0 ) for an in-memory vector-based dot product operation or (ii) couple ground with the column-dedicated read bit line (RBL) for each column (RBL N-1 , RBL N-2 , . . . RBL 0 ) for a memory read operation, where total resistance of the T 1 and T 2 transistors (R) for each cell (R N-1 , R N-2 , . . . , R 0 ) in each row (M- 1 , M- 2 , . . . 0) is based on Rmax/2 (M-1) , Rmax/2 (M-2) , . . . Rmax, where Rmax is the resistance of the least significant cell in each row and where current in each RBL (I RBL ) for each column ((I RBL ) N-1 , (I RBL ) N-2 , . . . (I RBL ) 0 ) is summed as I out ; and selecti

Assignees

Inventors

Classifications

  • G11C11/419Primary

    Read-write [R-W] circuits · CPC title

  • using field-effect transistors only · CPC title

  • Matrix or vector computation {, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization (matrix transposition G06F7/78)} · CPC title

  • Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups · CPC title

  • Sense amplifiers; Associated circuits {, e.g. timing or triggering circuits} · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10825510B2 cover?
A method of obtaining an in-memory vector-based dot product is disclosed, which includes providing a matrix of memory cells having M rows, each memory cell in each row holding a value and having dedicated read transistors T1 and T2, where T1 is controlled by the value held in the associated memory cell and T2 is controlled by a row-dedicated source (vin) for each row, the combination of the T1 …
Who is the assignee on this patent?
Purdue Research Foundation
What technology area does this patent fall under?
Primary CPC classification G11C11/419. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 03 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).