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

minExtensionDistance

orderedSpacings(
( minExtensionDistance tx_layer1 tx_layer2 
 ['horizontal | 'vertical] 
 ['layer2Voltage f_layer2Voltage]
 ['cutClass {f_width | (f_width f_length) | t_name}]
 ['exceptEdgeLengthRange g_exceptEdgeLengthRange]
 ['insideLayers (tx_layer3 tx_layer4tx_layerN)
  ['insidePurposes (t_purpose1 t_purpose2t_purposeN)]
  | 
  'outsideLayers (tx_layer3 tx_layer4tx_layerN)
  ['outsidePurposes (t_purpose1 t_purpose2t_purposeN)]
 ]
 f_extension 
 ['coincidentAllowed] ['manhattan] 
)
) ;orderedSpacings
spacingTables(
( minExtensionDistance tx_layer1 tx_layer2
 (( "width" nil nil )
 ['horizontal | 'vertical] 
 ['layer2Voltage f_layer2Voltage]
 ['cutClass {f_width | (f_width f_length) | t_name}]
 ['exceptEdgeLengthRange g_exceptEdgeLengthRange]
  ['insideLayers (tx_layer3 tx_layer4tx_layerN)
   ['insidePurposes (t_purpose1 t_purpose2t_purposeN)]
  | 
   'outsideLayers (tx_layer3 tx_layer4tx_layerN)
   ['outsidePurposes (t_purpose1 t_purpose2t_purposeN)]
  ]
 )
 (g_table) 
 ['coincidentAllowed] ['manhattan]
)
) ;spacingTables

Specifies the minimum extension of a shape on layer1 past a shape on layer2. The minimum extension is optionally dependent on the length of the layer2 shape.

This is an ordered constraint, which means that the minimum extension of a layer1 shape past a layer2 shape is not the same as the minimum extension of that layer2 shape past the layer1 shape.

Values

tx_layer1

The first layer on which the constraint is applied.

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

tx_layer2

The second layer on which the constraint is applied.

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

f_extension

The extension must be greater than or equal to this value.

"width" nil nil

This identifies the index for table.

g_table

The g_table row is defined as:

(f_width f_extension)

where,

  • f_width is the width of the layer1 shape. The width of the layer1 shape must be greater than or equal to this value for the corresponding extension value to apply.
  • f_extension is the extension of the layer1 shape past the layer2 shape. The extension must be greater than or equal to this value.

Type: A 1-D table specifying floating-point width and extension values

Parameters

'horizontal | 'vertical

  

(Virtuoso Advanced Node for Layout Standard) The constraint applies only to the extensions measured in this direction. If direction is not specified, the extension is measured in any direction.

Type: Boolean

'layer2Voltage f_layer2Voltage

  

(Virtuoso Layout Suite EXL and higher tiers) The constraint applies if the voltage for layer2 shape is greater than or equal to this value.

'cutClass {f_width | (f_width f_length) | t_name}

(Virtuoso Advanced Node for Layout Standard) The cut class to which the constraint applies, specified by width, by width and length, or by name (as defined in a cutClasses constraint).

  • f_width: Width
  • f_length: Length
  • t_name: Name of the cut class

'exceptEdgeLengthRange g_exceptEdgeLengthRange

(Virtuoso Advanced Node for Layout Standard) The constraint does not apply if the length of the layer2 shape falls in this range.

Type: Floating-point values specifying a range of lengths that are exempted

'insideLayers (tx_layer3 tx_layer4tx_layerN)
| 'outsideLayers (
tx_layer3 tx_layer4tx_layerN)

(Virtuoso Advanced Node for Layout Standard) Determines if the constraint applies, based on the presence or absence of one or more layers.

  • 'insideLayers: The constraint applies when the region between the shapes on the specified layers (layer1 and layer2) overlaps a shape on one of these layers (layer3 layer4layerN).
  • 'outsideLayers: The constraint applies when the region between the shapes on the specified layers (layer1 and layer2) overlaps the region outside the shapes on one of these layers (layer3 layer4layerN).

For more information, see Region-based Rule (Two layers).

Type: String (layer name) or Integer (layer number)

'insidePurposes (t_purpose1 t_purpose2t_purposeN)

(Virtuoso Advanced Node for Layout Standard) The 'insideLayers parameter is limited to only the specified purposes.

Type: String (purpose name)

'outsidePurposes (t_purpose1 t_purpose2t_purposeN)

(Virtuoso Advanced Node for Layout Standard) The 'outsideLayers parameter is limited to only the specified purposes.

Type: String (purpose name)

'coincidentAllowed

The edges of an enclosed shape can coincide with the edges of the enclosing shape. Otherwise, the enclosed shape must meet the extension requirement.

Type: Boolean

'manhattan

The constraint uses Manhattan distance, which allows a larger spacing at the corners.

By default, the constraint uses Euclidean measurement.

Type: Boolean

Example

The horizontal extension of a Metal1 shape past a Metal2 shape must be at least 0.1.


Return to top
 ⠀
X