Supported Constraints
- Supported Constraints for Via Creation and Editing
- Supported Constraint Parameters
- Additional Supported Constraints for Stack and Auto Modes
- Supported Constraints for Local Interconnect Vias
Supported Constraints for Via Creation and Editing
The Create Via for a single via mode, Edit Via Properties for a single mode via, and Property Editor assistant for vias use technology library constraints and constraint groups to adjust via creation and editing to adhere to the following constraints:
- minCutClassSpacing (One layer)
- viaSpacing
- forbiddenCutClassSpacingRange
- minEndOfLineEdgeExtension
- minCenterlineExtension
- minNumCut
- minEdgeAdjacentLength
- minExtensionDistance
- minOppExtension
- minWidth
- minLargeViaArraySpacing
- minLargeViaArrayCutSpacing
- minLargeViaArrayWidth
- largeRectViaArrayAllowed
- allowedCutClass
- minSpacing (One layer)
- minNeighborViaSpacing
- minExtensionToCorner
- allowedWidthRanges
- minAreaEdgeLength
- maxWidth
- viaKeepoutZone
- rectShapeDir
Supported Constraint Parameters
The via editing and creation commands also comply with the following parameters:
-
The 'coincidentAllowed parameter of the
minExtensionDistanceandminOppExtensionconstraints. If bothminExtensionDistanceandminOppExtensionare used,minOppExtensiontakes precedence.
For example, in the following sample, with the'coincidentAllowedparameter in theminExtensionDistancerule, an enclosure of0.0is allowed. The allowed enclosure can be either0.0or> = 0.06.orderedSpacings( ( minExtensionDistance "Metal1" "Via1" 0.06 'coincidentAllowed) ( minExtensionDistance “Metal2" "Via1" 0.06 'coincidentAllowed) ) ;orderedSpacings
-
The
'centerToCenterparameter of the viaSpacing and minViaSpacing (One layer) constraints and the constraint minCenterToCenterSpacing. If'centerToCenteris specified, both distance and spacing are measured from cut center to cut center instead of from cut edge to cut edge.
For example, the following sample sets the minimum via cut spacing onVia1to1.0when there are three or more cuts that are1.5or fewer user units apart.Spacings( (viaSpacing "Via1" 'centerToCenter 'numCuts 3 'distance 1.5 1.0) ); spacings
-
The
'cutClassparameter of the viaSpacing and minOppExtension constraints.
For example, cut class can be specified by cut sizes.( viaSpacing "Via2" 'cutClass 0.14 'numCuts 3 'distance 0.21 0.3 ) ( viaSpacing "Via2" 'cutClass (0.14 0.28) 'numCuts 3 'distance 0.21 0.4 ) ( viaSpacing "Via2" 'cutClass 0.28 'numCuts 3 'distance 0.21 0.5 )
In the first rule, width is0.14. Since length is not been specified, it is the same as width. Similarly, in the third rule, both width and length are0.28. In the second rule, width is0.14and length is0.28.
Cut class can also be specified by the cut class name.( viaSpacing "Via2" 'cutClass "Small" 'numCuts 3 'distance 0.21 0.3 ) ( viaSpacing "Via2" 'cutClass "Bar" 'numCuts 3 'distance 0.21 0.4 ) ( viaSpacing "Via2" 'cutClass "Large" 'numCuts 3 'distance 0.21 0.5 )
-
The
'noPrlparameter of the viaSpacing constraint. -
The
'extraCut,'area,'distanceWithin, and'nearbyLayerparameters of the minOppExtension constraint. -
The
'distanceWithinand'nearbyLayerparameters of the minOppExtension constraint. -
The
'overLayerand'exceptViaConnectivityTypeparameters of the minViaSpacing (One layer) constraint. -
The
'maxNumCutsand'applyPerDirectionparameters of the minLargeViaArrayCutSpacing constraint. -
The
'above,'below, and'bothBelowAndAboveparameters of the minNumCut constraint.
Additional Supported Constraints for Stack and Auto Modes
The Stack and Auto modes of the Create Via command adhere to the following additional constraints:
- minArea (for the intermediate layers in a via stack)
- minOutsideCornerEdgeLength
- minQuadrupleExtension
- minSize
- minStepEdgeLength
- viaStackingLimits
- orthogonalWSPGrid (Auto via only)
If you change parameters on the Create Via or Edit Via Properties forms that cause a violation of these constraints, the values are adjusted to comply with the constraints defined in the technology library. The rule checking excludes Origin X and Y.
Before you create or edit a via, set the constraint group in the Wire Editing section of the Layout Editor Options Form. The selected constraint group determines the viaDefs that are available for creating and editing vias.
The via engine uses both shapes and layer blockages to define regions for area-based constraints. For more information, see Area Constraints.
Supported Constraints for Auto Mode and Fast Mode Vias
The Auto and Fast Edit modes of the Create Via command support area-based constraints. These constraints are not supported for single and stack vias.
In Layout XL and higher tiers, the 'edgeExtension, 'layer, and 'extensionDirection parameters are supported for the viaSpacing constraint when the Prevent DRC Violations With Neighbors option is selected.
Auto via also supports the minVoltageExtension constraint.
Supported Constraints for Local Interconnect Vias
Local interconnect vias are vias between local interconnect (LI) layers. LI layers do not need a physical via or contact shape in order to be connected. However, the automatic router model requires a via for every transition from one layer to another in order for a route to be considered valid. This is why LI vias are required to establish connections between LI layers, even though there is no contact layer between these layers.
At advanced process nodes, many foundries add support for LI layers to the process stack. LI layers form connections through overlaps rather than using separate cut layers. Typically, only rectangles are allowed on LI layers and these shapes often have a fixed direction.
LI vias adhere to the following constraints:
- allowedLengthRanges
- minExtensionOnLongSide
- minSideExtension
- minWireOverlap
- minDirectionalOverlap
- rectShapeDir
Related Topics
Setting the Technology to Create Vias
Calculation Modes for Via Parameters
Support for Voltage-Dependent Rules
Return to top