IP Library Granted Patent US 7,516,119
Granted Patent B1
US 7,516,119 · App. 10/789,791 · Granted Apr 7, 2009

Method and apparatus for action group generation and arbitration in a classification engine

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,516,119
App. No.
10/789,791
Granted
Apr 7, 2009
Kind
B1
Abstract

An action group arbitration system can include an action table and a search block having a first type memory portion and a second type memory portion is disclosed. The search block can provide a plurality of search results, each corresponding to a group number, in response to a search key. The action table may receive the search results and provide an action indication in response to each of the plurality of search results that contain a hit indication. The first type memory portion can include static random access memory (SRAM) and the second type memory portion can include ternary content addressable memory (TCAM). Further, the action table may be divided into portions corresponding to the group number.

Claims (54)

1. An action group arbitration system, comprising:

a searchable memory block having a first type memory portion and a second type memory portion;

wherein the first type memory portion includes static random access memory (SRAM);

wherein the second type memory portion includes ternary content addressable memory (TCAM);

wherein the first and second type memory portions include a plurality of entries;

the plurality of entries configured to provide a search result in response to a search key;

a first table having a plurality of stored values for each of the plurality of entries;

wherein each of the plurality of stored values is an action group that corresponds with one of the plurality of entries, the first table configured to receive the search result and to provide a selection signal in response to the search result, the selection signal corresponding with at least one of the plurality of entries, wherein each of the plurality of entries includes a first state that includes a hit or match indication and an associated stored value having an enable state; and

a second table configured to receive the selection signal and to provide an action indication in response to the selection signal;

wherein the second table includes an action table having a plurality of portions;

wherein each of the plurality of portions is configured to be accessed by a corresponding one of a plurality of the selection signals;

wherein each of the plurality of portions corresponds to an action group;

and wherein the first type memory portion and the second type memory portion operate in parallel to provide search results.

2. The action group arbitration system of claim 1 , wherein:

the action group includes a user programmable register for enabling one or more categories of actions.

3. The action group arbitration system of claim 1 , wherein:

the selection signal is generated in response to a precedence determination.

4. The action group arbitration system of claim 1 , wherein:

the action indication includes an action to be performed on a packet.

5. A method of arbitrating actions, comprising the steps of:

performing a search operation on a searchable memory block;

wherein the performing the search operation includes searching a memory block having a first type memory portion and a second type memory portion;

wherein the first type memory portion includes static random access memory (SRAM);

wherein the second type memory portion includes ternary content addressable memory (TCAM);

accessing a stored action group number in a first table, the stored action group number corresponding to each hit resulting from the search operation, the stored action group number including a group subfield and a precedence number;

selecting an entry from an action group number table;

checking if the group subfields in the stored action group number are enabled for any hits from the search operation;

allowing the hit for a group if the group subfield is enabled;

suppressing the hit for the group if the group subfield is not enabled;

determining a precedence based on the precedence number to provide a search result for the group;

wherein the determining the precedence includes selecting a highest priority hit from among a remaining group of hits; and

selecting an action based on the search result from an action table portion corresponding to the group;

wherein the action table includes a portion corresponding to each of the groups; and wherein the selecting the action from the action table includes accessing the portion corresponding to the group; and

wherein the first type memory portion and the second type memory portion operate in parallel to provide search results.

6. An action group arbitration system, comprising:

a searchable memory block having a first type memory portion and a second type memory portion;

wherein the first type memory portion includes static random access memory (SRAM);

wherein the second type memory portion includes ternary content addressable memory (TCAM);

wherein the first and second type memory portions include a plurality of entries;

the plurality of entries configured to provide a search result in response to a search key;

a first table having a plurality of stored values for each of the plurality of entries;

wherein each of the plurality of stored values is an action group that corresponds with one of the plurality of entries, the first table configured to receive the search result and to provide a selection signal in response to the search result, the selection signal corresponding with at least one of the plurality of entries, wherein each of the plurality of entries includes a first state that includes a hit or match indication and an associated stored value having an enable state; and

a second table configured to receive the selection signal and to provide an action indication in response to the selection signal;

wherein the second table includes an action table having a plurality of portions;

wherein each of the plurality of portions is configured to be accessed by a corresponding one of a plurality of the selection signals;

wherein each of the plurality of portions corresponds to an action group; and

wherein the action group includes a user programmable register for enabling one or more categories of actions.

7. The action group arbitration system of claim 6 , wherein:

the selection signal is generated in response to a precedence determination.

8. The action group arbitration system of claim 6 , wherein:

the action indication includes an action to be performed on a packet.

9. The action group arbitration system of claim 6 , wherein: the first type memory portion and the second type memory portion operate in parallel to provide search results.

10. The method of claim 5 , wherein:

the action includes an action to be performed on a packet.

Assignments (10)
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 2, 2011
From: VENTURE LENDING & LEASING, INC
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 026855/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2010
From: RMI CORPORATION
To: NETLOGIC MICROSYSTEMS, INC.
Reel/Frame 023926/0338 →
CHANGE OF NAME Recorded May 1, 2008
From: RAZA MICROELECTRONICS, INC.
To: RMI CORPORATION
Reel/Frame 020886/0454 →
SECURITY INTEREST Recorded Apr 24, 2007
From: RAZA MICROELECTRONICS, INC.
To: VENTURE LENDING & LEASING IV, INC.
Reel/Frame 019224/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2004
From: KAO, SOPHIA W.
To: RAZA MICROELECTRONICS, INC.
Reel/Frame 015039/0109 →