Product Documentation
Virtuoso Studio Design Environment SKILL Reference
Product Version IC23.1, November 2023

dbCreateStdViaVariant

dbCreateStdViaVariant(
d_cellViewId t_viaVariantName t_viaDefName
(t_cutLayerName f_cutLayerWidth f_cutLayerHeight)
(n_cutRows n_cutCol  (f_cutSpaceX f_cutSpaceY))
(f_layer1EncX f_layer1EncY)
(f_layer2EncX f_layer2EncY)
(f_layer1OffsetX f_layer1OffsetY)
(f_layer2OffsetX f_layer2OffsetY)
(f_origOffsetX f_origOffsetY)
(f_implant1EncX f_implant1EncY)
(f_implant2EncX f_implant2EncY)
(cut_pattern) 
) 
=> nil / d_viaVariantId

Description

Creates a standard via variant with the specified attributes.

This function cannot create standard via variant using parameters that will create inverted layer and implant enclosure shapes.

Arguments

d_cellViewId

Database ID of the cellview.

t_viaVariantName

Name of the standard viaVariant.

t_viaDefName

Name of the viaDef associated with the viaVariant.

t_cutLayerName

Name of the cut layer.

Valid values: A string that is the name of a valid layer with the layer function cut defined in the technology database

t_cutLayerWidth

Width of a cut, in user units.

Valid values: Any positive number

t_cutLayerHeight

Height of a cut, in user units.

Valid values: Any positive number

n_cutRows

Number of rows in the cut array.

Valid values: Any positive integer

n_cutCol

Number of columns in the cut array.

Valid values: Any positive integer

f_cutSpaceX

The horizontal edge-to-edge distance between cuts, in user units.

Valid values: Any positive floating-point number

f_cutSpaceY

The vertical edge-to-edge distance between cuts, in user units.

Valid values: Any positive floating-point number

f_layer1EncX

The horizontal distance from the cut edge to the edge of layer 1, in user units.

Valid values: Any floating-point number

f_layer1EncY

The vertical distance, from the cut edge to the edge of layer 1, in user units.

Valid values: Any floating-point number

f_layer2EncX

The horizontal distance from the cut edge to the edge of layer 2, in user units.

Valid values: Any floating-point number

f_layer2EncY

The vertical distance from the cut edge to the edge of layer 2, in user units.

Valid values: Any floating-point number

f_layer1OffsetX

The horizontal offset for layer 1 in user units.

Valid values: Any floating-point number

f_layer1OffsetY

The vertical offset for layer 1 in user units.

Valid values: Any floating-point number

f_layer2OffsetX

The horizontal offset for layer 2 in user units.

Valid values: Any floating-point number

f_layer2OffsetY

The vertical offset for layer 2 in user units.

Valid values: Any floating-point number

f_origOffsetX

The horizontal offset for the origin of the via in user units.

Valid values: Any floating-point number

f_origOffsetY

The vertical offset for the origin of the via in user units.

Valid values: Any floating-point number

f_implant1EncX

The horizontal distance from the edge of layer 1 to the edge of implant layer 1 in user units.
Valid values: Any floating-point number

f_implant1EncY

The vertical distance from the edge of layer 1 to the edge of implant layer 1, in user units.
Valid values: Any floating-point number

f_implant2EncX

The horizontal distance from the edge of layer 2 to the edge of implant layer 2, in user units.
Valid values: Any floating-point number

f_implant2EncY

The vertical distance from the edge of layer 2 to the edge of implant layer 2, in user units.
Valid values: Any floating-point number

l_cutPattern

Cut pattern for the viaVariant. It is a 2D array with the value of 0 or 1 for each entry. 0 represents no cut for the correspondent cut in the viaVariant. Whereas, 1 represents cut for the correspondent cut in the viaVariant.

Value Returned

d_stdViaVariantId

Database ID of the viaVariant that was created.

nil

The stdViaVariant could not be created.

Related Topics

Working with Vias

Standard viaVariant Attributes

Interconnect Functions


Return to top
 ⠀
X