1Introduction
Diff Pair Tuner helps you match the routed lengths of a group of nets in your PCB design — most often the two halves of a differential pair, or a bus of nets that must all arrive at the same time. It does two related jobs:
- Measure and compare: It reads the nets you have selected on the board and lists each one with its routed length, sorted from shortest to longest, so you can see at a glance how far apart they are and exactly how much length the shortest net needs to catch up.
- Add length precisely: It can draw serpentines (the accordion-shaped wiggles, sometimes called tromboning or squiggles) directly onto a trace to add a specific amount of length, so a short net can be brought up to match a longer one.
The tool works hand in hand with your Xpedition session: you make selections and place serpentines on the board, and the tool does the measuring, the math, and the redrawing.
2Before You Start
- Your Xpedition design session must be open with a board loaded before you launch the tool. The tool connects to that running session automatically when it starts.
- A valid ExactCAD license must be in place. If no license is found, the tool explains how to apply one and then closes.
- The nets you want to work with should already be routed. The tool measures existing copper; it does not route nets for you.
3The Tool Window
The window is a single compact panel that floats above your design so it stays in view while you work on the board. The controls fall into three groups: the buttons and table along the top and left handle measuring; the fields on the right control the shape and amount of added length; and the line along the bottom reports what the tool is doing or asking you to do.
The next sections walk through each part in the order you would normally use it.
4Measuring & Comparing Lengths
Start in your Xpedition window. Select the group of nets you want to compare — for a differential pair that is the two nets of the pair; for a timing-matched bus it is the whole group. Then return to the tool and click the GO button.
The tool reads every selected net, measures it, and fills the table with the results, sorted from shortest to longest. You can click GO again at any time to refresh the table after you have changed the routing.
4.1 Reading the Table
Each row of the table describes one net:
| Column | What it shows |
|---|---|
| Net Name | The name of the net, exactly as it appears in the design. |
| Length | The total routed length of the copper on that net. |
| Electrical Length | The net’s own routed length plus the routed length of the net on the far side of any two-pin part it passes through (for example a series resistor). This treats a net that is split by a series component as one continuous electrical path. See section 4.2. |
Below the listed nets, the tool adds a summary line telling you how much length to add to the shortest net and what its total would then be. It also fills the editable length field on the right (labelled Length to Add) with that same difference, ready for the serpentine step.
4.2 Physical vs. Electrical Length
There are two ways to compare nets, and you choose between them with the Use Electrical Length checkbox on the right.
| Setting | How nets are compared |
|---|---|
| Unchecked(default) | Nets are compared by their own routed Length only. Use this for ordinary length matching where each net stands on its own. |
| Checked | Nets are compared by Electrical Length, which adds in the copper on the far side of any series two-pin part. Use this when a net is interrupted by a component such as a series resistor and you need the whole signal path to match. |
The choice affects which numbers the tool uses to decide the longest net, the shortest net, and the amount that needs to be added.
4.3 Working From the Table
The table is interactive — clicking a net in the list acts on that net out on the board:
| Action in the table | What happens on the board |
|---|---|
| Single click a net | Selects that net in the design, so you can find it and work on it. |
| Double click a net | Selects the net and unlocks it, ready for you to adjust its routing. |
| Right click a net | Locks the net down. This is handy once a net is tuned and you want to protect it from accidental changes. |
| Click the Net Name heading | Re-sorts the list by net name instead of by length. |
5Adding Serpentines
Once you know how much length a net is short by, the tool can add that length by drawing serpentines onto one of its trace segments. A serpentine is a run of evenly spaced peaks; each peak adds a controlled amount of length to the trace.
5.1 Setting the Shape
Three fields on the right control the result. The first two shape each peak; the third sets how much total length to add.
| Field | Purpose & Behavior |
|---|---|
| Serpentine Separation Distance(distance, design units) | The center-to-center spacing of the peaks — in effect, how tall and how far apart the wiggles are. Hover the mouse over this field and the tool shows you exactly how much length each peak will add for the value you have entered, so you can judge how fine or coarse the serpentines will be. |
| Plateau distance(distance, design units) | The length of the flat top of each peak — the straight run between the slanted sides. Increase it for longer, flatter peaks; decrease it for tighter ones. |
| Length to Add(distance, design units) | How much extra length the serpentines should add. The tool fills this in for you from the table (the amount the short net needs), but you can type a smaller number if you only want to add part of the length, as the label notes. Whatever number is here is the target the tool aims for when it draws the peaks. |
5.2 Drawing Them In
When the three fields are set the way you want, click the small arrow button next to the Add Serpentines label. The tool then guides you through three clicks out on the board, prompting you at each step on the status line along the bottom of the window:
- Pick the trace. Click the trace segment you want to add length to. The status line reads “Pick the trace to add the serpentines to.”
- Pick the start point. Click the point on that segment where the serpentines should begin. The status line reads “Pick the start location for the serpentines.”
- Pick the side. Click on the side of the trace you want the peaks to bulge toward. The status line reads “Pick a location to indicate which side of the trace to add the serpentines to.”
After the third click the tool calculates the peaks, removes the old trace segment, and redraws the trace with the serpentines added. When it finishes, the status line reads “Add Serpentines is complete.” You can then click GO again to re-measure and confirm the net now matches.
6Locking Nets
Once a group of nets is tuned, you will often want to lock them so later edits elsewhere on the board cannot disturb them. The small button just to the left of the Lock Nets label does this in one step: it locks every net currently listed in the table. This is faster than locking nets one at a time, especially when you have tuned a large group.
7Window Controls
| Control | Purpose & Behavior |
|---|---|
| On Top(checkbox) | Keeps the tool window above your other windows so it stays visible while you work in Xpedition. It is turned on when the tool opens; clear it if you would rather the window behave normally. |
| ?(button) | Opens a short built-in help message describing how to measure and sort net lengths and how to work with the table. |
| EXIT(button) | Closes the tool. |
8Typical Workflow
A complete length-matching pass usually looks like this:
- Open your design in Xpedition, then launch Diff Pair Tuner.
- In Xpedition, select the group of nets you want to match.
- In the tool, click GO to list the nets and their lengths, shortest to longest.
- If the nets are interrupted by series parts, turn on Use Electrical Length and click GO again.
- Read the suggested amount to add to the shortest net. If the rows are green, the group already matches and you are done.
- Check the separation and plateau values, and adjust the length-to-add field if you want to add only part of the difference.
- Click the arrow button by Add Serpentines, then make the three guided clicks on the board: the trace, the start point, and the side.
- Click GO once more to confirm the net now matches. Repeat for any other short nets.
- When the whole group matches, lock the nets with the button beside Lock Nets.
9Tips & Troubleshooting
- The tool will not start, or reports it cannot reach Xpedition: Make sure your Xpedition design session is already open with a board loaded before you launch the tool, then try again.
- A distance field is rejected: The separation and plateau fields accept numbers only. Remove any stray characters and enter a plain numeric value.
- The chosen segment is too short for the serpentines: Pick a longer trace segment to place them on, or lower the amount in the length-to-add field so fewer peaks are needed.
- The numbers look off for the units I expected: The tool follows your design’s units. If the labels read in millimetres but you expected mils (or the reverse), check the unit setting of the design itself.
- A net I tuned moved later: Lock nets once they are matched — either the whole list with the lock button, or one at a time with a right click in the table — so later edits do not disturb them.
- I want to start over on the measurements: Change or re-select the nets in Xpedition and click GO again. The table always reflects the current selection and routing.