Exploring CAM Design For Network Processing Using FPGA Technology

Content Addressable Memory (CAM) is becoming increasingly important in the area of communication systems design. This paper investigates a number of CAM designs suitable for implementation on FPGA. Three fundamental designs are examined based on registers, RAM blocks and LUTs. The designs are synthesized with speed and area costs presented and evaluated. This shows how CAMs can be designed for use in FPGA’s in small to medium size applications where a CAM is otherwise unavailable.

[1]  John A. Chandy,et al.  FPGA based network intrusion detection using content addressable memories , 2004, 12th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[2]  Andrew Leaver,et al.  Programmable memory blocks supporting content-addressable memory , 2000, FPGA '00.

[3]  Marco Aiello,et al.  Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) , 2006 .

[4]  K. Pagiamtzis,et al.  A low-power content-addressable memory (CAM) using pipelined hierarchical search scheme , 2004, IEEE Journal of Solid-State Circuits.

[5]  Haoyu Song,et al.  Efficient packet classification for network intrusion detection using FPGA , 2005, FPGA '05.

[6]  Francis Zane,et al.  Coolcams: power-efficient TCAMs for forwarding engines , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[7]  John W. Lockwood,et al.  An Extensible, System-On-Programmable-Chip, Content-Aware Internet Firewall , 2003, FPL.

[8]  José Nelson Amaral,et al.  The Bank Nth Chance Replacement Policy for FPGA-Based CAMs , 2003, FPL.

[9]  Devavrat Shah,et al.  Fast incremental updates on Ternary-CAMs for routing lookups and packet classification , 2000 .

[10]  A. E. Slade,et al.  A cryotron catalog memory system , 1956, AIEE-IRE '56 (Eastern).

[11]  Manoj Sachdev,et al.  High-Performance Priority Encoder for Content Addressable Memories , 2004 .