IP Library › Granted Patent US 12,731,636
Granted Patent B2
US 12,731,636 · App. 18/626,860 · Granted Sep 8, 2026

Reconfigurable compute memory having selection logic to control compute operations

Inventor: Bindiganavale S. Nataraj (Cupertino, CA)
Assignee: NUMEM, INC.
G11C11/419G06N3/04G06N3/063G11C11/418H03K19/20H03K19/21
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 12,731,636
App. No.
18/626,860
Granted
Sep 8, 2026
Kind
B2
Abstract

A memory includes an array with rows and columns of memory cells. The rows include a first row and a second row. The memory also includes a plurality of logic gates in the array. Each logic gate of the plurality of logic gates includes a first input coupled to a respective memory cell in the first row, a second input coupled to a respective memory cell in the second row, and an output. The memory further includes selection logic coupled to the plurality of logic gates. The selection logic includes a two dimensional (2D) associative array to generate select lines associated with a first pair of rows of memory cells. The select lines are configured to provide enable signals to the plurality of logic gates to control compute operations of the array.

Claims (32)

1 . A memory, comprising:

a compute array to perform compute operations comprising rows and columns of memory cells, the rows comprising a first pair of rows of memory cells, the first pair comprising a first row of memory cells and a second row of memory cells;

a plurality of logic gates embedded in the first pair of rows of memory cells, each comprising a first input coupled to a respective memory cell in the first row, a second input coupled to a respective memory cell in the second row, and an output, wherein respective logic gates of the plurality of logic gates are embedded in the first pair of rows between successive memory cells along the first and second rows, wherein at least one logic gate of the plurality of logic gates is configured to function as a first type of compute element to apply a first logic function to data values of respective memory cells of the first pair of rows of memory cells; and

selection logic coupled to the plurality of logic gates, wherein the selection logic includes a two dimensional (2D) associative array to generate select lines associated with the first pair of rows of memory cells, the select lines are configured to provide enable signals to the plurality of logic gates to control compute operations including one or more of addition or multiply operations of the compute array.

2 . The memory of claim 1 , wherein the two dimensional (2D) associative array comprises a k-bit content addressable memory (CAM), wherein at least one logic gate of the plurality of logic gates is configured to function as a second type of compute element to apply a second logic function to the data values of the respective memory cells of the first pair of rows of memory cells.

3 . The memory of claim 2 , wherein the k-bit CAM memory holds k-bit metadata used to generate the select line and to cause an activation of the plurality of logic gates of the compute array to perform parallel general matrix multiplication (GEMM) operations.

4 . The memory of claim 1 , wherein the selection logic is configured to receive a search input to initiate a compare operation of a k-bit query register against contents of the k-bit CAM memory of the selection logic, to determine any matching rows corresponding to the search and to drive to a second logic state, and to determine any mismatching rows which remain a first logic state for the CAM memory.

5 . The memory of claim 3 , wherein the metadata corresponds to a row-index of the k-bit CAM memory.

6 . The memory of claim 5 , wherein an array density of the k-bit CAM memory corresponds to a number of upper select lines and lower select lines.

7 . The memory of claim 5 , wherein a width of the k-bit CAM memory is independent of a density of the compute array block.

8 . The memory of claim 5 , wherein a computation profile is adjustable by reprogramming the k-bit CAM memory with different metadata.

9 . The memory of claim 1 , wherein a first input of each logic gate is connected to an internal node within the respective memory cell in the first row, without an intervening transistor; and

a second input of each logic gate is connected to an internal node within the respective memory cell in the second row, without an intervening transistor, wherein each logic gate of the plurality of logic gates further comprises one or more enable inputs coupled to the one or more select lines.

10 . The memory of claim 1 , wherein the memory cells including the memory cells of the first and second rows, are static random-access memory (SRAM) cells having internal data and data-bar nodes;

the first input of each logic gate is connected to the internal data node or data-bar node of the respective memory cell in the first row; and

the second input of each logic gate is connected to the internal data node or data-bar node of the respective memory cell in the second row.

11 . A memory, comprising:

a compute array comprising rows and columns of memory cells, the rows comprising a first pair of rows of memory cells, the first pair comprising a first row of memory cells and a second row of memory cells;

a plurality of logic gates embedded in the first pair of rows of memory cells, each comprising a first input coupled to a respective memory cell in the first row, a second input coupled to a respective memory cell in the second row, and an output, wherein respective logic gates of the plurality of logic gates are embedded in the first pair of rows between successive memory cells along the first and second rows, wherein at least one logic gate of the plurality of logic gates is configured to function as a first type of compute element to apply a first logic function to data values of respective memory cells of the first pair of rows of memory cells;

selection logic coupled to the plurality of logic gates, wherein the selection logic includes a two dimensional (2D) memory array to generate select lines associated with the first pair of rows of memory cells; and

sense amplifiers to drive the select lines to cause an activation of the plurality of logic gates to control compute operations including one or more of addition or multiply operations of the compute array.

12 . The memory of claim 11 , wherein the 2D memory array comprises static random-access memory (SRAM), magnetic random-access memory (MRAM), or FeRAM.

13 . The memory of claim 11 , wherein the 2D memory array comprises any type of resistive RAM.

14 . The memory of claim 11 , wherein the 2D memory array holds k-bit metadata used to generate the select lines and to cause an activation of the plurality of logic gates of the compute array to perform parallel general matrix multiplication (GEMM) operations.

15 . The memory of claim 11 , wherein an array density of the 2D memory array corresponds to a number of upper select lines and lower select lines, wherein at least one logic gate of the plurality of logic gates is configured to function as a second type of compute element to apply a second logic function to the data values of the respective memory cells of the first pair of rows of memory cells.

16 . The memory of claim 11 , wherein a width of the 2D memory array is independent of a density of the compute array block.

17 . The memory of claim 11 , wherein a computation profile is adjustable by reprogramming the 2D memory array with different metadata.

18 . The memory of claim 11 , wherein a first input of each logic gate is connected to an internal node within the respective memory cell in the first row, without an intervening transistor; and

a second input of each logic gate is connected to an internal node within the respective memory cell in the second row, without an intervening transistor, wherein each logic gate of the plurality of logic gates further comprises one or more enable inputs coupled to the one or more select lines.

19 . The memory of claim 11 , wherein the memory cells including the memory cells of the first and second rows, are static random-access memory (SRAM) cells having internal data and data-bar nodes;

the first input of each logic gate is connected to the internal data node or data-bar node of the respective memory cell in the first row; and

the second input of each logic gate is connected to the internal data node or data-bar node of the respective memory cell in the second row.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2024
From: NATARAJ, BINDIGANAVALE S.
To: NUMEM INC.
Reel/Frame 067009/0796 →
Continuity (4)
Continuation In Part 17870684 · Jul 21, 2022
Continuation 16934860 · Jul 21, 2020
Provisional Application 63035530 · Jun 5, 2020
Related Publication 20240249769A1 · Jul 25, 2024
References Cited (25)
US 6992947B1 · Pan · 2006 [cited by examiner]
US 7570503B1 · Maheshwari · 2009 [cited by examiner]
US 8493811B2 · Shiu · 2013 [cited by examiner]
US 11398273B1 · Nataraj · 2022 [cited by applicant]
US 11631459B2 · Wickeraad · 2023 [cited by examiner]
US 11967366B2 · Nataraj · 2024 [cited by applicant]
US 20040008564A1 · Tsuda · 2004 [cited by examiner]
US 20110194370A1 · Shiu · 2011 [cited by examiner]
US 20130322145A1 · Shin · 2013 [cited by examiner]
US 20190228307A1 · Lee et al. · 2019 [cited by applicant]
US 20230085574A1 · Nataraj · 2023 [cited by applicant]
NonFinal Office Action for U.S. Appl. No. 16/934,860, Dec. 8, 2021, 15 pages, USPTO. [cited by applicant]
Final Office Action for U.S. Appl. No. 16/934,860, Feb. 11, 2022 15 pages, USPTO. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/934,860, Aug. 23, 2022, 10 pages, USPTO. [cited by applicant]
Supplemental Notice of Allowance for U.S. Appl. No. 16/934,860, Apr. 11, 2022, 3 pages, USPTO. [cited by applicant]
NonFinal Office Action for U.S. Appl. No. 17/870,684, Apr. 13, 2023, 17 pages, USPTO. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/870,684, Oct. 6, 2023, 16 pages, USPTO. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/870,684, Dec. 19, 2023, 10 pages, USPTO. [cited by applicant]
Notice of Allowance and AFCP Decision for U.S. Appl. No. 17/870,684, mailing date Dec. 19, 2023, 10 pages, USPTO. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/870,684, mailing date Oct. 6, 2023, 16 pages, USPTO. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 17/870,684, mailing date Apr. 13, 2023, 17 pages, USPTO. [cited by applicant]
Supplemental Notice of Allowance for U.S. Appl. No. 16/934,860, mailing date Apr. 11, 2022, 3 pages, USPTO. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/934,860, mailing date Mar. 23, 2022, 10 pages, USPTO. [cited by applicant]
Final Office Action for U.S. Appl. No. 16/934,860, mailing date Feb. 11, 2022, 15 pages, USPTO. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/934,860, mailing date Dec. 8, 2021, 14 pages, USPTO. [cited by applicant]