[NONDEFAULTRULE ruleName [HARDSPACING ;] { LAYER layerName WIDTH width ; [DIAGWIDTH diagWidth ;] [SPACING minSpacing ;] [WIREEXTENSION value ;] END layerName } ... [VIA viaStatement] ... [USEVIA viaName ;] ... [USEVIARULE viaRuleName ;] ... [MINCUTS cutLayerName numCuts ;] ... [PROPERTY propName propValue ;] ... END ruleName]
The LEF NONDEFAULTRULE maps to an oaConstraintGroup with the specified ruleName. A LEF rule named DEFAULT maps to the LEFDefaultRouteSpec in the design database.
The lef2oa translator checks whether a LEFDefaultRouteSpec constraint group already exists in the graph of techs. If a LEFDefaultRouteSpec constraint group exists, the translator generates a constraint group of the constraintGroupDef type LEFDefaultRouteSpec with a name in the format of LEFDefaultRouteSpec_<libName>. Early versions of the translator may issue an error when attempting to create a technology database with a LEFDefaultRouteSpec constraint group that referenced another technology database with its own LEFDefaultRouteSpec constraint group.
If specified, the spacing constraints in the following layer sections are labeled as hard.
The NONDEFAULTRULE LAYER statement maps to OpenAccess by appending the oaPhysicalLayer with the given layerName to the oaLayerArrayValue for the oacValidRoutingLayers constraint in the oaConstraintGroup for this non- default rule. The layer must already exist in the technology database, and must be a routing layer.
The NONDEFAULTRULE LAYER WIDTH maps to OpenAccess using an oaIntValue for the oacMinWidth constraint in the constraint group for this non-default rule.
The NONDEFAULTRULE LAYER DIAGWIDTH maps to OpenAccess using an oaIntValue for the oacMinDiagonalWidth constraint in the constraint group for this non-default rule.
The NONDEFAULTRULE LAYER SPACING maps to OpenAccess using an oaIntValue for the oacMinSpacing constraint in the constraint group for this non-default rule. Note that this is a hard constraint if HARDSPACING is specified.
The NONDEFAULTRULE LAYER WIREEXTENSION maps to OpenAccess using an oaIntValue for the oacMinWireExtension constraint in the constraint group for this non-default rule.
The NONDEFAULTRULE MINCUTS is stored in OpenAccess using an oaInt1DTblValue for the oacMinNumCut constraint in the constraint group for this non-default rule. The header for the table is the layer width for the metal layer above the given cut layer.
See PROPERTIES
The NONDEFAULTRULE USEVIA statement maps to OpenAccess by appending the oaCustomViaDef or oaViaVariant with the given viaName to the oaViaTopologyArrayValue for the oacValidRoutingVias constraint in the oaConstraintGroup for this non-default rule. The oaCustomViaDef or oaViaVariant must already exist in the technology database.
The NONDEFAULTRULE USEVIARULE statement maps to OpenAccess by using the given viaRuleName to append the oaStdViaDef or oaViaVariant to the oaViaTopologyArrayValue for the oacValidRoutingVias constraint in the oaConstraintGroup for this non-default rule. The oaStdViaDef or oaViaVariant must already exist in the technology database.
The USEVIARULE statements are stored in OpenAccess as an oaStdViaDef or as an oaViaVariant for dataModel 4 and above.
The NONDEFAULTRULE VIA statement maps to OpenAccess as an oaViaTopology that is appended to the oaViaTopologyArrayValue for the oacValidRoutingVias constraint in the oaConstraintGroup for this non-default rule.
For the mapping of the viaStatement, refer to the generic LEF VIA statement.
Copyright © 2003-2008 Cadence Design Systems, Inc.
All rights reserved.