DocumentCode
845346
Title
Content-addressable memory (CAM) circuits and architectures: a tutorial and survey
Author
Pagiamtzis, Kostas ; Sheikholeslami, Ali
Author_Institution
Dept. of Electr. & Comput. Eng., Univ. of Toronto, Ont., Canada
Volume
41
Issue
3
fYear
2006
fDate
3/1/2006 12:00:00 AM
Firstpage
712
Lastpage
727
Abstract
We survey recent developments in the design of large-capacity content-addressable memory (CAM). A CAM is a memory that implements the lookup-table function in a single clock cycle using dedicated comparison circuitry. CAMs are especially popular in network routers for packet forwarding and packet classification, but they are also beneficial in a variety of other applications that require high-speed table lookup. The main CAM-design challenge is to reduce power consumption associated with the large amount of parallel active circuitry, without sacrificing speed or memory density. In this paper, we review CAM-design techniques at the circuit level and at the architectural level. At the circuit level, we review low-power matchline sensing techniques and searchline driving approaches. At the architectural level we review three methods for reducing power consumption.
Keywords
NAND circuits; NOR circuits; content-addressable storage; logic design; low-power electronics; NAND cell; NOR cell; bank selection; content addressable memory circuits; high-speed table lookup; lookup-table function; low-power matchline sensing techniques; matchline pipelining; network routers; packet classification; packet forwarding; parallel active circuitry; searchline driving; Application software; CADCAM; Circuits; Clocks; Computer aided manufacturing; Energy consumption; IP networks; Image coding; Table lookup; Tutorial; Bank selection; NAND cell; NOR cell; content-addressable memory (CAM); matchline pipelining; matchline sensing; review; searchline power;
fLanguage
English
Journal_Title
Solid-State Circuits, IEEE Journal of
Publisher
ieee
ISSN
0018-9200
Type
jour
DOI
10.1109/JSSC.2005.864128
Filename
1599540
Link To Document