3. Using Tcl Interface

3. 1. Script Launch

All functionalities of the Yagle platform can be accessed with the avt_shell Tcl scripting interface. avt_shell can be used the same way as any .tcl script.

avt_shell can be used in interactive mode or in script mode. In interactive mode, it is invoked as follow:

> avt_shell

In script mode, the first line of the script file should look like:

#!/usr/bin/env avt_shell

3. 2. Tools Configuration

The configuration of all the timing tools of the Yagle platform is done in the same way, by the mean of configuration variables. The value given to the variable determines the specific behavior of the tool. When using the Tcl interface, the setting of the values for the configuration variables can be done in two ways:

There is a precedence of the values set in the avttools.conf file on the values set in the avt_shell script.

3. 3. Functions

Here is a list of the families of Tcl functions that can be found within the avt_shell interface. For more information, see Yagle Reference Guide.

General Global configuration, file loading, netlist manipulation, statistics
INF Configuration Configuration though the INF functions
HDL Construction Automatic or manual generation of the VHDL/Verilog

3. 4. INF and SDC Configuration

For tool configuration needing more than the specification of a simple value (as it is done through the avt_config function), Yagle uses the INF mechanism, which is a set of Tcl configuration functions.

SDC commands are grouped together with the INF functions and share the same mechanisms.

All INF functions begin with the inf_ prefix, except of the SDC commands, which respect their standard naming.

Within a Tcl script, the target sub-circuit must be defined before using INF or SDC commands. Following example is given for a sub-circuit named my_design.

inf_SetFigureName my_design
 
set_case_analysis 1 reset
inf_DefineMutex muxup {i0 i1 i2}

It is possible to check the INF and SDC functions by driving a .inf file. Adding the line:

inf_Drive my_design

at the end of the previous Tcl script generates the my_design.inf file. Each INF and SDC function has a corresponding section in this file (see Yagle Reference Guide).