Architecture for fast content addressable memory search
AssigneeMicron Technology, Inc.
InventorsTomoko Ogura Iwasaki, Manik Advani
Life of this patent
Estimating the term…
Abstract
A search pattern is generated based on an input search word comprising a first sequence of bits. The search pattern comprises a first set of signals representing the input search word and a second set of signals representing a second sequence of bits comprising an inverse of the first sequence of bits. The search pattern is provided as input to search lines of a content addressable memory (CAM) block. The search pattern causes at least one string in the CAM block to be conductive and provide a signal to a page buffer connected to the string in response to the input search word matching a data entry stored on the string. A location of the data entry is determined based on data read from the page buffer and the location is output.
Claims22
A system comprising:
- a memory device comprising a content addressable memory (CAM) block comprising an array of memory cells organized into a plurality of strings, a string in the plurality of strings storing a data entry, the string comprising a plurality of memory cells connected in series between a precharged match line and a first page buffer, each of the memory cells connected to one of a plurality of search lines;
- and
- a processing device coupled to the CAM block, the processing device to perform operations comprising:
- generating a search pattern based on an input search word comprising a sequence of bits;
- providing the search pattern as input to the plurality of search lines, the search pattern causing the string to be conductive and provide a signal to the first page buffer in response to the input search word matching the data entry stored on the string, the signal resulting from the precharged match line discharging, the first page buffer storing data based on the signal;
- and
- outputting a location of the data entry within the CAM block determined based on the data stored by the first page buffer,
- the memory device further comprising:
- a shift register comprising the first page buffer, a second page buffer, and a transistor connected between the first page buffer and the second page buffer, the shift register to serially shift out the data from the first page buffer;
- and
- a counter to determine the location of the data entry by counting a number of shifts performed to serially shift out the data from the first page buffer.
(canceled)
A method comprising:
- receiving, by at least one hardware processor, an input search word comprising a sequence of bits;
- generating, by at least an inverter and a level selector, a search pattern based on the input search word;
- providing the search pattern as input to search lines of a content addressable memory (CAM) block, the search pattern causing at least one string in the CAM block to be conductive and provide a signal to a first page buffer connected to the string in response to the input search word matching a data entry stored on the string, the signal resulting from a precharged match line discharging along the string;
- serially shifting out data from the first page buffer to a second page buffer, the first page buffer and the second page buffer being connected by a transistor, the first page buffer storing the data based on the signal resulting from the precharged match line discharging along the string;
- and
- determining a location of the data entry within the CAM block based on a number of shifts performed to serially shift out the data from the first page buffer;
- and
- outputting the location of the data entry within the CAM block.
(canceled)
A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, configure the processing device to perform operations comprising:
- receiving an input search word comprising a first sequence of bits;
- generating a search pattern based on the input search word, the search pattern comprising a first set of signals representing the input search word and a second set of signals representing a second sequence of bits comprising an inverse of the first sequence of bits;
- providing the search pattern as input to search lines of a content addressable memory (CAM) block, the search pattern causing at least one string in the CAM block to be conductive and provide a signal to a page buffer connected to the string in response to the input search word matching a data entry stored on the string, the signal resulting from a precharged match line discharging along the string;
- serially shifting out data from the first page buffer to a second page buffer, the first page buffer and the second page buffer being connected by a transistor, the first page buffer storing the data based on the signal resulting from the precharged match line discharging along the string;
- determining a location of the data entry within the CAM block based on a number of shifts performed to serially shift out the data from the first page buffer;
- and
- outputting the location of the data entry within the CAM block.
Dependencies are inferred from the claim text.