Product Documentation
Virtuoso Multi-Patterning Technology User Guide
Product Version IC23.1, November 2023

B


MPT SKILL Functions

The SKILL functions used with Virtuoso® Multi-Patterning Technology (MPT) are listed below. Some functions support the multiple patterning color engine and others support Virtuoso database access and technology data for MPT.

The SKILL functions in the following tables support the multiple patterning color engine.

Coloring Method

SKILL Function Description
mptActivate(
g_activate 
)
=> t / nil

Turns the color engine on or off.

mptGetDefaultColoringMethod(
)
=> t_coloringMethod

Returns the session default coloring method.

mptGetLayerColoringMethod(
d_cellViewID 
[ t_layerName ]
)
=> t_coloringMethod / t_SDLcolorMethod / nil

Returns either the coloring method for the given layer, or the coloring method for the session, the design, and layers with a specified coloring method.

mptSetDefaultColoringMethod(
t_coloringMethod 
)
=> t / nil

Sets the session default coloring method.

mptSetLayerColoringMethod(
{ d_cellViewID | d_techID } 
l_layers 
t_coloringMethod 
)
=> t / nil

Sets the coloring method for the technology database, the design, or specified layers in the design.

Color Assignment

SKILL Function Description
mptGetLayerDefaultColor( 
d_techFileID 
[ t_layerName ] 
)
=> t_color / l_layerColor / nil 

Returns either the default color for the given layer, or a list of layer-default color pairs.

mptGetLockDefaultColors(
)
=> t / nil

Indicates whether the layer default color specified by mptSetLayerDefaultColor will be locked when assigned to a shape.

mptSetLayerDefaultColor( 
t_layer 
t_color )
=> t / nil

Specifies the color assignment for newly created shapes on the given layer.

mptSetLockDefaultColors(
)
=> t / nil

Specifies whether the layer default color specified by mptSetLayerDefaultColor will be locked when assigned to a shape.

Hierarchical Coloring

SKILL Function Description
mptPropagateLocks( 
[ d_cellviewID 
[ g_convertGroups ]] 
)
=> t / nil

Propagates all the locks visible from the top level to connected shapes through the hierarchy.

mptPropagateSameMaskGroups(
d_cellViewID 
)
=> t / nil

Propagates same mask groups in the given cellview through the hierarchy.

Table -1 Color Locking

SKILL Function Description
mptLockAl( 
d_cellviewID 
[ l_layerNames ] 
)
=> t / nil

Locks all the top-level shapes of the specified cellview with their current color. You can optionally lock only the shapes on specific colorable layers. Gray color shapes are not locked.

mptUnlockAll(
d_cellViewID 
[ l_layerNames ] 
)
=> t / nil

Unlocks all the colored shapes that are locked at the top level of the specified cellview. You can optionally unlock only the shapes on specific colorable layers. Top-level shapes with color attribute locks (dbLocks) are unlocked with their current color. Hierarchical color locks at the current editing hierarchy level are removed.

Batch Coloring

SKILL Function Description
mptCleanClusters(
d_cellViewID 
)
=> t / nil

Cleans out-of-date cluster information in the cellview which can help to reduce the design size and/or improve performance.

mptDeleteClusters(
d_cellViewID 
[ l_layers 
[ g_depth ]] 
)
=> t / nil

Removes coloring clusters in the specified design.

mptGetOutdatedDesigns(
d_cellViewID 
[ t_mode ] 
)
=> l_outdated / nil

Returns a list of the cellviews in the design hierarchy for which the color information is outdated.

mptGetUpToDateDesigns(
d_cellViewID 
)
=> l_upToDate / nil

Returns a list of the cellviews in the design hierarchy for which the color information is up to date.

mptReColor(
d_cellviewID
[ l_layers 
[ g_depth ]] 
)
=> t / nil

Recolors the entire cellview.

By default, this function will color the entire design, even though coloring for read-only cellviews cannot be saved. This is useful for determining if the design is colorable. To prevent recoloring of read-only cells of the top design, set the reColorReadOnlyCellView environment variable to nil.

envSetVal("mpt" "reColorReadOnlyCellView" 'boolean nil)

mptReColorFromShapes(
l_shapes 
)
=> t / nil

Recolors the shapes in the list and the shapes that are connected to them. If the coloring method is managed, the color of the shapes that are within same-mask spacing of the shapes in the list will be updated according to the clustering algorithm.

mptUpdateColor( 
d_cellViewID 
[ l_layers 
[ g_depth ]] 
)
=> t / nil

Updates color information. Similar to mptReColor but runs faster for cases when only part of the design is out of date, because valid coloring information is not recomputed.

Stitch and Unstitch

SKILL Function Description
mptHiStitch(
)
=> nil

Turns on Stitch mode.

mptHiUnStitch(
)
=> nil

Turns on Unstitch mode.

Data Input/Output

SKILL Function Description
mptLPPMergeToColor(
d_cellviewID
g_libName
g_viewName
l_mapping
[ g_colorState ]
)
=> t / nil

Converts the layout into Virtuoso multi-pattern conformance format for designs that use two or more separate layer-purpose pairs to represent multi-patterning mask information.

mptMarkersToColoredBlockges(
l_purposes
d_cellViewID
)
=> t / nil

Transforms the shapes on the specified purposes of colored layers in the given cellview to colored blockages on the same layer.

mptMarkersToMaskColors(
l_purposes
g_drawingPurpose
d_cellViewID
g_locked
)
=> t / nil

Transforms the shapes in the given cellview to the drawing purpose and assigns color and color state to the shape from the color specified by the color marker purpose.

Color Display

SKILL Function Description
mptGetColoredPurposes(
d_cellViewID 
)
=> l_lpp / nil

Returns a list of the colored layer-purpose pairs for the cellview.

mptIsMaskColorShown(
t_layerName 
x_maskNumber 
)
=> t / nil

Checks whether the specified mask color is visible for the layer.

mptShowMaskColor(
l_layers 
x_maskNumber 
g_toShow 
)
=> t / nil

Shows or hides the color for the specified mask on the given layers.

Multiple Patterning Toolbar Functions

SKILL Function Description
mptDoToolbarAction(
g_toolbarFunc
)
=> t / nil

Runs the specified Multiple Patterning toolbar function.

Related Topics

Virtuoso Studio Design Environment SKILL Functions for MPT

Virtuoso Technology Database SKILL Functions for MPT

Virtuoso Layout Suite L Palette Assistant SKILL Functions for MPT


Return to top
 ⠀
X