Impulse Accelerated Technologies™ announced that the Impulse C-to-FPGA compiler will be extended to support Pico Computing™’s M-Series FPGA modules that used Xilinx Virtex-6 FPGAs. Using Impulse C-to-FPGA compiler, image processing and multimedia DSP algorithms can be optimized for lower power, higher parallel-streaming operation on an FPGA, and then scaled to increase performance. Pico Computing has been used in security and bioinformatics. Algorithms in both cases involve large amounts of non-sequential logic that accelerates well by massive parallelization.

The Impulse tools further enhance these solutions by enabling users to mix VHDL and Verilog with ANSI C. In this methodology the system logic that will need to incur many iterations can be developed in C. The portions, such as actual encryption engines, that use the most processing logic can be isolated as machine generated VHDL and further refined by hand if needed. Impulse C can easily call external functions in HDL or via optional math.h, image processing and other libraries.

FPGAs are increasingly popular as hardware accelerators in high performance computing applications. For certain logic types, offloading computationally intensive algorithms to an FPGA enables them to be accelerated, outperforming CPU/DSP/GPUs at lower power though parallel streaming operation.

Using algorithmic derived hardware acceleration, developers partition logic among processing elements with a single line of C-code. This method also compiles to hardware logic, embedded cores and even FPGA-enabled boards without requiring software developers to learn how to program in HDL. Impulse C tools support automatic pipeline generation, instruction scheduling and other optimizations for increased algorithm throughput.

Impulse C is the most widely used high level synthesis tool for moving software applications to FPGA coprocessors. Research at the University of Washington benchmarked a 1/3 reduction in development time in designing in C rather than VHDL.

The Impulse compiler supports automated and user-directed parallel optimizations, resulting in faster processing speeds and lower power consumption. The Impulse C compiler generates hardware in standard formats, allowing the hardware code to be simulated and mapped to Pico Computing’s modules with minimal effort.