{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

cam vs sram 2 - An Overview of Content Addressable Memory...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
An Overview of Content Addressable Memory Lane Thames ECE 6100—Advanced Computer Architecture Professor: Dr. Ashraf Saad Test 2 Georgia Institute of Technology College of Engineering School of Electrical and Computer Engineering
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Abstract This paper gives an overview of Content Addressable Memory (CAM) and associative memory technologies. The paper first gives an introduction to the background material needed to understand the CAM technology. It compares conventional memory RAM to CAM. Then, it describes the computer organization and architecture needed for CAM and gives examples of various implementations of it. Then, it describes some state of the art applications that use CAM technology. Finally, it concludes with a thought on using CAM with cognitive information processing systems, and concludes with some insight on future directions.
Background image of page 2
Introduction Society has come to rely on computers for many of their day to day tasks. We now live in the “Information Age” were any type of information can be located through the Internet in a matter of seconds. Because of the growing demand in information access and the desire to retrieve information quickly, engineers have developed clever ways to find and process information quickly. Amongst these developments is a novel computer memory approach called Content Addressable Memory (CAM). CAM is also referred to as Associative Memory in the literature. A CAM is a storage device that includes circuitry to store a data element, and it includes comparison logic with each data element. When using conventional computer memory such as Random Access Memory (RAM), a user will supply a memory address, and the system will supply the data contained at the given address. However, with a CAM based system, the user supplies the content of the data and the entire memory system is searched for the given piece of data. When the data is found, the system returns the location(s) of the stored data. The CAM is designed to search its entire memory for a given data concurrently (or in parallel). This feature is the main influence behind using a CAM. It enables an extremely fast memory for searching for information within a memory system. Indeed, a CAM system is faster than any conventional system for searching data. Consider a conventional memory. If the data is stored in lexicographical order, then a binary search approach has a time complexity of O(logn) . One can analyze any searching algorithm based on conventional memory, and the time complexity will never be better than that of a CAM, which is O (1) and is constant due to the parallel search nature of the hardware. However, even though one can gain significant improvement in search time while using a CAM, there are significant costs incurred by a CAM system. Because the entire system is searched in parallel and each memory cell has “match” logic associated with it, there is large power consumption for a CAM system. In fact, most academic research being
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}