Altium NEXUS Documentation

PCB_Cmd-EqualizeNetLengthsEqualizeNetLengths_AD

Created: September 25, 2017 | Updated: July 17, 2018
Now reading version 2.1. For the latest, read: EqualizeNetLengths for version 5
Applies to altium-nexus versions: 1.0, 1.1, 2.0, 2.1, 3.0, 3.1, 3.2 and 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 (with Altium Designer Enterprise Subscription) and a connected Altium 365 Workspace. Check out the FAQs page for more information.

Parent page: PCB Commands

The following pre-packaged resources, derived from this base command, are available:


Applied Parameters: None

Summary

This command is used to match the length of nets identified by a defined Matched Net Lengths design rule.

Access

This command is accessed from the PCB Editor by choosing the Tools » Equalize Net Lengths command from the main menus.

Use

First, ensure you have set up one or more Matched Net Lengths design rules, covering the nets whose lengths you wish to equalize.

After launching the command, The Equalize Nets dialog will open. Use this dialog to define the style and sizing of the accordion segments that will be added by the software to equalize the lengths of the target nets. After clicking OK, track segments will be added to all nets in the set covered by the design rule that are shorter than the longest net in the set. The command will attempt to add track to these shorter nets until the specified tolerance condition in the relevant Matched Net Lengths rule has been met.

A design rule check will be performed for all defined (and enabled) Matched Net Lengths rules only and the Design Rule Verification Report (Design Rule Check - <PCBDocumentName>.html) will be opened as the active document. The report will list any violations of these rules. For information about how far outside of the tolerance each net in the applicable set is, refer to the relevant message in the Messages panel, an example of which is shown below:

Matched Net Lengths: Between Net LCD_RW And Net LCD_RS  Length:85.061mm, outside tolerance by 7.564mm

In this case, the longest net in the set targeted by the applicable Matched Net Lengths rule is LCD_RS. The net LCD_RW has a routed length of 85.061mm, which is outside of the tolerance defined by the rule by 7.564mm.

Tips

  1. This command will override differential pair routings and may alter tuned lengths. On differential pair or length tuned nets, you may benefit from locking those routes out from this command.
  2. You may find it easier to create a net class whose members are the set of nets you wish to equalize in length. A Matched Net Lengths design rule can then be set up to target this net class.
  3. By setting a tolerance of 0 in the design rule, this command will endeavor to make all nets governed by the rule the same length.
  4. The success of the command depends on the amount of space available for the added track, the style chosen for the added track segments and the tolerance that is to be attained.
  5. The report will be created in the location defined in the Output Path field on the Options tab of the Options for Project dialog. It will be added to the Projects panel below the parent project in the Generated\Documents sub-folder.


Applied Parameters: Action=DynamicallyTuneNetSmartUnion

Summary

This command is used to interactively tune trace lengths of individual nets on the current PCB, providing a dynamic means of optimizing and controlling net lengths by allowing variable amplitude wave patterns to be inserted according to the available space, rules, and obstacles in your design. Accordion style length tuning, also known as serpentine routing, is a standard design technique for high-speed nets with critical timing requirements. It is used to ensure that critical nets have matched lengths, by adding accordion sections to shorter route paths.

For a high-level overview of this area of PCB design, see Length Tuning.

Access

This command can be accessed from the PCB Editor by:

  • Choosing the Route » Interactive Length Tuning command, from the main menus.
  • Locating and using the Interactive Length Tuning command () on the Active Bar.
If the command has been recently used from the Active Bar, it will become the active/visible button. Where other commands are available, this is indicated by a triangle at the bottom-right corner of the button. Click and hold on the active button to access a menu of all associated commands for that grouping.

Use

After launching the command, simply click on existing track for the required net, at the point where you wish to add tuning segments. Filtering will be applied to the workspace to allow better visibility of just that net. As you slide the cursor along the path of the route, length tuning segments will be added. No need to worry if you drift off-course either, as soon as you bring the cursor back over the route, tuning segments will be added up to that point. A length tuning gauge attached to the cursor provides graphical feedback of how close you are to the ideal lengths. The yellow cursor bars indicate the minimum and maximum extents of a valid length range (based on Matched Net Lengths and/or Length rules, where defined). The green bar indicates the target length. The sliding indicator shows how close you are to achieving a match.

The length tuning is created as a smart union of straight or arc segments, with full control over the amplitude, gap, and corner radius (or miter).

Additional actions that can be performed while tuning are:

  • Press the Tab key to access the Properties panel, from where to define the approach used for defining the target length, and to modify properties of the accordion pattern used in the tuning, on-the-fly. Accessing the panel in this way will pause length tuning in order to interact with the panel (or other area of the software) directly. To resume, click the pause symbol that appears over the workspace, or press Esc.
  • Press the Spacebar, or Shift+Spacebar, to cycle forward or backward through the supported tuning patterns, respectively. Available patterns are: Mitered with Lines, Mitered with Arcs, and Rounded.
  • Press the , key to decrease the amplitude of the accordion pattern by the amount defined for the Amplitude Increment, through the Properties panel.
  • Press the . key to increase the amplitude of the accordion pattern by the amount defined for the Amplitude Increment, through the Properties panel.
  • Press the 1 key to decrease the corner (miter) radius (when using the Mitered with Lines, or Mitered with Arcs accordion patterns).
  • Press the 2 key to increase the corner (miter) radius (when using the Mitered with Lines, or Mitered with Arcs accordion patterns).
  • Press the 3 key to decrease the gap (pitch) for the accordion pattern by the amount defined for the Gap Increment, through the Properties panel.
  • Press the 4 key to increase the gap (pitch) for the accordion pattern by the amount defined for the Gap Increment, through the Properties panel.
  • Press the Y key to toggle Amplitude Direction (starting direction) for the accordion pattern.
  • Use the Shift+G keyboard shortcut to toggle the display of the length tuning gauge.
A menu of these interactive commands can also be accessed by pressing Shift+F1 after clicking on the target trace.

Controlling the Target Length

The length tuning offers 3 approaches for specifying the target length. These approaches - which can only be defined through the Properties panel (press the Tab key while interactively tuning to access) - are:

  • Manually defined - you can specify your own target length.
  • Based on a net that has already been routed - you can choose a net from existing nets in the design. The length of this net will become the target length.
  • Defined by design rules - you need to have one or both of the Length and Matched Net Lengths design rules defined to use this mode. The software will, by default, obey the most stringent combination of these rules. If multiple Matched Net Lengths design rules apply:
    • These will all be listed in the Properties panel, with the applied rule highlighted in blue.
    • The default Matched Net Lengths rule applied, will be the one that gives the greater Max Limit.
    • If the target length for two or more rules is equal, then the rule with the highest priority will be the one applied.
    • You can change the applied rule as you tune, simply by clicking that rule's entry - it will become the rule highlighted in blue, and the target length (and decriptive text) will change accordingly.
For a manually defined target length, or a target length defined through a chosen net, bear in mind that if Length and/or Matched Net Length rules exist, they will be used to provide a valid length range, which may be more restrictive that the manual/net defined length.

Relevant Design Rules

The length tuning feature observes the following defined design rules:

  • Matched Net Lengths design rule -  specifies that the target nets must be routed to the same length as the longest net, within the specified tolerance. It can be a good idea to define a net class containing the nets that you wish to tune, and scope the rule to target that net class. The length tuning tool will then find the longest net in the set of target nets, and give you a valid range of that length, plus or minus the Tolerance specified in the rule.
  • Length design rule - complimenting the Matched Net Lengths rule, this rule specifies the minimum and maximum permissable routed length of a net, or set of nets.

Either or both of these rules may be important in your design, it all depends if your potential issues are related to skew (signals arriving at different times - think Matched Net Lengths rule), or the overall signal delay (think Length rule). The length tuning tool considers both Matched Net Lengths and Length design rules when considering the tightest set of constraints. If the maximum length specified by the Length rule is shorter than the longest length targeted by the Match Net Lengths rule (plus the tolerance), then the Length rule wins and its length is used during tuning.

Length Tuning Gauge

Route lengths are tuned with the aid of the Length Tuning Gauge.

Example of the Length Tuning Gauge being used to aid in tuning a route length.

The length tuning gauge display (toggled using the Shift+G keyboard shortcut) includes:

  • The Min, Target and Max lengths, as applicable, represented by vertical lines on the gauge:
    • Yellow vertical lines - represents the min and max of the valid (permissable) length range. Where applicable Matched Net Lengths and/or Length design rules are defined and enabled, these will be used in calculating the valid range. For Manual or Net-defined target length, and no rules defined (or enabled), length range is not restricted and so the two vertical yellow lines indicate the current route length (on the left) and the target length (on the right).
    • Green vertical line - represents the target length, which will either be a manually entered value, a length used from an existing selected net, or the mid-point of the valid length range when calculated from design rules.
  • A colored slider, which represents the combined routed length + estimated remaining length. The estimated remaining length is the Manhattan length (the shortest X+Y distance (horizontal + vertical)) from current route end, to the target pad. By including this, you are given a much earlier indication of a net that is unlikely to meet the rule requirements.

As you add tuning segments to a net you are interactively tuning, the colored slider will expand - the aim is to land it as close as possible to the required target length, and within the valid length range (to abide by defined rules!). Good tuning will result in the slider changing from red to green in color.

Smart Union Accordions

The length tuning feature uses accordion sections that are actually smart union objects, which means such a section can be selected, modified and deleted as a single object. To modify an existing accordion section, click once to select it and display the editing handles, as shown in the animation below. Click and drag on an edge or vertex to resize the accordion bounding region - the accordion sections are automatically resized to suit the new updated shape of the bounding region.

Resize the accordion bounding box to create the required accordion shape.

Actions that can be performed while modifying the accordion object are:

  • Press the Tab key to access the Properties panel, presenting options and controls for the selected Accordion object. You can change the Style, Amplitude, Gap (pitch) and corner (Miter) for the accordion in non-graphical fashion, using the controls available in the Pattern section of the panel. Alternatively, use the associated shortcuts, described hereafter.
  • Press the , key to decrease the amplitude of the accordion pattern by the amount defined for the Amplitude Increment, through the Properties panel.
  • Press the . key to increase the amplitude of the accordion pattern by the amount defined for the Amplitude Increment, through the Properties panel.
  • Press the 1 key to decrease the corner (miter) radius (when using the Mitered with Lines, or Mitered with Arcs accordion patterns).
  • Press the 2 key to increase the corner (miter) radius (when using the Mitered with Lines, or Mitered with Arcs accordion patterns).
  • Press the 3 key to decrease the gap (pitch) for the accordion pattern by the amount defined for the Gap Increment, through the Properties panel.
  • Press the 4 key to increase the gap (pitch) for the accordion pattern by the amount defined for the Gap Increment, through the Properties panel.
  • Use the Shift+G keyboard shortcut to toggle the display of the length tuning gauge.
A length tuning accordion, being a union, is a group object - comprised of primitive track and/or arc segments. As with other group objects, such as components, coordinates, dimensions and polygons, a length tuning accordion object can be 'exploded'. In other words, it can be converted into its constituent free primitives, which can then be modified independently. To do so, use the Explode Length Tuning command.

Tips

  1. To prevent adding too many tuning segments, that could result in passing the target length and exceeding the maximum permissable length, enable the Clip to Target Length option, in the Target Length section of the Properties panel.
  2. The tuning state is also reflected in the PCB panel (when set to Nets mode). The Routed cell for the net being tuned will be highlighted in yellow if the route length < valid minimum length, clear if the net is within the valid length range, or red if the route length > maximum valid length
  3. The easiest way to remove a tuning segment is to simply click to select it, then use the Delete keyboard shortcut.
  4. If the adjacent accordion sections are too close together for too long, then crosstalk coupling can distort the signal.
  5. The extent of masking when filtering is applied to the workspace after clicking on the target net, can be manually adjusted using the Dimmed Objects slider bar, located in the Mask and Dim Settings section, on the View Options tab of the View Configuration panel. Clear filtering by using the Shift+C keyboard shortcut.


Applied Parameters: Action=DynamicallyTuneDiffPair

Summary

This command is used to interactively tune trace lengths of differential pair nets on the current PCB, providing a dynamic means of optimizing and controlling net lengths by allowing variable amplitude wave patterns to be inserted according to the available space, rules, and obstacles in your design. Accordion style length tuning, also known as serpentine routing, is a standard design technique for high-speed differential pair nets with critical timing requirements. It is used to ensure that critical nets have matched lengths, by adding accordion sections to shorter route paths.

Access

This command can be accessed from the PCB Editor by:

  • Choosing the Route » Interactive Diff Pair Length Tuning command, from the main menus.
  • Locating and using the Interactive Diff Pair Length Tuning command () on the Active Bar.
If the command has been recently used from the Active Bar, it will become the active/visible button. Where other commands are available, this is indicated by a triangle at the bottom-right corner of the button. Click and hold on the active button to access a menu of all associated commands for that grouping.

Use

After launching the command, simply click on existing track for one of the nets in a differential pair, at the point where you wish to add tuning segments. Filtering will be applied to the workspace to allow better visibility of just that differential pair. As you slide the cursor along the path of the route, length tuning segments will be added to both nets in the pair, keeping them tightly coupled in accordance with the applicable Differential Pairs Routing rule. No need to worry if you drift off-course either, as soon as you bring the cursor back over the route, tuning segments will be added up to that point. A length tuning gauge attached to the cursor provides graphical feedback of how close you are to the ideal lengths. The yellow cursor bars indicate the minimum and maximum extents of a valid length range (based on Matched Net Lengths and/or Length rules, where defined). The green bar indicates the target length. The sliding indicator shows how close you are to achieving a match.

The length tuning can be created from straight or arc segments, with full control over the amplitude, gap, and corner radius (or miter).

Additional actions that can be performed while tuning are:

  • Press the Tab key to access the Properties panel, from where to define the approach used for defining the target length, and to modify properties of the accordion pattern used in the tuning, on-the-fly. Accessing the panel in this way will pause length tuning in order to interact with the panel (or other area of the software) directly. To resume, click the pause symbol that appears over the workspace, or press Esc.
  • Press the Spacebar, or Shift+Spacebar, to cycle forward or backward through the supported tuning patterns, respectively. Available patterns are: Mitered with Lines, Mitered with Arcs, and Rounded.
  • Press the , key to decrease the amplitude of the accordion pattern by the amount defined for the Amplitude Increment, through the Properties panel.
  • Press the . key to increase the amplitude of the accordion pattern by the amount defined for the Amplitude Increment, through the Properties panel.
  • Press the 1 key to decrease the corner (miter) radius (when using the Mitered with Lines, or Mitered with Arcs accordion patterns).
  • Press the 2 key to increase the corner (miter) radius (when using the Mitered with Lines, or Mitered with Arcs accordion patterns).
  • Press the 3 key to decrease the gap (pitch) for the accordion pattern by the amount defined for the Gap Increment, through the Properties panel.
  • Press the 4 key to increase the gap (pitch) for the accordion pattern by the amount defined for the Gap Increment, through the Properties panel.
  • Press the Y key to toggle Amplitude Direction (starting direction) for the accordion pattern.
A menu of these interactive commands can also be accessed by pressing Shift+F1 after clicking on the target trace.

Controlling the Target Length

The length tuning offers 3 approaches for specifying the target length. These approaches - which can only be defined through the Properties panel (press the Tab key while interactively tuning to access) - are:

  • Manually defined - you can specify your own target length.
  • Based on a differential pair that has already been routed - you can choose a differential pair from existing differential pairs in the design. The averaged length of this differential pair will become the target length.
  • Defined by design rules - you need to have one or both of the Length and Matched Net Lengths design rules defined to use this mode. The software will, by default, obey the most stringent combination of these rules. If multiple Matched Net Lengths design rules apply:
    • These will all be listed in the Properties panel, with the applied rule highlighted in blue.
    • The default Matched Net Lengths rule applied, will be the one that gives the greater Max Limit.
    • If the target length for two or more rules is equal, then the rule with the highest priority will be the one applied.
    • You can change the applied rule as you tune, simply by clicking that rule's entry - it will become the rule highlighted in blue, and the target length (and decriptive text) will change accordingly.
For a manually defined target length, or a target length defined through a chosen differential pair, bear in mind that if Length and/or Matched Net Length rules exist, they will be used to provide a valid length range, which may be more restrictive that the manual/diff-pair-defined length.

Relevant Design Rules

The length tuning feature observes the following defined design rules:

  • Matched Net Lengths design rule -  specifies that the target differential pair must be routed to the same length as the longest (average length) differential pair, within the specified tolerance. It can be a good idea to define a differential pair class containing the differential pairs that you wish to tune, and scope the rule to target that differential pair class. The length tuning tool will then find the longest differential pair in the set of target differential pairs (using average length), and give you a valid range of that length, plus or minus the Tolerance specified in the rule.
  • Length design rule - complimenting the Matched Net Lengths rule, this rule specifies the minimum and maximum permissable routed length of a differential pair, or set of differential pairs.

Either or both of these rules may be important in your design, it all depends if your potential issues are related to skew (signals arriving at different times - think Matched Net Lengths rule), or the overall signal delay (think Length rule). The length tuning tool considers both Matched Net Lengths and Length design rules when considering the tightest set of constraints. If the maximum length specified by the Length rule is shorter than the longest length targeted by the Match Net Lengths rule (plus the tolerance), then the Length rule wins and its length is used during tuning.

Length Tuning Gauge

Route lengths are tuned with the aid of the Length Tuning Gauge.

Example of the Length Tuning Gauge being used to aid in tuning a differential pair route length.

The length tuning gauge display (which is always displayed) includes:

  • Textual information regarding the positive and negative nets in the pair, with current routed length and original routed length in each case.
  • The Min, Target and Max lengths, as applicable, represented by vertical lines on the gauge:
    • Yellow vertical lines - represents the min and max of the valid (permissable) length range. Where applicable Matched Net Lengths and/or Length design rules are defined and enabled, these will be used in calculating the valid range. For Manual or Diff-Pair-defined target length, and no rules defined (or enabled), length range is not restricted and so the two vertical yellow lines indicate the current route length (on the left) and the target length (on the right).
    • Green vertical line - represents the target length, which will either be a manually entered value, a length used from an existing selected differential pair, or the mid-point of the valid length range when calculated from design rules.
  • A colored slider.

As you add tuning segments to the differential pair you are interactively tuning, the colored slider will expand - the aim is to land it as close as possible to the required target length, and within the valid length range (to abide by defined rules!). Good tuning will result in the slider changing from red to green in color.

Tips

  1. To prevent adding too many tuning segments, that could result in passing the target length and exceeding the maximum permissable length, enable the Clip to Target Length option, in the Target Length section of the Properties panel.
  2. The easiest way to remove tuning segments is to simply route over the top of them. As with any existing routing, use the Interactive Differential Pair Routing tool, then click and place a straight routing segment straight across the top of the tuning segments. As soon as you have completed the route and right-clicked to escape, all the tuning segments will be removed. Note that this requires the Automatically Remove Loops option to be enabled - either from within the Properties panel (while in interactive differential pair routing mode), on the PCB Editor - Interactive Routing page of the Preferences dialog.
  3. If the adjacent accordion sections are too close together for too long, then crosstalk coupling can distort the signal.
  4. The extent of masking when filtering is applied to the workspace after clicking on the target net, can be manually adjusted using the Dimmed Objects slider bar, located in the Mask and Dim Settings section, on the View Options tab of the View Configuration panel. Clear filtering by using the Shift+C keyboard shortcut.

 

Found an issue with this document? Highlight the area, then use Ctrl+Enter to report it.

Contact Us

Contact our corporate or local offices directly.

We're sorry to hear the article wasn't helpful to you.
Could you take a moment to tell us why?
200 characters remaining
You are reporting an issue with the following selected text
and/or image within the active document: