next up previous contents index
Next: Paths and Directories Up: Xic Variables Previous: Special Constructs   Contents   Index


Startup

The following variables control fundamental behavior of the Xic program. These must be specified before reading design or technology data. Unlike all other variables, these can be set only from the .xicinit file, which is read before the technology file, or the technology file. These can not be set or unset in a .xicstart file, which is read after the technology file, unless no technology file is read. They can not be set by any other means.

The Set script function can be used in the initialization files to set this variable. In the technology file, the !set command should be used, and this must appear at the top of the file, before layer definitions.

DatabaseResolution
Value: string: ``1000'', ``2000'', ``5000, or ``10000''.
By default, Xic uses an internal resolution of 1000 units per micron. In releases prior to 3.0.12, this was internally hard-coded. As the dimensions used in integrated circuits continue to shrink, an option for higher resolution was added through use of the DatabaseResolution variable.

The internal resolution can be set with this variable, to one of the listed choices. If unset, 1000 units is used. This resolution applies only to physical data, electrical resolution is fixed at 1000.

Superficially, changing the internal resolution has only subtle effects from the user's vantage point. Some of these are:

  1. If not 1000, four digits following the decimal point are used when printing coordinates in microns, in many places in Xic. Otherwise, only three digits are used.

  2. The ultimate zoom-in and grid spacing sizes are smaller for higher resolutions.

  3. The size of ``infinity'', the maximum accessible size for the design, becomes smaller as resolution is increased, since coordinates are stored internally as 32-bit integers. For 1000 units, the field width is approximately 2 meters, which decreases to 20 centimeters at 10000 units. This should still be plenty for most purposes.

  4. Layout files produced by Xic will use the internal resolution, so that no accuracy is lost.

NetNamesCaseSens
Value: boolean.
By default, net names are case-insensitive in Xic, and saved internally as upper-case. If this boolean variable is set, net names are taken as case-sensitive. This impacts lookup of nets by name and comparison of net names for identification and matching purposes, as used in the electrical schematic and extraction system.

Subscripting
Value: string.
In Xic, net name and cell instance indexing can employ angle, square, or curly brackets, as in the forms mynet<1>, mynet[1], and mynet{1}. These forms are equivalent and can be freely mixed in Xic input.

However, on occasion Xic will create a vector name for output. The default is to use angle brackets, but this can be changed by setting this variable. The variable must be set to a word starting with one of the letters a, s, or c, case insensitive (the ``word'' can be just the letter). Only the first letter is significant. The letters signify angle, square, or curly brackets.

DrfDebug
Value: boolean.
This obscure flag applies when using the ReadDRF, ReadCdsTech and ReadCniTech technology file directives. If this variable is set, non-serious warnings encountered when reading these files will be printed. One such warning is generated by use in the Virtuoso or Ciranova technology file of color, stipple, or packet names that have not been defined in the display resourse file (DRF). Since there are defaults, these unresolved name references are not a serious problem.

At least one commercial process design kit had lots of these issues, and reporting these as warnings on every Xic startup became irritating, particularly since it is not something that the typical user can fix, or want to bother with fixing. Thus, these not-really-errors are ignored by default, but if the user desires then setting this variable will make any such errors visible.

This variable must be set before the files are read. Setting this variable at the top of the Xic technology file with the !set construct is a convenient way.


next up previous contents index
Next: Paths and Directories Up: Xic Variables Previous: Special Constructs   Contents   Index
Stephen R. Whiteley 2022-05-28