Product Documentation
Virtuoso Space-based Router Constraint Reference
Product Version IC23.1, June 2023

forbiddenProximitySpacing

Specifies the spacing between two wire shapes on a given layer. This constraint is violated if there are two wire shapes on a given layer, which are spaced apart by a distance greater than or equal to a given minimum spacing and less than or equal to a given maximum spacing.

In addition, both wires are within a given distance from a wide wire shape on the same layer whose width is greater than or equal to a given minimum width and has a parallel run length with the two wires greater than the specified length.

This constraint was formerly known as forbiddenSpacingRange.

forbiddenProximitySpacing Quick Reference

Constraint Type

Layer

Value Types

RangeValue

Database Types

Design, Technology

Scope

design, foundry

Category

Spacing

Value Type

RangeValue

Specifies the spacing, in user units, between the two shapes that is considered illegal. Any spacing that falls within the range is forbidden.

For example, if RangeValue is "[minSpacing maxSpacing]", then any spacing where minSpacing <= spacing <= maxSpacing is illegal. For this example, spacing between the two shapes must be less than minSpacing or greater than maxSpacing.

Figure -1 forbiddenProximitySpacing Constraint

Required Parameter

width

Specifies that the constraint applies only for a wire with width less than this value in user units.

Type: Value

Optional Parameters

parallelRunLength

Specifies that the constraint applies only if the parallel run length (prl) between the two edges is greater than this value, in user units.

Type: Value

withinRange

Specifies that the constraint applies to the spacing between two wires if the distance from the wide wire to the gap between the two wires lies in the range specified by this range value, in user units. For example, if RangeValue is "[lowerWithinRange upperWithinRange]", then the constraint applies if the distance from the gap to the wide wire is lowerWithinRange<=distance<=upperWithinRange.

Type: RangeValue

Example

set_constraint_parameter -name width -Value 0.2 
set_constraint_parameter -name parallelRunLength -Value 0.1
set_constraint_parameter -name withinRange -RangeValue {"<=0.4"}
set_layer_constraint -constraint forbiddenProximitySpacing \
-layer m1 -RangeValue {"[0.07 0.09]"}

Specifies that two wires that are within 0.4 user units of a wire with width >= 0.2 user units and have a parallel run length > 0.1, must be < 0.07 or > 0.09 user units from each other.

Illustration for forbiddenProximitySpacing

Related Topics

Spacing Constraints

check_space


Return to top
 ⠀
X