Product Documentation
Virtuoso Layout Suite SKILL Reference
Product Version IC23.1, November 2023

leRegAreaEstimator

leRegAreaEstimator( 
s_functionSymbol
t_functionAlias 
l_legalObjectTypes
[ l_parameterNameValuePairs ]
[ t_runMode ]
) 
=> t / nil

Description

Registers a particular area estimation function. This function is part of area estimation consolidation. The name of the estimator that will appear in the cyclic Area Estimator field in the Create Cluster Boundary form, and the function the software will invoke when you click the Estimate button on the form. While searching for available area estimators, the applications/UI code should know the requirements for object types; the application provides database IDs and executes the area estimator in direct or deferred mode.

Arguments

s_functionSymbol

User-defined function name.

t_functionAlias

Text string specifying a simple display name for a cyclic list in the graphical user interface.

l_legalObjectTypes

List of legal object types for which this function will work. The objects listed act as search keys for commands to filter out the list of relevant estimators. Valid Values: ‘cellview, ‘cluster, ‘group, ‘inst

l_parameterNameValuePairs

(Optional) List of name-value pairs, where name specifies parameter name and value is the default value. Only simple the data types int, float, text, and boolean are supported. Parameters might be required internally by the area estimator for area calculation formulae.

t_runMode

Text string specifying how to call the area estimator. When run mode is "direct", all information required for the area estimator is present; it can be run and the area value can be viewed. When the run mode is "deferred", the user wants to set the area estimator and apply the parameters; all this information is stored and called later when all the information is available. If no run mode is specified, this function can be run both in direct and deferred mode.

For example, in direct mode, when the input is a Schematic cellview ID, the area estimator traverses the entire hierarchy to output an area. In deferred mode, when the input is a Physical Layout cellview ID, the area calculation is deferred until a later step, such as the netlisting step of GFS. Once the physical hierarchy is present, area estimation can be called.

Valid Values: "direct" or "deferred"

Value Returned

t

Returns t if the function was successful.

nil

Returns nil if the function was not successful.

Example 1

leRegAreaEstimator(’myFunction 
        "simpleAreaEst" 
’(’cluster)
’((pinAreaFactor 10.0) (allowPinArea nil))
"direct"
)

The simpleAreaEst alias is registered for the cluster object type, for the area estimator function, which must be called in direct mode, with the following signature:

myFunction(ID @optional (pinAreaFactor 10.0) (allowPinArea t))

Example 2

leRegAreaEstimator(’myComplexFunction
        "complexAreaEst"
’(’cellView ’cluster)
’((contactAreaFactor 1.0) (param t))
"deferred"
)

The complexAreaEst alias is registered for cellview and cluster object types for the area estimator function, which must be called in deferred mode, with the following signature:

myComplexFunction(ID @optional (contactAreaFactor 1.0) (param t)

Return to top
 ⠀
X