scispace - formally typeset
Journal ArticleDOI

PR-TCAM: Efficient TCAM Emulation on Xilinx FPGAs Using Partial Reconfiguration

TLDR
The proposed scheme is based on the use of lookup tables (LUTs) and partial reconfiguration to achieve a more effective use of the FPGA resources while supporting the addition and removal of rules.
Abstract
Modern field-programmable gate arrays (FPGAs) provide a vast amount of logic resources that can be used to implement complex systems while providing the flexibility to modify the design once deployed. This makes them attractive for software-defined networks (SDNs) applications, and, in fact, most vendors provide the building blocks needed for those applications, which include basic packet classification functions such as exact match, longest prefix match, and match with wildcards. Those are needed for different functions such as routing, security filtering, monitoring or quality of service. The match with wildcards can be done using ternary content addressable memories (TCAMs). TCAMs can be implemented as independent standalone devices or as Internet Protocol (IP) blocks that are used inside networking application-specific integrated circuits (ASICs) such as switching ICs. In both cases, the cells of a TCAM are more complex than that of a normal memory and also than that of a binary content addressable memory (CAMs). This is due to the more complex matching that they need to implement. As FPGAs are used in many different applications, it does not make sense to include TCAM blocks inside them as they would be used only in a small fraction of the systems. Therefore, TCAMs are emulated using the logic resources available inside the FPGA. In recent years, a number of schemes to emulate TCAMs on FPGAs have been proposed, some of them based on the use of the logic resources and others on the use of the embedded memory blocks available on the FPGA. In this brief, a technique to efficiently emulate TCAMs on Xilinx FPGAs is presented. The proposed scheme is based on the use of lookup tables (LUTs) and partial reconfiguration to achieve a more effective use of the FPGA resources while supporting the addition and removal of rules. The proposed scheme has been compared to existing implementations and the results show that it can achieve significant savings in resource usage. In addition, it enables the use of all the LUTs in the device for TCAM implementation, something that is not supported by existing approaches that use LUTRAMs.

read more

Citations
More filters
Journal ArticleDOI

ER-TCAM: A Soft-Error-Resilient SRAM-Based Ternary Content-Addressable Memory for FPGAs

TL;DR: The proposed technique provides protection against soft errors with a response time of 293 ns, whereas maintaining a search rate of 222 million searches per second on a $1024\times40$ size TCAM on Artix-7 FPGA.
Journal ArticleDOI

RPE-TCAM: Reconfigurable Power-Efficient Ternary Content-Addressable Memory on FPGAs

TL;DR: This brief proposes a novel power-aware reconfigurable FPGA-based TCAM architecture that enables only a portion of the hardware to perform the search operation, and performs an extensive design space exploration to find the optimal number of banks on Xilinx FPGAs, which provides the maximum power saving.
Journal ArticleDOI

BPR-TCAM—Block and Partial Reconfiguration based TCAM on Xilinx FPGAs

TL;DR: This paper presents an efficient methodology to implement FPGA-based TCAMs with significant resource savings compared to existing schemes and exploits the fracturable nature of Look Up Tables (LUTs) and the built-in slice carry-chains for simultaneous mapping of two rules and its matching logic to a single FPGAs slice.
Journal ArticleDOI

Low-Cost and Programmable CRC Implementation Based on FPGA

TL;DR: The stride-by-5 algorithm, the pipelining go back algorithm, and the method of reprogramming by HWICAP are proposed to achieve the optimal utilization of FPGA resources and solve the padding zeros problem.
Journal ArticleDOI

FracTCAM: Fracturable LUTRAM-Based TCAM Emulation on Xilinx FPGAs

TL;DR: FracTCAM, an efficient methodology for ternary content addressable memory (TCAM) emulation on Xilinx field-programmable gate arrays (FPGAs) by leveraging primitive architectural resources, exploits the fracturable nature of lookup table random access memories (LUTRAMs) and built-in slice flip-flops for deeper pipelining.
References
More filters
Journal ArticleDOI

Content-addressable memory (CAM) circuits and architectures: a tutorial and survey

TL;DR: This paper surveys recent developments in the design of large-capacity content-addressable memory (CAM) and reviews CAM-design techniques at the circuit level and at the architectural level.
Proceedings ArticleDOI

Forwarding metamorphosis: fast programmable match-action processing in hardware for SDN

TL;DR: The RMT (reconfigurable match tables) model is proposed, a new RISC-inspired pipelined architecture for switching chips, and the essential minimal set of action primitives to specify how headers are processed in hardware are identified.
Journal ArticleDOI

NetFPGA SUME: Toward 100 Gbps as Research Commodity

TL;DR: NetFPGA SUME is an FPGA-based PCI Express board with I/O capabilities for 100 Gbps operation as a network interface card, multiport switch, firewall, or test and measurement environment.
Journal ArticleDOI

FPGA Dynamic and Partial Reconfiguration: A Survey of Architectures, Methods, and Applications

TL;DR: This work reviews FPGA reconfiguration, looking at architectures built for the purpose, and the properties of modern commercial architectures, and investigates design flows and identifies the key challenges in making reconfigurable FPGAs systems easier to design.
Journal ArticleDOI

Efficient multimatch packet classification and lookup with TCAM

TL;DR: The proposed TCAM-based scheme produces multimatch classification results with about 10 times fewer memory lookups than a pure software approach, and the scheme for removing negation in rule sets saves up to 95 percent of the TCAM space used by a straightforward implementation.
Related Papers (5)