IP Library Granted Patent US 7,206,212
Granted Patent B1
US 7,206,212 · App. 10/217,746 · Granted Apr 17, 2007

Content addressable memory (CAM) device with entries having ternary match and range compare functions

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,206,212
App. No.
10/217,746
Granted
Apr 17, 2007
Kind
B1
Abstract

A content addressable memory (CAM) ( 200 ) is disclosed that includes a value match mode, where a comparand value can be compared to a masked data value, and a range match mode where a comparand value can be compared to an upper range limit UR and a lower range limit LR. The CAM ( 200 ) may include a number of CAM cells ( 204 - n to 204 - 0 ) that may each be connected to a compare section ( 109 ). A compare section ( 109 ) can include a first compare circuit ( 210 ) that may generate a match indication on a match line ( 212 ) and a second compare circuits ( 214 - n to 214 - 0 ). A more significant second compare circuits ( 214 - n ) may provide upper and lower limit match results (UMn, LMn) to a less significant first compare circuit ( 210 ).

Claims (41)

1. A content addressable memory (CAM), comprising:

at least one location that compares a comparand value to a maskable data value in a first mode, and determines if a comparand value is within a range defined by a first range value and a second range value in a second mode; and

the at least one location further includes

a first store for storing at least a portion of a data value in a first mode and at least a portion of a first range value in a second mode, and

a plurality of compare sections that each includes a compare circuit having a first circuit path that is disabled and enabled according to at least one comparand value bit and at least one data value bit in the first mode, and according to at least on comparand value bit and at least one first range value bit in the second mode.

2. The CAM of claim 1 , wherein:

each compare circuit further includes a second circuit path that is disabled and enabled according to the at least one comparand value bit and the at least one data value bit in the first mode, and according to the at least one comparand value bit and at the least one second range value bit in the second mode.

3. The CAM of claim 2 , wherein:

the first circuit path is in parallel with the second circuit path and the first and second circuit paths are commonly coupled to a signal node.

4. The CAM of claim 1 , wherein:

each compare circuit further includes a mask path between at least the first circuit path and a match indication node that is enabled according to at least one mask value bit.

5. The CAM of claim 4 , wherein:

each compare circuit further includes a bypass path in parallel with the mask path that is enabled by a mode signal.

6. A content addressable memory (CAM), comprising:

a plurality of compare sections that each receives a comparand value and provides a first compare result between the comparand value and first CAM cell value in a first mode, and provides a second compare result between the comparand value and first and second CAM cell values in a second mode, the plurality of compare sections coupled to a match line,

each compare section including

at least one first compare circuit coupled to a first CAM cell having a significance with respect to other CAM cells, and

a second compare circuit coupled to a second CAM cell of less significance than the first CAM cell, the second compare circuit receiving a compare result from the first compare circuit in the second mode.

7. The CAM of claim 6 , wherein:

the first compare result is maskable by the second CAM cell value in the first mode.

8. The CAM of claim 6 , further including:

a plurality of CAM cells; and

each compare section is coupled to at least two CAM cells and a match line.

9. The CAM of claim 6 , wherein:

each compare section includes a first compare circuit coupled to a multiplexer circuit, the multiplexer circuit providing a first CAM cell value from a plurality of CAM cells in the first mode.

10. The CAM of claim 8 , wherein:

each CAM cell stores a data value bit and a corresponding mask value bit in the first mode, and a first range value bit and corresponding second range value bit in the second mode.

11. A method, comprising the steps of:

comparing a comparand value to a first data value stored in a CAM location in a first mode and masking the first data value according to a second data value in the first mode with a plurality of compare circuits, each compare circuit enabling or disabling a circuit path in response to the comparison between the comparand value and masked first data value; and

comparing a comparand value to first and second data values stored in the CAM location in a second mode with the plurality of compare circuits, each compare circuit enabling or disabling the circuit path in response to the comparison between the comparand value and the first and second data values.

12. The method of 11 , wherein:

comparing the comparand value to the first data value includes comparing comparand value bits to first data value bits essentially simultaneously.

13. The method of claim 11 , wherein:

comparing the comparand value to the first and second data values includes comparing comparand value bits to first data value bits at a most significant bit position prior to comparing less significant bit positions.

14. The method of claim 13 , further including:

disabling comparisons of less significant bit positions with the first data value when a comparison with a more significant bit position indicates the comparand value is within a range limit indicated by the first data value.

15. The method of claim 11 , further including:

storing a data value as the first data value and storing a mask value as a second data value in the first mode; and

storing a first range value as the first data value and storing a second range value as a second data value in the second mode.

16. The CAM of claim 6 , wherein:

the plurality of compare sections are coupled to a match line, each compare section coupling the match line to a predetermined potential according to the first compare result in the first mode, and coupling the match line to the predetermined potential according to the second compare result in the second mode.

Assignments (12)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047196 FRAME: 0097. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048555/0510 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047196/0097 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
CHANGE OF NAME Recorded Apr 16, 2015
From: NETLOGIC MICROSYSTEMS, INC.
To: NETLOGIC I LLC
Reel/Frame 035443/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2015
From: NETLOGIC I LLC
To: BROADCOM CORPORATION
Reel/Frame 035443/0763 →
RELEASE OF SECURITY INTEREST Recorded Aug 30, 2011
From: SILICON VALLEY BANK
To: NETLOGIC MICROSYSTEMS, INC.; NETLOGIC MICROSYSTEMS INTERNATIONAL LIMITED; NETLOGIC MICROSYSTEMS CAYMANS LIMITED
Reel/Frame 026830/0141 →
SECURITY AGREEMENT Recorded Jul 17, 2009
From: NETLOGIC MICROSYSTEMS, INC.; NETLOGIC MICROSYSTEMS INTERNATIONAL LIMITED; NETLOGIC MICROSYSTEMS CAYMANS LIMITED
To: SILICON VALLEY BANK
Reel/Frame 022973/0710 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2007
From: CYPRESS SEMICONDUCTOR CORPORATION
To: NETLOGIC MICOROSYSTEMS, INC.
Reel/Frame 018843/0411 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2006
From: CYPRESS SEMICONDUCTOR CORPORATION
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 017379/0729 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2006
From: EMPOWERTEL NETWORKS, INC.
To: LARA NETWORKS, INC.
Reel/Frame 017198/0867 →