Re-routing & Rearranging Existing Routes

Now reading version 3.1. For the latest, read: Re-routing & Rearranging Existing Routes for version 4

This documentation page references Altium NEXUS/NEXUS Client (part of the deployed NEXUS solution), which has been discontinued. All your PCB design, data management and collaboration needs can now be delivered by Altium Designer and a connected Altium 365 Workspace. Check out the FAQs page for more information.

 

Parent article: The Routing

Routing a board can be a complex and time-consuming process as you work to position the components and complete the routing - move that component slightly, shove that routing, re-route those critical nets to avoid potential cross-talk, now see if that bus can be routed through that area, and so on. As you route your board, you will be constantly modifying routing that you have already done.

There are two approaches to modifying the routing; you can either reroute, or re-arrange

Rerouting is ideal when the new route path is more complex than simply moving a few track segments. Rerouting is performed in the same way as the initial routing using the Interactive Routing (or Interactive Differential Pair Routing) command - when you complete the new route path the old loop of redundant track segments is removed.

Alternatively, you can re-arrange the routing. To re-arrange existing routing, click and hold on a track segment then drag it to its new location. Connected track segments will remain connected at the angle they were previously connected - a behavior called interactive sliding. Interactive sliding also supports the Conflict Resolution Modes, including Push, Hug and Push, and Ignore.

Move - to move an object without regard to other objects that connect to it.

Drag - to move an object and have any connected objects remain connected to it. The connected objects may or may not retain their original placement angle.

Slide - to move a routing object and have the connected objects remain connected, with those objects retaining their original placement angle.

As well as using one of the Route » Un-Route commands to remove existing routing, it can often be quicker to select the track segments and delete them. Check out the Strategies for Selecting the Routing section for tips and techniques on selecting routing.

Reroute an Existing Route

  • There is no need to un-route a connection to redefine its path; simply click the Interactive Routing button on the Active Bar ( Interactive Routing button on the Active Bar) and start routing the new path.
  • The Loop Removal feature will automatically remove any redundant track segments (and vias) as soon as you close the loop and right-click to indicate you are done.
  • You can start and end the new route path at any point, swapping layers as required.
  • You can also create temporary violations by switching to Ignore Obstacle mode (as shown in the video below), which you later resolve.

A simple animation showing the Loop Removal feature being used to modify existing routing.

Rearrange Existing Routes

  • To interactively slide or drag track segments across the board, click, hold and drag as shown in the video below.
  • The default dragging behavior is configured on the PCB Editor - Interactive Routing page of the Preferences dialog.
  • The PCB editor will automatically maintain the 45/90 degree angles with connected segments, shortening and lengthening them as required.

A simple animation showing track dragging being used to modify the existing routing.

Track Sliding Tips

  • While sliding a route you can move the cursor and hotspot snap it to an existing, non-moving object such as a pad. Use this to help align the new segment location with an existing object and avoid very small segments being added.
  • During sliding, one of the Routing Conflict Resolution modes applies. Press Shift+R to cycle through the modes as you drag a track segment.
  • To convert a 90 degree corner to a 45 degree route, start dragging on the corner vertex.
  • The interactive sliding engine includes algorithms specifically for dragging a vertex (corner), configure the Vertex Action in the Preferences dialog, or in the Interactive Sliding mode of the Properties panel. Press the Spacebar to cycle through the modes as you drag a vertex.
  • To break a single segment, select the segment first, then position the cursor over the center vertex to add in new segments.
  • Existing pads and vias will be jumped, or vias will be pushed if necessary and possible when the Allow Via Pushing option is enabled.   
  • Interactive sliding supports non-orthogonal routing.
  • The default behavior is to drag (slide) tracks (selected or unselected). If you need to move a segment without maintaining its connection to the attached segments, change the default dragging behavior using either the Unselected via/track or the Selected via/track options on the PCB Editor - Interactive Routing page of the Preferences dialog.

Modifying T-Junctions

There is specific support for interactively modifying a T-junction - click and drag on the junction point to modify a T-junction.

Examples of the T-Junction dragging capabilities.
Examples of the T-Junction dragging capabilities.

Options that Affect Routing, Rerouting and Interactive Sliding

There are a number of options that impact the rerouting behavior, these options are configured in the PCB Editor - Interactive Routing page of the Preferences dialog.

PCB editor Interactive Routing preferences

  • The Automatically Remove Loops option must be enabled to perform rerouting.
  • As with Interactive Routing, the Current Routing Conflict Resolution mode will be used.
    • Use the checkboxes to enable only those modes you want to be available in the Current Mode list.
    • Press Shift+R to cycle through the enabled modes as you reroute.
  • The Automatically Terminate Routing option is useful. If it is enabled, as soon the new route connects to the existing routing, the redundant loop is removed (as shown in the video above). If this option is disabled, the loop is removed when you right-click to release the current route. The option can work against you when you need to place new routing on top of the existing routing (perhaps overlapping), in this situation it can be better to disable it.
  • There are situations when you may want to create loops, for example, power net routing. If necessary, Loop Removal can be disabled for an individual net by editing that net in the PCB panel. To access the option, set the panel to Nets mode, then double-click on the net name in the panel to open the Edit Net dialog.

Interactive Routing and Interactive Sliding Panels

Whether you're interactively routing a connection or dragging an existing route to make way for more routing, the same set of routing technolgies are applied. This section summarizes the options available in the Interactive Routing and the Interactive Sliding modes of the Properties panel, press Tab as you work to open the Properties panel in the relevant mode. After changing the settings, click the  icon in the middle of the screen to return to routing or sliding. The default settings for these options are configured in the PCB Editor - Interactive Routing page of the Preferences dialog.

Strategies for Selecting the Routing

Selection is a core activity in all areas of the design process, including working with the routing. Whether you're about to gloss or you want to delete some routing, the routes need to be selected first.

Select Within or Select Touching

In the PCB editor, selection can either be objects that are completely within the selection rectangle, or touching the selection rectangle. This is controlled by the direction you move the mouse as you draw the selection rectangle:

Click-and-drag from left to right, to select objects that are completely within the selection rectangle Select Within - click and drag a blue rectangle from left to right to select all visible, unlocked objects that are completely within the selection rectangle.
Click-and-drag from right to left, to select objects that are touched by the selection rectangle Select Touching - click and drag a green rectangle from right to left to select all visible, unlocked objects that touch the selection rectangle.

Extending the Selection

A common situation is needing to select many objects that are touching, for example, the track segments in a routed net, or the connection lines in an unrouted net. It is relatively easy to select a set of track segments that run parallel to each other using the Select Touching technique just described, however, interactively selecting entire routes can be difficult.

This can easily be achieved by selecting one or more track segments and then pressing Tab to extend the selection to include touching track segments.

When you press Tab:

  • The first time to select all connected routing objects on the same layer
  • The second time to select all connected routing objects on all layers
  • The third time to select all objects on that net in the workspace (skipped if there are no unconnected net objects)
  • The forth time to return to the intial selection set

Demonstration of using Tab to change the selected routes.

Hold Alt as you right-drag to select touched connection lines, then press Tab to extend the selection to include other connection lines in those nets.

Other Useful Selection Strategies

The Select submenu includes a number of routing-specific selection commands, press the S shortcut key to display it, the press the underlined letter to activate the required command.

The Backspace key also has a useful behavior that can help remove selectively remove routing segments. If an individual track segment is selected, and that segment only touches one other segment, then when Backspace is pressed the selected segment will be deleted and the touching segment will become selected. Press Backspace again, that segment deletes, and the touching one selects. Continue to press Backspace to unroute back to the required location.

Note that if the selected segment has more than one segment touching it, no other segments will be selected when Backspace is pressed.

Use the Backspace key to remove a segment, and then select the last-touching segment.Use the Backspace key to remove a segment, and then select the last-touching segment.

Routing-Aware Move Component

While routing the board, it is not uncommon for the designer to need to adjust the location of a routed component to create space for new routing. To help with this, the PCB editor includes a routing-aware move component feature. The feature is enabled via the Component Re-route checkbox, in the PCB Editor - Interactive Routing page of the Preferences dialog. Essentially, the feature will break the routing at the component pads, fanouts or escape routes, and then attempt to re-route those broken connections once the moving component(s) has been placed. 

A key requirement of the feature is to preserve fanouts and escape routing. To support this, the Shift+Tab shortcut is used to cycle through the possible sets of objects being moved, as detailed below.

During the move process, the options can be controlled using the following shortcuts:

  • Component Re-route Mode (Shift+R) - toggles the re-route mode on and off. After the moving set has been released, the software will attempt to re-route the component(s) to reconnect any broken nets. Use the Shift+R shortcut to disable the Component re-route option in Interactive Routing page of the Preferences dialog. The current Component Re-route status is displayed in the Heads Up display and on the Status bar. 
  • Change Component Selection (Shift+Tab) - while dragging, the set of objects being moved can still be changed. Press Shift+Tab to cycle through the following selection sets:
    • Components only, then
    • Components +Via Fanouts +Escapes +Interconnects, then
    • Initial selection set (if different from the previous two), then
    • Back to Components only.
  • The Move component with relevant routing option behaves as follows:
    • Enable the option to start the move component action with the relevant routing (Components +Via Fanouts +Escapes +Interconnects), use the Shift+Tab shortcut to cycle the selection set as described above. 
    • Disable the option to start the move component action with components only selected. Because the set of relevant routing objects is detected prior to the move commencing, it is not possible to use Shift+Tab to cycle through the selection set when the option is disabled.

When the Component Re-route option is enabled, connected routes are restored after the moving component is placed.

Improving the Quality of the Routing

The PCB editor includes powerful tools for improving the quality of existing routing. Whenever you move the cursor to define a new route path, all of the proposed routing is automatically glossed. Glossing will attempt to reduce the path length, and also improve the shape of corners and reduce their number, generally resulting in neater routing created from fewer segments.

Glossing has three settings; Off, Weak and Strong. Use the Ctrl+Shift+G shortcut to cycle through the settings during interactive routing or interactive sliding, or press Tab to open the Properties panel and select the setting. Along with the current Gloss Effort setting, Glossing also obeys these settings:

  • Corner Style
  • Hugging Style (during Interactive Sliding and also when the Gloss Selected or Retrace Selected commands are run)
  • Miter Ratio
  • Min Arc Ratio

Using these options, Glossing controls how tightly a corner is created and how the curved shape is formed in the route around a curved obstacle.

Existing routing can be glossed by running the Route » Gloss Selected command. Use this to your advantage to perform design changes, such as converting mitered corners to arcs, by configuring the Corner Style before running the command.

Existing routing can also be retraced (Route » Retrace Selected). Retrace assumes the overall geometry is satisfactory, focusing instead on verifying that the routing meets the design rules. Where Gloss preserves the existing trace width and pair gap, Retrace changes them to Preferred. Retrace is an excellent tool to use when a design rule has changed, and that change needs to be applied to existing routing.

Learn more about Post-Route Glossing and Retracing

Build your Interactive Routing proficiency

See Also

 

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Content