Xic maintains an internal list of keyword/value associations. Although this list can be used for general purposes, there are a number of special keywords, or ``variables'', whose value will affect Xic operation. Variables are set with the !set command, and can be unset with the !unset command. The script functions Set, Unset, SetExpand, and Get also provide an interface to this database. Variables can be set from the technology file, and a number of the buttons in menus and various pop-ups really do nothing more than control the state of one of these variables.
Any variable name can be set with the !set command. The variables and constructs that have meaning to Xic are summarized in the table below. These are described more fully in the sections that follow.
Special Constructs | |
!set | List variables currently set |
!set ? | List these variables |
@devname.property | Set device property |
Database | |
DatabaseResolution | Set internal units |
---|---|
Paths and Directories | |
Path | Design data file search path |
LibPath | Startup file and library search path |
HelpPath | Help file search path |
ScriptPath | Script file search path |
NoReadExclusive | Don't move stripped path to front of search path |
AddToBack | Add stripped path to back of search path |
DocsDir | Directory containing release documentation |
RgbTxtPath | Path to system rgb.txt file |
TeePrompt | Copy messages to given filename or ``stdout'' |
General Visual | |
MouseWheel | Set mouse wheel rate parameters |
NoCheckUpdate | Skip check for new release on startup |
FullWinCursor | Enable full-window cursor |
CellThreshold | Min size in pixels of displayed subcell, integer > = 0 |
LayerTable | Layer table presentation: ``compact'' or ``tiny'' |
ListPageEntries | Maximum entries per page in list pop-ups |
MaxPrpLabelLen | Max length of displayed prpty string |
NoLocalImage | Don't compose images locally |
NoPixmapStore | Don't use screen backing memory |
NoDisplayCache | Don't use multi-object rendering for boxes |
PhysGridOrigin | Set the origin of the grid displayed in physical mode |
ScreenCoords | Show window pixel coordinates |
EdgeSnapMode | Cursor edge-snapping mode |
PixelDelta | Cursor selection proximity is screen pixels |
`!' Commands | |
InstallCmdFormat | Installation command string for !update command |
JoinMaxPolyVerts | Upper bound of vertices in polygons from join (def. 600) |
JoinMaxPolyGroup | Limit number trapezoids per poly in join (def. 300) |
JoinMaxPolyQueue | Limit number trapezoids to form polys in join (def. 1000) |
JoinBreakClean | Manhattan split polygons with too many vertices |
JoinSplitWires | Include wires in join/split operations |
PartitionSize | Partition grid size in microns for layer operations |
Shell | Path to shell used for external commands |
SpotSize | Set mask granularity |
Scripts | |
TclLibrary | Path to Tcl shared library |
TkLibrary | Path to Tk shared library |
LogIsLog10 | The log function returns base-10 when set |
Selections | |
MarkInstanceOrigin | Show origin of selected instances |
SelectTime | Set delay (msec) to activate move |
NoAltSelection | Use legacy click-selection logic |
MaxBlinkingObjects | Maximum number of objects shown blinking |
Side Menu Commands | |
LogoEndStyle | End style for logos: 0 flush, 1 round, 2 extend |
LogoPathWidth | Path width for logos, 1 - 5 |
LogoAltFont | Specify alternate font for logos |
LogoPrettyFont | Name of system font to use for logos |
LogoPixelSize | Specify the ``pixel'' size for logos |
LogoToFile | Create subcell for logos |
NoMergeObjects | Suppress merging new boxes,polygons |
NoMergePolys | Clip/merge boxes only when merging |
MaxRoundSides | Maximum sides used to approximate round objects |
NoConstrainRound | No DRC constraints creating round objects |
PictorialDevs | Use pictorial device menu |
ShowDots | Show electrical connections |
SPICE Interface | |
SpiceListAll | Include unconnected devices in Spice output |
SpiceAlias | Device key aliases for Spice output |
SpiceHost | Name of WRspice server |
SpiceHostDisplay | X display string to use on remote host |
SpiceProg | Path name of WRspice executable, supersedes below |
SpiceExecDir | Directory containing WRspice executable |
SpiceExecName | Name of WRspice executable |
SpiceSubcCatchar | Character used by WRspice in subcircuit expansion |
SpiceSubcCatmode | Mode for WRspice subcircuit expansion |
CheckSolitary | Report unconnected terminals in netlist |
NoSpiceTools | Do not show WRspice toolbar |
File Menu - Printing | |
DefaultPrintCmd | Default print command (printer name in Windows) |
NoDriverLabels | Don't use driver text for hard copy labels |
PSlineWidth | Set line width for postscript line draw |
RmTempFileMinutes | Set up temporary file removal |
NoAskFileAction | Don't ask before file actions in File Selection pop-up |
Cell Menu Commands | |
ContextDarkPcnt | Control illumination of context in Push command |
Edit/Modify Menu Commands | |
MasterMenuLength | Max. entries in master pull-down menu |
UndoListLength | Number of operations saved in the undo list |
MaxGhostObjects | Maximum number of objects shown in ghosting |
NoWireWidthMag | Don't change the width of magnified wires |
CrCellOverwrite | Allow Create Cell to overwrite memory cells |
View Menu Commands | |
InfoInternal | Use internal coordinates in info windows |
PeekSleepMsec | Per-layer delay in peek command, milliseconds |
XSectThickness | Xsect layer thickness in microns, default 0.5 |
RulerSnapToGrid | Rulers snap to grid by default |
LockMode | Don't allow physical/electrical mode change |
Attributes Menu Commands | |
TechNoPrintPatMap | Use hex format for stipple maps when writing tech file |
TechPrintDefaults | Set printing of default values in tech file update |
EraseBehindProps | Erase behind phys properties in props command |
PhysPropTextSize | Pixel text height used in props command |
Convert Menu - General | |
ChdFailOnUnresolved | Halt CHD operation if unresolved cell |
ChdCmpThreshold | Set CHD compression block size threshold |
MultiMapOk | Allow non-1-1 mapping of Xic layers and GDSII layer/datatypes |
NoPopUpLog | Don't pop up log file if warnings or errors |
UnknownGdsLayerBase | Base number for generated GDSII layers |
UnknownGdsDatatype | Datatype for generated GDSII layers |
NoStrictCellnames | Allow white space in cell names |
Convert Menu -- Input and ASCII Output | |
ChdLoadTopOnly | Load requested cell from CHD only, create reference |
ChdRandomGzip | Use random-access table for gzipped files |
AutoRename | Automatically change clashing cell names when reading |
NoAskOverwrite | Suppress prompting for overwrite instructions |
NoOverwritePhys | Don't overwrite phys memory cells when reading |
NoOverwriteElec | Don't overwrite elec memory cells when reading |
NoOverwriteLibCells | Don't overwrite library cells when reading |
MergeInput | Merge boxes and coincident objects when reading |
NoPolyCheck | Skip polygon reentrancy tests when reading |
DupCheckMode | Check for duplicate items when reading |
NoCheckEmpties | Skip checking for empty cells while reading |
NoReadLabels | Ignore text labels when reading physical cell data |
LayerList | Layer list for conversion input filtering |
UseLayerList | How to use layer list, skip or use only |
LayerAlias | List of name=alias pairs |
UseLayerAlias | Map layers using layer alias list |
InToLower | Map lower case cell names to upper in archive read |
InToUpper | Map upper case cell names to lower in archive read |
InUseAlias | Use alias file when reading archive |
InCellNamePrefix | Cell name translation prefix for archive read |
InCellNameSuffix | Cell name translation suffix for archive read |
NoMapDatatypes | New layers take all datatypes in GDSII read |
CifLayerMode | CIF layer resolution method, 0-2 |
OasReadNoChecksum | Ignore checksum in OASIS input file |
OasPrintNoWrap | Use one line per record in OASIS ASCII output |
OasPrintOffset | Add file offsets to OASIS ASCII output |
Convert Menu -- Output | |
StripForExport | Strip all format extensions from output file |
WriteAllCells | Write library cells when creating archive file |
SkipInvisible | Do not write invisible layers to output |
KeepBadArchive | Don't delete failed conversion output archive file |
NoCompressContext | Don't compress instance lists in archive context |
RefCellAutoRename | Use auto-rename when writing reference cell data |
UseCellTab | Enable use of the cell override table in CHD access |
SkipOverrideCells | Skip cells in override table in CHD access |
OutToLower | Map lower case cell names to upper in archive write |
OutToUpper | Map upper case cell names to lower in archive write |
OutUseAlias | Use alias file when writing archive |
OutCellNamePrefix | Cell name translation prefix for archive write |
OutCellNameSuffix | Cell name translation suffix for archive write |
CifOutStyle | CIF output dialect and extensions specifier |
CifOutExtensions | CIF output extension flags |
CifAddBBox | Add bounding box comment to objects in CIF output |
GdsOutLevel | GDSII release level conformance code (0-2) |
GdsMunit | Modify M-UNITS value in GDSII output file |
NoGdsMapOk | Ignore unmapped layers in GDSII/OASIS output |
OasWriteCompressed | Compress records in OASIS output |
OasWriteNameTab | Use string table referencing in OASIS output |
OasWriteRep | Try to combine similar objects in OASIS output |
OasWriteChecksum | Compute and add checksum to OASIS output |
OasWriteNoTrapezoids | Don't convert polys to trapezoids |
OasWriteWireToBox | Convert wires to boxes when possible |
OasWriteRndWireToPoly | Convert rounded-end wires to polygons |
OasWriteNoGCDcheck | Don't look for common divisors in repetitions |
OasWriteUseFastSort | Use faster but less effective sorting |
OasWritePrptyMask | Don't write certain properties |
Custom Property Filtering | |
PhysPrpFltCell | Physical cell property filter string |
PhysPrpFltInst | Physical instance property filter string |
PhysPrpFltObj | Physical object property filter string |
ElecPrpFltCell | Electrical cell property filter string |
ElecPrpFltInst | Electrical instance property filter string |
ElecPrpFltObj | Electrical object property filter string |
Extract Menu Commands | |
EraseBehindTerms | Erase behind physical mode terminals marks |
TermTextSize | Pixel height of text used in terminal marks |
TermMarkSize | Pixel width of cross used for terminal marks |
ExtractOpaque | Ignore the OPAQUE flag in extraction |
FlattenPrefix | Cell name prefix to flatten in extraction |
GroundPlaneGlobal | Ground all pieces of clear-field ground plane |
GroundPlaneMulti | Handle nets in dark-field ground plane |
GroundPlaneMethod | Set ground plane inversion method 0-2 |
KeepSortedDevs | Include devices with terminals shorted |
LvsFailNoConnect | Force LVS failure if unconnected physical instance |
NoPermute | Skip permutation search in association |
NoMergeParallel | Never merge parallel devices |
NoMergeSeries | Never merge series devices |
NoMeasure | Suppress measuring parameters of devices |
QpathGroundPlane | "Quick" Path, use of inverted ground plane, 0-2 |
NoEnet | Don't print net, enet command |
EnetSpice | Do include SPICE listing, enet command |
EnetBottomUp | Use leaf-to-root ordering in electrical netlist |
NoPnet | Don't print extracted net list, pnet command |
NoPnetDevs | Don't print extracted device list, pnet command |
NoPnetSpice | Don't print extracted SPICE list, pnet command |
PnetBottomUp | Use leaf-to-root ordering in physical netlist |
PnetShowGeometry | Include wire geometry in netlist file, pnet command |
PnetIncludeWireCap | Include routing caps in SPICE netlist, pnet command |
PnetListAll | List ignored and flattened subcells, pnet command |
PnetNoLabels | Ignore terminal labels in pnet command |
SourceAllDevs | Update internal-named devices in sourc command |
SourceCreate | Create devices in sourc command even if not empty |
SourceClear | Clear cell before updating with sourc command |
SourceGndDevName | Name of ground device used with sourc command |
SourceTermDevName | Name of terminal device used with sourc command |
NoExsetAllDevs | Don't use internal-named devices in exset command |
NoExsetCreate | Don't create devices in exset command |
ExsetClear | Clear cells before updating in exset command |
ExsetIncludeWireCap | Include routing capacitance in exset command |
ExsetNoLabels | Ignore terminal labels in exset command |
PathFileVias | Include vias in wire net files |
RLSolverDelta | Overriding grid spacing for resistance/inductance extraction |
RLSolverTryTile | Attempt to use tiling grid for resistance/inductance extraction |
RLSolverGridPoints | Grid points per device when not tiling |
RLSolverMaxPoints | Maximum grid points per device when tiling |
FastCap/FastHenry Interface | |
FxPlaneBloat | Overhang of interface planes and dark-field conductors |
FxUnits | FastCap/FastHenry file units: m, cm, mm, um, in, mils |
FxForeg | FastCap/FastHenry run in foreground if set |
FcNoPart | Skip all FastCap partitioning |
FcPartMax | Maximum FastCap top/bottom panel dimension |
FcEdgeMax | Maximum FastCap edge panel dimension |
FcThinEdge | FastCap outside edge panel width |
FcOldFormat | Use original FastCap file format |
FcPath | FastCap executable directory path |
FcArgs | FastCap command line arguments |
FhMinRectSize | Minimum rectangle dimension for Manhattanization |
FhPath | FastHenry executable directory path |
FhArgs | FastHenry command line arguments |
FhFreq | FastHenry frequency specification |
Help System | |
HelpMultiWin | Use separate windows for help references |
NoHelpDefault | Suppress default help window |