dbFlattenInst2
dbFlattenInst2(
d_instId
x_levels
[ g_options ]
)
=> t / nil
Description
Flattens an instance up through x_levels of hierarchy along with an optional set of flatten options. dbFlattenInst2 flattens mosaics as well as normal instances.
Arguments
|
d_instId
|
Specifies the database ID of the instance to flatten.
Valid value: A valid instance db_Id.
|
|
x_levels
|
Number of levels of hierarchy through which to flatten the instance.
Valid value: An integer between 0 and 32.
|
|
g_options
|
(Optional) Specifies a SKILL disembodied property list with the following fields:
-
flattenPCells: Specifies whether pcells are flattened. Valid Values: t, nil. Default: nil. -
preservePins: Specifies whether pin information is preserved. Valid Values: t, nil. Default: nil. -
preserveRodObjs: Specifies whether ROD properties are preserved. Valid Values: t, nil. Default: nil. -
preserveTermName: Specifies whether terminal name is preserved. Valid Values: t, nil. Default: nil. -
delDetachedBlockages: Specifies whether detached blockages are deleted. Valid Values: t, nil. Default: nil. -
preservePinFigs: Specifies whether pin figures are preserved. Valid Values: t, nil. Default: t. -
flattenVias: Specifies whether vias are flattened. Valid Values: t, nil. Default: t. -
hierSeparator: Specifies value of hierarchy separator as a string of characters. Valid Values: String of characters. Default: none. -
skipShapesOnReservedLayer: When this option is specified the following shapes, if associated with a reserved layer, would be skipped while copying:-
oaArc -
oaDonut -
oaDot -
oaEllipse -
oaLine -
oaPath -
oaPathseg -
oaPolygon -
oaRect -
oaText
|
|
|
-
skipSteiners: When specified, skips Steiners while while flattening an instance. Values: t, nil. Default: nil -
skipSteiners: When specified, skips Steiners while while flattening an instance. Values: t, nil. Default: nil -
skipFluidShapes: When specified, skips fluid shapes while while flattening an instance. Values: t, nil. Default: nil -
preserveConn: Specifies whether to preserve only nets and not terminals or pins. Values: t, nil. Default: nil -
useViaPurpose: Sets the purpose of the copied shapes to the purpose of the parent via. Values: t, nil. Default: nil. -
mergePRBoundary: Merges the PR Boundary of the flattened cellviews to the PR Boundary of the top level cellview. Valid Values: t, nil. Default: nil. -
hierNetNamesWhenPreserveConn: Includes the instance hierarchy in the name of nets that are flattened to the top level. This works only when the preserveConn option is set. Valid Values: t, nil. Default: nil. -
preserveNetsWithNoTerms: Specifies whether nets that are not connected to any terminal are to be preserved. Valid Values: t, nil. Default: nil. -
preservePinFigLabels: Specifies whether pin figure labels are preserved during flattening. If set to nil, the labels are not flattened. The default is t. This option will have no effect if option preservePins is set to nil.
|
Values Returned
|
t
|
Returns t if the instance is successfully flattened.
|
|
nil
|
Returns nil if the instance is not flattened.
|
Examples
Flattens the instance instance1 through two levels of the hierarchy. It uses default values for g_options argument.
dbFlattenInst2( instance1 2)
Flattens the instance instance2 through three levels of the hierarchy. It uses values as provided by the user for the g_options argument.
options = list(nil)
options->flattenPCells = t
options->preservePinFigs = nil
options->preservePins = t
options->preserveRodObjs = t
options->preserveTermName = t
options->flattenVias = nil
options->delDetachedBlockages = t
options->hierSeparator = "#"
options->skipSteiners = nil
options->skipFluidShapes = nil
options->preserveConn = t
dbFlattenInst2(instance2 3 options)
Flattens the instance instId at two levels, and a Steiner, if any, is not copied to the parent cell.
options = list(nil)
options->skipSteiners = t
dbFlattenInst2(instId 2 options)
Flattens the pcells. For vias, the purpose of the copied shapes will be set to the purpose of the parent via, if any.
Vias are flattened since flattenVias option is true by default.
options = list(nil)
options->flattenPCells = t
options->useViaPurpose = t
dbFlattenInst2(instId 2 options)
Return to top