Constraint Group Operators
Constraint groups use an operator to determine how the constraints in the group are applied. There are three constraint group operators:
-
Precedence
Databases based on OpenAccess dataModel 3 or earlier use precedence to determine how multiple constraints in a constraint group apply. Databases based on dataModel 4 or later support a precedence type constraint group operator that duplicates the behavior of the earlier dataModels. The precedence type of constraint group operator requires that the first hard constraint found in the group must be met. If a soft constraint is found, it is enforced, if possible. Otherwise, the next constraint in the group is considered. Only one constraint in the group applies, and the first hard or soft constraint that is met satisfies the constraint group evaluation. If the first hard constraint found cannot be met, no further constraints in the group are considered. Although uncommon, it is possible for constraint groups using the precedence operator to have other groups as members. -
AND
The AND constraint group operator requires that all constraints in the group that apply to the situation must be met. Other constraint groups may not be included or nested in an AND constraint group. -
OR
The OR constraint group operator requires that only one constraint in the group that applies to the situation must be met. If a hard constraint cannot be met, the next constraint in the group is considered. Other constraint groups are not supported in an OR constraint group.
You must set the constraint group operator when you create the constraint group.
create_constraint_group -name s_name -opType {and|or|precedence}
If the operator is not specified, precedence is used.
Use the following commands for constraint groups:
- create_constraint_group creates a custom constraint group, route spec, or rule spec.
- assign_constraint_group assigns a constraint group to an object.
- assign_group_group assigns an interchild group-to-group constraint group to two net groups.
- unassign_constraint_group removes the constraint group from an object.
- set_constraint_group assigns route specs to constraint groups for the multispec of a net, a net group, a set of objects, or an area boundary.
- set_default_constraint_group sets a constraint group as the default.
Related Topics
Simplified Constraint Search Hierarchy
Return to top