IP Library Granted Patent US 7,117,301
Granted Patent B1
US 7,117,301 · App. 10/329,246 · Granted Oct 3, 2006

Packet based communication for content addressable memory (CAM) devices and systems

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,117,301
App. No.
10/329,246
Granted
Oct 3, 2006
Kind
B1
Abstract

A search engine system ( 100 ) and CAM device ( 300 ) are disclosed. A search engine system ( 100 ) may generate response packets ( 112 ) in response to requests packets ( 110 ) and include at least one content addressable memory (CAM) device ( 102 - 0 ) having an input interface ( 116 - 0 ) for receiving data packets and an output interface ( 116 - 1 ) for transmitting data packets.

Claims (43)

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

a de-packetizing section that receives data packets on at least one device input data lane that includes a plurality of conductive lines, the de-packetizing section extracting command data from the received data packets;

a CAM core for executing search functions in response to command data extracted from the received data packets; and

a packetizing section that receives result data from the CAM core and outputs such data in a predetermined packet format on at least one device output data lane, that includes a plurality of conductive lines, to a destination external to the CAM device, the packet format including a packet size field that indicates the size of the packet.

2. The CAM device of claim 1 , wherein:

the de-packetizing section includes at least one receiver circuit coupled to the at least one input data lane that amplifies data signals on the data lane to generate at least one character data.

3. The CAM device of claim 1 , further including:

a packetizing section that receives result data from the CAM core and outputs such data in a predetermined packet format on at least one output data lane that includes a plurality of conductive lines.

4. The CAM device of claim 1 , wherein:

the packetizing section includes at least one transmit circuit coupled to the at least one output data lane that drives the conductive lines according to data in the packet format.

5. The CAM system of claim 1 , wherein:

the packetizing section outputs the data in the packet format on a plurality of output data lanes essentially simultaneously.

6. A method, comprising the steps of:

receiving a request in data packet form at a plurality of content addressable memory (CAM) device inputs;

extracting command information from the request;

executing predetermined CAM operations in response to the command information; and

outputting result data generated in response to the request in data packet form at a plurality of CAM device outputs that are different than the CAM device inputs, the packet form including a code field that indicates the start of the data packet.

7. The method of claim 6 , wherein:

the predetermined CAM operations are selected from the group consisting of search-type operations that can compare a search key value to CAM entry values, write-type operations that can write data values to at least one predetermined location of the CAM device, and read-type operations that can read data values from at least one predetermined location of the CAM device.

8. The method of claim 6 , wherein:

extracting command information includes storing the command information in a memory circuit.

9. The method of claim 6 , further including:

outputting result data generated in response to the request in data packet form at a plurality of CAM device outputs that are different than the CAM device inputs.

10. The CAM system of claim 6 , further including:

outputting the request in data packet form at the plurality of CAM device outputs.

11. A content addressable memory (CAM) system, comprising:

at least one interface configured to send data packets;

the sent data packets including response data packets having a status field that stores a status indication for a search in the CAM system and a size field that indicates the size of the data packet; and

at least one of the sent data packets includes a request data packet having a data field that stores a search key value for comparison with entries in the CAM system.

12. The CAM system of claim 11 , wherein:

at least one of the request data packets includes a target field that stores a destination indication for the packet.

13. The CAM system of claim 12 , wherein:

the target indication is no more than 8 bits.

14. The CAM system of claim 11 , wherein:

the data packets include request data packets received by the CAM system and response packets transmitted from the CAM system.

15. The CAM system of claim 11 , wherein:

the status indication shows a result selected from the group consisting of indicating a match between a search key value and at least one entry in the CAM system, indicating no match between a search key value and entries in the CAM system, indicating multiple matches between a search key value and entries in the CAM system, indicating an entry is free within the CAM system, indicating a block of entries is free within the CAM system, indicating a sub-block of entries is free within the CAM system.

16. The CAM system of claim 11 , wherein:

at least one of the data packets includes a command field that stores a command for execution by at least one device within the CAM system.

17. The CAM system of claim 11 , wherein:

at least one of the data packets includes a priority field that stores a priority value for search in the CAM system.

18. The CAM system of claim 11 , wherein:

at least one of the data packets includes a chip identification (ID) field that stores a chip ID value corresponding to a device within the CAM system.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF THE MERGER PREVIOUSLY RECORDED ON REEL 047642 FRAME 0417. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT, Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048521/0395 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047642/0417 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2015
From: NETLOGIC I LLC
To: BROADCOM CORPORATION
Reel/Frame 035443/0763 →
CHANGE OF NAME Recorded Apr 16, 2015
From: NETLOGIC MICROSYSTEMS, INC.
To: NETLOGIC I LLC
Reel/Frame 035443/0824 →
RELEASE OF SECURITY INTEREST Recorded Sep 1, 2011
From: SILICON VALLEY BANK
To: NETLOGIC MICROSYSTEMS, INC.; NETLOGIC MICROSYSTEMS INTERNATIONAL LIMITED; NETLOGIC MICROSYSTEMS CAYMANS LIMITED
Reel/Frame 026847/0595 →