Configurable DSP-Based CAM Architecture for Data-Intensive Applications on FPGAs
Yao Chen, Feng Yu, Di Wu, Weng-Fai Wong, Bingsheng He
Abstract
Content-addressable memory (CAM) is a type of fast memory unique in its ability to perform parallel searches of stored data based on content rather than specific memory addresses. They have been used in many domains, such as networking, databases, and graph processing. Field-programmable gate arrays (FPGAs) are an attractive platform for implementing CAMs because of their low latency, reconfigurability, and energy-efficient nature. However, such implementations also face significant challenges, including high resource utilization, limited scalability, and suboptimal performance due to the extensive use of look-up tables (LUTs) and block RAMs (BRAMs). These issues stem from the inherent limitations of FPGA architectures when handling the parallel operations required by CAMs, often leading to inefficient designs that cannot meet the demands of high-speed, data-intensive applications. To address these challenges, we propose a novel configurable CAM architecture that leverages the digital signal processing (DSP) blocks available in modern FPGAs as the core resource. By utilizing DSP blocks’ data storage and logic capabilities, our approach enables configurable CAM architecture with efficient multi-query support while significantly reducing search and update latency for data-intensive applications. The DSP-based CAM architecture offers enhanced scalability, higher operating frequency, and improved performance compared to traditional LUT and BRAM-based designs. In addition, we demonstrate the effectiveness of our proposed CAM architecture with a triangle counting application on real graphs. This innovative use of DSP blocks also opens up new possibilities for highperformance, data-intensive applications on FPGAs. Our proposed design is open-sourced at: https://github.com/Xtra-Computing/DSP_CAM/.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get aa95ec90-2749-4907-8411-60d0fc50e42aRelated papers
- Uint-Packing: Multiply Your DNN Accelerator Performance via Unsigned Integer DSP PackingJingwei Zhang, Meng Zhang, Xinye Cao, Guoqing LiDAC 2023 · 9 citations
- CAP: A General Purpose Computation-in-memory with Content Addressable Processing ParadigmZhiheng Yue, Shaojun Wei, Yang Hu, Shouyi YinDAC 2024 · 1 citation
- CAMA: Energy and Memory Efficient Automata Processing in Content-Addressable MemoriesYi Huang, Zhiyu Chen, Dai Li, Kaiyuan YangHPCA 2022 · 12 citations
- CAMPER: Exploring the Potential of Content Addressable Memory for 3D Point Cloud Efficient Range SearchJiapei Zheng, Lizhou Wu, Yutong Su, Jingyi Wang et al.DAC 2024 · 1 citation
- C4CAM: A Compiler for CAM-based In-memory AcceleratorsHamid Farzaneh, João Paulo Cardoso de Lima, Mengyuan Li, Asif Ali Khan et al.ASPLOS 2024 · 7 citations
