English

Automatic Compiler Based FPGA Accelerator for CNN Training

Machine Learning 2019-08-20 v1 Neural and Evolutionary Computing Signal Processing

Abstract

Training of convolutional neural networks (CNNs)on embedded platforms to support on-device learning is earning vital importance in recent days. Designing flexible training hard-ware is much more challenging than inference hardware, due to design complexity and large computation/memory requirement. In this work, we present an automatic compiler-based FPGA accelerator with 16-bit fixed-point precision for complete CNNtraining, including Forward Pass (FP), Backward Pass (BP) and Weight Update (WU). We implemented an optimized RTL library to perform training-specific tasks and developed an RTL compiler to automatically generate FPGA-synthesizable RTL based on user-defined constraints. We present a new cyclic weight storage/access scheme for on-chip BRAM and off-chip DRAMto efficiently implement non-transpose and transpose operations during FP and BP phases, respectively. Representative CNNs for CIFAR-10 dataset are implemented and trained on Intel Stratix 10-GX FPGA using proposed hardware architecture, demonstrating up to 479 GOPS performance.

Keywords

Cite

@article{arxiv.1908.06724,
  title  = {Automatic Compiler Based FPGA Accelerator for CNN Training},
  author = {Shreyas Kolala Venkataramanaiah and Yufei Ma and Shihui Yin and Eriko Nurvithadhi and Aravind Dasu and Yu Cao and Jae-sun Seo},
  journal= {arXiv preprint arXiv:1908.06724},
  year   = {2019}
}

Comments

6 pages, 9 figures, paper accepted at FPL2019 conference

R2 v1 2026-06-23T10:50:50.276Z