CNP: An FPGA-based processor for Convolutional Networks

Clément Farabet, Cyril Poulet, Jefferson Y. Han, Yann LeCun

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Convolutional Networks (ConvNets) are biologically-inspired hierarchical architectures that can be trained to perform a variety of detection, recognition and segmentation tasks. ConvNets have a feed-forward architecture consisting of multiple linear convolution filters interspersed with point-wise non-linear squashing functions. This paper presents an efficient implementation of ConvNets on a low-end DSP-oriented Field Programmable Gate Array (FPGA). The implementation exploits the inherent parallelism of ConvNets and takes full advantage of multiple hardware multiply-accumulate units on the FPGA. The entire system uses a single FPGA with an external memory module, and no extra parts. A network compiler software was implemented, which takes a description of a trained ConvNet and compiles it into a sequence of instructions for the ConvNet Processor (CNP). A ConvNet face detection system was implemented and tested. Face detection on a 512 x 384 frame takes 100ms (10 frames per second), which corresponds to an average performance of 3:4x109 connections per second for this 340 million connection network. The design can be used for low-power, lightweight embedded vision systems for micro-UAVs and other small robots.

Original languageEnglish (US)
Title of host publicationFPL 09
Subtitle of host publication19th International Conference on Field Programmable Logic and Applications
Pages32-37
Number of pages6
DOIs
StatePublished - 2009
EventFPL 09: 19th International Conference on Field Programmable Logic and Applications - Prague, Czech Republic
Duration: Aug 31 2009Sep 2 2009

Publication series

NameFPL 09: 19th International Conference on Field Programmable Logic and Applications

Other

OtherFPL 09: 19th International Conference on Field Programmable Logic and Applications
CountryCzech Republic
CityPrague
Period8/31/099/2/09

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Computer Science Applications

Fingerprint Dive into the research topics of 'CNP: An FPGA-based processor for Convolutional Networks'. Together they form a unique fingerprint.

Cite this