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

cutClass

Defines a cut class name and specifies the via width and via length, in user units, for cuts that belong to the given class.

Cut classes are referenced by other constraints, implicitly by class size, to scope those constraints to cuts of the specific class. In cases where a constraint for a cut layer is scoped to a cut class, the rest of the constraints of that type for that layer must also reference a cut class. There is no fallback for a constraint that does not reference a cut class for any cut sizes not covered by cut class-specific constraints.

cutClass Quick Reference

Constraint Type

Layer

Value Types

DualValue

Database Types

Design, Technology

Scope

design, foundry

Category

Via Construction

Group Operators

OR

Value Type

DualValue

Specifies the exact width (viaWidth) and length (viaLength), in user units, of a cut that should belong to this cut class. Multiple cut classes for a given cut layer should be collected as multiple cutClass constraints in an OR constraint group.

Required Parameter

className

Specifies the cut class name, which is used to reference the cut class by other constraints.

Type: StringValue

Optional Parameters

numCuts

Specifies the equivalent number of cuts of the cut class for the minimum cut rule and calculation of resistance value. If a minimum cut rule requires n cuts, having round up of n/numCuts vias of this cut class is sufficient. Resistance value for this cut class vias would be resistance of the cut layer/numCuts. The default is 1.

Type: IntValue

fixedOrientation

Specifies that the first value of the dual value is always interpreted as the x-span of the cut class, and the second value is always interpreted as the y-span of the cut class.

Type: BoolValue

Examples

create_constraint_group -name cutClassgp -opType or -db tech
add_constraint_group -subGroupName cutClassgp -groupType foundry
set_constraint_parameter -name className -StringValue VA set_constraint_parameter -name numCuts -IntValue 1 set_layer_constraint -constraint cutClass -layer Via1 -create true \   -group cutClassgp -DualValue {0.10 0.10}
set_constraint_parameter -name className -StringValue VB set_constraint_parameter -name numCuts -IntValue 2 set_layer_constraint -constraint cutClass -layer Via1 -create true \   -group cutClassgp -DualValue {0.10 0.25}
set_constraint_parameter -name className -StringValue VC set_constraint_parameter -name numCuts -IntValue 4 set_layer_constraint -constraint cutClass -layer Via1 -create true \   -group cutClassgp -DualValue {0.25 0.25}

Creates three cut classes named VA, VB, and VC for layer Via1. VA and VC are square cut classes (0.10 user units2 and 0.25 user units2, respectively). VB is a rectangular cut class of 0.10 x 0.25. The VB shorter side (0.10) is called the end and the longer side (0.25) is considered the side, as shown in the following figure.

Large Via Examples for cutClass

Related Topics

Via Construction Constraints


Return to top
 ⠀
X