Optimizing Logarithmic Arithmetic on FPGAs

This paper proposes optimizations of the methods and parameters used in both mathematical approximation and hardware design for logarithmic number system (LNS) arithmetic. First, we introduce a general polynomial approximation approach with an adaptive divide-in-halves segmentation method for evaluation of LNS arithmetic functions. Second, we develop a library generator that automatically generates optimized LNS arithmetic units with a wide bit-width range from 21 to 64 bits, to support LNS application development and design exploration. The basic arithmetic units are tested on practical FPGA boards as well as software simulation. When compared with existing LNS designs, our generated units provide in most cases 6% to 37% reduction in area and 20% to 50% reduction in latency. The key challenge for LNS remains on the application level. We show the performance of LNS versus floating-point for realistic applications: digital sine/cosine waveform generator, matrix multiplication and radiative Monte Carlo simulation. Our infrastructure for fast prototyping LNS FPGA applications allows us to efficiently study LNS number representation and its tradeoffs in speed and size when compared with floating-point designs.

[1]  Wayne Luk,et al.  Ieee Transactions on Computer-aided Design of Integrated Circuits and Systems Accuracy Guaranteed Bit-width Optimization Abstract— We Present Minibit, an Automated Static Approach for Optimizing Bit-widths of Fixed-point Feedforward Designs with Guaranteed Accuracy. Methods to Minimize Both the In- , 2022 .

[2]  Rui-Lin Chen,et al.  Pipelined Computation of Very Large Word-Length LNS Addition/Subtraction with Polynomial Hardware Cost , 2000, IEEE Trans. Computers.

[3]  Laurent Moll,et al.  Sepia: scalable 3D compositing using PCI Pamette , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[4]  Wayne Luk,et al.  Optimizing hardware function evaluation , 2005, IEEE Transactions on Computers.

[5]  Florent de Dinechin,et al.  A Tool for Unbiased Comparison between Logarithmic and Floating-point Arithmetic , 2007, J. VLSI Signal Process..

[6]  David M. Lewis An accurate LNS arithmetic unit using interleaved memory function interpolator , 1993, Proceedings of IEEE 11th Symposium on Computer Arithmetic.

[7]  Mark G. Arnold,et al.  Redundant Logarithmic Arithmetic , 1990, IEEE Trans. Computers.

[8]  Earl E. Swartzlander,et al.  Sign/Logarithm Arithmetic for FFT Implementation , 1983, IEEE Transactions on Computers.

[9]  Jirí Kadlec,et al.  Logarithmic Number System and Floating-Point Arithmetics on FPGA , 2002, FPL.

[10]  Oskar Mencer,et al.  ASC: a stream compiler for computing with FPGAs , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[11]  Vassilis Paliouras,et al.  A novel algorithm for accurate logarithmic number system subtraction , 1996, 1996 IEEE International Symposium on Circuits and Systems. Circuits and Systems Connecting the World. ISCAS 96.

[12]  Neil Burgess,et al.  A parallel look-up logarithmic number system addition/subtraction scheme for FPGA , 2003, Proceedings. 2003 IEEE International Conference on Field-Programmable Technology (FPT) (IEEE Cat. No.03EX798).

[13]  J. Detrey,et al.  A VHDL library of LNS operators , 2003, The Thrity-Seventh Asilomar Conference on Signals, Systems & Computers, 2003.

[14]  Maya Gokhale,et al.  Monte Carlo Radiative Heat Transfer Simulation on a Reconfigurable Computer , 2004, FPL.

[15]  Mark G. Arnold,et al.  Unrestricted faithful rounding is good enough for some LNS applications , 2001, Proceedings 15th IEEE Symposium on Computer Arithmetic. ARITH-15 2001.

[16]  Karl S. Hemmert,et al.  A comparison of floating point and logarithmic number systems for FPGAs , 2005, 13th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'05).

[17]  Wayne Luk,et al.  Virtual Embedded Blocks: A Methodology for Evaluating Embedded Elements in FPGAs , 2006, 2006 14th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[18]  Jirí Kadlec,et al.  Arithmetic on the European Logarithmic Microprocessor , 2000, IEEE Trans. Computers.

[19]  M. G. Arnold Improved cotransformation for LNS subtraction , 2002, 2002 IEEE International Symposium on Circuits and Systems. Proceedings (Cat. No.02CH37353).