=================================================================
TITLE: Free C-to-VHDL Synthesis Tool
SPARK is a C-based high-level synthesis framework that employs a
set of innovative compiler, parallalelizing compiler and
synthesis transformations to improve the quality of high-level
synthesis results. The compiler transformations have been re-
instrumented for synthesis by incorporating ideas of mutual
exclusivity of operations, resource sharing and hardware cost
models. The SPARK methodology is particularly targeted to
control-intensive microprocessor functional blocks and multimedia
applications. The effectiveness of the approach has been
evaluated for large real-life applications such as the
Instruction Length Decoder from the Intel Pentium and multimedia
applications such as MPEG-1, MPEG-2 and the GIMP image processing
tool. SPARK takes behavioral ANSI-C code as input, schedules it
using speculative code motions and loop transformations, runs an
interconnect-minimizing resource binding pass and generates a
finite state machine for the scheduled design graph. Finally, a
backend code generation pass outputs synthesizable register-
transfer level VHDL. This VHDL can then by synthesized using
logic synthesis tools into an ASIC or by mapped onto a FPGA.
To download SPARK binaries for Solaris and Linux platforms,
access:
SPARK
=================================================================