(version v2.0, July 4th, 2002)
The purpose of asig is to ease the process of testing, debugging, and executing synchronous programs. Asig automatically creates a graphical user interface (GUI) for your program, allowing you to run it easily. The asig tool works with any synchronous program compiled into a finite state automaton (OC common format) or into a synchronous circuit (SC common format).
Asig takes advantage of the existing common format OC for synchronous languages. Indeed, OC and SC code can be obtained from Lustre, Esterel and Argos compilers. Without going into details, an OC program is a finite state automaton with a finite memory for the computations; and an SC program is a Boolean synchronous circuit with a finite memory for the computations. Asig takes as input:
asig foo.oc asig foo.sc
each produce three output files:
foo.tclis the Tcl/Tk GUI (8.3 version),
foo.main.cis the main program that starts the GUI and runs the OC automaton or the SC circuit, and
Makefile.foois the Makefile that compiles the GUI. Eventually, you will need to change the library paths in this file. You also need a compiler from OC or SC to C. For instance, the Esterel compiler does the job.
If your source file
makes external references (e.g., functions, constants, and so on),
then you need to provide a corresponding file
foo.h. Beware, external types are not handled! Next, the
make -f Makefile.foo
foo.c, and then compiles
foo.main.c into the
foo. This executable includes both the
automaton and the GUI. Before executing, make sure that the
X11_LIB are correctly set.
When run, the executable
foo opens a window that looks
foo program has one input
b, both integers. At each tick, it increments
b by the value of
a. The GUI window has four
a). Pure inputs have a check-box, while valued inputs have an entry zone where you can enter the desired value (here
b). All outputs have a text field displaying their current value (here
run/stopbutton runs periodically one tick of the program each
xbeing the value of the clock period (here
tickbutton runs exactly one tick of the program.
resetbutton resets the inputs, outputs and internal state of the program.
exitbutton terminates the execution and exits the GUI.
The following options are available:
|-h||Print the help message.|
|-version||Display the version number of asig.|
|-info||Display all informations about asig.|
|-bg <col>||Change the background color of the GUI to <col>. The default color is grey.|
|-font <size>||Change the font size of the GUI to <size>. The default size is 12 points.|
|-dist <dir>||Indicates that the source OC or SC program is a distributed program (obtained with ocrep or with screp) and that the file distinet.c that creates the distributed execution environment (i.e., the sockets) is located in the directory <dir>.|
The asig tool is available for Unix architectures: