match." Otherwise, if the search key bit is different from the stored value, one of the pull-down paths conducts and discharges M-to-ground indicating a "mismatch." A TCAM cell is conceptually similar to the CAM cell, but it needs two SRAM cells to be able to store ternary data. Several variations have been proposed for the base cell architecture that is shown Figure 5.77, all with the intent to lower the voltage and power consumption and/or to increase the cell speed [106-108], and at present every practical CAM and TCAM imple- mentation, even if it relies on the same base principle, has its own design particularity. A CAM or a TCAM is realized by a matrix of cells, not SO differently from an SRAM. The matrix lines represent the stored words, sharing the M voltage terminal that is connected with the so-called M sense amplifier, which detects the presence or the absence of a match with the search word that is stored in a suitable registry. This architecture is shown in Figure 5.78. Besides the pure dedicated hardware implementation that we have briefly described, the progress in terms of density of CMOS circuits have recently allowed the CAM and TCAM implementation via FPGAs using suitably optimized libraries [109]. In terms of performances, the main CAM parameters are Search speed (measured in terms of msps, or mega searches per second) The power consumption during the search operation Search word register M read amplifiers Drivers CAM stored word FIGURE 5.78 A complete CAM composed of an array of CAM cells. Telecommunication Networks The dimension of the searchable area (traditionally the length of the CAM word is called width and the number of the word depth SO that generally the capacity is called CAM area) Flexibility As far as the speed is concerned, it is the search speed that is to be reported since in the main CAM and TCAM application, that is, router-forwarding engines and MAC-routing switches, the memory performs almost only search operations, being read and written only when the routing table is updat