VPFPAP: A Special-Purpose VLIW Processor for Variable-Precision Floating-Point Arithmetic

Many scientific computing applications require efficient variable-precision floating-point arithmetic. This paper presents a special-purpose Variable-Precision Floating-Point Arithmetic Processor (VPFPAP) based on Very Large Instruction Word (VLIW) structure. The proposed processor uses a unified hardware structure, equipped with multiple custom basic variable-precision arithmetic units, to implement various variable-precision algebraic and transcendental functions. The performance is improved by the explicitly parallel technology of VLIW instruction and by dynamically varying the precision of intermediate computation. Finally, we create a prototype of VPFPAP unit into a Xilinx Virtex-6 XC6VLX760-2FF1760 FPGA chip. The experimental results show that our design, based on FPGA running at 253 MHz, outperforms the approach of a software-based library running on an Intel Core i3 530 CPU at 2.93GHz by a factor of 5-38X for basic variable precision arithmetic operations and elementary functions.

[1]  Thomas E. Hull,et al.  CADAC: A Controlled-Precision Decimal Arithmetic Unit , 1983, IEEE Transactions on Computers.

[2]  Yong Dou,et al.  FPGA accelerating double/quad-double high precision floating-point applications for ExaScale computing , 2010, ICS '10.

[3]  Naoki Shibata Efficient evaluation methods of elementary functions suitable for SIMD computation , 2010, Computer Science - Research and Development.

[4]  Richard P. Brent,et al.  Modern Computer Arithmetic , 2010 .

[5]  Tony M. Carter Cascade: hardware for high/variable precision arithmetic , 1989, Proceedings of 9th Symposium on Computer Arithmetic.

[6]  Javier Hormigo,et al.  Interval sine and cosine functions computation based on variable-precision CORDIC algorithm , 1999, Proceedings 14th IEEE Symposium on Computer Arithmetic (Cat. No.99CB36336).

[7]  Javier Hormigo,et al.  A Hardware Algorithm for Variable � Precision Division , 2003 .

[8]  David H. Bailey,et al.  High-precision floating-point arithmetic in scientific computation , 2004, Computing in Science & Engineering.

[9]  Earl E. Swartzlander,et al.  A Family of Variable-Precision Interval Arithmetic Processors , 2000, IEEE Trans. Computers.

[10]  Vincent Lefèvre,et al.  MPFR: A multiple-precision binary floating-point library with correct rounding , 2007, TOMS.

[11]  Tarek A. El-Ghazawi,et al.  Bringing High-Performance Reconfigurable Computing to Exact Computations , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[12]  Javier Hormigo,et al.  A hardware algorithm for variable-precision logarithm , 2000, Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors.

[13]  Javier Hormigo,et al.  CORDIC Processor for Variable-Precision Interval Arithmetic , 2004, J. VLSI Signal Process..

[14]  Donald M. Chiarulli,et al.  DRAFT: A dynamically reconfigurable processor for integer arithmetic , 1985, 1985 IEEE 7th Symposium on Computer Arithmetic (ARITH).

[15]  J. Fujimoto,et al.  High precision numerical computations A case for an HAPPY design , 2005 .