19
Multi-Patterning Technology Functions
Multi-patterning is a technique in which two or more mask processes are used to manufacture a design layer. Colors are used to represent the individual masks.
For more information about multi-patterning lithography and how to use Virtuoso® Multi-Patterning Technology (MPT) for designs that require two or more masks for a drawn layer, see
This chapter describes the following multi-patterning technology (MPT) functions:
All of the functions detailed in this section are for advanced nodes use only.
MPT Database Functions
This section describes the following MPT database functions:
- dbCellViewAreLayerShiftsValid
- dbCellViewClearLayerShifts
- dbCellViewHasLayerShifts
- dbCellViewUpdateLayerShifts
- dbInstGetLayerShifts
- dbInstHasLayerShifts
- dbInstSetLayerShifts
- dbInstClearLayerShifts
- dbIsShapeColoringAllowed
- dbIsShapeColored
- dbGetShapeColor
- dbIsShapeColorLocked
- dbIsShapeColorLocked
- dbIsShapeColorLocked
- dbSetShapeColorLocked
- dbIsBlockageColored
- dbIsBlockageColoringAllowed
- dbGetBlockageColor
- dbSetBlockageColor
- dbGetViaLayer1Control
- dbGetViaLayer2Control
- dbGetViaCutLayerControl
- dbGetViaLayerControl
- dbIsViaColorStateLocked
- dbIsViaColorStateLayerLocked
- dbSetViaLayer1Control
- dbSetViaLayer2Control
- dbSetViaCutLayerControl
- dbSetViaLayerControl
- dbSetViaColorStateLocked
- dbSetViaColorStateLayerLocked
- dbSetViaColorInfo
- dbIsTrackPatternColored
- dbIsTrackPatternColorAlternating
- dbIsTrackPatternColoringAllowed
- dbGetTrackPatternFirstTrackColor
- dbSetTrackPatternFirstTrackColor
- dbSetTrackPatternColorAlternating
- dbCreateSameMaskGroup
- dbCreateDiffMaskGroup
- dbColoredShapeQuery
- dbGetIntegrationColorModel
- dbGetColorModel
- dbSetIntegrationColorModel
- dbSetColorModel
- dbGetShapeColorLockType
- dbSetShapeColorLockType
- dbGetShapeColorLockType
- dbSetShapeColorLockType
dbCellViewAreLayerShiftsValid
Boolean
dbCellViewAreLayerShiftsValid(
dbCellViewId cellViewId
);
Description
Indicates whether the per-layer shift is valid on the instances for the specified cellview.
Arguments
Return Value
dbCellViewClearLayerShifts
Boolean
dbCellViewClearLayerShifts(
dbCellViewId cellViewId
);
Description
Clears the per-layer shifting information from the specified cellview.
Arguments
Return Value
dbCellViewHasLayerShifts
Boolean
dbCellViewHasLayerShifts(
dbCellViewId cellViewId
);
Description
Indicates whether any per-layer color shifts exist in the specified cellview.
Arguments
Return Value
|
Returns |
dbCellViewUpdateLayerShifts
Boolean
dbCellViewUpdateLayerShifts(
dbCellViewId cellViewId
);
Description
Creates or rebuilds the layer shift specification cache with the layers that are in the tech bound to the specified cellview. As a result, all per-layer shift information on the instances in the cellview is removed.
if (!dbCellViewHasLayerShifts(cv)) {
dbCellViewUpdateLayerShifts(cv);
}
Arguments
Return Value
|
Returns |
dbInstGetLayerShifts
Boolean
dbInstGetLayerShifts( dbInstIdinstId, unsigned int *numLayerShifts, dbLayerShift **layerShifts);
Description
Returns a list of layer-shift pairs that are applied to the layers in the master of the specified instance. If no layer shifts are specified for the instance, the return value for numLayerShifts is 0 and the layerShifts pointer is NULL.
malloc function and this memory must be released by calling the free function.Arguments
Return Value
|
Returns |
Example
dbInstId inst; // for example, ID from dbCreateInst();
unsigned int numLayers = 0; // initialize to 0
dbLayerShift *layerShiftPairs; = NULL; // initialize to NULL pointer
dbInstGetLayerShifts(inst, &numLayers, &layerShiftPairs);
Returns the layer shifts that are set for instance inst as a list of numLayers layer-shift pairs.
dbInstHasLayerShifts
Boolean
dbInstHasLayerShifts(
dbInstId instId
);
Description
Indicates whether the per-layer color shifts are specified on the instance.
if (!dbCellViewHasLayerShifts(cv)) {
dbCellViewUpdateLayerShifts(cv);
Arguments
Return Value
|
Returns |
dbInstSetLayerShifts
Boolean
dbInstSetLayerShifts( dbInstIdinstId, unsigned intnumLayerShifts, dbLayerShifts *layerShifts);
Description
Sets the master layer shifting information specified in the given list of layer-shift pairs.
if (!dbCellViewHasLayerShifts(cv)) {
dbCellViewUpdateLayerShifts(cv);
}
Arguments
Return Value
|
Returns |
Example
dbInstId inst; // for example, inst ID from dbCreateInst();
dbLayer layers[3] = {20, 21, 22};
dbLayerShift shifts[3] = {{layers[0], dbcShift1Shift}, {layers[1], dbcFixedMask1Shift}, {layers[2], dbcNoShift}};
dbInstSetLayerShifts(inst, 3, shifts);
Sets layer shifts for instance inst to dbcShift1Shift, dbcFixedMask1Shift, and dbcNoShift on layers 20, 21, and 22, respectively.
dbInstClearLayerShifts
Boolean
dbInstClearLayerShifts(
dbInstId instId
);
Description
Removes all per-layer color shifting information from the specified instance.
Arguments
Return Value
dbIsShapeColoringAllowed
Boolean
dbIsShapeColoringAllowed(
dbShapeId shapeId
);
Description
Indicates whether the specified shape can be colored. The following shapes can be colored—arcs, lines, donuts, ellipses, path segments, paths, rectangles, and polygons.
Arguments
Return Value
|
Returns |
dbIsShapeColored
Boolean
dbIsShapeColored(
dbShapeId shapeId
);
Description
Indicates whether the specified shape is colored in color other than grayColor.
Arguments
Return Value
|
Returns |
dbGetShapeColor
dbMaskColorType
dbGetShapeColor(
dbShapeId shapeId
);
Description
Returns the assigned color of the specified shape. By default, all newly created shapes have been assigned the color as grayColor. The assigned color of a shape can be different from the user color specification. The assigned color is based in the context of the cellview in which the shape is present and it is not the effective color of the shape in the context of the complete design.
Arguments
Return Value
|
Returns the color of the shape, which can be |
dbIsShapeColorLocked
Boolean
dbIsShapeColorLocked(
dbShapeId shapeId
);
Description
Indicates whether the assigned color for the specified shape is locked.
Arguments
Return Value
|
Returns |
dbSetShapeColorLocked
Boolean
dbSetShapeColorLocked( dbShapeIdshapeId, Booleanvalue);
Description
Changes the state of the assigned coloring of the shape. This function results in an error if you try to change the lock state of a non-colorable shape. It also returns error if you try to change the lock state of a shape whose assigned color is grayColor.
Arguments
Return Value
|
Returns |
dbIsBlockageColored
Boolean
dbIsBlockageColored(
dbBlockageId blockageId
);
Description
Indicates whether the specified blockage is colored in color other than grayColor.
Arguments
Return Value
|
Returns |
dbIsBlockageColoringAllowed
Boolean
dbIsBlockageColoringAllowed(
dbBlockageId blockageId
);
Description
Indicates whether the specified blockage can be colored. Only layer blockages can be colored.
Arguments
Return Value
|
Returns true if the blockage can be colored. |
dbGetBlockageColor
dbMaskColorType
dbGetBlockageColor(
dbBlockageId blockageId
);
Description
Returns the assigned color of the blockage. The default color type is grayColor.
Arguments
Return Value
|
Returns the assigned color of the blockage, which can be |
dbSetBlockageColor
Boolean
dbSetBlockageColor( dbBlockageIdblockageId, dbMaskColorTypemaskColorType);
Description
Assigns color to the blockage. If you try to assign color to the blockage that cannot be colored, it results in an error.
Arguments
|
Color to be assigned to the blockage. |
Return Value
|
Returns |
dbGetViaLayer1Control
dbColorControlType
dbGetViaLayer1Control(
dbViaId viaId
);
Description
Returns the color control assigned to the layer1 of the via. The default color control is noShifts.
Arguments
Return Value
dbGetViaLayer2Control
dbColorControlType
dbGetViaLayer2Control(
dbViaId viaId
);
Description
Returns the color control assigned to the layer2 of the via. The default color control is noShifts.
Arguments
Return Value
dbGetViaCutLayerControl
dbColorControlType
dbGetViaCutLayerControl(
dbViaId viaId
);
Description
Returns the color control assigned to the cut layer of the via. Default color control is noShifts.
Arguments
Return Value
dbGetViaLayerControl
dbColorControlType
dbGetViaLayerControl( dbViaIdviaId,dbViaLayerTypelayer);
Description
Returns the color control type for the specified layer in a via.
Arguments
|
Name of a valid via layer type.
Valid values: |
Return Value
Example
bool retVal = dbSetViaLayerControl(viaId, dbcLayer1ViaLayer, dbcShift4ColorControl);
dbColorControlType t1 = dbGetViaLayerControl(viaId, dbcLayer1ViaLayer);
bool retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer, true);
bool isLockedLayer1 = dbIsViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer);
retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer, true);
bool isLockedLayer2 = dbIsViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer);
In this example, first the color control type dbcShift4ColorControl is set for the layer dbcLayer1ViaLayer in the via viaID.
Next, the color state for layers dbcLayer1ViaLayer and dbcLayer2ViaLayer in the via viaID is changed to locked. dbIsViaColorStateLayerLocked is used to ensure that the color state for the specified layers has been changed.
dbIsViaColorStateLocked
Boolean
dbIsViaColorStateLocked(
dbViaId viaId
);
Description
Indicates whether the coloring on the via is locked. The default value is nil.
Arguments
Return Value
|
Returns |
dbIsViaColorStateLayerLocked
Boolean
dbIsViaColorStateLayerLocked( dbViaIdviaId,dbViaLayerTypelayer);
Description
Indicates whether the coloring for the specified individual layer in a via is locked.
Arguments
|
Name of a valid via layer type.
Valid values: |
Return Value
Example
bool retVal = dbSetViaLayerControl(viaId, dbcLayer1ViaLayer, dbcShift4ColorControl);
dbColorControlType t1 = dbGetViaLayerControl(viaId, dbcLayer1ViaLayer);
bool retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer, true);
bool isLockedLayer1 = dbIsViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer);
retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer, true);
bool isLockedLayer2 = dbIsViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer);
In this example, first the color control type dbcShift4ColorControl is set for the layer dbcLayer1ViaLayer in the via viaID.
Next, the color state for layers dbcLayer1ViaLayer and dbcLayer2ViaLayer in the via viaID is changed to locked. dbIsViaColorStateLayerLocked is used to ensure that the color state for the specified layers has been changed.
dbSetViaLayer1Control
Boolean
dbSetViaLayer1Control( dbViaIdviaId, dbColorControlTypecolorControlType);
Description
Sets the color control for the layer1 shapes of the via master. If you try to assign color control to the layer without allowed colored masks or if via color state is locked, it results in an error.
Arguments
Return Value
|
Returns |
dbSetViaLayer2Control
Boolean
dbSetViaLayer2Control( dbViaIdviaId, dbColorControlTypecolorControlType);
Description
Sets the color control for the layer2 shapes of the via master. If you try to assign color control to the layer without allowed colored masks or if the via color state is locked, it results in an error.
Arguments
Return Value
|
Returns |
dbSetViaCutLayerControl
Boolean
dbSetViaCutLayerControl( dbViaIdviaId, dbColorControlTypecolorControlType);
Description
Sets the color control for the cut layer shapes of the via master. If you try to assign color control to the layer without allowed colored masks or if via color state is locked, it results in an error.
Arguments
Return Value
|
Returns |
dbSetViaLayerControl
Boolean
dbSetViaLayerControl( dbViaIdviaId,dbViaLayerTypelayer,dbColorControlTypecontrol);
Description
Sets the specified color control type for the specified layer in a via.
Arguments
Return Value
Example
bool retVal = dbSetViaLayerControl(viaId, dbcLayer1ViaLayer, dbcShift4ColorControl);
dbColorControlType t1 = dbGetViaLayerControl(viaId, dbcLayer1ViaLayer);
bool retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer, true);
bool isLockedLayer1 = dbIsViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer);
retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer, true);
bool isLockedLayer2 = dbIsViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer);
In this example, first the color control type dbcShift4ColorControl is set for the layer dbcLayer1ViaLayer in the via viaID.
Next, the color state for layers dbcLayer1ViaLayer and dbcLayer2ViaLayer in the via viaID is changed to locked. dbIsViaColorStateLayerLocked is used to ensure that the color state for the specified layers has been changed.
dbSetViaColorStateLocked
Boolean
dbSetViaColorStateLocked(
dbViaId viaId
);
Description
Sets the color state for the specified via. If you try to set the color or color state of a via when the specified layer associated with the via is unbound or does not support coloring, it results in an error.
Arguments
Return Value
|
Returns |
dbSetViaColorStateLayerLocked
Boolean
dbSetViaColorStateLayerLocked( dbViaIdviaId,dbViaLayerTypelayer,Booleanvalue);
Description
Changes the color state for individual layers in a via.
Arguments
|
Value of a valid via layer type.
Valid values: |
|
|
|
Return Value
|
|
Example
bool retVal = dbSetViaLayerControl(viaId, dbcLayer1ViaLayer, dbcShift4ColorControl);
dbColorControlType t1 = dbGetViaLayerControl(viaId, dbcLayer1ViaLayer);
bool retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer, true);
bool isLockedLayer1 = dbIsViaColorStateLayerLocked(viaId, dbcLayer1ViaLayer);
retValLocked = dbSetViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer, true);
bool isLockedLayer2 = dbIsViaColorStateLayerLocked(viaId, dbcLayer2ViaLayer);
In this example, first the color control type dbcShift4ColorControl is set for the layer dbcLayer1ViaLayer in the via viaID.
Next, the color state for layers dbcLayer1ViaLayer and dbcLayer2ViaLayer in the via viaID is changed to locked. dbIsViaColorStateLayerLocked is used to ensure that the color state for the specified layers has been changed.
dbSetViaColorInfo
Boolean
dbSetViaColorInfo( dbViaIdviaId,dbViaLayerColorInfo*layer1ControlInfo,dbViaLayerColorInfo*layer2ControlInfo,dbViaLayerColorInfo*cutLayerControlInfo);
Description
Updates the color controls and states of the given via. The color information arguments correspond to the three via layers (via layer1, via layer2, and cut layer).
A warning message is displayed with a return value of FALSE for error conditions such as the following:
-
The color information argument is not set to
NULLfor a via layer that is not colorable. -
The color information is not valid (for example, the color control value is
noColorand the lock state isTRUE).
Arguments
Return Value
|
Returns |
dbIsTrackPatternColored
Boolean
dbIsTrackPatternColored(
dbTrackPatternId trackPatternId
);
Description
Indicates whether the specified first track of the specified track pattern is colored in color other than grayColor.
Arguments
Return Value
|
Returns |
dbIsTrackPatternColorAlternating
Boolean
dbIsTrackPatternColorAlternating(
dbTrackPatternId trackPatternId
);
Description
Indicates whether coloring for the specified track pattern is alternating.
Arguments
Return Value
|
Returns |
dbIsTrackPatternColoringAllowed
Boolean
dbIsTrackPatternColoringAllowed(
dbTrackPatternId trackPatternId
);
Description
Indicates whether the specified track pattern can be colored. Only track patterns where a routing layer is specified can be colored.
Arguments
Return Value
|
Returns |
dbGetTrackPatternFirstTrackColor
dbMaskColorType
dbGetTrackPatternFirstTrackColor(
dbTrackPatternId trackPatternId
);
Description
Returns the assigned color of the first track of the specified track pattern. The default color type is grayColor.
Arguments
Return Value
|
Returns the assigned color of the first track of the specified track pattern, which can be |
dbSetTrackPatternFirstTrackColor
Boolean
dbSetTrackPatternFirstTrackColor( dbTrackPatternIdtrackPatternId, dbMaskColormaskColor);
Description
Assigns the color to the first track of the specified track pattern. If you assign color to the first track of the track pattern that cannot be colored, it results in an error.
Arguments
|
Color to be assigned to the first track of the specified track pattern. |
Return Value
|
Returns |
dbSetTrackPatternColorAlternating
Boolean
dbSetTrackPatternColorAlternating( dbTrackPatternIdtrackPatternId, BooleansetLocked);
Description
Sets the coloring type of the specified track pattern. An error occurs if you try to set the color or color control of a track pattern when the track pattern has no routing layer or the routing layer is unbound and does not support coloring.
Arguments
Return Value
|
Returns |
dbCreateSameMaskGroup
dbGroupId
dbCreateSameMaskGroup( dbCellViewIdcellViewId, constStringgroupName);
Description
Creates same mask color group in the specified cellview.
Arguments
Return Value
dbCreateDiffMaskGroup
dbGroupId
dbCreateDiffMaskGroup( dbCellViewIdcellViewId, constStringgroupName, dbGroupIdsameMaskGroup1, dbGroupIdsameMaskGroup2);
Description
Creates diff mask color group in the specified cellview. This group defines a pair of groups of the shapes of different colors.
Arguments
|
First group from the pair of groups of the shapes of different colors. |
|
|
Second group from the pair of groups of the shapes of different colors. |
Return Value
dbColoredShapeQuery
void
dbColoredShapeQuery( dbCellViewIdcellViewId, dbLayerlayer, dbPurposepurpose, dbBBox*region, dbTransformtransform, unsigned intfilterSize, unsigned intstartLevel, unsigned intstopLevel, dbShapeQueryConsumershapeConsumer, void *clientData);
Description
Returns a list of pairs of all the shapes and their colors in a cellview whose bounding boxes overlap the region specified by l_bBox.
The effective color of a shape is the color after applying any hierarchical shifting that may be specified at different levels of the design hierarchy. This effective color may not be the color assigned to the shape.
Arguments
Return Value
dbGetIntegrationColorModel
Boolean
dbGetIntegrationColorModel( dbCellViewIdcellViewIddbIntegrationColorModelType *type);
typedef enum dbIntegrationColorModelType {
dbcUnknownIntegrationColorModel=0,
dbcAnyIntegrationColorModel=1,
dbcLockedIntegrationColorModel=2
} dbIntegrationColorModelType;
Description
Returns the integration color model constraint value for the specified cell view. The valid values are any or locked.
Arguments
Return Value
|
Returns |
dbGetColorModel
Boolean
dbGetColorModel( dbCellViewIdcellViewId, dbColorModelType *type);
Description
Returns the value of color model constraint for the specified cell view. Possible values are any, layerBased, or locked. If the constraint value is not specified on the cellview, this function returns false.
Arguments
|
Color model constraint type. |
Return Value
|
Returns |
dbSetIntegrationColorModel
void
dbSetIntegrationColorModel( dbCellViewIdcellViewId, dbIntegrationColorModelTypetype);
Description
Sets the value of integration color model constraint for the specified cellview. Possible values are any, or locked.
Arguments
|
Integration color model to be set. |
Return Value
dbSetColorModel
Boolean
dbSetColorModel( dbCellViewIdcellViewId, dbColorModelTypetype);
typedef enum dbColorModelType {
dbcAnyColorModel=0,
dbcLayerBasedColorModel=1,
dbcLockedColorModel=2
} dbColorModelType;
Description
Sets the value of color model constraint for the specified cell view. Possible values are any, layerBased, or locked.
Arguments
|
Color model to be set. |
Return Value
|
Returns |
dbGetShapeColorLockType
dbColorLockType
dbGetShapeColorLockType(
dbShapeId shapeId
);
Description
Returns the color lock type assigned to the specified shape. If the shape is not locked, unlocked is returned. By default, dbcUser lock type is assigned to locked shapes.
Arguments
Return Value
Example
dbShapeId shape = dbCreateRect(...);
dbSetShapeColor(shape "mask1Color");
assert(dbGetShapeColorLockType(shape) == dbcUnlocked);
dbSetShapeColorLocked(shape TRUE);
assert(dbGetShapeColorLockType(shape) == dbcUser);
dbSetShapeColorLockType(shape dbcSystem);
assert(dbGetShapeColorLockType(shape) == dbcSystem);
dbSetShapeColorLockType(shape dbcUnlocked);
assert(dbGetShapeColorLockType(shape) == dbcUnlocked);
assert(!dbIsShapeColorLocked(shape));
dbSetShapeColorLockType
Boolean
dbSetShapeColorLockType( dbShapeIdshapeId, dbColorLockTypelockType);
Description
Sets the color lock type for the specified shape.
Arguments
Return Value
|
Returns |
|
Example
dbShapeId shape = dbCreateRect(...);
dbSetShapeColor(shape "mask1Color");
assert(dbGetShapeColorLockType(shape) == dbcUnlocked);
dbSetShapeColorLocked(shape TRUE);
assert(dbGetShapeColorLockType(shape) == dbcUser);
dbSetShapeColorLockType(shape dbcSystem);
assert(dbGetShapeColorLockType(shape) == dbcSystem);
dbSetShapeColorLockType(shape dbcUnlocked);
assert(dbGetShapeColorLockType(shape) == dbcUnlocked);
assert(!dbIsShapeColorLocked(shape));
dbGetViaLayerColorLockType
dbColorLockType
dbGetViaLayerColorLockType(
dbViaId viaId,
dbViaLayerType layer
);
Description
Returns the color lock type assigned to the specified via layer.
Arguments
Return Value
Example
dbViaId via = dbCreateStdVia(...);
dbViaLayerColorInfo l1 = { dbcShift1ColorControl, FALSE };
dbSetViaColorInfo(via l1 NULL NULL);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcUnlocked);
dbSetViaColorStateLayerLocked(via dbcLayer1ViaLayer TRUE);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcUser);
dbSetViaLayerColorLockType(via dbcLayer1ViaLayer dbcSystem);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcSystem);
dbSetViaLayerColorLockType(via dbcLayer1ViaLayer dbcUnlocked);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcUnlocked);
assert(!dbIsViaColorStateLayerLocked(via dbcLayer1ViaLayer));
dbSetViaLayerColorLockType
Boolean
dbSetViaLayerColorLockType( dbViaIdviaId, dbViaLayerTypelayer, dbColorLockTypevalue);
Description
Sets the color lock type for the specified via layer.
Arguments
Return Value
Example
dbViaId via = dbCreateStdVia(...);
dbViaLayerColorInfo l1 = { dbcShift1ColorControl, FALSE };
dbSetViaColorInfo(via l1 NULL NULL);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcUnlocked);
dbSetViaColorStateLayerLocked(via dbcLayer1ViaLayer TRUE);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcUser);
dbSetViaLayerColorLockType(via dbcLayer1ViaLayer dbcSystem);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcSystem);
dbSetViaLayerColorLockType(via dbcLayer1ViaLayer dbcUnlocked);
assert(dbGetViaLayerLockType(via dbcLayer1ViaLayer) == dbcUnlocked);
assert(!dbIsViaColorStateLayerLocked(via dbcLayer1ViaLayer));
MPT Technology File Functions
This section describes the following MPT technology file functions:
- techGetIntegrationColorModel
- techGetLayerNumColorMasks
- techGetStdViaDefCutColoring
- techGetTechCutColoring
- techIsStdViaDefCutColoringSet
- techSetIntegrationColorModel
- techSetLayerNumColorMasks
- techSetStdViaDefCutColoring
- techSetTechCutColoring
techGetIntegrationColorModel
Boolean
techGetIntegrationColorModel( techFileIdtechfileId, techIntegrationColorModelType *type);
typedef enum techIntegrationColorModelType {
techcAnyIntegrationColorModel=0,
techcLockedIntegrationColorModel=1
} techIntegrationColorModelType;
Description
Returns the value of integration color model constraint for the specified technology file. Possible values are any or locked.
Arguments
Return Values
|
Returns |
techGetLayerNumColorMasks
unsigned int
techGetLayerNumColorMasks( techFileIdtechId, techLayerNumlayerNum);
Description
Returns the number of allowed color masks on the specified layer. The return value 0 indicates coloring is not supported on the specified layer.
Arguments
Return Values
|
Returns the number of allowed color masks on the layer ( |
techGetStdViaDefCutColoring
techCutColoringType
techGetStdViaDefCutColoring(
techViaDefId viaDefId
);
Description
Returns the cut coloring pattern used for the cut patterns created for the specified StdVia.
Arguments
Return Values
|
Returns the cut coloring pattern on the specified |
techGetTechCutColoring
techCutColoringType
techGetTechCutColoring(
techfileId techfile
);
Description
Returns the default cut coloring pattern used for the cut patterns created for all StdVias defined in the technology. This function returns the checkerboard pattern by default if the cut pattern coloring is not explicitly specified.
Arguments
Return Values
|
Returns the default cut coloring model for |
techIsStdViaDefCutColoringSet
Boolean
techIsStdViaDefCutColoringSet(
techViaDefId viaDefId
);
Description
Indicates whether the cut coloring pattern has been explicitly set on the specified StdViaDef.
Arguments
Return Values
|
Returns |
techSetIntegrationColorModel
void
techSetIntegrationColorModel( techFileIdtechfileId, techIntegrationColorModelTypetype);
typedef enum techIntegrationColorModelType {
techcAnyIntegrationColorModel=0,
techcLockedIntegrationColorModel=1
} techIntegrationColorModelType;
Description
Sets the value of the integration color model constraint for the specified technology file. Possible values are any or locked.
Arguments
Return Values
techSetLayerNumColorMasks
Boolean
techSetLayerNumColorMasks( techFileIdtechfileId, techLayerNumlayerNum, unsigned intnumColorMasks);
Description
Assigns the number of allowed color masks on the specified layer. The valid color masks that can be set are 0, 2, and 3. If you try to set the color mask number to a value 1 or greater than 3, the function results in an error. This function does not set the attribute on the DFII system reserved layers.
Arguments
Return Values
|
Returns |
techSetStdViaDefCutColoring
Boolean
techSetStdViaDefCutColoring( techViaDefIdviaDefId, techCutColoringTypetype);
Description
Sets the cut coloring pattern to be used for the cut patterns created for the specified StdVia.
Arguments
Return Values
|
Returns |
techSetTechCutColoring
Boolean
techSetTechCutColoring( techfileIdtechfile, techCutColoringTypetype);
Description
Sets the default cut coloring pattern to be used for the cut patterns created for all StdVias defined in the specified technology file.
Arguments
|
Cut coloring pattern to be set. |
Return Values
|
Returns |
Return to top