Product Documentation
Virtuoso Interactive and Assisted Routing User Guide
Product Version IC23.1, September 2023

7


Using Assisted Routing Commands

This chapter describes the assisted routing commands.

Point to Point Routing

Point-to-point routing is available in Virtuoso Layout Suite XL and higher tiers.

The Point to Point command is an interactive routing command that automatically generates routing between two digitized points in a given cellview. The two specific locations can be the two click points. The two points can overlap a pin, instPin, pathSeg, path, existing wires or vias, or be in empty space. The Point to Point command uses the second digitized point to start the consecutive Point to Point command. A point-to-point route completes only when you double-click or press Enter.

Point-to-point routing is an acceleration of interactive wire editing when creating short local connections, while also allowing you to maintain tight control of the routing. Long connections can be broken down into several shorter point-to-point connections or can be completed automatically using the Automatic Routing command to create routing that is optimal in a global perspective.

By default, Point to Point uses all available layers in the Wire default constraint group. You can limit the layer range through the Wire Assistant.

The Point to Point routing command generates only orthogonal wires, which includes pathSegs and vias created in routes. Diagonal routing is not supported.

You can use the point-to-point router to make a connection to geometric data (paths or pathSegs not in routes).
The Display Levels settings Start and Stop control the hierarchy depth for point-to-point routing.

To create point-to-point wiring:

  1. Launch Layout XL or a higher tier of the layout suite.
  2. From the design window, select Create – Wiring – Point to Point or click on the icon on the Create toolbar.
    You are prompted to click at the first location.
  3. Press F3 to open the Point to Point Form.
  4. Specify a net name for the wire if you are starting from a point in open space.
    When starting from a pin or shape that has connectivity, the net name of the pin or shape is automatically picked.
    For more information about selecting the starting and ending targets, see Finishing a Trunk.
    You can use the options on the context-sensitive menu to change the width of the wire to match the width of the starting pin. Right-click in the cellview to display the Point to Point Shortcut Menu Commands. See Setting Point to Point Wires to Match Pins.
    You can also configure Point to Point settings using options in Point to Point and Automatic Section sections in the Wire Assistant.
  5. If required, you can override the default width by specifying a new value in the Width field.
  6. Use the Top and Bottom cyclic fields in the Routing column to limit the routing layers to a subset of the full range of metal and poly layers.
    Taper layers can be excluded or included in the routable layer range. However, if a layer, such as poly, is excluded and a poly pin is set up in such a way that the router cannot ascend to metal1 immediately at the pin through a metal1-poly via, the router will fail to connect to the poly pin. For more information about taper layers, see virtuosoDefaultTaper.
  7. Set up the valid and taper vias using the Vias buttons.
  8. Select the Connection Type. Exact Location creates routing between the digitized points. Shortest Connection creates routing as the shortest connection between the digitized points using any pre-existing wires.
  9. In the cellview, click on a pin or a routing element such as a pathSeg, path, or via. Optionally, you can click in an empty area of the design. You are prompted to click at the next location.
    A flightline is drawn from the clicked point to the closest target on the specified net.
  10. Click on subsequent points.
    Routing is generated between consecutive digitized points.
    After you digitize the second or more points:
    • The Net Name field in the Point to Point Form becomes uneditable.
    • You can edit Routing Layers. If editing the layer limit results in making the previous point-to-point route invalid, the Point to Point command creates stacked vias between the previous click point and the valid routing layer.
  11. To specify the ending location of the wire, double-click or press Enter. The ending location can be a pin or a routing element such as a pathSeg, path, or via. Optionally, you can click in an empty area of the design. A highlighted line is displayed to show the connection between the first clicked point and the current pointer location.
    This completes a point-to-point route. You are prompted to specify a new starting location for the Point to Point command.
    Ensure that the start and end points of the route are within the P&R boundary because routing is not allowed outside the P&R boundary.
    The Point to Point command automatically stops for the route if:
    • While routing an incomplete net, you tap a shape (pin/route) that completes the net.
    • While routing a complete net, you tap a shape on the net.
    • No net is being routed (starting from empty space or unassigned shapes) and you tap a shape on a complete net.

    Routing paths are found in empty areas around objects with valid spacing rules. No pushing is performed to make room for routing.
  12. To end the command, press Esc or click Cancel in the Point to Point Form.
The point-to-point router does not follow minEndOfLine spacing in cases where the wire is floating and consequently forms an incomplete connection, as the data is still in the midst of changes.

If the point-to-point router cannot complete a route and the Interactive Edit mode is set to Post-edit or Notify in the DRD Options form, the router forces a route creation with violations. The router also issues a warning message to indicate that there were violations and that you can run Verify – Design to view the markers for the violations. This enables you to analyze the problem areas where the router could not produce a clean route.

If the point-to-point router cannot complete a route and DRD Interactive Edit mode is set to Enforce, a warning message is issued to indicate if the router is stuck at the start or end point or pin or if there is insufficient space to complete routing.

The point-to-point router does not support track patterns and routing grids. The routing is performed on the manufacturing grid.

There is no color assigned to the routing created by point-to-point router even if you have WSPs that are defined with color information. In order to have color from WSPs, you need to enable coloring before running the point-to-point routing.

Setting Point to Point Wires to Match Pins

You can use the options on the Use Width command on the Point to Point Shortcut Menu Commands to set point-to-point wire widths to match pins. The selected match pin width applies to all applicable routing layers of the current effective constraint group, where it does not violate the corresponding minWidth and maxWidth constraints. The width change is not implemented if it introduces a clearance violation.

The point-to-point pin matching option remains effective throughout the entire layout session. Point-to-point requires two clicked points. When the pin matching option is on, the width of the first pin selected is used. The object selected must be a pin, otherwise the width constraints in the current effective constraint group are applied.

Supporting Track-based Routing

Using the assisted routing commands, such as point to point, you can now perform routing on track grids. To enable the assisted routing commands for track-based routing, the following conditions must be satisfied:

Finishing a Trunk

The Finish Trunk command on the Create Bus and Create Wire context-sensitive menu automatically converts all the pathSegs except for the first and the last pathSeg into trunks, regardless of whether they are connected to a pin or not. The first and the last pathSeg is considered as a regular pathSeg if it is connected to a pin at one end and to a trunk at the other end. Else, it is converted to a trunk. The default bindkey for running the Finish Trunk command is 2. For more information, see Using the Finish trunk Command in the Virtuoso Space-based Router User Guide.


Return to top
 ⠀
X