Publication | Closed Access
SPARK: a high-level synthesis framework for applying parallelizing compiler transformations
386
Citations
15
References
2003
Year
Unknown Venue
EngineeringCompiler TechnologyComputer ArchitectureSoftware EngineeringSoftware AnalysisHigh-level SynthesisSystems EngineeringParallel ComputingCompilersCompiler TransformationsDynamic CompilationParallelizing CompilerCompiler SupportComputer EngineeringSpark SystemComputer ScienceOptimizing CompilerSoftware DesignProgram AnalysisFormal MethodsParallel ProgrammingSystem Software
This paper presents a modular and extensible high-level synthesis research system, called SPARK, that takes a behavioral description in ANSI-C as input and produces synthesizable register-transfer level VHDL. SPARK uses parallelizing compiler technology, developed previously, to enhance instruction-level parallelism and re-instruments it for high-level synthesis by incorporating ideas of mutual exclusivity of operations, resource sharing and hardware cost models. In this paper, we present the design flow through the SPARK system, a set of transformations that include speculative code motions and dynamic transformations and show how these transformations and other optimizing synthesis and compiler techniques are employed by a scheduling heuristic. Experiments are performed on two moderately complex industrial applications, namely MPEG-1 and the GIMP image processing tool. The results show that the various code transformations lead to up to 70 % improvements in performance without any increase in the overall area and critical path of the final synthesized design.
| Year | Citations | |
|---|---|---|
Page 1
Page 1