|
![]() |
| Latest News : | Date: | Bookmark |
|
| In detail...
|
A key benefit of the CoDeveloper system is its strong focus on compatibility with existing tool flows. Impulse C, which represents the core technology behind CoDeveloper, is not a new or nonstandard language. Impulse C is not a hardware description language (HDL) dressed up in C-like syntax, nor is it a confusing, multi-layered set of libraries attempting to support all aspects of system design. Instead, Impulse C has been designed with a single goal: allowing highly parallel applications to be expressed using standard ANSI C extended with a small number of C-compatible library functions.
Generate individual hardware blocks or complete hardware/software systems
CoDeveloper has the ability to generate synthesizable hardware descriptions from C language processes. For some projects you may need to generate only a single hardware process while creating other Impulse C software processes only for testing purposes. Alternatively, you may wish to use the parallel programming features of Impulse C to describe large, complex systems consisting of many parallel hardware processes. CoDeveloper is appropriate for both of these important uses.
Your application may also make use of embedded or external/adjacent microprocessors, or even external DSPs. CoDeveloper Universal enables the advanced user to develop mixed FPGA and processor platforms to meet their project requirements. Extensive documentation and examples are included.
There is no requirement that an Impulse C application involve an embedded processor. Advanced users can use CoDeveloper's HDL-generation capabilities to create the synthesizable hardware descriptions for specific processes, and combine the generated hardware with their own hand-crafted HDL (or with third-party IP blocks) to build a complete system.
Because CoDeveloper generates a consistent interface (the streams, signals and shared memory interfaces), advanced users can easily develop a common library of interfaces to Impulse C that meets their own particular requirements. Typically, advanced users will develop computationally intensive processes in Impulse C, and more control oriented ("glue") logic in HDL. The benefit, of course, is that the computational processes can be very quickly developed and modified using C language.

Impulse C is a set of library functions allowing standard ANSI C to
be used for mixed software/hardware design.
Impulse C is composed of C-compatible library functions, which means that Impulse C applications can be compiled, executed and debugged using widely available Integrated Development Environments (IDEs). Or if you prefer, CoDeveloper can also be used to compile and execute your Impulse C applications directly for the purpose of desktop (development host) verification.
The Impulse C programming model
The Impulse C programming model is flexible yet powerful, supporting three fundamental methods of interprocess communication (streams, signals and shared memories). The programming model is similar to the communicating sequential process model first described by Sir Anthony Hoare in the mid-1980s and is an excellent way to describe and manage highly parallel applications.

The Impulse C programming model allows processes to be created, connected
and synchronized using a variety of design styles.
Not sure how to get started?
CoDeveloper includes a variety of sample projects along with detailed, step-by-step tutorials to give you a running start. The Impulse C Application Manager includes an Application Assistant that can generate template Impulse C applications (including test producer and consumer processes) from your initial input/output specifications.

The CoDeveloper Application Assistant generates template source files based
on your input and output specifications.
next...
Find out what types of application are most suitable for Impulse C...
view products | Impulse home page
|
Abatron | Adeneo
Embedded | ADI
Engineering | Blackhawk | Corelis | Domain
Technologies | e-con
Systems
EMA
TimingDesigner | Embedded
Planet | Entrek | EPI/Mentor |
FlatOak |
Intel
Software | IntervalZero
Microcross | Microsoft
Embedded | Segger | Signum | Sophia | SwiftModule | Tasking | TRITON
Modules
Products
by Processor | Products
by Supplier | Boards & Modules
| Impulse News |
|
| NEWS: Tools |
|
| Literature Centre |
|
| << Backward | Forward >> | Top of Page |
|
Copyright
© 2001 -
Direct Insight Ltd |