2019 IEEE 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM) 2019
DOI: 10.1109/fccm.2019.00014
|View full text |Cite
|
Sign up to set email alerts
|

LUTNet: Rethinking Inference in FPGA Soft Logic

Abstract: Research has shown that deep neural networks contain significant redundancy, and that high classification accuracies can be achieved even when weights and activations are quantised down to binary values. Network binarisation on FPGAs greatly increases area efficiency by replacing resource-hungry multipliers with lightweight XNOR gates. However, an FPGA's fundamental building block, the K-LUT, is capable of implementing far more than an XNOR: it can perform any K-input Boolean operation. Inspired by this observ… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
51
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
4
3
1

Relationship

2
6

Authors

Journals

citations
Cited by 46 publications
(52 citation statements)
references
References 12 publications
1
51
0
Order By: Relevance
“…We suspect that this is due to our current restriction on the form of the function g m in (3), i.e. {−1, 1} K−P ×{−1, 1} P → {−1, 1} rather than {−1, 1} K−P × {−1, 1} P → N. This makes (9) insoluble whenĉ d andp (m,t) are restricted to binary values. We can overcome this, and potentially make even more efficient use of the underlying FPGA fabric, by learning the popcount circuitry along with our XNOR substitutes, replacing the summation as well as w n x n in (1).…”
Section: Limitationsmentioning
confidence: 99%
“…We suspect that this is due to our current restriction on the form of the function g m in (3), i.e. {−1, 1} K−P ×{−1, 1} P → {−1, 1} rather than {−1, 1} K−P × {−1, 1} P → N. This makes (9) insoluble whenĉ d andp (m,t) are restricted to binary values. We can overcome this, and potentially make even more efficient use of the underlying FPGA fabric, by learning the popcount circuitry along with our XNOR substitutes, replacing the summation as well as w n x n in (1).…”
Section: Limitationsmentioning
confidence: 99%
“…(6) getTanh(double) is similar but uses an array of doubles. (7) BNNKernel is a small binarised neural network [27].…”
Section: Benchmarksmentioning
confidence: 99%
“…This is a natural choice because the underlying architecture is actually built of small physical Boolean lookup tables, each programmable to implement any one of the functions in B K , together with programmable interconnect able to connect these lookup tables in an effectively arbitrary topology (K = 6 is common). Wang et al [33] have recently begun to explore the potential for making use of the additional flexibility provided by these lookup tables. In this initial work -which we call LUTNet -we begin by taking a reasonably traditional approach, following [34]: some standard DNN benchmarks from the literature are quantised to use single-bit weights from {−1, +1}, and retrained to improve classification accuracy.…”
Section: The Discrete-continuous Divide: Preliminary Workmentioning
confidence: 99%
“…5). Using SGD in this discrete setting requires a lifting to a continuous interpolation, as described in detail in [33]. This is one way direction in which to cross the discrete-continuous divide; some possible approaches to crossing in the opposite direction are explored in Section 6.…”
Section: The Discrete-continuous Divide: Preliminary Workmentioning
confidence: 99%