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

dbFlattenInst

dbFlattenInst(
d_instId
x_levels
[ g_flattenPCells ]
[ g_preservePins ]
[ g_preserveRODobjs ]
[ g_delDetachedBlockages ] 
[ g_preservePinFigs ] 
[ g_preserveTermName ]
[ g_flattenVias ]
) 
=> t / nil 

Description

Flattens instance d_instId up through x_levels of hierarchy. The dbFlattenInst function flattens mosaics as well as normal instances. To flatten a mosaic, pass the mosaicId to dbFlattenInst.

When you flatten a mosaic, flattening one level splits the mosaic into a set of normal instances.

In color-aware designs, effective coloring on both locked and unlocked shapes is preserved. However, if the coloring engine is enabled during flattening, unlocked shapes might be recolored after flattening is completed.

Arguments

d_instId

Database ID of the instance to flatten. To flatten a mosaic, specify the mosaicId.

x_levels

Number of levels of hierarchy through which to flatten the instance.Valid Values: an integer between 0 and 32

g_flattenPCells

Specifies whether pcells should be flattened. t indicates that pcells should be flattened.
Valid Values: t, nil
Default: nil

g_preservePins

Specifies whether the pin information should be preserved when flattening. When set to t, dbFlattenInst preserves the connectivity information that, which includes pin properties, such as placement status, access direction and pin figures. In addition, to avoid conflicts, this function prefixes the hierarchical name to the original pin names instead of preserving the original pin names.
Valid Values: t, nil
Default: nil

g_preserveRODobjs

Specifies whether ROD properties should be preserved.
Valid Values: t, nil
Default: nil

g_delDetachedBlockages

Specifies whether the detached blockages should be deleted.
Valid Values: t, nil
Default: nil

g_preservePinFigs

Specifies whether the pin figures should be preserved. If set to t, the function preserves the pin figures.
Valid Values: t, nil
Default: t

g_preserveTermName

Specifies whether the terminal name should be preserved. If set to t, the function preserves the terminal name.
Valid Values: t, nil
Default: nil

g_flattenVias

Specifies whether the vias should be flattened or not. If set to t, the function flattens the vias.
Values: t, nil
Default: t

Value Returned

t

The instance is flattened.

nil

The instance is not flattened.

Examples

Flattens the instance instance1 through two levels of the hierarchy, preserves pin figures and flattens vias (the default value is t). However, does not flatten any pcells contained in the instance.

dbFlattenInst( instance1 2 nil )

Flattens the instance instId and any pcells contained in the instance, preserves pin information, pin figures, and terminal names.

dbFlattenInst(instId 1 t t nil nil t t)

Return to top
 ⠀
X