A Resource-Driven Approach for Implementing CNNs on FPGAs Using Adaptive IPs
By Philippe Magalhães 1, Virginie Fresse 1, Benoît Suffran 2, Olivier Alata 1
1 Hubert Curien Laboratory - Université Jean Monnet
2 ST Microelectronics

Abstract
The increasing demand for real-time, low-latency artificial intelligence applications has propelled the use of Field-Programmable Gate Arrays (FPGAs) for Convolutional Neural Network (CNN) implementations. FPGAs offer reconfigurability, energy efficiency, and performance advantages over GPUs, making them suitable for edge devices and embedded systems. This work presents a novel library of resource-efficient convolution IPs designed to automatically adapt to the available FPGA resources. Developed in VHDL, these IPs are parameterizable and utilize fixed-point arithmetic for optimal performance. Four IPs are introduced, each tailored to specific resource constraints, offering flexibility in DSP usage, logic consumption, and precision. Experimental results on a Zynq UltraScale+ FPGA highlight the trade-offs between performance and resource usage. The comparison with recent FPGA-based CNN acceleration techniques emphasizes the versatility and independence of this approach from specific FPGA architectures or technological advancements. Future work will expand the library to include pooling and activation functions, enabling broader applicability and integration into CNN frameworks.
Index Terms—FPGA, CNN, Optimization, Adaptation
To read the full article, click here
Related Semiconductor IP
- Configurable CNN accelerator
- Convolutional Neural Network (CNN) Compact Accelerator
- CNN AI IP Core
- NPU IP Core for Edge
- NPU IP Core for Mobile
Related Articles
- An MDE Approach For Implementing Partial Dynamic Reconfiguration In FPGAs
- Using an interface wrapper module to simplify implementing PCIe on FPGAs
- Implementing digital processing for automotive radar using SoC FPGAs
- A Direct Memory Access Controller (DMAC) for Irregular Data Transfers on RISC-V Linux Systems
Latest Articles
- LACE: Large Language Model Aided Multi-Agent Framework for Agile RISC-V Instruction Extension
- A Process-Aware Hybrid Si/IGO Monolithic-3D 6T SRAM with BEOL Pass-Gates for the 2nm Node
- Automated Estimation of MBIST Area and Test Time in Heterogeneous Memory IPs via Stacked Ensemble Framework
- VIPER: Architecture-Aware Performance Modeling for Processing-in-Memory Design-Space Exploration
- CTTE: An Open Dual-Protocol RISC-V Trace Encoder for N-Trace and E-Trace