Impulse C™ is a C-language development tool for FPGA-accelerated computing. Use familiar C-language programming methods to create applications targeting a wide range of FPGA-based computing platforms. Impulse CoDeveloper™ tools include a software-to-hardware compiler, interactive parallel optimizer, and Platform Support Packages allowing you to quickly develop high-performance applications for a wide range of FPGA-based boards and systems.
Most DSP, image processing, military, scientific, and financial algorithms are developed and debugged in C. Impulse C can wrap them and bring them into FPGA in hours. Once in Impulse C, the algorithm can be instrumented to identify intensive processing areas best suited to acceleration through parallelization, optimized and compiled to FPGA.

Impulse provides extensive examples and libraries from our engineers to get you started. There is a 1,400+ member user group and more modules and IP added regularly.
Quickly experiment with different algorithmic approaches, with alternate hardware and software partitioning, and with multiple FPGA computing platforms. Architecture options include:
A simple C to hardware module;
Add an accelerated and possibly multi-core embedded CPU; or
Add reconfigurable FPGA logic to, and partition processing logic with, an external CPU.
Use the same C source code to evaluate applications and their constituent algorithms using different hardware and software targets. Optimization that would have taken months, takes only weeks.
Slower-clock FPGAs out-perform processors by parallelism. Single- or dual-stream processes are massively parallelized, increasing performance with each split. Parallelism at the system level includes: multiple parallel processes, system-level pipelining, system-level co-processing, and hardware accelerators combined with embedded software. Parallelism at the C statement level includes loop unrolling and pipelining, and instruction scheduling. Cumulatively achieving 2x to > 100x acceleration is within the developer’s reach. And because Impulse C outputs VHDL or Verilog, which gets passed to synthesis, it easily mixes with other design methodologies. Some owners even use Impulse C as a VHDL generator.
Use standard C tools and programming methods to accelerate your applications.
Profile and partition between the processor and the FPGA accelerator. Use multiple parallel processes for increased performance.
Verify and debug using familiar C-language development tools. Use the Impulse Application Monitor to analyze parallel dataflow.
Compile and optimize using interactive, graphical tools. Automatically parallelize and pipeline your critical C code.
Automatically generate FPGA hardware ready for use with your selected FPGA-based platform.
Automatically generate host-FPGA interfaces for selected platforms.

Parallelism works best for algorithms that feature significant, non-sequential logic; particularly with high-bandwidth requirements for repetitive or recursive computing and many inner code loops that can be parallelized. Impulse provides 60 examples for a wide range of FPGA based platforms. Examples are provided royalty free and many Impulse users successfully adapt these examples to their own applications. Additionally Impulse offers libraries for enhanced Image Processing, Math.h functions and more. See the Impulse web site for a current list.
Impulse FPGA experts can work as part of your team, or independently to meet your project needs. Impulse draws on thousands of hours of FPGA design expertise in all families of programmable platforms. They incorporate hardware and software codesign technologies to quickly bring your concept to silicon.
If you already have an FPGA-based project, experts can work with your team to help make applications run more efficiently. Consultants work with your team on speed, power and resource objectives, and to optimize your code to meet your project goals. They can help you quickly try out different approaches.
Impulse offers customized on-site and remote, web-based training programs. Training can be tailored to meet the needs of your team. Training programs can include significant hands-on lab components, and are led by experienced FPGA application developers.
|
DSP/Image Processing |
Military/Aero |
Financial |
Scientific |
Automotive |
|
Edge Detection |
Advanced radar processing |
Exotic financial instrument analysis |
Biomedical computing |
Factory automation |
|
FIR |
Battlefield analysis |
Feed handling |
Climate modeling |
High Speed Test |
|
FFT |
Object recognition |
Financial modeling and analytics |
Data compression |
Robotics |
|
Instrumentation and control |
Radar/Sonar/Lidar |
Options |
Earth sciences |
Vehicle telematics |
|
Signal processing |
Robotics and machine vision |
|
Medical imaging |
|
|
Video and image processing |
Software-defined radio |
|
Oil and gas exploration |
|
|
|
Threat detection |
|
|
|
Impulse C supports FPGA-based computing for module generation, embedded computing or host acceleration. Impulse C allows true software programming of FPGAs, from C language, bringing FPGAs within reach of software developers. Impulse C allows hardware designers a faster path to prototype, while maintaining compatibility with existing tool flows. Impulse C works with standard C development tools for design and debugging and with existing FPGA synthesis tools and design flows. This is the fastest path to accelerating your algorithm in FPGA.
Describe your application and we will get you started on accelerating it in FPGA.
Impulse Accelerated Technologies, Inc.
www.ImpulseC.com
© 2010 Impulse Accelerated Technologies, Inc.
Do you need any quick Answers? Call us: +420 511 112 863
Or write us an E-mail: Info@dspfpga.com | We will reply within 24 hours in working days.