Content addressable memory with hashing function
First Claim
Patent Images
1. A method of operation within an integrated circuit device, the method comprising:
- generating an index based on a search value;
determining whether constituent bits of the search value, including bits thereof used to generate the index, match corresponding bits of a data value stored at a memory location indicated by the index; and
outputting, from the integrated circuit device, the indent and an indication of whether the constituent bits of the search value match the corresponding bits of the data value.
8 Assignments
0 Petitions
Accused Products
Abstract
A content addressable memory (CAM) device having a memory, a hash index generator to associate a search value with a unique location within a memory, and a compare circuit. The index generator generates an index based on the search value. The memory receives the index from the index generator and outputs a stored data value from a location indicated by the index. A compare circuit receives the data value from the memory and compares the data value and the search value to generate a match signal indicative of whether the data value and search value match. The match signal and index are output from the CAM device.
-
Citations
104 Claims
-
1. A method of operation within an integrated circuit device, the method comprising:
-
generating an index based on a search value;
determining whether constituent bits of the search value, including bits thereof used to generate the index, match corresponding bits of a data value stored at a memory location indicated by the index; and
outputting, from the integrated circuit device, the indent and an indication of whether the constituent bits of the search value match the corresponding bits of the data value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method of operation within an integrated circuit device, the method comprising:
-
receiving a search value;
generating an index based on a selected bits of the search value;
determining whether constituent bits of the search value, including the selected bits match corresponding bits of a data value stated at a memory location indicated by the index; and
selecting the selected bits of the search value in accordance with a configuration value stored within the integrated circuit device. - View Dependent Claims (28, 29)
-
-
24. A method of operation within an integrated circuit device, the method comprising:
-
receiving a search value;
generating an index based on a selected bits of the search value;
determining whether constituent bits of the search value, including the selected bits match corresponding bits of a data value stored at a memory location indicated by the index; and
wherein generating an index based on selected bits of the search value comprises;
assembling dispersed fields of bits within the search value to form a search key; and
generating the index based on the search key. - View Dependent Claims (25, 26, 27)
-
-
30. A method of operation within an integrated circuit device, the method comprising:
-
generating an index based on a search value;
generating an indication of whether a first portion of the search value, including constituent bits of the search value used to generate the index, matches a selected portion of a data value stored at a memory location indicated by the index; and
wherein generating the index based on the match value comprises selecting portion of the first portion of the search value, and generating the index based on the selected portion of the first portion of the search value, and wherein selecting the portion of the first portion of the search value comprises selecting the portion of the first portion of the search value in accordance with a configuration value stored within the integrated circuit device. - View Dependent Claims (33)
-
-
31. A method of operation within an integrated circuit device, the method comprising:
-
generating an index based on a search value;
generating an indication of whether a first portion of the starch value, including constituent bits of the search value used to generate the index, matches a selected portion of a data value stored at a memory location indicated by the index; and
wherein generating an index based on the search value comprises;
assembling dispersed fields of bits within the search value to form a search key; and
generating the index based on the search key. - View Dependent Claims (32)
-
-
34. A method of operation within an integrated circuit device, the method of comprising:
-
generating an index based on a search value;
generating an indication of whether a first portion of the search value, including constituent bits of the search value used to generate the index, matches a selected portion of a data value stored at a memory location indicated by the index;
retrieving mask information from the memory location indicated by the index, the mask information indicating the selected portion of the data valve; and
wherein generating the indication of whether the first portion of the search value matches the selected portion of the data value stored at the memory location indicated by the index comprises;
retrieving the data value from the memory location indicated by the index; and
comparing the first portion of the search value with the selected portion of the data value to generate the match signal that indicates whether the search value matches the data value. - View Dependent Claims (35)
-
-
36. A method of operation within an integrated circuit device the method comprising:
-
generating a search index based on a search value; and
identifying, within a content addressable memory (CAM), one of a plurality of stored indices that matches the search index; and
determining whether the search value matches a data value stored at a first location within a data memory, the first location corresponding to a location of the one of the plurality of indices. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A method of operation within an integrated circuit device, the method comprising:
-
converting a search value into a search index having fewer constituent bits than the search valve;
identifying, within a content addressable memory (CAM), one of a plurality of stored indices that matches the search index; and
outputting a data value from a first location within a data memory, the first location corresponding to a location within the CAM of the one of the plurality of indices. - View Dependent Claims (50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60)
-
-
61. A method of operation within an integrated circuit device, the method comprising:
-
generating a plurality of indices based on a search value;
selecting, according to a select value, one of the plurality of indices; and
determining whether the search value matches a data value stored at a memory location indicated by the one of the plurality of indices. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72)
-
-
73. A method of operation within an integrated circuit device, the method comprising:
-
generating a plurality of indices based on a search value;
retrieving a plurality of data values from a plurality of memories, each data value being retrieved from a respective one of the memories at a location indicated by a respective one of the plurality of indices;
comparing the search value to each of the plurality of data values to identity one of the data values that matches the search value; and
generating a value that identifies the respective one of the memories from which the one of the data values that matches the search value was retrieved. - View Dependent Claims (74, 75, 76, 77, 78)
-
-
79. A method of operation within an integrated circuit device, the method comprising:
-
receiving a search value and a corresponding search code;
comparing the search code to a plurality of configuration values, each of the configuration values corresponding to a respective one of a plurality of data memories within the integrated circuit device;
generating a plurality of indices based on the search value;
retrieving a plurality of data value from the plurality of data memories, each data value being retrieved from a respective one of the data memories at a location indicated by a respective one of the indices; and
generating, for each of the plurality of data memories, a respective match signal having a first state if the search value matches the data value retrieved from the data memory and if the search code matches the configuration value that corresponds to the data memory. - View Dependent Claims (80, 81, 82, 83, 84, 85)
-
-
86. A method of operation within an integrated circuit device, the method comprising:
-
generating an index based on an input value;
retrieving a first value from a location, indicated by the index, within a first memory;
comparing the first value to the input value to generate a first match signal that indicates whether the input value matches the first value; and
comparing the input value simultaneously to each of a plurality of values stored in a second memory to generate a second match signal that indicates whether the input value matches one of the plurality of values stored in the second memory. - View Dependent Claims (87, 88, 89, 90, 91, 92, 93, 94, 95)
-
-
96. A method of operation within an integrated circuit device, the method comprising:
-
generating a plurality of priority values in response to a first instruction, each priority value indicating a storage capacity of a respective one of a plurality of circuit blocks; and
generating, based on the priority values, a block identifier that identifies one of the circuit blocks. - View Dependent Claims (97, 98, 99)
-
-
100. A method of operation within an integrated circuit device, the method comprising:
-
generating a plurality of indices based on a search value; and
for each of a plurality of circuit blocks within the integrated circuit device;
selecting one of the indices;
retrieving a data value from a first storage location within the circuit block, the first storage location being indicated by the one of the indices; and
determining whether the date value matches the search value. - View Dependent Claims (101, 102, 103, 104)
-
Specification