Product Documentation
Virtuoso Unified Custom Constraints SKILL Reference
Product Version IC23.1, November 2023


Contents

1

Custom Constraints Functions

Constraint Integration and Third Party Tools

Constraint Cache

Input and Output Parameters for Custom Constraints Functions

cache
u_cache
u_constraint
parameter_value
parameter
parameter_list
constraint_member
design_object
design_object_name
member_list
design_object_list

Pre-Defined Symbols

design_object_type
parameter_type
constraint_type
parameter_key
member_key
name_key
axis_key
axis

Constraint Manager Assistant Customization SKILL Commands

ciAddHierarchicalNotes
ciAddLeadingSlash
ciAddProcessRules
ciAddRuleGroup
ciAddTrailingSlash
ciAllCellViewsInHierarchy
ciAxisCreate
ciAxisDelete
ciAxisExists
ciAxisListCon
ciAxisListParams
ciAxisReplaceParams
ciCacheCallbackRegister
ciCacheCallbackUnregister
ciCacheCallbackUpdate
ciCacheCellName
ciCacheConstraintCellName
ciCacheConstraintLibName
ciCacheConstraintViewName
ciCacheDiscardEdits
ciCacheFind
ciCacheGet
ciCacheGetAllNetNames
ciCacheGetCellView
ciCacheGetEnabledNotifications
ciCacheIsLayout
ciCacheIsModified
ciCacheIsWritable
ciCacheLCV
ciCacheLibName
ciCacheListAxesNames
ciCacheListCon
ciCacheListConstrainedObjects
ciCacheListConstrainedObjectNames
ciCacheListTemplates
ciCacheListTypeNames
ciCacheListTypes
ciCacheMakeEditable
ciCacheMakeReadOnly
ciCacheNeedRefresh
ciCacheNotifications
ciCachep
ciCachePurge
ciCacheSave
ciCacheTopCellName
ciCacheTopLibName
ciCacheTopViewName
ciCacheTransfer
ciCacheTransferSelection
ciCacheViewName
ciCheckConstraints
ciCombineInstNetsPins
ciConAppendOneMember
ciConBaseName
ciConCallbackIsRegistered
ciConCreate
ciConCreateExpanded
ciConDelete
ciConDeleteAll
ciConFind
ciConGetAxisName
ciConGetCache
ciConGetComment
ciConGetCreatedTime
ciConGetMembersOfType
ciConGetName
ciConGetNote
ciConGetOwner
ciConGetPriority
ciConGetStatus
ciConGetType
ciConIsInContext
ciConIsOutOfContext
ciConIsOverridden
ciConIsWritable
ciConListMembers
ciConListMemberNames
ciConListParams
ciConListParamNames
ciConListTemplates
ciConp
ciConRegisterCallback
ciConRemoveMembers
ciConResetAllParams
ciConResetParams
ciConSetAxis
ciConSetNote
ciConSetPriority
ciConSetStatus
ciConstraintsForType
ciConstraintLCV
ciConstraintViewLessp
ciConTypeHasNamedParameter
ciConUnregisterCallback
ciConUpdateCallback
ciConUpdateMemberParams
ciConUpdateMembers
ciConUpdateParams
ciConUprevCellBoundary
ciConVerify
ciConvertNestedNetClassToNetClassHierGroup
ciCreateFilter
ciCurrentPathIterator
ciDefaultParamToMatchFilter
ciDeleteModgenTopologies
ciDeleteRuleGroup
ciDeleteUnreferencedObjects
ciDesignLCV
ciEnableAutoConstraintNotes
ciExpandMembers
ciExpandName
ciFindOpenCellView
ciFindConsWithDuplicateMembers
ciFindOpenCellViews
ciGetCellTermDefaultNetName
ciGetCellView
ciGetCellViewForObjectPath
ciGetConnectedInsts
ciGetCustomFilterNames
ciGetDefaultNetName
ciGetFoundryRules
ciGetMatchParam2DList
ciGetMembersOfType
ciGetObjectCellView
ciGetOpenCellViews
ciGetRuleGroupByName
ciGetRuleGroupName
ciGetRuleGroups
ciGetWidgetProperties
ciHasCellAnyRegTerm
ciHaveSameBulkNets
ciHierCompareConstraint
ciHierCompareConstraints
ciHierUpdateConstraints
ciIsNetSuperType
ciLoadConfigXML
ciLoadConfigXMLFromString
ciLoadConstrFrom
ciLoadDotCadenceFiles
ciLoadIcon
ciLoadIcons
ciListEditors
ciListTypes
ciListProcessRules
ciLxComparisonReport
ciModgenMergeLayersFromArgs
ciModgenListFingerSplitCons
ciModgenRefreshStorage
ciModgenSplitFingers
ciModgenTemplateFingerSplitPreDestroy
ciObjectIsInContext
ciObjectListCon
ciObjectPathAndName
ciOpenCellView
ciOpenPanicCellView
ciPrintReport
ciPullConstraint
ciPullConstraints
ciPushConstraint
ciPushConstraints
ciRefreshCellView
ciRegisterConstraintEditor
ciRegisterCustomDeviceFilter
ciRegisterNetSuperType
ciRegTypeBindingParameter
ciRemoveConstrainedPinNetsFromRails
ciRemoveHierarchicalNotes
ciRemoveLeadingSlash
ciRemoveProcessRules
ciRemoveTrailingSlash
ciReopenCellView
ciReorderAssistants
ciResistorArrayUpdateRowColVal
ciResolveBulkNet
ciRunMatchingConstraintsGenerator
ciSelectedConstraints
ciSelectedTemplates
ciSetHaloOptions
ciSetHaloPolicy
ciSetMaxHaloGroupSize
ciSetModgenTopology
ciSetSymmetricAxes
ciSigTypeMatchesNetType
ciSimpleName
ciSortedOpenCellViews
ciTemplateAddCons
ciTemplateCreate
ciTemplateCreateDefinition
ciTemplateCreateExpanded
ciTemplateDefinitionExists
ciTemplateDelete
ciTemplateDeleteCons
ciTemplateFind
ciTemplateGetCache
ciTemplateGetComment
ciTemplateGetCreatedTime
ciTemplateGetDefName
ciTemplateGetName
ciTemplateGetNote
ciTemplateGetStatus
ciTemplateGetType
ciTemplateListCon
ciTemplateListParamNames
ciTemplateListParams
ciTemplatep
ciTemplateResetAllParams
ciTemplateResetParams
ciTemplateSetNote
ciTemplateSetStatus
ciTemplateSortParamDefs
ciTemplateUpdateParams
ciToFloat
ciTransferConstraintsInProgress
ciTypeBindingParameter
ciTypeDefBaseType
ciTypeDefVersion
ciTypeHasBindingParameter
ciTypeIsType
ciTypeIsUserDefined
ciTypeListCon
ciUniqueMembers
ciUnregisterAssistant
ciUnregisterConstraintEditor
ciUnregisterNetSuperType
ciUnRegisterTerm
ciUpdateHierarchicalNotes
ciUprevEAConstrs
ciUtilsAddNTimes
ciUtilsAddQuotes
ciUtilsBuildString
ciUtilsMakeUnique
ciUtilsRemoveNils
ciUtilsRepeatNTimes
ciUtilsReplaceNils
ciWithinConstraint

Circuit Prospector Assistant Customization SKILL Commands

ciActiveSameCellAndSizeIterator
ciAlignPinsOnCellSide
ciAPRCascodeIterator
ciAPRXYInstSymmetricIterator
ciBasicGetParamValue
ciBlockResistorArrayIterator
ciBuildModgenParams
ciBundleSignalsIterator
ciCanCGBeUsed
ciCascodeSeriesCurrentMirrorIterator
ciCategoryListFinderNames
ciClearNetSuperTypes
ciClusterBoundaryForCluster
ciCommonGateAndSourceIterator
ciCommonGateIterator
ciCommonSourceIterator
ciCPRegistrationFromLAM
ciCreateRoutePriorityCon
ciDeviceInfoGetRegisteredParams
ciDeviceInfoGetRegisteredTerminals
ciDeviceInfoRegisterParams
ciDeviceInfoRegisterTerminals
ciDeviceInfoRegistry
ciDeviceInfoRestoreDefaultParamNames
ciDeviceInfoRestoreDefaultTerminalNames
ciDeviceInfoTerminalsAreValid
ciEnableAssistant
ciEvaluateGeneratorArgs
ciExpandIteratedDeviceInfo
ciFindObjectInHier
ciGenerateConstraintGroup
ciGeneratorCheckInstsNetsPinsInstTerms
ciGeneratorForInstSymmetry
ciGeneratorForNetSymmetry
ciGetAction
ciGetConstraintGroupsEnum
ciGetCPSelectedResults
ciGetDeviceBulkTermName
ciGetDeviceInfo
ciGetDeviceNames
ciGetDeviceTermName
ciGetFinder
ciGetFirstDeviceTermName
ciGetFluidGuardRingDeviceEnum
ciGetGenerator
ciGetIterator
ciGetLAMComponentTypes
ciGetMappedDeviceNames
ciGetNetNames
ciGetNetSubTypes
ciGetNetSuperTypes
ciGetParamMapping
ciGetParamName
ciGetParamValue
ciGetParamValueOrDefault
ciGetParamValues
ciGetStructure
ciGetTechFile
ciGetTechMPPNames
ciGetTermNames
ciGuardRingForCluster
ciGuardRingForModgen
ciHaveSameParamValues
ciHierarchicalSeriesIterator
ciIgnoreDevice
ciInstGetSplitFingers
ciInstIterator
ciInstListSplitFingers
ciInstSetSplitFingers
ciInstsNetsPinsFromSelSet
ciInstTermIterator
ciIsDevice
ciIsNet
ciListAllCategoryNames
ciListAllFinderNames
ciListAllGeneratorNames
ciListAllIteratorNames
ciListAllStructureNames
ciListGeneratableConstraintGroups
ciMakeHierContext
ciMakeObjectInfo
ciMapParam
ciMapTerm
ciMatchedFingerWidth
ciMatchedParametersForCurrent_Mirror
ciMatchedParamsForInstanceSymmetry
ciMatchedParamsForSameSizeInstances
ciMergeParams
ciModgenForSameCellSizeAndBulk
ciMOSActiveLoadStructIterator
ciMOSCascodedCurrentMirrorStructIterator
ciMOSCascodedCurrentMirrorStructIterator2
ciMOSCascodeIterator
ciMOSCommonGateStructIterator
ciMOSCrossCoupledDifferentialPairStructIterator
ciMOSCrossCoupledQuadStructIterator
ciMOSCurrentMirrorStructIterator
ciMOSDifferentialPairStructIterator
ciMOSInverterStructIterator
ciMOSParallelStructIterator
ciMOSTransmissionGateStructIterator
ciNetIterator
ciNetNames
ciNetOnTerm
ciNetPredicates
ciNetRegexs
ciNextConName
ciNextObjName
ciNextTemplateName
ciNumTermsEQ2
ciOrientationForModgen
ciParallelNetResistorArrayIterator
ciParallelResistorArrayIterator
ciPinIterator
ciPlacerControlledWellGeneration
ciPrintMappedDefaultNetNames
ciPrintMappedDeviceNames
ciPrintMappedNetNames
ciPrintMappedParams
ciPrintMappedTerminals
ciRegisterAction
ciRegisterAssistant
ciRegisterConstraintGenerator
ciRegisterDefaultNetName
ciRegisterDevice
ciRegisterDevicesForPDKCategory
ciRegisterDynamicParamDef
ciRegisterFinder
ciRegisterIterator
ciRegisterNet
ciRegisterNetNames
ciRegisterNetPredicate
ciRegisterNetRegexs
ciRegisterStructure
ciRemoveDuplicateMembers
ciResolveNet
ciRunFinder
ciRunFindersAndGenerators
ciRunGenerator
ciRunPrecondition
ciSameCellIterator
ciSeparateInstsNetsPins
ciSeriesResistorArrayIterator
ciSetCMCGSKILLCallbacks
ciSetDefaultConstraintEditor
ciSetStructArgVal
ciSignalIterator
ciUnexpandDeviceInfo
ciUnexpandIteratedDeviceInfo
ciUnregisterConstraintGenerator
ciUnregisterIterator
ciVariantInfoForFingersAndFingerWidth
ciXYInstSymmetricIterator
ciXYNetSymmetricIterator
ciXYPinSymmetricIterator
ciXYSortInsts
ciXYSymmetricIterator

Rapid Analog Prototype Category (Circuit Prospector) Customization SKILL Commands

Customizing the RAP Finders/ Generators
Customizing the RAP Finders: New Functions
Customizing the RAP Finders for Modgens: MOS Current Mirror
Customizing the RAP Finders for Modgens: ciStructGeneratorExpressions-> pattern
Customizing the RAP Finders for Modgens: ciStructGeneratorExpressions -> guardRing

Constraint Generator Customization SKILL Commands

ciAddStructArg
ciCollectDeviceInfo
ciConvertParamsDPLToParams
ciConvertParamsToDPL
ciConvertToConArg
ciCreateGuardRing
ciCreateModgen
ciCreateModgenDummy
ciCreateModgenForStructure
ciCreateRoutingLayerEnumString
ciDeleteClusterMembersWithinModgens
ciDeleteGuardRing
ciDeleteStructArg
ciDeleteSymmetriesWithinModgens
ciExpandAndRepeatName
ciExtractRowNumber
ciFindDeviceArraysForDev
ciGenerateArrayChannelDesc
ciGenerateBestFitPattern
ciGenerateCascodedCurrentMirrorChannelDesc
ciGenerateCascodedCurrentMirrorPattern
ciGenerateCurrentMirrorChannelDesc
ciGenerateCurrentMirrorPattern
ciGenerateDiffPairChannelDesc
ciGenerateDiffPairPattern
ciGenerateLargeMfactorPattern
ciGetGuardRing
ciGetGuardRingMPPName
ciGetParamValFromParameters
ciGetRoutingLayer
ciGetRoutingLayers
ciGetRule
ciGetStructArg
ciGetStructArgs
ciGetStructGeneratorExpressions
ciGetStructPDKMult
ciGUIArgsToConArgs
ciHighestLevelNet
ciListStructGeneratorExpressions
ciListStructPDKMults
ciListStructTypes
ciListTemplateTypes
ciMemberIndexToModgenPatternSymbol
ciModgenDummyNetName
ciNumDevices
ciPadModgenPattern
ciRegexReplaceStructArgs
ciReinitStructTemplateDefs
ciRemoveSymmetricPinAlignments
ciReplaceStructArg
ciSaveConstraintGenerator
ciSetStructArgs
ciSetStructGeneratorExpressions
ciSetStructPDKMult
ciSortDeviceInfoByFingerWidth
ciSortDeviceInfoByMfactor
ciSortDeviceInfoByX
ciSortDeviceInfoByXY
ciSortDeviceInfoByY
ciSortDeviceInfoByYX
ciUnexpandPhysicalDeviceInfo
ciUpdateModgenParamsAndMembers
ciUtilsGetArgVal
ciUtilsMakeNumberRange
drvCheckLists
drvGetReviewInfo
drvListLayoutReviews
drvRegisterCheckLists
drvReviewSetCheckList
drvReportGenReport

Table Editor SKILL Commands

tedSaveCSV
tedSaveXML

Custom Constraints Functions: Examples

Print all Constraints on a Given Object (Sorted by Name)
Print Context Status on a Given Object
Print All Constraints (Sorted by Name) on all Objects (Sorted by Name)
Print In-Context Status for all Objects (Sorted by Name)
Print all Constraints Content (In Constraint Name Order)
Get an Axis Parameter
Get Parameters for Duplicating Constraints with Another Set of Members
Print a Report File with all Constraints in the Cache
Helper Functions for Sorting

2

CST Access SKILL Functions

Introduction

Constraint Functions

cstCreateConstraint
cstDeleteConstraint
cstFindCutClassConstraintByName
cstFindCutClassConstraintBySize
cstGetUnreferencedConstraints
cstGet1DTableValue
cstGet2DTableValue
cstGetTwoWidthTableValue
cstIsId

Constraint Group Functions

cstAddToConstraintGroup
cstCreateConstraintGroupIn
cstCreateConstraintGroupOn
cstDeleteConstraintGroup
cstFindConstraintGroupIn
cstFindConstraintGroupOn
cstFindFirstConstraint
cstGetConstraintGroups
cstGetDefaultConstraintGroupIdByName
cstGetDefaultConstraintGroupName
cstGetDefaultConstraintGroupNameById
cstGetFoundryCGName
cstGetFoundryConstraintGroup
cstSetDefaultConstraintGroupName

3

Design Intent Functions

ciAPRDIDeviceGroupIterator
ciAPRDINetIterator
ciCheckDINetHierConsistency
ciDevGroupBoxIterator
ciDIGetRegisteredIgnoredTerminals
ciDIHierConsistencyCheck
ciDIHierPushDown
ciDIHierPushDownDIWithPaths
ciDIHierPushUp
ciDIHierPushUpDIWithPaths
ciDiMinMaxVPropertyCallback
ciDiPostTransferHighCurrent
ciDiPostTransferMinMaxVoltage
ciDIRegisterIgnoredTerminals
ciDiReplaceOrAddPropertyGroupDef
ciDiReportGenReport
ciDIUpdateArrowDirections
ciResetDIImplementation
ciSetDIPropertyGroupDefs
ciTemplateChangeDIProfile
ciTemplateCreateDI
ciTemplateDIProfileName
ciTemplateDIPropDef
ciTemplateDIPropGroupDef
ciTemplateDIPropValue
ciTemplateIsKindOfDI
ciTemplateListDIProps
ciTemplateUpdateDIProps
ciUpdateObjPropsFromDI

Return to top
 ⠀
X