Product Documentation
Virtuoso Layout Suite SKILL Reference
Product Version IC23.1, November 2023

viaGenerateViasAtPoint

viaGenerateViasAtPoint(
w_windowId | d_cellViewId
l_point
t_viaOptionsObject
[ ?topAndBottomLayers lt_topAndBottomLayers ]
[ ?startLevel x_startLevel ]
[ ?stopLevel x_stopLevel ]
) 
=> l_via / nil

Description

Generates vias with the specified options at a given location in the specified window or cellview.The figures present at the given location are queried, and if they form valid overlaps, vias are created to connect the figures.

Arguments

w_windowId | d_cellViewId

Window ID or cellview ID. If window ID is specified, the vias are generated in the edited cellview opened in the given window ID. In addition, if a window ID is given, the window settings are respected (layer visibility, edited figGroup, window start and stop level, and selectCreatedObj environment variable).

l_point

List that represents the point where the vias are to be generated.

t_viaOptionsObject

The options used to customize the via generation.

?topAndBottomLayers lt_topAndBottomLayers

Forces the creation of the via between the specified top and bottom layer names even if the via overlaps top and bottom layers that are computed are different. If this argument is not specified, the top and bottom layers of the overlaps computed at the given location are used.

?startLevel x_startLevel

Specifies the start level of the query run to compute the via overlaps. If the start level is not specified, and a window ID is specified as the first argument of the function, the window~>startLevel is used. If the start level is not specified and a cellview ID is specified as the first argument of the function, 0 is used as the value of the start level.

?stopLevel x_stopLevel

Specifies the stop level of the query run to compute the via overlaps. If the stop level is not specified, and a windowID is specified as the first argument of the function, the window~>stopLevel is used. If the stop level is not specified and a cellview ID is specified as the first argument, 0 is used as the value of the stop level.

Value Returned

l_via

Returns the list of the created vias.

nil

Returns nil if no via can be created at the specified location.

Example

techFile = techGetTechFile(ddGetObj("gpdk090"))
constraintGroupId = cstFindConstraintGroupIn(techFile "virtuosoDefaultSetup")
myViaOptions = viaGetViaOptions(constraintGroupId)
window = hiGetCurrentWindow()
viaGenerateViasAtPoint(window list(0 0) myViaOptions)
 (db:0x2550d41a)

Return to top
 ⠀
X