A Novel Cotransformation for LNS Subtraction

The Logarithmic Number System (LNS) can be considered a simplification of the Floating Point (FP) Number System that assumes the mantissa is always equal to one, and has a binary fixed-point exponent. LNS converts multiplication/division to a single addition/subtraction, which make LNS a very attractive choice for applications where these operations predominate, such as in some signal-processing algorithms. However, for wordlengths greater than 20 bits LNS becomes expensive because of the hardware-demanding LNS operations of addition and subtraction, which are typically important for most signal-processing algorithms. This paper gives an overview of the family of LNS subtraction algorithms called “Cotransformations,” and proposes a “Novel Cotransformation Combination” that offers improvements in terms of area and speed without sacrificing accuracy compared to previous methods. The hardware requirements of the proposed method are analyzed mathematically, and the results are verified by using synthesis and simulations.

[1]  Mark G. Arnold LPVIP: A Low-Power ROM-Less ALU for Low-Precision LNS , 2004, PATMOS.

[2]  Naofumi Takagi,et al.  Function evaluation by table look-up and addition , 1995, Proceedings of the 12th Symposium on Computer Arithmetic.

[3]  Earl E. Swartzlander,et al.  The Sign/Logarithm Number System , 1975, IEEE Transactions on Computers.

[4]  Jiri Kadlec,et al.  The European Logarithmic Microprocessor , 2008 .

[5]  Jirí Kadlec,et al.  The European Logarithmic Microprocesor , 2008, IEEE Transactions on Computers.

[6]  J. N. Coleman Simplification of table structure in logarithmic arithmetic , 1995 .

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

[8]  John N. Coleman,et al.  Matrix engine for signal processing applications using the logarithmic number system , 2002, Proceedings IEEE International Conference on Application- Specific Systems, Architectures, and Processors.

[9]  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).

[10]  Makoto Taiji,et al.  Scientific simulations with special purpose computers - the GRAPE systems , 1998 .

[11]  M. G. Arnold A pipelined LNS ALU , 2001, Proceedings IEEE Computer Society Workshop on VLSI 2001. Emerging Technologies for VLSI Systems.

[12]  Mark G. Arnold,et al.  Arithmetic Co-Transformations in the Real and Complex Logarithmic Number Systems , 1998, IEEE Trans. Computers.

[13]  Wayne Luk,et al.  Optimizing Logarithmic Arithmetic on FPGAs , 2007, 15th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM 2007).

[14]  Steve Young,et al.  The HTK book version 3.4 , 2006 .

[15]  Arnaud Tisserand,et al.  Multipartite table methods , 2005, IEEE Transactions on Computers.

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

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

[18]  David M. Lewis An Architecture for Addition and Subtraction of Long Word Length Numbers in the Logarithmic Number System , 1990, IEEE Trans. Computers.

[19]  Sylvain Collange,et al.  LNS Subtraction Using Novel Cotransformation and/or Interpolation , 2007, 2007 IEEE International Conf. on Application-specific Systems, Architectures and Processors (ASAP).

[20]  Sylvain Collange,et al.  A Scalable Design for Signal Conditioning and Digitization in Implantable Multi-Channel Neural Sensors , 2007 .

[21]  Mark G. Arnold,et al.  Reconfiguring an FPGA-based RISC for LNS arithmetic , 2001, SPIE ITCom.

[22]  Sylvain Collange,et al.  Cotransformation Provides Area and Accuracy Improvement in an HDL Library for LNS Subtraction , 2007, 10th Euromicro Conference on Digital System Design Architectures, Methods and Tools (DSD 2007).

[23]  Florent de Dinechin,et al.  Table-based polynomials for fast hardware function evaluation , 2005, 2005 IEEE International Conference on Application-Specific Systems, Architecture Processors (ASAP'05).

[24]  Leonidas G. Bleris,et al.  Towards embedded model predictive control for System-on-a-Chip applications , 2006 .

[25]  Florent de Dinechin,et al.  Floating Point or LNS: Choosing the Right Arithmetic on an Aapplication Basis , 2006, 9th EUROMICRO Conference on Digital System Design (DSD'06).

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

[27]  Graham A. Jullien,et al.  Array Processing Using Alternate Arithmetic - A 20 Year Legacy , 2006, IEEE 17th International Conference on Application-specific Systems, Architectures and Processors (ASAP'06).

[28]  Wayne Luk,et al.  Non-uniform Segmentation for Hardware Function Evaluation , 2003, FPL.

[29]  Mark G. Arnold Redundant logarithmic arithmetic for MPEG decoding , 2004, SPIE Optics + Photonics.

[30]  Mark G. Arnold,et al.  Design of a faithful LNS interpolator , 2001, Proceedings Euromicro Symposium on Digital Systems Design.

[31]  Richard Hughey,et al.  The UCSC Kestrel Application-Unspecific Processor , 2006, IEEE 17th International Conference on Application-specific Systems, Architectures and Processors (ASAP'06).

[32]  David Lewis 114 MFLOPS logarithmic number system arithmetic unit for DSP applications , 1995 .

[33]  Steve Young,et al.  The HTK book , 1995 .

[34]  Christophe Bobda,et al.  Optimizing Logarithmic Arithmetic on FPGAs , 2007, 15th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM 2007).