Next: Database commands: setcost
Up: The database commands
Previous: Database commands: reset
Contents
Index
Database commands: set
Syntax: set [paramname [value]]
The set command is used to set or query values for parameters used by the
database and router. If no further arguments are given, a list of the parameters
and their present values is printed. If a parameter name is given but
no value, that parameter name and its current value (or its default) will be printed.
Otherwise, the parameter whose name is given will be set to the given
value.
The known parameters are as follows.
- debug
The value is a hex number whose bits are flags that turn on
various debugging options. Presently undocumented.
- verbose
This sets or displays the verbosity level for messages emitted by the
database and router. If no value is given, the present
verbosity level is printed. This is an integer in the range 0-4,
where 4 is the most verbose. The value should otherwise be an
integer in this range. The default verbosity is 0.
- global
Up to six ``global'' nets can be specified. These are usually power
or ground nets, to be treated specially by the router. Values are
space-separated net names, which when specified are added to the
internal list of global nets incrementally. That is, multiple calls
can be made to define the global nets, or equivalently all of the
global nets can be listed for a single call. The internal list can
be cleared with set clear global. If no net names are given,
the current global net name list is printed.
- vdd
This is for Qrouter compatibility, for setting the name of the
power net. This is actually equivalent to global.
- gnd
This is for Qrouter compatibility, for setting the name of the
ground net. This is actually equivalent to global.
- layers
The value is an integer that represents the number o layers
that the router will use. This can be set to a number less than or
equal to the number of layers that have been defined (from LEF or
technology input). For example, if given a value 4, only the first 4
routing layers defined will be used by the router. If no number is
given, the number of layers that the router would use is printed.
- maxnets
The value is the maximum number of nets allowed in a design.
This can be set to limit the number of nets accepted for routing by
the router. Jobs with too many nets will be rejected. If no number
is given, the current maximum is printed.
- lefresol
The value is the LEF resolution, as is normally provided in a
LEF file. Acceptable values (from the LEF specification) are 100,
200, 400, 800, 1000, 2000, 4000, 8000, 10000, 20000. The internal
coordinates use this many points per micron. The resolution is 100
if not otherwise given. If not given, the current value is printed.
Otherwise, the resolution may be set to the value given, however once
the LEF resolution is set, whether by LEF file or this keyword, it
can not be changed except by resetting the database.
- mfggrid
The value is the manufacturing grid usually obtained from a LEF
file. It is provided as a real number in microns. The value must be
exactly representable in the LEF resolution, and will quantize
coordinate values. The value can be 0, in which case no
manufacturing grid will be used, which is the default. If no value is given, the present manufacturing grid, in microns, is
printed.
- definresol
The value is the resolution as normally read from a DEF file.
Acceptable values are as listed for lefresol, and furthermore
the value must exactly divide the lefresol. The resolution is
100 if not otherwise given. If not given, the current value is
printed. Otherwise, the resolution may be set to the value given,
however once the DEF input resolution is set, whether by DEF file or
this keyword, it can not be changed except by resetting the database.
- defoutresol
The value is the resolution used when writing DEF files with
write def, which defaults to the definresol. Setting to
0 clears the overriding. If no valueis given, the present DEF
output resolution override is printed.
- netorder
The value can be set to one of the following integer values.
It controls the order in which nets are routed.
- ]item0
Use the default ordering, where nets with the most taps are routed
first.
- 1
Use alternate ordering, where the nets with the largest minimum box
containing taps are routed first.
- 2
Retain the ordering as nets were defined.
If no value is given, the present ordering enumerator is
printed.
- passes
The value is an integer that is the maximum number of attempted
passes of the route search algorithm, where the routing constraints
(maximum cost and route area mask) are relaxed on each pass. The
default number of passes is 10. With no value, the maximum
number of passes is printed. Otherwise, a positive integer is
expected for the value.
- increments
The value is a list of positive integers, each giving the
incremental halo width in the routing mask for the corresponding
routing pass. The mask is used to limit the area where a route can
be implemented. On each pass, this area is expanded by the
corresponding increments value. The final increments value is
used for any subsequent passes. The default is effectively the
single integer ``1'', so that the masking area is bloated by one
channel on each pass. If no integers are given, the internal list of
increments is printed.
- via_stack
The value sets the maximum number of vias that may be stacked
directly on top of each other at a single point. A value of
``none'' or ``0'' or ``1'' will disallow stacked
vias. A value of ``all'' will allow all vias to be
stacked (which is the default). Otherwise, the value should be
an integer less than or equal to the number of via layers.
- via_pattern
If vias are not square, then they are placed in a checkerboard
pattern, with every other via rotated 90 degrees. If inverted, the
rotation is swapped relative to the grid positions used in the
non-inverted case. If the value is 0 or a word starting with
``n'', the pattern is not inverted. If the value is
nonzero or a word starting with ``i'', the pattern is inverted.
Next: Database commands: setcost
Up: The database commands
Previous: Database commands: reset
Contents
Index
Stephen R. Whiteley
2017-02-17