Product Documentation
Virtuoso Technology Data Constraints Reference
Product Version IC23.1, November 2023

Constraints

A constraint can be specified in any constraint group and must be:

User-defined constraints are maintained in the technology file, but are not used or recognized by Cadence applications. These constraints are maintained in the technology file to preserve existing Pcell code that might refer to them. Most importantly, a constraint must have the proper name and syntax for it to be recognized by applications and commands that are designed to use the constraint and to be interoperable with other tools that run on OpenAccess.

All constraints have the same general syntax. Only the number of layers and parameters varies for each constraint.

( t_constraintName [["t_layerName" | x_layerNumber | ("t_layerName" "t_purposeName")] …]
[parameter …] 
g_value 
['soft | 'hard] 
['ref t_reference] 
['description t_description]
)

Parameters

t_constraintName

The name of the constraint.

"t_layerName" | x_layerNumber | ("t_layerName" "t_purposeName")

A list of 0 to 3 layers, depending on the constraint.

You can specify either the layer name or number or the layer-purpose pair name. If specifying the layer-purpose pair name, both layer and purpose names must be enclosed individually in double quotes and separated by a space. Additionally, the layer-purpose pair must be enclosed in parentheses.

Type: String (layer and purpose names) or Integer (layer number)

parameter

A list of 0 or more parameters, depending on the constraint.

g_value

The constraint value. Either a scalar value, a list, or a table, depending on the constraint.

'soft | 'hard

Specifies whether a constraint must be absolutely met, or whether it is only a recommended value.

For more information, see Constraint Parameters.

'ref

Lets you add a reference ID at the end of a constraint. The reference ID can be used to identify that constraint specification. This parameter can be specified for any constraint. It is used in violation markers and in the Annotation Browser.

'description

Lets you add a description at the end of a constraint. This parameter can be specified for any constraint. The description is displayed in violation markers and in the Annotation Browser.

Example

orderedSpacings(
    ( minOppExtension "Metal1" "Via1" 
     'cutDistance 0.1     ;first parameter
'noSharedEdge ;second parameter
(2.1 0.7) ;constraint value
'soft
'ref "M1.EX.1"
'description "Metal1 extension past Via1"
)
) ;orderedSpacings

Return to top
 ⠀
X