IP Library Granted Patent US 7,379,352
Granted Patent B1
US 7,379,352 · App. 11/104,077 · Granted May 27, 2008

Random access memory (RAM) method of operation and device for search engine 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,379,352
App. No.
11/104,077
Granted
May 27, 2008
Kind
B1
Abstract

A search engine system ( 100 ) is disclosed that can include at least one content addressable memory (CAM) device ( 102 ) arranged in a cascade configuration with at least one memory device ( 104 ), such as a static random access memory (SRAM). A CAM device ( 102 ) and memory device ( 104 ) may be connected to one another by point-to-point unidirectional connections. Command data issued by a device, such as a network processing unit (NPU) ( 110 ), can flow through all devices beginning with a CAM device ( 102 ) and eventually to a memory device ( 104 ). A memory device ( 104 ) can compare its own current result data with that of a previous device in a flow (such as another RAM device), and generate an output response.

Claims (25)

1. A method of operating a memory device, comprising the steps of:

executing predetermined operations on stored data in response to a command of less 9 bits; and

optionally returning the stored data in response to no more than two bit values of the command.

2. The method of claim 1 , wherein:

the predetermined operation is selected from the group consisting of: writing data to a memory device location of the stored data, adding a predetermined value to the stored data, logically ORing a predetermined value to the stored data, logically ANDing a predetermined value to the stored data, incrementing the stored data by a predetermined value, decrementing the stored data by a predetermined value, and writing data to a memory device location of the stored data if the stored data has a predetermined value.

3. The method of claim 2 , wherein:

the predetermined operation of adding a predetermined value to the stored data includes writing a resulting sum to the memory address of the stored data and restricting carries to predetermined bit boundaries.

4. The method of claim 1 , further including:

optionally returning the stored data in response to one bit of the command.

5. The method of claim 1 , further including:

executing the predetermined operation on data values stored in a range of memory addresses beginning with a start address and ending with an end address, the range being determined by no more than four bits of the command.

6. The method of claim 5 , further including:

storing data values as words having at least four data value portions that are accessible according to lower significance bits; and

executing the predetermined operation on data values stored in a range of memory addresses includes, for a first word of the range of memory addresses, accessing a different combination of data value portions for each different combination of the lower significance bits.

7. The method of claim 6 , further including:

for a last word of the range of memory addresses, accessing a different combination of data value portions for each different combination of lower significance bits.

8. The method of claim 7 , further including:

for words between a first and last word of the range of memory addresses, accessing all data value portions.

9. The method of claim 1 , further including:

distinguishing predetermined operations on data values stored in a range of memory addresses from predetermined operations on a data value at a single memory address according to a single bit of the command.

10. The method of claim 1 , further including:

for a subset of the predetermined operations, returning a predetermined code value derived from no more than four bits of the command.

11. The method of claim 1 , further including:

determining if a command is intended for the memory device according to target information included with the command; and

executing the command if the target information matches predetermined target data for the memory device.

Assignments (14)
CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER PREVIOUSLY RECORDED AT REEL: 047357 FRAME: 0302. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048674/0834 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER PREVIOUSLY RECORDED ON REEL 047195 FRAME 0658. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047357/0302 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047195/0658 →
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 Apr 25, 2008
From: CYPRESS SEMICONDUCTOR CORPORATION
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 020890/0354 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2008
From: CYPRESS SEMICONDUCTOR CORPORATION
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 020871/0806 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2007
From: CYPRESS SEMICONDUCTOR CORPORATION
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 018961/0327 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2006
From: CYPRESS SEMICONDUCTOR CORPORATION
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 017379/0729 →