scope of this book. Returning to our subject, however, CAMs do not require any setup time except for a few cycles needed to write the key. In cases with multiple matches, CAMs require the outputs to be prioritized, but this is usually taken care of by CAM vendors who integrate a priority encoder inside their chips. The reshuffling and reorganization of CAMs is a problem, but we have seen how state-of-the-art CAMs address that problem with superior organizational capabilities. The bigger problem for CAM is that when the search must occur based on a very long bit string-for example, thousands of bits long (as it can easily be the case with URL strings)- search key must be segmented into man- ageable chunks. This drastically reduces the overall system performance as matches in different mem- ory banks will not be attained within the same amount of time across the board. This dramatically increases the complexity of programming as results must be reassembled and structured before they can be delivered downstream in the processing chain. CAMs are more expensive and consume more power as opposed to SSRAMs used with standalone classification processors. 24. Ricardo Baeza-Yates and Berthier Ribeiro-Neto, Modern Information Retrieval (Reading, Massachusetts: Addison-Wesley, 1999). 25. Dan Gusfield, Algorithms on Strings, Trees, and Sequences: Computer Science and Computational Biology (New York: Cambridge University Press, 1997). 26. See www.iti.fh-flensburg.de/lang/algorithmen/pattern/bm.htm. 27. See www-sr.informatik.uni-tuebingen.de/~buehler/AC/AC.html 28. See www.cs.utexas.edu/users/moore/best-ideas/string-searching/. Downloaded from Digital Engineering Library @ McGraw-Hill (www.digitalengineeringlibrary.com) Copyright © 2004 The McGraw-Hill Companies. All rights reserved. Any use is subject to the Terms of Use as given at the website. CLASSIFICATION PROCESSORS CLASSIFICATION PROCESSORS 255 Digest (key) Classifier Tag 2 Tag 1 FPGA/PLD Tag 3 Packet NPU bus MAC & Framer FIGURE 13.9 An interesting combination of a PSM-b