Method and apparatus for possibly decreasing the number of associative memory entries by supplementing an associative memory result with discriminator bits from an original set of information
First Claim
1. A method performed using a set of information, the set of information including a lookup word portion and a discriminator portion and the lookup word portion includes a plurality of non-contiguous data from the set of information, the method comprising:
- performing a lookup operation on an associative memory using a lookup word including the lookup word portion to generate an associative memory result; and
performing a memory lookup operation on a memory based on the associative memory result and the discriminator portion.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and apparatus are disclosed for possibly decreasing the number of associative memory entries by supplementing an associative memory result with discriminator bits from an original set of information. One implementation operates on a set of information, the set of information including a lookup word portion and a discriminator portion. A lookup word is derived based on the lookup word portion. A lookup operation is performed on an associative memory, such as, but not limited to a binary or ternary content-addressable memory, using the lookup word to generate an associative memory result. A memory lookup operation is performed on a memory based on the associative memory result and the discriminator portion.
121 Citations
24 Claims
-
1. A method performed using a set of information, the set of information including a lookup word portion and a discriminator portion and the lookup word portion includes a plurality of non-contiguous data from the set of information, the method comprising:
-
performing a lookup operation on an associative memory using a lookup word including the lookup word portion to generate an associative memory result; and
performing a memory lookup operation on a memory based on the associative memory result and the discriminator portion. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
identifying a plurality of sets of potential discriminator bits;
determining an associative memory programming for each of the plurality of sets of potential discriminator bits for each one of one or more configuration files to produce a set of results;
analyzing the set of results to identify a discriminator portion and a lookup word portion of an input word;
wherein the set of results includes a number of associative memory entries generated by said determining the associative memory programing; and
wherein said analyzing the set of results includes determining which of the plurality of sets of potential discriminator bits produces a minimal number of associative memory entries. - View Dependent Claims (17, 18, 19, 20)
programming an associative memory with the associative memory programming corresponding to a particular set of the plurality of sets of potential discriminator bits that produces the minimal number of associative memory entries;
receiving a particular input word comprising a particular discriminator portion and a particular lookup word portion;
performing a lookup operation on an associative memory using a lookup word including the particular discriminator portion to generate an associative memory result; and
performing a memory lookup operation on a memory based on the associative memory result and the particular discriminator portion.
-
-
18. The method of claim 17, wherein the associative memory includes a ternary content-addressable memory.
-
19. The method of claim 17, wherein the set of information includes a network address.
-
20. The method of claim 19, wherein the discriminator portion includes a part of the network address.
-
11. An apparatus configured to operate on a set of information, the set of information including a lookup word portion and a discriminator portion and the lookup word portion includes a plurality of non-contiguous data from the set of information, the apparatus comprising:
-
means for deriving a lookup word based on the lookup word portion;
means for performing a lookup operation on an associative memory using the lookup word to generate an associative memory result; and
means for performing a memory lookup operation on a memory based on the associative memory result and the discriminator portion. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
21. A computer-readable medium containing computer-executable instructions for performing steps, said steps comprising:
-
identifying a plurality of sets of potential discriminator bits;
determining an associative memory programming for each of the plurality of sets of potential discriminator bits for each one of one or more configuration files to produce a set of results;
analyzing the set of results to identify a discriminator portion and a lookup word portion of an input word;
wherein the set of results includes a number of associative memory entries generated by said determining the associative memory programing; and
wherein said analyzing the set of results includes determining which of the plurality of sets of potential discriminator bits produces a minimal number of associative memory entries.
-
-
22. A method performed using a set of information, the set of information including a lookup word portion and a discriminator portion, the method comprising:
-
performing a lookup operation on a ternary content-addressable memory (TCAM) using a lookup word including the lookup word portion to generate a TCAM result; and
performing a memory lookup operation on a memory based on the TCAM result and the discriminator portion. - View Dependent Claims (23, 24)
-
Specification