Implementation of an optimizing compiler for VHDL

We present techniques used to implement an optimizing compiler for the VHSIC hardware description language (VHDL). We present details about the LR parser used to parse the input program. An efficient intermediate representation, called a process graph, is constructed as a result of the parsing. This representation is chosen to facilitate the ease of data flow analyses and optimizations. The process graph is a reducible flow graph because of the restricted subset of VHDL that we work with. The various data flow analyses and optimization techniques that have been implemented are described. This optimizing compiler is being used as a front end for a tool that performs behavioral synthesis.

[1]  Alfred V. Aho,et al.  Principles of Compiler Design (Addison-Wesley series in computer science and information processing) , 1977 .

[2]  Jean-Loup Baer,et al.  Compilation of arithmetic expressions for parallel computations , 1968, IFIP Congress.

[3]  S. J. Krolikoski The V-synth system , 1988, Digest of Papers. COMPCON Spring 88 Thirty-Third IEEE Computer Society International Conference.

[4]  Robert E. Tarjan,et al.  A fast algorithm for finding dominators in a flowgraph , 1979, TOPL.