ActiveRoute

Now reading version 17.1. For the latest, read: ActiveRoute for version 24

 

One of the most time consuming phases of board design is routing the nets. While the rules system handles the design constraints, such as the widths, via sizes, clearances, and so on, it is down to the designer to place the many thousands of track segments required to fully route a board.

Autorouters can ease this pain, but are generally regarded as inadequate, because:

  • They fail to correctly consider the myriad of subtle design constraints that a human designer instinctively applies as they route.
  • They take so long to fully configure that it is often more efficient to simply get on with routing the board interactively.
  • The cleanup can be such a long and difficult process that it is often more efficient to route the board interactively.

The holy grail of PCB routing is to quickly produce high quality results, that meet the design rules, under the control of the designer. This is the challenge that ActiveRoute sets out to achieve.

What is ActiveRoute?

ActiveRoute is an automated interactive routing technology that delivers efficient multi-net routing algorithms, applied to the specific nets or connections selected by the designer. ActiveRoute also allows the designer to interactively define a route path or Guide, which then defines the river along which the new routes will flow.

What ActiveRoute is Not

ActiveRoute is not an autorouter, it is a guided interactive router which focuses on clean, high-quality routing of a set of selected nets. Use ActiveRoute in the same way as you would approach the interactive routing task - choose the nets of interest, enable the layers you would like those nets routed on, think about the path they should follow, and route them.

If you select all of the nets on the board and ActiveRoute them, it is likely that you will be disappointed - ActiveRoute is not an autorouter, it cannot place vias and does not include power net routing strategies.

Setting up to ActiveRoute

ActiveRoute has access to the new Gloss feature (Route » Gloss Selected), which it runs automatically as part of the ActiveRoute process.

The most common reason for ActiveRoute to fail is not enough room for the track(s) to fit – it is important to make sure the width and clearance rules are correctly configured.

Selection Techniques

ActiveRoute needs to know which connections/nets you want to route - you do this by selecting them. Connection lines can be selected directly, or you can select an existing route object, such as a pin, track, via or component, to indicate which connections/nets you want to ActiveRoute.

Use the following key/mouse combinations to select the required objects:

To Select Use Mouse + Keys Outcome
Connections ActiveRoute will route the selected connections with the Preferred rule setting.
Existing routing ActiveRoute will route the connection attached to the selected track, using that track's width.
Component pads ActiveRoute will route all connections from the selected pads, with the Preferred rule setting.
Additional connections / nets + combinations shown above Add additional objects to the current selection.
Other objects in the net

First press of Tab adds other objects on layer(s) the selected object touches.

Second press of Tab adds all same-net objects on other layers.

Continue to press Tab to cycle through the available selection states.

Selected nets are routed at the Preferred width defined in the applicable Routing Width design rule. There is one exception to this, if the selected object is a dangling track stub, then that width is used.

Use the selection techniques to quickly select connections for routing, or deletion.

Performing an ActiveRoute

To perform an ActiveRoute:

Building Your Proficiency

  1. A key ingredient to ActiveRoute proficiency is becoming fluent with the shortcuts. The key sequences you will use most often are:
    • Alt+Click - to select an individual connection line.
    • Alt+Click&Drag - to select connections within an area, drag from right to left to select all touched connections, or left to right to only select what fits inside the selection rectangle. Press Tab to extend the selection to include other connections in the same net(s).
    • Ctrl+Click&Drag - to select pads in a component, drag from right to left to select all touched pads, or left to right to only select what fits inside the selection rectangle. Press Tab to extend the selection to include other route objects in the same net(s). Keep pressing Tab to cycle through all possible selection states.
    • Click&Drag - to select existing track segments, drag from right to left to select all touched tracks, or left to right to only select what fits inside the selection rectangle. Press Tab to extend the selection to include other route objects in the same net(s). Keep pressing Tab to cycle through all possible selection states.
    • Include Shift to retain the current selection, while performing another selection.
    • Shift+A to ActiveRoute the current selection.
    • Ctrl+Alt+G - to Gloss the current selection.
  2. Selection actions are only performed on objects that are visible:
    • Press Shift+S to cycle in (out) of single layer mode, so only the layer of interest is showing.
    • If the design uses placement rooms, these can be hidden to prevent them being selected/moved during Click&Drag actions, or if the room is locked, to stop them preventing the selection feature from working. Rooms are hidden in the Show / Hide tab of the View Configurations dialog.
  3. Fanout SMD pads. ActiveRoute does not change layers, so you will need to fanout SMD pads. To accelerate the fanout process:
    • While routing a connection, press the / shortcut (numeric keypad) to drop a via and release this connection. Use the 2 shortcut if you don't have a numeric keypad (drops a via without suspending).
    • Copy and paste an existing fanout, the PCB editor will automatically update the net names. This can be done for multiple fanouts.
  4. Preserve existing fanouts. ActiveRoute will modify fanouts if it sees a better solution, lock them if you do not want them changed. The easiest way to lock fanouts is to select the fanout tracks & vias, press F11 to open the PCB Inspector panel, and enable the Locked checkbox. This will lock all selected objects in a single action.
  5. If you use a Route Guide and find that the completion rate is low, it may be that there are too many obstacles along the path and the Guide needs to be wider. Press the Up arrow key to widen the Guide during placement.
  6. When ActiveRoute is finished, it automatically applies glossing (Route » Gloss Selected). The Gloss command can be used to smooth out tracks and improve the pad entries of any routing, not just ActiveRoutes. Particular attention has been applied to ensuring high-quality pad entries for differential pairs.
  7. If ActiveRoute does not work, it is usually because the rules are not properly configured. Check that the the rules are appropriate, for example the default rules that exist in a new PCB file might be too large for a high density BGA-type design.
  8. ActiveRoute observes the routing rules configured for widths, clearances, diff pair gaps, by layer, by room, and by class. ActiveRoute does not route with arcs or any-angle tracks.

 

 

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

The features available depend on your Altium product access level. Compare features included in the various levels of Altium Designer Software Subscription and functionality delivered through applications provided by the Altium 365 platform.

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Content