|Hierarchical Timing Language|
The HTL compiler first checks the well-formedness and the
well-timedness of an HTL program, and in the end it generates
the so-called E code (which is virtual machine code)
interpreted by the E machine.
When compiling an HTL program there are two different possibilities:
(1) first flatten the HTL program and then compile the resulted flat
program, and (2) directly compile the hierarchical program. First
compilation method is useful when compiling HTL programs that
do not have a high degree of parallelism, but if the degree of parallelism
increases then the size of the generated code increases exponentially.
The second method assumes more runtime support but the size of the
generated code increases linearly when the degree of parallelism
How To Run The Compiler?Before you run the compiler you have to make sure that you have installed on your computer J2SE Runtime Environment 5.0 (JRE 5.0, you can find it here).
To compile a HTL program you have to open a terminal and type:
java -jar [htlc] [file_name]
where htlc is either flat-htlc.jar or hierarchical-htlc.jar; file_name, is the name of the file containing HTL program, e.g., java -jar hierarchical-htlc.jar myProgram.htl. If the compilation was successful, you will see a message: “Complete.”, also in the directory where is the HTL program, there will be created some directories, all of this directories, except “Flattening”, contains C code that has to be compiled into the E Machine. The “Flattening” directory, contains the flatten HTL program, will the “ecode” directory contains the generated E code.
The above instructions are for the case when the HTL program is not to be run on a distributed platform. If the program will be run on a distributed platform then you have to use the following command:
java -jar [htlc] [file_name] -host [host_name] -annotated
where htlc is either flat-htlc.jar or hierarchical-htlc.jar; file_name, is the name of the file containing HTL program, and host_name, is the name of the host for which the HTL program will be compiled, for each host specified in the HTL program, has to be done a separate compilation. The generated directories are the same as for single host compilation.
How To Compile the HTL Compiler?Before you compile the HTL Compiler you have to make sure that, you have installed ant and J2SE(TM) Development Kit 5.0..
You also need the flat or hoerarchical HTL Compiler sources.
Directory structure is: