next up previous contents index
Next: Command Line Options Up: The FileTool Utility Previous: The FileTool Utility   Contents   Index


The FileTool is a command-line program for analysis and manipulation of layout files. Although the FileTool originated as a separate stand-alone application that made use of Xic technology, the current version is a polymorphism of the Xic executable. There are two ways to access the FileTool:

  1. Copy or symbolically link one the xic executable file (or the xic.exe file under Windows) to a new link or file named ``filetool'' (or ``filetool.exe'' under Windows). You now have a FileTool program that behaves in all respects as described in this documentation.

    Under Unix/Linux/OS X, the best way is to use a symbolic link. For example, in the same directory as the xic executable, become root and type (for example)

    ln -s xic filetool
    This will symbolically link the xic binary executable to the filetool name, without actually copying the file. If the xic file is replaced for an update, the link will automatically access the new executable.

    This is not automatically done when the programs are installed. The user must intervene to obtain a filetool executable target.

    Under Windows, there are no symbolic links, so the file must actually be copied. Thus, after an update, the copy operation should be repeated, to obtain any updates that relate to the FileTool.

  2. One can also effectively run the FileTool directly from Xic with, for example,
    xic -F filetool_args...
    The -F must be the first argument, and all arguments that follow are interpreted as FileTool arguments. The program will behave in all respects as if started under the name ``filetool''.

The FileTool can be incorporated in the user's automation scripts to implement perhaps complicated manipulations on layout files, or as an aid to understanding content and diagnosing problems with layout files, or as a general purpose utility. Here are some of the tasks that the FileTool can perform:

When started, none of the Xic startup or technology files are read. Instead, a file named ``.filetoolrc'' will be read, if it can be found in the current directory of the user's home directory. This is a script file, like the .xicstart file, however the only function likely to be useful is the Set function, which sets variables. Variables can also be set from the FileTool command line, but the .filetoolrc file can be used to set variables that are almost always needed, such as favorite OASIS flags when working with OASIS files.

The file formats supported by the FileTool are:

The industry standard stream format. Any release level is supported for input. For output, the default release level is 7, but this can be set to earlier levels. Compressed (gzipped) GDSII files can be read or written.

The emerging standard, which provides more compact data files than GDSII. Any conforming OASIS file can be read as input. A number of options affect OASIS output.

A compact data representation developed by Whiteley Research Inc. Compressed (gzipped) CGX files can be read or written.

The obsolete but still used CIF format. Any known dialect should work as input. The output dialect can be selected via options.

Input files can be any of these file types, the format is recognized automatically. Output files can also be any of these file types, but the format is specified by the extension of the file name.

The operations can be saved to a script file, or read from a script file. The script file format is the same as used by the !assemble command in Xic, thus scripts generated by the FileTool can be executed in Xic.

next up previous contents index
Next: Command Line Options Up: The FileTool Utility Previous: The FileTool Utility   Contents   Index
Stephen R. Whiteley 2022-05-28