A Parametrizable High-Level Synthesis Library for Accelerating Neural Networks on FPGAs

Publikation: Beitrag in FachzeitschriftForschungsartikelBeigetragenBegutachtung

Abstract

In recent years, Convolutional Neural Network CNN have been incorporated in a large number of applications, including multimedia retrieval and image classification. However, CNN based algorithms are computationally and resource intensive and therefore difficult to be used in embedded systems. FPGA based accelerators are becoming more and more popular in research and industry due to their flexibility and energy efficiency. However, the available resources and the size of the on-chip memory can limit the performance of the FPGA accelerator for CNN. This work proposes an High-Level Synthesis HLS library for CNN algorithms. It contains seven different streaming-capable CNN (plus two conversion) functions for creating large neural networks with deep pipelines. The different functions have many parameter settings (e.g. for resolution, feature maps, data types, kernel size, parallelilization, accuracy, etc.), which also enable compile-time optimizations. Our functions are integrated into the HiFlipVX library, which is an open source HLS FPGA library for image processing and object detection. This offers the possibility to implement different types of computer vision applications with one library. Due to the various configuration and parallelization possibilities of the library functions, it is possible to implement a high-performance, scalable and resource-efficient system, as our evaluation of the MobileNets algorithm shows.

Details

OriginalspracheEnglisch
Seiten (von - bis)513-529
Seitenumfang17
FachzeitschriftJournal of Signal Processing Systems
Jahrgang93
Ausgabenummer5
PublikationsstatusVeröffentlicht - Mai 2021
Peer-Review-StatusJa

Externe IDs

Scopus 85102810198
ORCID /0000-0003-2571-8441/work/142240528

Schlagworte

Ziele für nachhaltige Entwicklung

Schlagwörter

  • Hardware acceleration, High-level synthesis, FPGA, Neural networks, Library, FPGA, Library, Neural networks