Next: Technology File Attributes
Up: Technology File
Previous: Technology File Scripts
Contents
Index
Technology File Layer Blocks
There is separate specification of layers used for schematic layout
and those used for physical layout. The layer used for schematics is
always called ``SCED'', and if not defined in the technology file, it
will be created by Xic. It is always the first layer, and can not be
deleted. Additional layers are used for visual purposes, and for
storage of modifications that can be reused later by converting them
to the SCED layer.
Each layer definition starts with the keyword LayerName for
physical layers or ElecLayer for electrical layers, followed by
a name. In Xic, layers have a name, which follows the CIF format
(1-4 alphanumeric characters), and an optional ``long name'' which can
be just about any string. In Xic commands and functions, either
name can be used to access a layer (so the names had better be
unique!). If the name string following the keyword does not fit the
CIF restrictions, the following actions are taken:
- If the given name is null, empty, or space-only, the new name
will be ``null''.
- If the given name is too long, only the first four characters
will be used in the name.
- Characters that are not alphanumeric will be replaced with
`X'.
- If the name is truncated or characters are replaced, the long
name will be set to the given name.
The layer specification further consists of a list of keywords in the
format given below.
In the table that follows, the italicized quantities represent data
the needs to be provided. The ``y/n'' symbol implies that one of `y' or `n' should follow the keyword. Actually, if `0'
(zero), `n', or `N' appear, `n' is understood,
otherwise `y' is assumed.
All of the keywords below are optional, and can appear under an
electrical or physical layer, unless stated otherwise. It is not
strictly necessary to define any layers at all. The electrical
layers, if any, are defined first, followed by the physical layers
(electrical and physical layers can not be mixed). A ``layer block''
consists of the keyword which defines the layer name and all of the
following keywords up to the next layer name specification, or end of
the file. The opening layer name specification defines the
``current'' layer, and the keywords that follow apply to that layer.
- ElecLayer name
This keyword specifies the beginning of the layer block for the
electrical layer name. Layers will appear in the electrical
mode layer table in the order given. The name of the first electrical
layer can be given as anything, but will be renamed ``SCED''.
- LayerName name
This keyword specifies the beginning of the layer block for the
physical layer name. Layers will appear in the physical mode
layer table in the order given. This keyword should not appear until
all of the electrical layers have been defined.
- LongName longname
This will set (or reset) the long name field of the current layer. If
no non-space characters are found after the keyword, the statement is
ignored. Leading and training white space is removed from the
argument.
- Description description_string
This will set the description field of the current layer. If no
non-space characters are found after the keyword, the statement is
ignored. Leading and training white space is removed from the
description string.
- RGB colorspec
This keyword will set the color used to render objects on the layer
on-screen. The colorspec string is the name of a color or an
RGB triple:
- The name of a color found in the X rgb.txt file (this
Three space-separated numbers, each 0-255, representing the
red, green, and blue intensity. E.g., ``196 240 235''.
works for Windows, too). These names can be listed from the Set Color pop-up in the Attributes menu with the Colors button.
- (Unix/Linux only) Other forms recognized by the
XParseColor C library function, including `` #RRRRGGGGBBBB'' and ``rgb:RRRR/GGGG/BBBB''. Here, R,
G, and B are single hexadecimal digits.
If the color is given as a name,
the color will be converted to its RGB values if the file is updated.
Default: 127 127 127
- AltRGB colorspec
This keyword sets the layer color used in hard copy mode, and in the
plots on a color device. During hard copy mode (the Print
Control Panel from the Print button in the File Menu is
visible) these colors can be changed with the Set Color command
in the Attributes Menu, and the new AltRGB colors will be
set in a technology file created with the Save Tech command. If
not set, the AltRGB colors default to the RGB colors.
This keyword sets the fill style used to render objects on the layer
on-screen. If the first form is used with `y', then a solid
fill will be used. If `n', the figures will be outlined only
(empty fill). The second form is used to specify a stipple pattern to
use for fill. The pattern data can optionally be followed by `y' or `o' which indicates that the object should also be
outlined. Any additional characters are ignored. The hex code should
be zero padded so that each block corresponds to the number of X bytes
in the bitmap. The blocks are separated by white space. Thus, for an
8x8 map, there would be 8 blocks of two characters. For 16x16, there
would be 16 blocks of 4 characters. The upper left bit of the map is
the MSB of the of the least significant byte of the first block. The
lower right bit of the map is the LSB or the most significant byte of
the last block.
Default: n
Examples:
filled y
filled cc aa cc aa cc aa cc aa outline
Default: n
In electrical mode, the SCED layer defaults to solid fill, and other
layers default to empty fill. All layers default to empty fill in
physical mode.
This keyword sets the fill style used when hard copy mode is active,
and is used in the hard copy plots.
Default: value of Filled
- HPGLfilled filltype [ option1 option2 ]
This keyword is used only by the HP-GL hard copy driver, and is used
to specify a fill pattern for the layer (electrical or physical). The
parameters are those appropriate for the FT HPGL directive, as
documented in
``THE HP-GL2 AND HP RTL REFERENCE GUIDE: A
HANDBOOK FOR PROGRAM DEVELOPERS''
from Hewlett-Packard, (ISBN 0-201-63325-6) pages 127-129. This is
summarized below:
filltype |
description |
option1 |
option2 |
1 |
solid, bidirectional |
ignored |
ignored |
2 |
solid, unidirectional |
ignored |
ignored |
3 |
hatched, parallel lines |
line spacing |
line angle |
4 |
crosshatched |
line spacing |
line angle |
10 |
shadings |
shading level |
ignored |
11 |
not supported |
ignored |
ignored |
There are 1016 dots per inch and angles are in degrees. Shading level
is 0-100. If the HPGLfilled keyword is supplied for a layer
and the filltype and options (if given) are valid, that fill
will be used with the layer in HPGL output. There is presently no way
to assign the layer color.
This parameter must be added to the technology file with a text
editor. The default is no fill. Note that the fill patterns set on
the screen in hard copy mode are not used by the HP-GL driver.
- XfigFilled filltype
This keyword applies only to the xfig hard copy driver, and allows
setting the fill patterns for the layer (electrical or physical). The
filltype is an integer 1-56, which selects one of xfig's
internal fill patterns.
0 |
No fill |
... |
shades |
20 |
Full saturation of the color |
... |
tints |
40 |
White |
41 |
30 degree left diagonal pattern |
42 |
30 degree right diagonal pattern |
43 |
30 degree crosshatch |
44 |
45 degree left diagonal pattern |
45 |
45 degree right diagonal pattern |
46 |
45 degree crosshatch |
47 |
Bricks |
48 |
Circles |
49 |
Horizontal lines |
50 |
Vertical lines |
51 |
Crosshatch |
52 |
Fish scales |
53 |
Small fish scales |
54 |
Octagons |
55 |
Horizontal "tire treads" |
56 |
Vertical "tire treads" |
Values 1 to 19 are ``shades'' of the color, from darker to lighter, a
shade is defined as the color mixed with black. Values from 21 to 39
are ``tints'' of the color from the color to white, a tint is defined
as the color mixed with white. The XfigFilled parameter must be
added to the technology file with a text editor. The default is no
fill. Note that the fill patterns set on the screen in hard copy mode
are not used by the xfig driver.
- WpFilled filltype
This keyword applies only to the WordPerfect hard copy driver,
and allows one of the internal fill patterns to be associated with
the layer. The filltype number can be 0-63 or 255. Giving
255 is like empty fill (0), but obscures anything below.
The fill patterns, from the WordPerfect documentation, are:
0 Hollow
1 Solid
2 Narrow spaced +45 degree lines
3 Medium spaced +45 degree lines
4 Widely spaced +45 degree lines
5 Narrow spaced +45 and -45 degree lines
6 Medium spaced +45 and -45 degree lines
7 Widely spaced +45 and -45 degree lines
8 Narrow spaced vertical lines (shaded)
9 Medium spaced vertical lines
10 Widely spaced vertical lines
11 Interspaced dots or density (least dense)
12 Dots
13 Dots
14 Dots (medium density)
15 Dots
16 Dots
17 Dots (most dense)
18 Narrow spaced horizontal lines
19 Medium spaced horizontal lines
20 Widely spaced horizontal lines
21 Narrow spaced vertical and horizontal lines
22 Medium spaced vertical and horizontal lines
23 Widely spaced vertical and horizontal lines
24 Narrow spaced -45 degree lines
25 Medium spaced -45 degree lines
26 Widely spaced -45 degree lines
27 Partial weave
28 Weave
29 Fine checker board
30 Zigzag (horizontal)
31 45 degree wide line
32 Wide checker board
33 Fine 45 degree bricks
34 Medium 45 degree bricks
35 Wide 45 degree bricks
36 Fine 45 degree bricks
37 Medium 45 degree bricks
38 W 45 degree bricks
39 Horizontal brick thin
40 Horizontal brick medium
41 Vertical brick thin
42 Vertical brick medium
43 Waves
44 Wide vertical zigzag
45 Medium vertical zigzag
46 Movie pattern
47 Skewed brick pattern
48 Interconnected dot pattern
49 Shadow squares horizontal
50 Dot black vertical
51 Vertical slanted thick boxes
52 Vertical cursive black
53 45 degree shingle pattern
54 45 degree wide black arrows
55 Horizontal "T" lines
56 Black box 45 degree dots
57 Corner piece pattern
58 45 degree triangles and dot lines
59 Horizontal heartbeat monitor pattern
60 Vertical lines/horizontal waves
61 Light and dark wave patterns
62 45 degree fill color umbrella pattern
63 45 degree fill color umbrella pattern
255 Use background color for solid fill
- Invisible
If this keyword appears, the layer will not be visible, though it will
appear in the layer table, where the visibility status can be
changed.
Default: visible
- AltInvisible
This has the same function as the Invisible keyword, but applies
to hard copies and to the screen while in hard copy mode.
Default: status of Invisible
- Blink
If this keyword appears, the layer color will oscillate between two
shades with a 0.5 second period. This is only supported in
pseudo-color (usually 256 colors) graphics mode.
Default: not blinking
- WireWidth width
This keyword can appear in physical layer fields. The width
is a floating point number which sets the default wire width to that
value in microns. This value will be used when wires are created in
Xic.
Default: 0
The following keywords set the layer mapping for GDSII and OASIS
format input and output. These can be programmed from within Xic
with the Edit Parameters command in the Convert Menu.
- StreamData layernum datatype
This keyword is deprecated, and can be read but is not generated by
Xic. The layernum and datatype are the layer
mapping used when converting to and from GDSII format. The layer must
be in the range 0 through 255, and the datatype can take values -1
through 255. If -1 is given as the datatype, all GDSII datatypes will
be mapped to the present Xic layer, and datatype 0 will be used for
output. Otherwise, the layer and datatype in a GDSII file must match
those given for successful mapping to the Xic layer. Note that
often the end of range values are reserved in other CAD environments,
and that some releases of the GDSII format support only 64 layers and
datatypes. The datatype is used by Xic only in conjunction with
the NoDrcDatatype keyword, and is otherwise typically set to 0.
This keyword has been superseded by StreamIn and StreamOut.
- StreamIn layer_list [, datatype_list]
This keyword set the mapping of GDSII layers and datatypes to Xic
layers when a GDSII or OASIS file is read. The format is described in
9.11.
- StreamOut out_layer [out_datatype]
This keyword sets the mapping of Xic layers to GDSII layers and
datatypes when a GDSII or OASIS file is written. The format is
described in 9.11.
- NoDrcDatatype datatype
If this keyword is given, then any object that has the given datatype will be ignored during design rule checking. The format is
described in 9.11.
The following keywords are used to set design rules in the physical
layers. These keywords can appear only in physical layer blocks. See
the description of the design rules in 10.2 for more
information.
- Connected [Region source_expr] [string]
- NoHoles [Region source_expr] [string]
- Overlap [Region source_expr] layer_expression
[string]
- IfOverlap [Region source_expr] layer_expression
[string]
- NoOverlap [Region source_expr] layer_expression
[string]
- AnyOverlap [Region source_expr] layer_expression
[string]
- PartOverlap [Region source_expr] layer_expression
[string]
- AnyNoOverlap [Region source_expr] layer_expression
[string]
- MinEdgeLength [Region source_expr] layer_expr
length [string]
- MinArea [Region source_expr] area [string]
- MaxArea [Region source_expr] area [string]
- MinWidth [Region source_expr] width_in_microns
[string]
- MinSpace [Region source_expr] space_in_microns
[string]
- MinSpaceTo [Region source_expr]
layer_expr dimension_in_microns [string]
- MinSpaceFrom [Region source_expr]
layer_expr dimension_in_microns [string]
- MinOverlap [Region source_expr]
layer_expr dimension_in_microns [string]
- MinNoOverlap [Region source_expr]
layer_expr dimension_in_microns [string]
The following keywords, which can appear in physical layer fields, set
various flags and variables used for netlist and parameter extraction.
These can be programmed from within Xic with the Extraction
Parameter Editor in the Extract Menu. See the chapter on
extraction (11.1.1) for more information.
- Conductor [ Exclude expression ]
This keyword indicates that the present layer is to be included in
extracted conductor groups.
- Routing
This keyword implies that the layer is a conductor used for connecting
between cells.
Only one of the following two ground plane keywords can appear in the
technology file.
-
This keyword indicates that the present layer is to be treated as a
clear-field ground plane.
This keyword indicates that the present layer is to be treated as a
dark-field ground plane.
- Via layer1 layer2 [expression]
This keyword indicates that the present layer may provide connection
points between conductor nets on layer1 and layer2.
- Contact layer [expression]
This keyword defines a layer that may be in contact with another Conductor layer, and is to be grouped accordingly in the wire net
extraction.
- DarkField
This keyword indicates that the layer polarity on the chip is the
reverse of that shown on-screen.
- Symbolic
If this keyword is present in a layer block, the layer will not
be included in the cross section displays produced with the Cross
Section command (in the View Menu).
The next three keywords support electrical parameter extraction for the
Compute Params command.
-
- Resis[tance] ohm_per_square
This enables computation of the resistance value of resistor devices.
- Cap[acitance] units_per_sqmicron
[units_per_micron]
This enables computation of the capacitance of a conductor group.
- Tran[line] linethick linepenet grndthick grndpenet dielthick
reldielconst
This keyword will invoke a microstrip model which computes the
transmission line parameters along the long dimension of a newly
created box.
The following keywords are used by the FastCap/Fasthenry extraction
interface. Each keyword takes a single real value argument.
-
- Thickness thickness
This keyword supplies the film thickness of the corresponding
deposited film. The thickness is given in microns.
- Rho resistivity
This keyword supplies the resistivity, in MKS units, of the
corresponding conducting film.
- Sigma conductivity
This keyword supplies the conductivity, in MKS units, of the
corresponding conducting film.
- EpsRel diel_constant
This keyword supplies the relative dielectric constant of insulating
layers.
- Lambda pene_depth
This keyword specifies the London penetration depth of superconducting
conductors, in microns.
Next: Technology File Attributes
Up: Technology File
Previous: Technology File Scripts
Contents
Index
Stephen R. Whiteley
2006-10-23