IP Library Granted Patent US 7,002,824
Granted Patent B2
US 7,002,824 · App. 10/912,768 · Granted Feb 21, 2006

Content addressable memory architecture

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 7,002,824
App. No.
10/912,768
Granted
Feb 21, 2006
Kind
B2
Abstract

A Content Addressable Memory array includes a plurality of coupled sub-blocks arranged in rows and columns. Search data received by a first sub-block in a first column of the CAM is propagated to each sub-block in the row to the last sub-block in the last column of the CAM. The search result for the CAM is selected based on the propagated search results for each row of sub-blocks and output on a side of the array opposite from the side receiving the search data.

Claims (31)

1. A Content Addressable Memory comprising:

an array of content addressable sub-blocks, each sub-block in a first column of the array coupled to a plurality of data inputs for receiving data, data received by a sub-block in a row in the first column of the array being propagated across the array to each subsequent sub-block in the row of the array;

a clock signal coupled to each sub-block in the area, each sub-block latching the received data and results of an operation on an edge of the clock; and

a plurality of outputs for forwarding results of an operation in rows of sub-blocks in the array coupled to a last column of the array, the last column being on the opposite side of the array to the first column.

2. The Content Addressable Memory of claim 1 , wherein the edge of the clock is a rising edge.

3. The Content Adressable Memory of claim 1 , wherein the edge of the clock is a falling edge.

4. A Content Addressable Memory comprising:

an array of content addressable sub-blocks, each sub-block in a first column of the array coupled to a plurality of data inputs for receiving data, data received by a sub-block in a row in the first column of the array being propagated across the array to each subsequent sub-block in the row of the array;

a plurality of outputs for forwarding results of an operation in rows of sub-blocks in the array coupled to a last column of the array, the last column being on the opposite side of the array to the first column; and

priority encoder logic coupled to each sub-block in the last column in the array which encodes match flags from rows of sub-blocks to provide the results of the operation.

5. A Content Addressable Memory comprising:

an array of content addressable sub-blocks, each sub-block in a first column of the array coupled to a plurality of data inputs for receiving data, data received by a sub-block in a row in the first column of the array being propagated across the array to each subsequent sub-block in the row of the array;

a plurality of outputs for forwarding results of an operation in rows of sub-blocks in the array coupled to a last column of the array, the last column being on the opposite side of the array to the first column; and

priority encoder logic coupled to each sub-block in the last column in the array which outputs the results of the operation in order of priority.

6. The Content Addressable Memory of claim 5 , wherein the operation is to output all matching entries for the received data.

7. A Content Addressable Memory comprising:

an array of content addressable sub-blocks, each sub-block in a first column of the array coupled to a plurality of data inputs for receiving data, data received by a sub-block in a row in the first column of the array being propagated across the array to each subsequent sub-block in the row of the array, each sub-block comprising:

a plurality of cell arrays;

a dummy word which latches the result of the operation in each cell array; and

a priority encoder that receives the latched results and outputs the highest priority match output for the result of the operation in the plurality of cell arrays; and

a plurality of outputs for forwarding results of an operation in rows of sub-blocks in the array coupled to a last column of the array, the last column being on the opposite side of the array to the first column.

8. A Content Addressable Memory comprising:

an array of content addressable sub-blocks, each sub-block in a first column of the array coupled to a plurality of data inputs for receiving data and search results from a first Content Addressable memory, data received by a sub-block in a row in the first column of the array being propagated across the array to each subsequent sub-block in the row of the array; and

a plurality of outputs for forwarding results of an operation in rows of sub-blocks in the array coupled to a last column of the array, the last column being on the opposite side of the array to the first column, the results of the operation being forwarded to a second Content Addressable memory.

9. The Content Addressable Memory of claim 8 , wherein the search results include a device identifier from the first Content Addressable Memory.

10. A Content Addressable Memory comprising:

an array of content addressable sub-blocks, each sub-block in a first column of the array coupled to a plurality of data inputs for receiving data, data received by a sub-block in a row in the first column of the array being propagated across the array to each subsequent sub-block in the row of the array, each sub-block comprising:

a plurality of cell arrays, each cell array including a plurality of Content Addressable Memory cells, match lines from CAM cells in a row of CAM cells coupled to provide a match indication for a word stored in a row, the match line being pre-charged to a voltage level at the beginning of an operation; and

a plurality of outputs for forwarding results of an operation in rows of sub-blocks in the array coupled to a last column of the array, the last column being on the opposite side of the array to the first column.

11. The Content Addressable Memory of claim 10 , wherein the match line is pre-charged to a high voltage level.

12. The Content Addressable Memory of claim 10 , wherein a low voltage level on the match line indicates a mismatch.

Assignments (12)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY'S NAME PREVIOUSLY RECORDED AT REEL: 057449 FRAME: 0162. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Aug 30, 2023
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: MOSAID TECHNOLOGIES INCORPORATED
Reel/Frame 064782/0950 →
CHANGE OF NAME Recorded Sep 9, 2021
From: CONVERSANT INTELLECTUAL PROPERTY INC.
To: MOSAID TECHNOLOGIES INCORPORATED
Reel/Frame 057449/0162 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2020
From: CPPIB CREDIT INVESTMENTS INC.
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 054279/0001 →
RELEASE OF U.S. PATENT AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Oct 12, 2018
From: ROYAL BANK OF CANADA, AS LENDER
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 047645/0424 →
AMENDED AND RESTATED U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Aug 22, 2018
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: CPPIB CREDIT INVESTMENTS, INC.
Reel/Frame 046900/0136 →
U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Sep 9, 2014
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: CPPIB CREDIT INVESTMENTS INC., AS LENDER; ROYAL BANK OF CANADA, AS LENDER
Reel/Frame 033706/0367 →
CHANGE OF ADDRESS Recorded Sep 3, 2014
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 033678/0096 →
RELEASE OF SECURITY INTEREST Recorded Aug 7, 2014
From: ROYAL BANK OF CANADA
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.; CONVERSANT IP N.B. 868 INC.; CONVERSANT IP N.B. 276 INC.
Reel/Frame 033484/0344 →
CHANGE OF NAME Recorded Mar 13, 2014
From: MOSAID TECHNOLOGIES INCORPORATED
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 032439/0638 →
U.S. INTELLECTUAL PROPERTY SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) - SHORT FORM Recorded Jan 10, 2012
From: 658276 N.B. LTD.; 658868 N.B. INC.; MOSAID TECHNOLOGIES INCORPORATED
To: ROYAL BANK OF CANADA
Reel/Frame 027512/0196 →
CHANGE OF ADDRESS Recorded May 6, 2009
From: MOSAID TECHNOLOGIES INCORPORATED
To: MOSAID TECHNOLOGIES INCORPORATED
Reel/Frame 022645/0149 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2009
From: MCKENZIE, ROBERT N.; HAERLE, DIETER; LORD, SEAN
To: MOSAID TECHNOLOGIES INCORPORATED
Reel/Frame 022619/0472 →