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

minProtrusionNumCut

Specifies the number of cuts a via must have when the via is placed on a thin wire directly connected to a wide wire or pin. The rule applies only when

The width, length, distance, and area values are given by the width, length, distance, and oaArea parameters.

Note: This constraint can be applied only to layers of material cut.

minProtrusionNumCut Quick Reference

Constraint Type

Layer

Value Types

IntValue

Database Types

Design, Technology

Scope

design, foundry

Category

NumCut

Group Operators

AND, OR

Value Type

IntValue

Specifies the number of cuts required. You must also specify the cut layer name.

For example:

set_constraint_parameter -name width -Value f_width
set_constraint_parameter -name length -Value f_length
set_constraint_parameter -name distance -Value f_distance
[set_constraint_parameter -name oaDistanceWithin -Value f_within]
set_layer_constraint -constraint minProtrusionNumCut \
-layer s_layer -IntValue i_numCuts

The following figure shows a wide wire with thin wires protruding from it. A minimum of two cuts is required when the width, length, and distance conditions are met. Each protruding wire is evaluated for compliance with the given minProtrusionNumCut rule. By default, distance is measured from the edge of the wide wire, as shown below.

Required Parameters

width

Specifies the width of the wide wire.

Type: Value

distance

Specifies the distance from the wide wire to the first via on the protruded wire

Type: Value

length

Specifies the length of the wide wire. Either length or oaArea must be given but not both.

Type: Value

oaArea

Specifies the area of the island (including the wide wire and protrusion). Either length or oaArea must be given but not both.

Type: Value

Optional Parameters

oaDistanceWithin

Specifies the distance at which cuts are not counted. Cuts at a distance equal to or greater than the specified value are not counted.

Type: Value

cutClass

Specifies that the constraint only applies to cut shapes whose width and height are equal to the values in the DualValue pair, specified in that order. Cut class applies to 32nm rules.

Type: DualValue

lowerLayerMetal

Specifies whether the constraint applies only to connections from below the cut layer.

Type: BoolValue

upperLayerMetal

Specifies whether the constraint applies only to connections from above the cut layer.

Type: BoolValue

centerLineDistance

If set to true, specifies that the distance from the wide wire to the first via cut on the protruded wire is computed from the centerline of the wide wire. The default value is false, which means that the distance is measured from the edge of the wide wire.

Type: BoolValue

Examples

Sets the minimum number of cuts on a protrusion from a wide wire or pin on V1 to 4 when all of the following are true:

The cuts must be within 0.5 user units of each other.

set_constraint_parameter -name distance -Value 1.800
set_constraint_parameter -name length -Value 4.5
set_constraint_parameter -name oaDistanceWithin -Value 0.500
set_constraint_parameter -name width -Value 0.99
set_layer_constraint -layer V1 -constraint minProtrusionNumCut \
-hardness hard -IntValue 4

Related Topics

NumCut Constraints


Return to top
 ⠀
X