FPGA-based hardware acceleration of C/C++ based applications Part 1
, Part 2
, and Part 3
Impulse Accelerated Technologies, a leader in ANSI C to FPGA optimizing compiler technology, has announced that it has extended its support for Xilinx Virtex-5 based FPGA development and co-processing boards and systems, and has updated its compiler tools in support of Release 9.2 of the Xilinx ISE design tools.
Impulse has collaborated with its partners to deliver new and updated Impulse C Platform Support Packages, as well as new, ready-to-run examples and documentation. These product features are available to all registered Impulse C users and include support for:
- Pico Computing E-16 PCI Express cards and clusters.
- VMETRO PMC-FPGA05 FPGA-based cards, including CameraLink Modules.
- Xilinx ML501 and ML555 development boards.
The Impulse C compiler allows application developers to rapidly describe, optimize and deploy FPGA-accelerated algorithms, using familiar C-language programming techniques. By using the FPGA as a highly parallel coprocessor, software applications that include financial modeling, scientific computing, bioinformatics and defense can be accelerated directly in hardware, resulting in lowered system costs and greater processing efficiencies.
"Our goal as a company is to make reconfigurable hardware technology more accessible and practical for embedded and high-performance computing applications" said David Pellerin, co-founder and CTO of Impulse. "To this end, we are working closely with our platform partners and with Xilinx to improve the ease with which C-language applications can be moved into Xilinx FPGAs, as well as improve the performance of the resulting hardware-accelerated systems."
"Xilinx relies on technology providers like Impulse to make FPGAs accessible to new categories of FPGA users" said Steve Lass, Senior Director of Software Product Marketing at Xilinx. "Software developers worldwide are finding that higher-level, software-oriented tools provide an easier way to enable the power/performance benefits inherent in FPGAs."
FPGA-based computing platforms are rapidly gaining footholds in the domains of embedded and high performance computing. Applications in these domains are diverse, and include image and video processing, digital signal processing, financial analytics, bioinformatics, cryptography, oil and gas exploration and scientific computing. Developers of such applications are not typically hardware designers, however, making tools such as Impulse C an important part of the FPGA design process.
Accordingly to Brian Durwood, CEO of Impulse, "Impulse customers have reported saving up to 50% of their design times on new FPGA projects, and were able to try algorithms in the FPGA that they would not have even attempted using HDL. For these customers, C-to-hardware provides a more iterative, explorative method of design."
The Impulse C compiler plays a key role in bringing software application developers into FPGA technologies. During the software-to-hardware compilation process, the programmer's C code is automatically optimized for parallelism. This optimization, in which C statements are analyzed, parallelized and translated directly to FPGA hardware, is the key to making code running on a relatively slow clock speed FPGA outperform a processor running at a much higher clock rate. When compared to traditional methods of hardware design, this approach can cut weeks or even months off of the development cycle for high performance, FPGA-accelerated computing applications.
Impulse C is available now from Impulse Accelerated Technologies and its distributors worldwide. Visitors to www.ImpulseC.com can register for a free, 90-minute web training seminar.
About Impulse Accelerated Technologies
The Impulse C optimizing C-to-FPGA compiler allows software developers to create FPGA-accelerated applications in a fraction of the time required when using traditional HDL based methodology. Advanced compiler features found in the Impulse tools can automatically increase the parallelism and performance of C-language algorithms, and greatly simply the movement of legacy C code into FPGAs. For more information about Impulse C-to-FPGA tools, please visit www.ImpulseC.com.