Product Documentation
Virtuoso Space-based Router Command Reference
Product Version IC23.1, September 2023

Setting Custom Tapering

To set a custom taper, you create a constraint group and assign it to a net or term. Then you set taper constraints and taper window constraints in the constraint group. If any constraint is not set in the constraint group, the value for the constraint is taken from the fallback sequence in the hierarchy.

To ensure that settings are properly saved, you must specify the appropriate constraint group type for the object type: nets or terms.

For more information on how constraint group types can be assigned to terms and nets, refer to the Search Order for Taper Constraints.

If a taper constraint group is not assigned to a term, the term will inherit taper constraints from the net’s inputtaper or outputtaper constraint group, as appropriate for the pin type, and depending on whether these are assigned to the net. Otherwise, the term inherits constraints from the default taper constraint group, which is the global net default route spec (typically LEFDefaultRouteSpec).

For custom tapering:

  1. Create a constraint group using create_constraint_group.
    create_constraint_group -name s_taperGroupName 
  2. Assign the new constraint group as either inputtaper or outputtaper (for nets), or taper (for instance terminals or nets) using set_constraint_group.
    For example, the following command sets the input taper group for a bit net:
    set_constraint_group -net s_netName -inputtaper s_taperGroupName
    The following command sets the output taper group for a bit net:
    set_constraint_group -net s_netName -outputtaper s_taperGroupName
    The following command sets the taper group for pins in a set:
    set_constraint_group -set $setOfInstTermsAndNets -taper s_taperGroupName
  3. (Optional) Using set_constraint, specify the taper window using one of the following methods:
    • To taper to the first via or bend from instance pins or top-level pins, set the taperToFirstVia constraint to true.
    • To specify a taper window, set these constraints:
      • maxTaperWindow or its OpenAccess equivalent, oaTaperHalo, to specify the maximum distance from the pin where tapering must start, if tapering is needed. If both oaTaperHalo and maxTaperWindow are given, oaTaperHalo is used.
      • minTaperWindow to force tapering and specify the minimum distance from the pin where tapering must occur.

    These constraints are only recognized in a taper route spec. The default is 10 tracks from the pin, with no minimum distance required.
    Taper Window Constraints
  4. Specify the taper constraints, as needed:
    • minWidth, minSpacing, and minNumCut (use set_layer_constraint)
    • validRoutingLayers and validRoutingVias (use set_constraint)

Related Topics

Using Tapers

Setting Pin Width-based Tapering

Removing Custom Tapers


Return to top
 ⠀
X