#

## tech

Query properties of the current technology, or change the current technology.

### Usage:

> tech option

> > where option may be one of the following:
> > load filename [-noprompt][-nooverride]
> >   Load a new technology from the file filename[`.tech`].
> > help
> >   Display help information
> > name
> >   Show current technology name
> > filename
> >   Show current technology filename
> > version
> >   Show current technology version and description strings
> > lambda
> >   Show internal units per lambda
> > planes
> >   Show defined planes
> > layers [layer]
> >   Show defined layers
> > layers lock|unlock [layer]
> >   Lock or unlock layers. When locked, a layer cannot be changed on the layout. Paint of that layer type cannot be copied, moved, deleted, or operated upon in any manner that would change the geometry of that layer. This is useful, for example, to prevent mask layers from being modified when working on modifications to a process back-end. Note that layers can be marked locked in a tech file by prefixing the layer name with "-".
> > layers revert
> >   Return the set of locked and unlock layers to the state subsequent to reading the tech file (available from magic version 8.0.183).
> > drc option
> >   Query the DRC ruleset, where option is one of the following:
> >   width layer
> >     Return the minimum allowed width for the indicated layer type.
> >   spacing layer1 [layer2]
> >     Return the minimum allowed spacing between layer1 and layer2, if layer2 is specified, or between layer1 and itself, if not.

### Summary:

> The tech command queries aspects of the current technology, and can also be used to change the current technology. The tech load command completely replaces the technology. Normally a call to tech load generates a dialog window asking the user for confirmation, since the tech load command is potentially destructive and can cause loss of an existing layout. The -noprompt option forces a technology load without presenting a dialog. This is particularly useful to put a "tech load name -noprompt" command in a `.magic` startup file in the directory of a project, so that it is not necessary to specify the technology on the command line when invoking magic. However, occasionally one may want to run magic from the same project directory with a different technology. The -nooverride option prevents the tech load command from overriding a technology name entered on the UNIX command line when starting magic.

> Technology file reloading is especially useful when developing a technology file, to immediately see the results of a change made to the file. The current technology can be reloaded with the simple Tcl command "tech load [tech filename]".

> Note that there is a slightly different meaning between the command "tech layers" and "tech layers "*"". The former prints a formatted list of layers, including all aliases for each layer, to the console. The second returns a Tcl list of all layers, with only the primary name for each layer.

> A few aspects of the technology must be queried from other commands. The CIF/GDS input and output styles are given by the cif istyle and cif ostyle commands, while the extraction style is given by the extract style command.

> The drc option is intended for use by Tcl scripted procedures that wish to place layout while satisfying the DRC rules. The two accepted rule options are spacing and width.

### Implementation Notes:

> tech is implemented as a built-in command in magic. The command replaces the original techinfo command, which no longer exists.

### Bugs:

> tech drc may not return the correct value in all cases.

Return to command index

Last updated: March 7, 2020 at 1:06pm