A Boolean datapath generator for Esterel programs

Table of contents


Scdata is the Esterel datapath generator. It translates action calls in sc code over boolean variables into standard nets also in sc format. It is normally called via the Esterel compiler. It can also be called directly by the user if necessary.

Description of the scdata tool

Scdata produces one data-path for each program's boolean variable. A data-path is a sequence of boolean operators driven by control nets. It computes the successive values of one boolean variable. Basically, for each boolean variable, each action on this variable in transformed into a piece of circuit having the same effect on the net bearing the variable's value.

Error messages and warnings are written to the standard error stream. Error messages should be self-explanatory. Typical use is:

    scdata -B game

This command produces a file that contains the expanded sc circuit. This file can then be compiled by the Esterel compiler. For instance:


By default, the command


outputs its result in the file scdata.out.


The following options are interpreted by scdata:

-version Print the version name on the standard error output stream and terminate ignoring all other arguments.
-info Print various informations about the processor compilation on the standard error output stream and terminate, ignoring all other arguments.
-access Print access rights to the processor on the standard error output stream and terminate, ignoring all other arguments.
-s Silent mode: perform parsing and type-checking but do not generate the sc code.
-B <basename> Output the result in the file <basename> By default, the result is printed in the file scdata.out.
-simul Add extra code so that xes (the Esterel code simulator) can check the values of all boolean variables.

Getting scdata

The scdata tool is available for the following architectures:

Distributions contain scdata executable and its manual page, scdata.1. Just copy the executable in the <Esterel dir>/bin directory and the manual page in the <Esterel dir>/man/man1 directory. Then one can directly apply the following command:

    esterel -Idata game.strl

to obtain directly the file

Send bug reports to Alain Girault. Enjoy!


This work has been partially supported by the Dassault Aviation company and by UC Berkeley.

Related publications

Last modification: January 8th 1999