Abstract

This paper presents an open-source digital circuit of the coprocessor for an integer multiple-precision arithmetic (MPA). The purpose of this coprocessor is to support a central processing unit (CPU) by offloading computations requiring integer precision higher than 32/64 bits. The coprocessor is developed using the very high speed integrated circuit hardware description language (VHDL) as an intellectual property (IP) core. Therefore, it can be implemented within field programmable gate arrays (FPGAs) at various scales, e.g., within a system on chip (SoC), combining CPU cores and FPGA within a single chip as well as FPGA acceleration cards. The coprocessor handles integer numbers with precisions in the range 64 bits–32 kbits, with the limb size set to 64 bits. In our solution, the sign-magnitude representation is used to increase the efficiency of the multiplication operation as well as to provide compatibility with existing software libraries for MPA. The coprocessor is benchmarked in factorial ( n ! ), exponentiation ( n n ) and discrete Green’s function (DGF) computations on Xilinx Zynq-7000 SoC on TySOM-1 board from Aldec. In all benchmarks, the coprocessor demonstrates better runtimes than a CPU core (ARM Cortex A9) executing the same computations using a software MPA library. For sufficiently large input parameters, our coprocessor is up to three times faster when implemented in FPGA on SoC, rising to a factor of ten in DGF computations. The open-source coprocessor code is licensed under the Mozilla Public License.

Highlights

  • It is a recurrent theme that the current state of computing technology is inadequate to simulate topical scientific problems

  • In the task of discrete Green’s function (DGF) generation, the multiple-precision arithmetic (MPA) coprocessor is more than ten times faster than a single central processing unit (CPU) core within the same chip

  • The developed coprocessor is benchmarked in factorial, exponentiation and DGF computations, using an field programmable gate arrays (FPGAs) implementation on Xilinx Zynq-7000 system on chip (SoC) on TySOM-1 board from Aldec

Read more

Summary

Introduction

It is a recurrent theme that the current state of computing technology is inadequate to simulate topical scientific problems. Computer technology is progressing very fast, there are still problems that cannot be solved using the standard numerical precision. Our present work is motivated by the growth in importance of scientific and engineering computations in multiple-precision arithmetic (MPA), i.e., precision higher than the standard 32/64 bits. MPA delivers methods to solve numerically difficult problems. It is predicted in the scientific literature that [1] “we may be witnessing the birth of a new era of scientific computing, in which the numerical precision required for a computation is as important to the program design as are the algorithms and data structures”. MPA has already found applications in scientific computing, e.g., it has been used in computational electromagnetics for many years by us [2,3,4,5]

Objectives
Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call