Next: The ReadCdsLmap keyword
Up: CadenceTM Compatibility
Previous: Display Resource File
Contents
Index
Both Virtuoso 5.x and 6.x technology files can be read. Far more
information can be obtained from 6.x (OpenAccess) technology files,
however. This includes:
- Extraction technology keywords such as Conductor, Via, etc. (as are available from 5.x files) but additionally
electrical/physical data such as Thickness, resistivity, and
capacitance parameters are available.
- Design rules are generated from the ``constraint groups''.
This will provide a much more complete starting point from the
technology file provided with a foundry kit. However, this still may
be incomplete. For example, a typical technology file may provide
thickness values for conductors only, not insulators.
The tree below shows the hierarchy of the nodes that are recognized in
the technology file. Most of these are ignored. Below we describe
the nodes that are actually used, and what information they provide.
Below, nodes that were added for Virtuoso 6.1.4 are marked marked with
an asterisk. The
constraintGroups listing is greatly simplified, there is
actually far more stucture than indicated.
include
comment
controls
techParams
techPermissions
viewTypeUnits *
mfgGridResolution *
layerDefinitions
techLayers
techPurposes
techLayerPurposePriorities
techDisplays
techLayerproperties
techDerivedLayers *
layerRules
functions *
routingDirections *
stampLabelLayers *
currentDensityTables *
viaLayers
equivalentLayers
streamLayers
viaDefs *
standardViaDefs *
customViaDefs *
constraintGroups *
foundry *
spacings *
maxWidth
minWidth
minDiagonalWidth
minSpacing
minSameNetSpacing
minDiagonalSpacing
minArea
minHoleArea
viaStackLimits *
spacingTables *
orderedSpacings *
minOverlap
minEnclosure
minExtension
minOppExtension
antennaModels *
electrical *
devices
tcCreateCDSDeviceClass
multipartPathTemplates *
extractMOS *
extractRES *
symContactDevice
ruleContactDevice
symEnhancementDevice
symDepletionDevice
symPinDevice
symRectPinDevice
tcCreateDeviceClass
tcDeclareDevice
viaSpecs *
physicalRules
orderedSpacingRules
spacingRules
mfgGridResolution
electricalRules
characterizationRules
orderedCharacterizationRules
leRules
leLswLayers
lxRules
lxExtractLayers
lxNoOverlapLayers
lxMPPTemplates
compactorRules
compactorLayers
symWires
symRules
lasRules
lasLayers
lasDevices
lasWires
lasProperties
prRules
prRoutingLayers
prViaTypes
prStackVias
prMastersliceLayers
prViaRules
prGenViaRules
prTurnViaRules
prNonDefaultRules
prRoutingPitch
prRoutingOffset
prOverlapLayer
We mention below only the nodes from which information is extracted.
Note that this is a mixture of 5.x and 6.x nodes, providing unified
support for all current Virtuoso releases. In most cases, a node with
an unrecognized name will produce a warning message. These can be
ignored, the purpose is only to identify ``new'' information in the
technology file that might be useful to parse.
- include
This node contains a string, which is a path to another Lisp file.
That file will be opened and read.
- layerDefinitions/techLayers
A new layer is created in the Xic layer table for each entry with a
layer number in the range 0-127. The abbreviation field is ignored.
The layer ``long name'' will be assigned the layer name, if it is more
that four characters long. New layers are created in the order of
appearance.
- layerDefinitions/techLayerPurposePriorities
This will reorder the layers already in the Xic layer table in the
order given. Only layers with the purpose ``drawing'' are
considered.
- layerDefinitions/techDisplays
This will assign the colors and fill patterns to layers that exist in
the Xic layer table. Only entries with purpose ``drawing''
are considered. This references the internal packet, color, and
stipple lists created from the display resource nodes.
- layerDefinitions/techLayerproperties
This node provides some directly applicable parameters, which are read
and added to the appropriate layer. These include sheetResistance, areaCapacitance, edgeCapacitance, and
thickness. The thickness value is specified in angstroms, which
is converted to microns. The capacitance value units are picofarads
and microns, thus no conversion is required.
- layerRules/routingDirections
Layers found in this table are given the Routing attribute.
- layerRules/viaLayers
The conducting layers are assigned the Conductor attribute. The
via layer is assigned the Via attribute. This is in 5.x files
only.
- layerRules/streamLayers
A GDSII import/export mapping is applied for each layer given. This
is in 5.x files only.
- viaDefs/standardViaDefs
This identifies layers that are given the Via attribute. The
metal layers that are referenced by the via are given the Conductor attribute.
- constraintGroups/foundry/spacings/maxWidth
This identifies a MaxWidth rule.
- constraintGroups/foundry/spacings/minWidth
This identifies a MinWidth rule.
- constraintGroups/foundry/spacings/minDiagonalWidth
This will map to a Diagonal clause in a MinWidth rule.
- constraintGroups/foundry/spacings/minSpacing
This maps to either a MinSpace rule (one layer given) or a MinSpaceTo rule if two layers are given.
- constraintGroups/foundry/spacings/minSameNetSpacing
This provides the SameNet clause to a MinSpace or MinSpaceTo rule.
- constraintGroups/foundry/spacings/minDiagonalSpacing
This provides the Diagonal clause to a MinSpace or MinSpaceTo rule.
- constraintGroups/foundry/spacings/minArea
This identifies a MinArea rule.
- constraintGroups/foundry/spacings/minHoleArea
This provides the dimension for area filtering in a NoHoles
rule.
- constraintGroups/foundry/spacingTables
This provides tables of length, width, and spacing values, for
size-dependent spacing rules. These tables are parsed and added to
MinSpace rules, but are currently not used for rule evaluation.
- constraintGroups/foundry/orderedSpacings/minOverlap
This identifies a MinOverlap rule.
- constraintGroups/foundry/orderedSpacings/minEnclosure
This maps to a MinSpaceFrom rule, with the source and target
layers swapped. It provides the Enclosed clause, which applies
when the target figure is completely surrounded by the source
material.
- constraintGroups/foundry/orderedSpacings/minExtension
This is almost identical with minEnclosure, but does not
require that the target figure be fully surrounded. It maps to a
MinSpaceFrom rule in the same manner, but sets the rule
dimension, not the Enclosed value.
- constraintGroups/foundry/orderedSpacings/minOppExtension
This is handled similarly to the two rules above, but sets the Opposite clause of the MinSpaceFrom rule.
Next: The ReadCdsLmap keyword
Up: CadenceTM Compatibility
Previous: Display Resource File
Contents
Index
Stephen R. Whiteley
2012-04-01