Content addressable memory (CAM): Memory that is addressed by content rather than by sequential addresses. Basically a CAM is a memory designed such that a desired value is provided and the addresses of all cells matching the value are provided. Since no searching is required, CAM can provide matches far faster than conventionally addressed memory can. Many CAMs use tristate logic that allows a "undefined/don't-care" state in addition to 0 and 1. CAMs are generally readable and writable. Typically CAM is expensive and is only a few bytes wide -- limiting the size of the content that can be used in addressing. Nonetheless, CAM can be cost effective in routers, data converters, data compression/decompression, and similar applications. Output of a CAM might be the first matching conventional address; a hundred or thousand bit long word with a 1 bit set for every match; or a data value
A typical CAM might provide 64 thousand 32 bit addresses and cycle at 15nSec. Current cost of such a memory as of 2001 would be 50-100USD in lots of 10,000. By way of contrast, a conventional CPU, ROM and 2Mb of RAM might cost only a few dollars, but would probably require at least several hundred nanoseconds to search for desired values using the most efficient sequential look, compare and look again searching. Even allowing for overhead in waiting for requests and in clocking out responses, CAMs can be an order of magnitude faster than RAM plus a CPU.
Return To Index
Copyright 1994-2002 by Donald Kenney.