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

orthogonalSnappingLayer

spacingTables(
( orthogonalSnappingLayer tx_layer1 tx_layer2
 (( "width" nil nil )
  ['upperLineEndStoppingPoints g_upperTable]
  ['mask1 | 'mask2 | 'mask3]
  ['otherMask1 | 'otherMask2 | 'otherMask3]
  l_defaultRanges
 )
 g_rangeTable
)
) ;spacingTables

(Virtuoso Advanced Node for Layout Only) Specifies the stopping points to align end-of-line edges on layer1 with the routing grid on layer2, based on the widths of the routing tracks. The routing grid on layer2 can be specified using a number of ways, including track patterns, snapPatternDefs, and widthSpacingSnapPatternDefs. Both layers must have orthogonal direction.

Values

tx_layer1

The first layer on which the constraint is applied. The constraint applies to the line-end edges on this layer.

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

tx_layer1

The second layer on which the constraint is applied. The line-end edges on layer1 need to align to the grid on this layer.

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

"width" nil nil

This identifies the index for rangeTable.

g_rangeTable

The format of the rangeTable row is as follows:

(f_index l_valueRange)

where,

  • f_index is the width of a track on layer2. The corresponding stopping-point distance values apply if the width of a track is greater than or equal to index.
  • l_valueRange is a list of stopping-point distances relative to the centerline of the tracks on layer2. A value of zero means that the end-of-line must stop at the centerline of a track; a negative value means that the end-of-line must stop at the specified distance before the centerline; and a positive value means that the end-of-line must stop at the specified distance after the centerline.

Type: A 1-D table specifying a list of floating-point distance ranges, indexed on the width of the tracks on layer2

Parameters

'upperLineEndStoppingPoints g_upperTable

  

Each entry in the table specifies stopping-point distances for the right and upper edges of the shapes on layer1; the constraint value specifies the stopping point distances for the left and lower edges of the shapes on layer1.

If this parameter is not specified, the constraint value applies to all edges, lower and left and upper and right.

Type: A 1-D table specifying floating-point distance ranges, indexed on the width of the routing tracks on layer2

'mask1 | 'mask2 | 'mask3

The constraint applies to this mask on layer1.

'otherMask1 | 'otherMask2 | 'otherMask3

The constraint applies to this mask on layer2.

l_defaultRanges

The stopping-point distance values to be used when no table entry applies.

Type: A list of stopping-point distances ranges

Example

The end-of-line edges of Metal2 shapes must stop as follows:


Return to top
 ⠀
X