ccORE
ccORE(
[ ?rule g_rule ]
[ ?sourceCellView o_sourceCellView ]
[ ?destinationCellView o_destinationCellView ]
[ ?filterLPP l_filterLPP ]
[ ?stopLevel x_stopLevel
[ ?parameters l_parameters ]
[ ?loadContext t_loadContext ]
[ ?saveContext t_saveContext ]
[ ?saveResult s_saveResult ]
[ ?trace g_trace ]
)
=> t
Description
Evaluates Optical Rule Engine (ORE) expressions specified in a file or a SKILL list. Expressions are evaluated on the source cellview and the resulting markers and shapes are stored in the source cellview or optionally in the destination cellview. The evaluation can be limited only to shapes on the specified layer-purpose pairs and down to the specified level of hierarchy.
The default values defined in the expressions can be overridden by the specified parameter values. The ORE context can be saved at the end of the run under a specified name and loaded at the beginning of the next run by referring to the same name. The evaluation of ORE expressions can optionally be traced and the list of ORE objects resulting from them saved in a SKILL variable.
Arguments
|
?rule g_rule
|
t_fileName | (g_expression...)
Name of the file containing the ORE expressions or a list of ORE expressions, where each g_expression can be a string, a number, a variable, or a list containing the name of an ORE function and expressions representing the values of its arguments:
g_expression : t_string | n_number | s_variable | (s_function [ g_expression... ])
|
|
?sourceCellView o_sourceCellView
|
|
|
ID of the source cellview defining the ORE relations 'design', 'shape', and 'cell'. The source cellview must be readable.
|
|
?destinationCellView o_destinationCellView
|
|
|
ID of the destination cellview in which ORE markers and shapes are created. The destination cellview must be writable.
The default destination cellview is the source cellview.
|
|
?filterLPP l_filterLPP
|
|
|
((t_layer t_purpose)...)
List of layer-purpose pairs of shapes to be included in the ORE relation 'shape'.
The default is to include shapes on all layer-purpose pairs.
|
|
?stopLevel x_stopLevel
|
|
|
Number of hierarchy levels of shapes and cells to be included in the ORE relations 'shape' and 'cell'. The value 0 corresponds to the shapes only in the source cellview without the cell instances inside.
The default is to include shapes and cells on all hierarchy levels.
|
|
?parameters l_parameters
|
|
|
((s_parameter g_value) ...)
List of parameter values overriding the default values defined in g_rule, where s_parameter is the parameter name and g_value can be a number, a string, a Boolean, or a list containing the name of an ORE function and expressions representing the values of its arguments:
g_value: n_number | t_string | b_boolean | (s_function [ g_expression... ])
|
|
?loadContext t_loadContext
|
|
|
Name of the ORE context that is loaded at the beginning of the ORE run.
|
|
?saveContext t_saveContext
|
|
|
Name under which the ORE context is saved at the end of the ORE run.
|
|
?saveResult s_saveResult
|
|
|
Name of the SKILL variable in which the list of ORE objects resulting from the evaluation of ORE expressions is saved at the end of the ORE run. Each ORE object is represented by a read-only SKILL defstruct.
|
|
?trace g_trace
|
A boolean specifying whether the trace of ORE expression evaluations is printed to CIW.
|
Value Returned
|
t
|
The specified ORE expressions are evaluated successfully.
An error is displayed if the operation fails.
|
Example
Derive a relation containing numbers from 1 to N in tuples of order 1, overriding the default parameter value N=1 by N=3 and storing the result in the variable ore.
ccORE(?rule '((expand ns (ns) (transform (d) design ((sequence N))))) ?parameters '((N 3)) ?saveResult 'ore)
=> t
Print variable ore containing the derived relation
ore
=> (ccORERelation@0x278f7b00)
Print tuples contained in the derived relation
ore~>tuples~>components
=> (((ccORENumber@0x278f7a70) (ccORENumber@0x278f7aa0) (ccORENumber@0x278f7ad0)))
Print values of the components of the tuples in the derived relation.
ore~>tuples~>components~>value
=> (((3.0) (2.0) (1.0)))
Related Topics
SKILL ORE Object Representation
Curvy Core Optical Rule Engine Functions
Optical Rule Engine
Return to top