Controlled Impedance Routing Using Altium Designer

by | Jan 26, 2021 | 2 comments

Controlled impedance is the characteristic impedance of a transmission line formed by PCB traces and its associated reference planes. It is relevant when high-frequency signals are propagating on the PCB transmission line.  In this article, we will demonstrate controlled impedance routing using Altium Designer.

Controlled impedance is important for solving signal integrity issues, which is the propagation of signals in PCB traces without distortion.

Let’s take you through the following steps to achieve the desired impedances for single-ended and differential traces using Altium Designer:

In this demo, we will show you how to route the differential pair with 100 ohms and a single-ended line with 50 ohms. Here, this is the ethernet section with ethernet IC and RJ45 connector.

Differential pair and single-ended routing

Ethernet section with ethernet IC and RJ45 connector.

Impedance Calculator by Sierra Circuits

You can see the net with the receiver (RX) and transmitter (TX) section, RX clock, RX control, and RXD0, D1, D2, and D3. These all are single-ended 50-ohm traces. 

Routing for single-ended 50ohm traces

A net with the receiver (RX) and transmitter (TX) section.

On another side of the IC, you can see an MDI0, one, two, and three. All these connections are 100-ohm differential pairs.

100ohms differential pair routing

To achieve the impedances, we need certain trace widths; those will be provided by the manufacturer in the form of a stack-up. The image given below is depicting an example of a stack-up. In this stack-up, the layers are given, the required impedances are given, and the trace width and spacing between the traces are also given.

A stackup with trace width and spacing

Stackup Planner by Sierra Circuits

Class creation for controlled impedance routing using Altium Designer

Class creation for 100 and 50ohms traces

Classes for 50 and 100-ohm traces.

  • Go to ‘Design’ >> ‘Classes’ >> ‘Net classes.’

Net classes using Altium designer

  • Right-click on ‘Net classes’ >> click on ‘Add classes.’

Adding class name using Altium designer

  • Give this class a name (100 ohms in our case).

Give class name using Altium designer

  • Go to this 100-ohm class and select the nets which are there in this class and click on the arrow (>).

Select the nets for 100ohms class

  • In this way, all the nets in the class will get assigned to 100-ohm traces.

DOWNLOAD OUR CONTROLLED IMPEDANCE DESIGN GUIDE:

Controlled Impedance Design Guide

Note: In the same way we will create a 50-ohm class.

50ohms class creation using Altium routing

Rule setup for differential pair (100 ohms) routing using Altium Designer

To set the rules for the classes we created above, we will follow these steps:

  • Go to ‘Design’ >> ‘Rules.’

Rule setup for differential pair class

  • Go to the ‘Differential pair rules’ >> ‘New rule.’
  • Give a name to this rule (100 ohms in this case) and double-click.

Naming differential pair rules using Altium

  • We will now put the values for the top layer, bottom layer, signal one, and signal two. For the top layers in our stack-up, the values are 4.4 mils and 7.6 mils. 
  • Add minimum width, preferred width, and max-width. The minimum width will be 4.4 mils, and the minimum gap will be 7.6 mils. 

Enter values based on the stackup

Webinar SnapEDA by Sierra Circuits banner

  • The impedances are dependent on the trace width and the spacing. Once we do this, we will again go to the stack-up and cross verify the signal one and signal two values. Signal one and signal two values are 4.1 mils and 7.9 mils. 
  • Add signal one and signal two values. And go to the drop-down box and select a custom query.

Add signal one and signal two values in Altium

  • In the drop-down box, type Net Class and select 100ohms.

Select net class and opt 100ohms

Note: The values in the top layer and the bottom layer will be the same. The ground plane and the power planes are not to be used.

Rule setup for single-ended (50 ohms) line using Altium Designer

  • Go to ‘Design’ >> ‘Rules.’ 
  • Go to the ‘single-ended rules’ >> ‘New rule.’
  • Give a name to this rule (50ohms in this case) and double-click.
  • We will now put the values for the top layer, bottom layer, signal one, and signal two. For the top layer in our stack-up, the value is 5.6 mils. 
  • Add minimum width, preferred width, and max-width that is 5.6 mils.

Rule setup for single-ended 50ohms traces

  • Go to the stack-up and add the signal one and signal two values that is 5 mils.

Add signal one and signal two values in stackup

  • Go to the drop-down box and select a custom query. 
  • In the drop-down box, type Net Class and select 50 ohms.

In net class, select 50ohms using Altium

SIGNAL INTEGRITY FOR PCB DESIGNERS EBOOK

Signal Integrity for PCB Designers eBook

Differential pair routing using Altium Designer

  • For differential pair routing, go to ‘Interactive differential pair routing’ >> ‘Route.’

Interactive differential pair routing in Altium

  • Now, select the net and do the routing.

Net selection and routing using Altium

  • After completing the routing step, check the values of these particular traces. Select any of the traces, go to properties, and check the values. Here, the trace width is 4.4 mils, which is the same as given in the stack-up. 

After routing, check the values for traces

  • Now go to report and measure primitives. Select the two traces that will give us the air gap between two traces (7.6 mils), which is the same as the stack-up value.

Measure primitives helps to check air gap between two traces

Single-ended routing using Altium Designer

Routing of single-ended traces in Altium

  • For single-ended routing, go to ‘Interactive routing’ >> ‘Route’ and repeat the above steps.

Interactive routing in Altium for single-ended traces

  • Once the routing is done check the trace width. 
  • Select the trace under properties. You will see the trace width is 5.6mils that is the same as given in the stack-up.

Layers contain controlled impedance that is why we need to specify these impedances in the fab notes since there can be more than one value of impedance traces per layer. Separate aperture codes are defined for controlled impedance traces. Trace impedance is a critical factor in the effort to transmit signals without distortion over a trace. Impedance must match the drivers and the load. We hope that our tutorial on controlled impedance routing using Altium Designer helps the designer to understand and follow the minute details while routing their PCB.

2 Comments

  1. Avatar

    How can I determine track size,gap and length for 90 ohm USB ?
    Thanks

    Reply
    • Avatar

      We would recommend you to use our impedance calculator for an estimate of the track size, gap, and length of 90 ohm USB. Always ask for the PCB stack-up from the manufacturer before designing. The details to be provided to the manufacturer are the PCB material of the board and the thickness of the dielectric/spacing distance of the ground plane from the trace.

      Reply

Submit a Comment

Your email address will not be published.