CAM-based search engines may be configured to support multiple databases
within a CAM core. These databases may represent tables for different
applications, which can be searched sequentially in response to a single
indirect instruction that is loaded during a control cycle. The databases
to be searched may be identified by a multi-database search instruction
that is loaded during a single data cycle, which may overlap with the
control cycle. In some cases, the databases may be searched using
variations of a primary search key, so that it is unnecessary to
repeatedly load the entire search key across a network interface for each
search operation within a respective database. Instead, shorter
replacement key segments may be loaded for each of a plurality of the
search operations and these replacement key segments may be combined with
one or more segments of the primary search key in the CAM core to define
a desired search key for a respective search operation.