IP Library › Granted Patent US 9,875,799
Granted Patent B1
US 9,875,799 · App. 14/991,007 · Granted Jan 23, 2018

Methods for pattern matching using multiple cell pairs

Inventors: Luca De Santis (Avezzano, IT); Tommaso Vali (Sezze, IT); Kenneth J. Eldredge (Boise, ID); Vishal Sarin (Saratoga, CA)
Assignee: Micron Technology, Inc.
G11C15/046G11C16/0483G11C16/10
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 9,875,799
App. No.
14/991,007
Granted
Jan 23, 2018
Kind
B1
Abstract

Memories having a plurality of cell pairs, where each cell pair of the plurality of cell pairs is programmed to store a same bit of data corresponding to a particular bit position of a pattern to be searched in a memory are useful in mitigating match errors, such as in a CAM (Content Addressable Memory) memory device.

Claims (42)

1. A method of pattern matching, comprising:

receiving a pattern to be searched in a memory, the memory comprising a plurality of cell pairs, each cell pair of the plurality of cell pairs storing a bit of data corresponding to a particular bit position of the pattern and each cell pair of the plurality of cell pairs storing the same bit of data corresponding to the particular bit position of the pattern; and

checking for the pattern to be searched in the memory;

wherein, for each cell pair of the plurality of cell pairs, memory cells of that cell pair are connected in series;

wherein one cell pair of the plurality of cell pairs is selectively connected to a particular data line;

wherein a different cell pair of the plurality of cell pairs is selectively connected to the particular data line; and

wherein the one cell pair of the plurality of cell pairs and the different cell pair of the plurality of cell pairs are selectively connected to each other through the particular data line.

2. The method of claim 1 , wherein checking for the pattern comprises determining that a match condition is met for the particular bit position of the pattern when each cell pair of the plurality of cell pairs indicates a match to a data value of the particular bit position of the pattern.

3. The method of claim 1 , wherein the plurality of cell pairs are aligned in parallel along the particular data line.

4. The method of claim 1 , wherein a value of the particular bit position of the pattern to be searched is programmed into two bits of a register, and wherein gate voltages are applied to gates of the respective cells of each cell pair of the plurality of cell pairs responsive to the two programmed bits for checking for the pattern.

5. The method of claim 4 , wherein a 0 value in the particular bit position of the pattern to be searched is coded as a first voltage in the first bit of the register and a second voltage in the second bit of the register; and wherein a 1 value in the particular bit position of the pattern to be searched is coded as the second voltage in the first bit of the register and the first voltage in the second bit of the register.

6. The method of claim 5 , wherein a 0 value is coded in stored data as a first threshold voltage on a first memory cell of each cell pair of the plurality of cell pairs and a second threshold voltage on a second memory cell of each cell pair of the plurality of cell pairs, and a 1 value is coded in stored data as the second threshold voltage on the first memory cell of each cell pair of the plurality of cell pairs and the first threshold voltage on the second memory cell of each cell pair of the plurality of cell pairs.

7. The method of claim 1 , wherein checking for the pattern comprises comparing selected programmed bits of the pattern to data stored in the memory.

8. The method of claim 7 , wherein comparing results in a match condition when the cells are connected to a precharged data line which does not discharge.

9. The method of claim 7 , wherein comparing results in a no-match condition when the cells are connected to a precharged data line which does discharge.

10. The method of claim 1 , wherein the plurality of cell pairs comprises a first cell pair with memory cells connected in series on a first string of memory cells and a second cell pair with memory cells connected in series on a second string of memory cells.

11. The method of claim 10 , wherein the first string of memory cells and the second string of memory cells are each selectively connected to the particular data line of the memory.

12. The method of claim 11 , wherein the plurality of cell pairs further comprises a third cell pair with memory cells connected in series on a third string of memory cells and a fourth cell pair with memory cells connected in series on a fourth string of memory cells.

13. The method of claim 12 , wherein the third string of memory cells and the fourth string of memory cells are each selectively connected to a data line of the memory different than the particular data line of the memory.

14. The method of claim 1 , further comprising:

wherein the plurality of cell pairs is a first plurality of cell pairs and the particular bit position of the pattern is a first particular bit position of the pattern;

wherein the memory further comprises a second plurality of cell pairs, each cell pair of the second plurality of cell pairs storing a bit of data corresponding to a second particular bit position of the pattern and each cell pair of the second plurality of cell pairs storing the same bit of data corresponding to the second particular bit position of the pattern;

wherein a first set of memory elements corresponding to a particular set of bit positions of the pattern comprising the first particular bit position of the pattern and the second particular bit position of the pattern comprises a first cell pair of the first plurality of cell pairs selectively connected to the particular data line and a first cell pair of the second plurality of cell pairs selectively connected to the particular data line;

wherein a second set of memory elements corresponding to the particular set of bit positions of the pattern comprises a second cell pair of the first plurality of cell pairs selectively connected to the different data line and a second cell pair of the second plurality of cell pairs selectively connected to the different data line; and

wherein the first set of memory elements and the second set of memory elements are each programmed to contain the same data.

15. A method of pattern matching, comprising:

receiving a pattern to be searched in a memory, the memory comprising a first plurality of sets of memory elements and a second plurality of sets of memory elements, wherein a particular memory element of each set of memory elements of the first plurality of sets of memory elements and of the second plurality of sets of memory elements comprises a particular cell pair storing a bit of data corresponding to a particular bit position of the pattern with the particular cell pair of the particular memory element of each set of memory elements of the first plurality of sets of memory elements and of the second plurality of sets of memory elements storing the same bit of data corresponding to the particular bit position of the pattern, wherein each set of memory elements of the first plurality of sets of memory elements is selectively connected to a separate data line of a set of data lines, wherein each set of memory elements of the second plurality of sets of memory elements is selectively connected to a separate data line of the set of data lines, wherein each set of memory elements of the first plurality of sets of memory elements and of the second plurality of sets of memory elements corresponds to a same set of bit positions of the pattern, and wherein each set of memory elements of the first plurality of sets of memory elements and of the second plurality of sets of memory elements is programmed to contain the same data; and

checking for the pattern to be searched in the memory;

wherein, for each cell pair of the plurality of sets of memory elements, memory cells of that cell pair are connected in series.

16. The method of claim 15 , wherein a match condition is met when a majority of the data lines connected to the first plurality of sets of memory elements and to the second plurality of sets of memory elements indicates a match for the pattern to be searched.

17. The method of claim 15 , wherein the first plurality of sets of memory elements comprises at least three sets of memory elements.

18. The method of claim 15 , wherein the set of data lines comprises N data lines, and a matching condition is met when at least K data lines of the N data lines indicate a match condition, wherein K is greater than N/2.

19. The method of claim 15 , wherein the particular memory element of each set of memory elements of the first plurality of sets of memory elements and of the second plurality of sets of memory elements comprises one or more cell pairs.

20. The method of claim 19 , wherein the particular memory element of each set of memory elements of the first plurality of sets of memory elements and of the second plurality of sets of memory elements comprises two or more cell pairs connected in series in a same respective string of memory cells.

21. The method of claim 19 , wherein the particular memory element of a set of memory elements of the first plurality of sets of memory elements and of a set of memory elements of the second plurality of sets of memory elements comprises two or more cell pairs aligned in parallel along its respective data line.

22. A method of pattern matching, comprising:

receiving a pattern to be searched in a memory, the memory comprising a plurality of cell pairs, each cell pair of the plurality of cell pairs storing a bit of data corresponding to a particular bit position of the pattern and each cell pair of the plurality of cell pairs storing the same bit of data corresponding to the particular bit position of the pattern; and

checking for the pattern to be searched in the memory;

wherein, for each cell pair of the plurality of cell pairs, memory cells of that cell pair are connected in series.

23. The method of claim 22 , wherein checking for the pattern comprises determining that a match condition is met for the particular bit position of the pattern when any cell pair of the plurality of cell pairs indicates a match to a data value of the particular bit position of the pattern.

24. The method of claim 22 , wherein the plurality of cell pairs comprises two cell pairs on a same string of memory cells.

25. The method of claim 22 , wherein the plurality of cell pairs are connected in series on a same string of memory cells.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
Continuity (1)
Provisional Application 62102168 · Jan 12, 2015