Binary Neural Networks in FPGAs: Architectures, Tool Flows and Hardware Comparisons

Yuanxin Su, Kah Phooi Seng*, Li Minn Ang, Jeremy Smith

*Corresponding author for this work

Research output: Contribution to journalReview articlepeer-review

1 Citation (Scopus)

Abstract

Binary neural networks (BNNs) are variations of artificial/deep neural network (ANN/DNN) architectures that constrain the real values of weights to the binary set of numbers {−1,1}. By using binary values, BNNs can convert matrix multiplications into bitwise operations, which accelerates both training and inference and reduces hardware complexity and model sizes for implementation. Compared to traditional deep learning architectures, BNNs are a good choice for implementation in resource-constrained devices like FPGAs and ASICs. However, BNNs have the disadvantage of reduced performance and accuracy because of the tradeoff due to binarization. Over the years, this has attracted the attention of the research community to overcome the performance gap of BNNs, and several architectures have been proposed. In this paper, we provide a comprehensive review of BNNs for implementation in FPGA hardware. The survey covers different aspects, such as BNN architectures and variants, design and tool flows for FPGAs, and various applications for BNNs. The final part of the paper gives some benchmark works and design tools for implementing BNNs in FPGAs based on established datasets used by the research community.

Original languageEnglish
Article number9254
JournalSensors
Volume23
Issue number22
DOIs
Publication statusPublished - Nov 2023

Keywords

  • binary neural network (BNN)
  • computational modeling
  • field-programmable gate array (FPGA)
  • latency reduction

Fingerprint

Dive into the research topics of 'Binary Neural Networks in FPGAs: Architectures, Tool Flows and Hardware Comparisons'. Together they form a unique fingerprint.

Cite this