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
- Implementing LTE on FPGAs
- Using an interface wrapper module to simplify implementing PCIe on FPGAs
- Implementing digital processing for automotive radar using SoC FPGAs
Latest Articles
- Reducing Power Consumption of Embedded Dynamic Memories with ECCs
- NIFA: Nonlinear IMC enhanced FPGA for efficient ML inference
- A 32-channel event-based bio-signal analog front-end with adaptive delta and pulse frequency encoding
- Vectorizing Quantum Control: A RISC-V Vector Extension Architecture for Scalable Qubit Systems
- FlexViT: A Flexible FPGA-based Accelerator for Edge Vision Transformers