IEEE Micro. 12 6 : 68-78. Doi:10.1109 40.180249
huduser.gov
Content material-addressable memory (CAM) is a special type of laptop memory used in sure very-high-pace looking functions. It is also known as associative memory or associative storage and compares enter search data against a desk of saved information, and returns the deal with of matching knowledge. CAM is frequently used in networking units the place it speeds up forwarding info base and routing table operations. This kind of associative memory can also be utilized in cache memory. In associative cache memory, each address and content material is saved side by aspect. When the handle matches, the corresponding content is fetched from cache memory. Dudley Allen Buck invented the concept of content material-addressable memory in 1955. Buck is credited with the idea of recognition unit. In contrast to customary laptop memory, random-entry memory (RAM), in which the user provides a memory address and the RAM returns the data word saved at that address, a CAM is designed such that the consumer provides a data word and the CAM searches its total memory to see if that data word is stored anywhere in it.
If the information phrase is discovered, the CAM returns a listing of one or more storage addresses where the word was discovered. Thus, a CAM is the hardware embodiment of what in software program phrases could be known as an associative array. A significant interface definition for CAMs and other network serps was specified in an interoperability agreement called the Look-Apart Interface (LA-1 and LA-1B) developed by the Community Processing Discussion board. Numerous devices conforming to the interoperability agreement have been produced by Built-in Gadget Technology, Cypress Semiconductor, IBM, Broadcom and others. On December 11, 2007, the OIF printed the serial look-aside (SLA) interface agreement. CAM is far quicker than RAM in information search purposes. There are value disadvantages to CAM, nonetheless. In contrast to a RAM chip, which has easy storage cells, every individual memory bit in a completely parallel CAM must have its own related comparability circuit to detect a match between the saved bit and the input bit. Moreover, match outputs from each cell in the info word have to be mixed to yield a complete data word match signal.
The additional circuitry will increase the bodily size and manufacturing price of the CAM chip. The additional circuitry also will increase power dissipation since every comparison circuit is active on each clock cycle. Consequently, CAM is used solely in specialised applications the place looking out velocity cannot be accomplished using a much less costly methodology. One profitable early implementation was a Common Objective Associative Processor IC and System. MOSAID introduced CAM merchandise concentrating on networking applications. These merchandise had been labelled Community Engines like google (NSE), Network Search Accelerators (NSA), and Knowledge-based mostly Processors (KBP) however had been primarily CAM with specialised interfaces and features optimized for networking. At present Broadcom offers several households of KBPs. To realize a unique steadiness between speed, memory size and Memory Wave price, some implementations emulate the operate of CAM by utilizing commonplace tree search or hashing designs in hardware, Memory Wave using hardware methods like replication or pipelining to hurry up efficient performance. These designs are often used in routers. The Luleå algorithm is an efficient implementation for longest prefix match searches as required in internet routing tables.
X or don't care for one or more bits in the stored word, thus including flexibility to the search. For instance, a stored phrase of 10XX0 in a ternary CAM will match any of the 4 search phrases 10000, 10010, 10100, or 10110. The added search flexibility comes at a further cost over binary CAM as the inner memory cell must now encode three potential states instead of the two for the binary CAM. This further state is typically applied by adding a mask bit (care or don't care bit) to every memory cell. In 2013, IBM fabricated a nonvolatile TCAM using 2-transistor/2-resistive-storage (2T-2R) cells. A design of TCAM using hybrid Ferroelectric FeFET was recently revealed by a group of Worldwide scientists. Content material-addressable memory is usually used in computer networking units. For example, when a network switch receives an information body from one in every of its ports, it updates an internal table with the body's supply MAC handle focus and concentration booster the port it was received on.