Product Documentation
Virtuoso Space-based Router Constraint Reference
Product Version IC23.1, June 2023

minExtensionToCorner

Restricts how close a cut shape can be to the corners of the enclosing metal. The corners can be either convex or concave. For convex corners, the rule is defined by forming a triangular keep-out region from the convex corner where cuts are not allowed. The convex corner check does not apply to corners that form end-of-line edges, as defined by the eolWidth parameter. The first layer specified is the metal layer and the second is the cut layer. This constraint must be satisfied in addition to existing extension rules.

minExtensionToCorner Quick Reference

Constraint Type

Layer pair

Value Types

Value

Database Types

Design, Technology

Scope

design, foundry

Category

Extension

Value Type

Value

Specifies in user units the required extension of layer1 over layer2. See the descriptions of the toConvexCorner and toConcaveCorner parameters for the interpretation of this value.

Required Parameters

cutClass

Specifies that the constraint only applies to cut shapes of the specified cut class.

Type: DualValue

Optional Parameters

extendCornerBy

Specifies that the check is applied not only to the corner, but also to the edge-forming corners for a length up to that specified by this parameter.

Type: Value

exceptCornerTouch

Specifies that the constraint does not apply if the cut touches the corner. The default is false.

Type: BoolValue

viaEdgeTypeParam

Specifies that the constraint applies only to via edges of the specified type.

Type: IntValue

enclosure

Specifies that if the enclosure is less than the first value to the convex length edge, the adjacent cut edges must have an enclosure larger than the second given value. Measured in user units.

Type: DualValue

convexLength

Specifies that the concave corner must have an edge that is less than this length and that connects to a convex corner on the other end to trigger the rule.

Type: Value

parallelExtension

Specifies the extension past the cut to a concave corner.

If the width of an edge forming the concave corner <= the width parameter, the length of the adjacent edge is >= the length parameter, then form a search window by extending the extension on the concave corner along both sides of the edge with width <= the width parameter.

The extension stops if it does not have a common projection run length with the opposite edge. Any cut edge parallel to the metal edge with width <= the width parameter inside that search window must have an extension >= the parallelExtension parameter.

Type: Value

length

See parallelExtension.

Type: Value

width

See parallelExtension.

Type: Value

toConcaveCorner

Specifies that the constraint applies between cut shapes on layer2 and concave corners of the enclosing metal shapes on layer1. The constraint can be thought of as a distance from the exterior edge of the cut shapes on layer2 to concave corners on layer1.

Type: BoolValue

minLength

Specifies the minimum length of the end-of-line edge on both sides or else it is not considered to be an EOL length. The constraint then only applies to convex corners that do not touch an edge of length strictly less than minLength.

Type: Value

toConvexCorner

Specifies that the constraint value defines a triangular keep-out region in each convex corner of shapes on layer1. Shapes on the layer2 which overlap this region violate the constraint. The triangular keepout region is defined either by the smaller of the edge length or the constraints value.

Type: BoolValue

endOfLineWidth

The triangular keepout region cannot touch an end-of-line edge with width strictly less than the value of endOfLineWidth, meaning that the constraint does not apply near such corners. This parameter must be specified if toConvexCorner is specified.

Type: Value

Related Topics

Extension Constraints


Return to top
 ⠀
X