Floating Point Math.h Algorithmic Functions for FPGA Devices

Impulse Accelerated Technologies increased the accessibility of Xilinx Virtex and Spartan devices by providing common math.h functions. Unlike math.h functions that run “native” in embedded processors, the Impulse library is implemented directly in FPGA hardware, and supports refactoring into multiple, pipelined parallel processes for algorithmic acceleration so the math.h functions operate two to ten faster than on embedded processors.

The new math.h library adds more scientific, algorithmic and engineering functions to the existing Impulse C floating point support. The library provides access to single- and double-precision functions such as sin, cosine, log, tan, exp, pow, sqrt, etc. Library components are provided with standard C-language function prototypes, allowing them to be easily invoked, using the same function calling methods C programmers are familiar with. These C-callable functions represent optimized math elements that are instantiated, through the use of synthesis and place-and-route tools, in the target FPGA. The Impulse C math.h Library is royalty free.

Impulse C enables software developers to create modules for field programmable gate arrays. These modules may use FPGA hardware, FPGA coprocessors, or the resources of entire FPGA based coprocessing development boards. The Impulse tool suite creates the necessary hardware interconnections from the developer’s C code, and preserves the full ANSI compatibility of the code. Within the Impulse tools, software developers are able to refactor C code for massive parallelizing to exploit the available FPGA resources. Impulse C produces acceleration of 10X to 300X. Development times are typically halved and iteration time reduced by 80%.

More info: Impulse Accelerated Technologies