High Speed Design

Now reading version 20.0. For the latest, read: High Speed Design for version 25

 

Parent page: Advanced Design Technologies

Understanding the Challenge

The purpose of this article is to introduce the key elements of high-speed design and then discuss how each of those elements is tackled in Altium Designer. This article does not attempt to provide a complete discussion of high-speed design; for that, there are a number of highly experienced and scholarly designers and engineers that have written excellent reference papers and books on the subject. Refer to the References section for links to these authors, and the papers used during research for this article.

So exactly what makes a PCB design a high-speed design? Sure it’s about things happening quickly, but it’s not just about the clock rate used on the board. A design is a high-speed design when it includes devices with fast edges - devices that switch state so quickly that the transition is complete before the signal can travel along the route and reach the target pin. In this situation the signal can be reflected back to the source pin, degrading or destroying the original signal data. A signal with a fast edge can also radiate from the route and couple into adjacent routes, or radiate further and become electromagnetic interference (EMI), resulting in the product failing to meet mandatory emission standards.

When a signal has fast edges, it changes the way that the energy travels through the routing. In a circuit where edge rates change slowly, you can think of the energy flowing through the routing like water through a pipe. Yes, some energy is lost due to friction as the water is pushed through the pipe, but basically most of it arrives at the other end. For a DC or low switching frequency circuit you can work out the resistance of the route and make sure that the amount of energy lost along the way does not affect the circuit performance.

It's not so simple in a high-speed design because as well as the energy flowing as electrons through the routing copper, in a fast-switching signal, some of that energy also travels as electromagnetic energy around the routing copper. Now you are no longer designing copper pathways for electrons; you're designing a series of transmission lines embedded in a printed circuit board.

How Long is too Long?

As the switching speed of the edge increases, the energy traveling through a route behaves differently. It no longer travels like water inside a pipe. instead, most of the energy is concentrated at the very surface of the route (known as the skin effect), with a portion of the energy actually traveling as electromagnetic radiation. Not traveling through the actual conductor, this electromagnetic energy travels through the material surrounding the route. Like dragging your foot through water, when energy travels in this way the signal actually slows down. Now it is the properties of the material around the route that dictate how quickly the signal travels and how much its arrival will be delayed.

So when does this become a problem, the time it takes for the signal to propagate down the route to the target pin? Like a wave hitting a wall, when the signal arrives at the target input pin some of the energy in the signal is reflected back towards the source pin. If this reflected energy arrives back at the source pin while the original signal edge is still transitioning, the original signal will be strong enough to swamp the reflection as it completes its transition and your signal will be OK. But if the edge transition is completed before the reflected energy arrives back, like an echo in the canyon, that reflected energy will interact with the original signal and change it, perhaps so much that you cannot work out what was actually shouted into the canyon.

To summarize, when the travel time along this round-trip length is equal to or longer than the rise time of the signal, the integrity of that signal is in doubt and your design is now a high-speed design! The length of that route is referred to as the critical length - routes shorter than this should not experience signal integrity issues, whereas routes longer than this might.

To analyze your design, a common rule of thumb that is often used is the 1/3 rise time rule, which states that if the route is more than 1/3 of a rise time long, reflections can occur. For example, if the source pin has a 1 nSec rise time, then a route longer than .33 nSec - which is approximately 2 inches in FR4 - must be considered to be a transmission line and therefore a candidate for signal integrity issues.

The 1/3 Rise Time Rule:

The speed at which electrical energy can travel along a route is known as the propagation velocity and can be defined as:

Vp= C / √εR

where:

Vp = Propagation Velocity

C = Speed of Light (11.80285 in/nSec or 299.792458 mm/ns)

εR = Dielectric Constant

Assuming the Dielectric Constant εR of FR4 is 4, the Velocity of a Signal in FR4 is given as:

Vp(FR4) = (299.792458 / √4) mm/ns

              =149.89 mm/ns (approx 6 inches/ns)

Applying the 1/3 Rise Time Rule of Thumb, transmission line effects will begin when:

LR ≥ (TR / 3) × (C / √εR)

where:

LR = Length of a route (in mm)

TR = Signal Rise Time (in ns).

For FR4, the route length at which transmission line effects need to be considered can be calculated as:

LR ≥ TR × 49.965 mm

If TR = 1nS

LR ≈ 50mm (2 inches)

If TR = 100pS

LR ≈ 5mm (0.2 inches)!! On a board with signals switching at these speeds, most routes will be transmission lines.

Matching the Impedances

Since it is not possible to ensure that all routes are shorter than the critical length, how do you ensure that the information encoded in your signals is received correctly, and not swamped by reflections? You do that by minimizing the amount of energy that is reflected back. Ideally, you want all of the energy that arrives at the target input pin to pass through into that component and none to be reflected back. Just how do you get that to happen?

To prevent reflections, you need to think of and design the route as if it is a transmission line. Why? Because a transmission line has the special behavior that when it is terminated by an impedance the same as its own impedance, no energy is reflected. Now you have a method of handling those routes that are longer than the critical length; route them as a transmission line. This means you route them so they have a specific impedance, then terminate them with the same impedance.

The impedance of the routing is defined by the dimensions of the routing (the width and height of the pipe), and the properties and dimensions of the surrounding materials, which will be the surrounding air or dielectric layers. To function as a transmission line, the layer that is adjacent to the signal layer must be a plane layer. By carefully arranging the layers in the layer stack and calculating the dimensions and properties, a specific impedance can be achieved for the routing. This approach to routing is referred to as controlled impedance routing, where the target impedance is kept constant, and the material dimensions and properties are selected and adjusted to achieve that.

A controlled impedance PCB cannot be achieved through routing alone though. There are two pieces to this puzzle - controlling the impedance of the routing, and matching that impedance to the pins in the net. Achieving this matching often requires the addition of termination components. Terminations can be added close to the source pin, or close to the target pin. A good approach to working out if a high-speed net needs terminating is to analyze the design with a signal integrity simulator. Unlike a circuit simulator, which models and simulates the behavior and interaction of the components, a signal integrity simulator models the behavior of the routing and its interaction with the component pins. For signal integrity simulation the components are only modeled in terms of the I/O characteristics of their pins.

The signal integrity analysis tool needs to:

  • Identify nets that could have unacceptable levels of reflections (ringing)
  • Predict the potential levels of signal reflection and crosstalk as waveforms
  • Allow what-if analysis of potential termination components and help select suitable termination components

A series of overlaid waveforms that represent the behavior of a net being swept over a range of possible termination values. Left is unterminated, the right is with a theoretical 40Ω series terminator. Reflection analysis waveform for the same pin after a theoretical series termination resistor was added
A series of overlaid waveforms that represent the behavior of a net being swept over a range of possible termination values. Left is unterminated, the right is with a theoretical 40Ω series terminator.

Where does the Return Energy Flow?

But wait, there’s more (or is that Moore?). Electrical energy only flows when there is a closed-loop, so the energy flowing out along the signal route must also have a return path. This return path is typically provided by the ground routing that has to provide a return path for all of the signals in the design. There’s an interesting phenomenon that occurs with signals with fast switching edges. The returning energy of a signal wants to flow back along the same twisting and turning path that the signal route took across the board. Why? Because this is the path of least impedance for that signal. Even though it could flow the shortest distance from the target component back to the source component, it does not.

When a high-speed signal crosses a split in a plane, a loop is created, causing that signal to create EMI.
When a high-speed signal crosses a split in a plane, a loop is created, causing that signal to create EMI.

So as well as thinking about the routing path for the signal, you also have to ensure there is an unbroken path for the return current immediately under the signal route. If the return energy has to deviate from below the signal path to get around an obstacle, like a hole in the plane (a blowout), then a loop is created. The loop is the gap between the two paths as you look down into the board, and the area of this loop is proportional to the amount of energy that will now be radiated by this signal. If there is a blowout in the plane that is unavoidable, consider rerouting the signal trace to suit the return path, as reducing the loop area is generally considered more important than minimizing the route length.

An important point to keep in mind is that the return path is through the closest power plane, which might not be a ground plane. If the return path is through a power plane instead of a ground plane, the return energy will ultimately get to ground through the decoupling capacitors that are closest to the source and target pins. If you are relying on a power plane to provide the return path, carefully consider the location of the decoupling capacitors near these pins to minimize the size of any loop created.

Differential Pairs

Modern signaling technologies, such as differential pairs, help reduce the need for a high-quality return plane by routing the signal path and the return path together as a pair, ensuring that they are closely coupled in both separation and overall length. As well as the strong coupling and the reduced reliance on a high-quality reference ground, differential pairs offer another big advantage - excellent immunity to noise.

The electromagnetic energy that is traveling around the route as part of each signal does not all couple into the target input pin; some of it escapes and interferes with adjacent signals. This escaped energy becomes what is called electromagnetic interference (EMI), and when it couples into a neighboring signal, it creates what is called crosstalk. Differential pairs are good at coping with crosstalk because the radiated energy couples into both the outgoing signal and the return signal, creating what is called common-mode noise (the noise is common to both signal paths). If there was only a single signal, this crosstalk would add to that signal and distort it. But the differential pair input pins are designed to look at the difference between the pins in the pair, and so are able to reject the common-mode noise.

These two qualities - the ability to closely match the lengths of the signal and its return path, and the ability to withstand the effects of crosstalk - make differential pairs the preferred solution for high-speed signaling, which can support data rates beyond 10 Gb/s on a PCB.

Differential pairs provide strong immunity to noise and reduce the reliance on a high-quality return path via a plane. This reduced reliance on a ground plane is directly related to the degree that the pair lengths are matched and remain consistently coupled - as the length matching or the coupling declines, the reliance of the signals on the plane increases. Most experts agree that matching the length is the critical requirement for differential pairs.

What about Vias?

If carefully controlling the impedance and insuring there is a high-quality return path are the first two edges of the high-speed design triangle, vias are the third edge of that triangle. At low frequencies, a via has little impact on the signal quality and can be used without consideration of its impact on circuit performance. However, if your design is functioning as a high-speed design, the vias can impact on the circuit performance and the signal quality.

Vias appear as both capacitive and inductive discontinuities, so their presence affects the impedance of the signal route. As well as affecting the impedance, unused via barrel length presents as a stub which can create reflections. Quantitative studies have shown that their impact can be reduced by addressing each of the following areas:

  • Reducing the size of the annular ring where the signal route connects to the via.
  • Removing unused annular rings on layers to which the via is not connected.
  • Increasing the clearance from the via barrel to adjacent plane layers.
  • Placing stitching vias adjacent to signal vias to provide a path for the signal return current to be able to switch plane layers.
  • Careful placement of decoupling capacitors adjacent to the via when a different voltage plane will be used to carry the signal return.
  • Removal of via stubs (the extra, unused via length that projects beyond the layer that the signal route uses to access the via). This is done through:
    • via design and careful layer assignments to suit the fabrication process, and
    • controlled depth drilling (back drilling) to remove the unused section of the via barrel.

Back drilling is where the unused portion of the via barrel is drilled out as a post-process Drilling out the unused portion of the via barrel removes copper that would create a stub for the signal

Using a controlled depth drilling process, often referred to as back drilling, unused via barrels can be removed.

Another approach to minimize the impact of vias in a high-speed design is to use microvias. A microvia is a small via. IPC standards (IPC/JPCA-2315 and IPC-2226) define microvias as blind or buried vias with a diameter equal to or less than 6 mils (0.15 mm). A 6 mil diameter is at the limit for mechanical drilling so microvias are typically laser-drilled. There are also hybrid laser modified + controlled depth mechanical hole drilling techniques used, as outlined in this paper, which offers advantages in fabrication.

Microvias offer a number of advantages:

  • Reduced parasitics (in the order of one-tenth of a drilled thruhole via), resulting in lower inductance.
  • Smaller geometries, which result in a smaller annular ring.
  • Reduced size of blowout on plane layers that they pass through.
  • Removal or reduction of stub length. Because they are constructed as part of the layer stacking process during fabrication, they can connect between specific start and end layers. While they cannot span any pair of layers, careful selection of the signal layers used for high-speed signals can ensure that those layers have access to a microvia start/stop layer.

Suitable via design is an important ingredient in the high-speed board design process. The possible layer-to-layer via connection possibilities are dictated by the board fabrication process, making it essential to choose the fabrication and drilling process at the same time as the via style and the layer stackup is being defined.

Crosstalk

Because some of the energy in a high-speed signal travels through the material that surrounds the route, it is inevitable that some of that energy will couple into adjacent routes. Referred to as crosstalk, this energy will degrade the quality of that signal. In signal integrity language, the signal that is radiating the energy is referred to as the aggressor net, and the signal that is receiving the crosstalk energy is referred to as the victim net. So how do you reduce the amount of energy that escapes from the aggressor, and how do you reduce how much of that energy is coupled into the victim? The basic approach is to reduce the amount of energy escaping from the aggressor route through impedance matching and correct design of the signal return path, and to keep potential victim nets away from aggressors.

Clock signals and other periodic signals are the prime sources of crosstalk in a design. An often-used rule of thumb is to ensure that potential aggressors, such as clocks, are separated from potential victims by three times the width of the routing (measured center to center). This is known as the 3-W rule. Or in edge-to-edge terms, the separation must be no less than twice the routing width. This is a large clearance, so you will need to be selective about the nets to which it is applied. High-threat aggressors, such as clocks, are one group. The other main group to consider is the more sensitive potential victims, such as differential pairs; this group also benefits from a pair-to-other-signal separation of 3-W.

  Predicted ringing on an unterminated aggressor route (green waveform), and the resultant crosstalk in the adjacent victim route (blue waveform). Note that each graph has a different voltage scale.
Predicted ringing on an unterminated aggressor route (green waveform), and the resultant crosstalk in the adjacent victim route (blue waveform). Note that each graph has a different voltage scale.

Dancing in Time

Last but not least, there is the time it takes for the signal to arrive at its destination input pin. Generally, a signal does not exist in isolation. It is working in harmony with a multitude of other signals. A simple example would be the 8 bits in a byte of data. Not only must the entire byte arrive within the time allowed, the bits within the byte must all arrive together too. The time it takes for a signal to travel from output to input is referred to as the flight time, and any difference between the arrival times of the bits is referred to as the signal skew.

The key factors that influence both the flight time and the skew are:

  • The length of the signal routes, i.e. how far the signals have to travel.
  • The materials that the signals are traveling through; this affects how fast the signals travel.

Managing these requires consideration of:

  • Component placement - good component placement is a key element of a successful high-speed design. Use the Manhattan length to guide the initial placement of different components that need similar route lengths, for example, DDR3 memory devices configured in a T-branch topology. 
  • Material selection - the material from which the PCB is fabricated is a critical factor in a high-speed design. FR4 has served the PCB industry well for decades, but its use becomes a limiting factor in high-speed designs since the inconsistent dielectric constant of FR4 creates skew. Material is discussed more in the following section.
  • Overall route length - as well as influencing the flight time, overall lengths are also important when routing sets of related nets. For example, DDR timing requirements specify that the clock route is longer than the address and control routes. These requirements are managed by Length design rules.
  • Matched route lengths - skew is managed by matching route lengths. It is the longest route in a set of signals that determines the route length for each net in that set. Lengths are matched by defining Matched Length design rules, then lengthening each shorter route to match the specified length.

Differential pairs - lengths are matched within the pairs, and also between the pairs (image courtesy FEDEVEL Open Source, www.fedevel.com).
Differential pairs - lengths are matched within the pairs, and also between the pairs (image courtesy FEDEVEL Open Source, www.fedevel.com).

The Board

All of this happens on the printed circuit board. Since they were first created in the 1940s, the humble PCB has undergone tremendous levels of refinement in fabrication technology and materials. This has lead to enormous reductions in the size of the features, including the routing and vias. Tracks are no longer fabricated at 20 mils wide. Now they can be as small as 2 mils wide; and a small via is no longer 30/18 mil (land/hole) - it is 12/6 mil. A new name was created to describe designs using features this small - High-Density Interconnect (HDI) techniques. While it costs more to create the smaller features used on HDI boards, their smaller size means the finished design can use fewer layers, have shorter routes, and improved signal integrity, which can ultimately result in a board that might not cost any more to make (but can be much harder to test and repair).

The Materials

A large part of the challenge with a high-speed design is managing the medium that the signals travel through. Traditional FR4 has provided a cheap and effective board substrate material for decades, but the non-homogenous structure of fiberglass weave embedded in resin becomes a limiting factor for high-speed designs. The resin has a different dielectric constant (≈3) from the fiberglass weave (≈6), and since the fiberglass is a woven structure with gaps in the weave, the signal sees a changing dielectric constant as it travels across the board. Because of this, there is a range of FR4 materials available. Better materials have a tighter weave structure that gives a more consistent dielectric constant. The dielectric constant of FR4 also changes with temperature by as much as ± 20%.

There are superior materials available for PCB fabrication, such as Teflon or ceramic, but these come at a price. The material that the board is fabricated from must be considered and chosen early in the PCB design process in consultation with the fabricator. To help balance material selection against material cost, many PCB fabricators allow a mix of materials so that the expensive materials are only used for the layers that carry the high-speed signals.

The Layers

Like many aspects of printed circuit board design, working out the best number of layers is as much art as it is math. Fanout and escape routing of dense BGAs will strongly influence the number of routing layers. Performing a test fanout and escape route to check the densest BGA in the design can help verify there are enough signal layers. Another approach, recommended by Barry Olney of In-Circuit Design, is to run a test autoroute on the board. He suggests that if it completes at least 85% of the routes, the board should be hand-routable using the current layer stackup.

Adding and assigning layers is done in pairs. Generally, you will either have a pair of plane layers for each pair of signal layers, or a pair of plane layers for every two pairs of signal layers. So a four-layer board will be two plane and two signal; a six layer board will be two plane and four signal, an eight-layer board will be four plane and four signal, and a ten layer board will be four plane and six signal layers. Note that this is only a guideline; the overriding objective is to ensure that every high-speed signal layer is adjacent to a plane layer.

Not all signals are high-speed signals, and not all layers can be configured as high-speed routing layers, so the standard practice is to assign and route the high-speed signals on specific layer pairs. Each signal layer pair should have one layer in the pair assigned for vertical routing and the other assigned for horizontal routing, and these should be followed as best as possible to reduce crosstalk between the adjacent layers. The high-speed pair can be positioned on either side of a plane layer or between two plane layers. 

The thickness of the dielectric between the high-speed signal layers and the reference plane layer will be set to suit the required characteristic impedance; typically this will be less than 10 mils (0.25 mm). To achieve the overall board thickness required for mechanical reasons, adjust the thickness of a dielectric layer(s) that is not adjacent to a high-speed signal layer, for example, the center core layer.

The HDI Handbook includes a packaging technology map, which can be used to indicate if a design can be implemented using traditional mechanical drilling, or if it is likely to need to use a High-Density Interconnect (HDI) structure. IPC standards IPC/JPCA-2315 and IPC-2226 include formulae that can be used to calculate component and wiring densities, providing you with valuable information to use when discussing the number of layers and the stackup options with your fabricator.

Possible Layer Stackups

The table below shows a number of possible layer stackups and layer assignments. The arrangement of high-speed pairs and general purpose pairs can be changed, for example, if your six-layer/thruhole-only design can have the high-speed signals routed on the top layer, this is a good option if it means the high-speed signals do not need to use vias. Keep each high-speed layer adjacent to a plane layer, and the surrounding dielectric thicknesses the same for the high-speed layers.

4-layer 6-layer 8-layer 10-layer 12-layer
        Signal HS-H
      Signal HS-H GND
    Signal HS-H GND Signal HS-V
  Signal H GND Signal HS-V Signal H
Signal V GND Signal HS-V Signal H GND
GND Signal HS-V GND GND Signal V
POWER Signal HS-H POWER POWER Signal H
Signal H POWER Signal H Signal V POWER
  Signal V GND Signal HS-H Signal V
    Signal V GND Signal HS-H
      Signal HS-V GND
        Signal HS-V

Suggested layer stackups for 4, 6, 8, 10, and 12 layer boards.

Define the layer stackup early and pay close attention to the start/stop layers available for vias.


High-Speed Design in Altium Designer

This section provides information on how to tackle each of the challenges in designing a high-speed PCB, in Altium Designer.

To summarize, the process of routing a board with high-speed signals requires you to manage:

  • Termination components that may be required
  • The definition of the signals that need high-speed design rules applied to them
  • The mechanical dimensions of the routes - for controlled impedance routing
  • The properties and dimensions of the board materials
  • The quantity and arrangement of the layers in the layer stack
  • The return path of each high-speed signal
  • The impact and configuration of vias
  • The configuration and routing of differential pairs
  • Configuring and controlling the route lengths

Pre- and Post-layout Signal Integrity Analysis

Early in the design process, it is important to identify signals that might require impedance matching so that additional termination components can be included before the component placement process is complete. Since output pins are typically low impedance and input pins are typically high impedance, termination components may need to be added to the design to achieve impedance matching.

Altium Designer includes a signal integrity simulator that can be accessed during both the design capture and board layout phases of the design process, allowing both pre- and post-layout signal integrity analysis to be performed (Tools » Signal Integrity). The signal integrity simulator models the behavior of the routed board by using the calculated characteristic impedance of the traces combined with I/O buffer macro-model information as input for the simulations. The simulator is based on a Fast Reflection and Crosstalk Simulator, which produces very accurate simulations using industry-proven algorithms.

Because both design capture and board design use an integrated component system that links schematic symbols to relevant PCB footprints, SPICE simulation models and signal integrity macro-models, signal integrity analysis can be run at the schematic capture stage prior to the creation of the board design. When no board design is present, the tool allows you to set up the physical characteristics of the design, such as the desired characteristic trace impedance, from within the signal integrity simulator. At this pre-layout stage of the design process, the signal integrity simulator cannot determine the actual length of particular connections so it uses a user-definable average connection length to make its transmission line calculations. By carefully choosing this default length to reflect the dimensions of the intended board, you can gain a fairly accurate picture of the likely signal integrity performance of the design.

Nets with potential reflection problems can be identified and any additional termination components can be added to the schematic before proceeding to board layout. The values of these components can then be further tuned once the post-layout signal integrity analysis has been performed.

The Signal Integrity analysis engine helps identify nets with potential reflection issues. Note that measurements can be taken directly from the waveforms.
The Signal Integrity analysis engine helps identify nets with potential reflection issues. Note that measurements can be taken directly from the waveforms.

Learn more about Impedance Matching the Components

The Signal Integrity analysis engine installs as a System Extension. If it is installed it will appear on the Installed list of the Extensions & Updates view, as shown below. If it is not currently installed, click the Configure button to install it.

Extensions add functionality to the design environment, they are managed in the Extensions & Updates view

Learn more about Extending Altium Designer

Defining the High-Speed Signals

Main articles: Defining High-Speed Signal Paths with xSignals, xSignal Wizard

High-speed design is the art of managing the flow of energy from one point on a circuit board to another point. As the designer, you need to be able to focus your attention and apply the design constraints onto a signal that travels from this point on the board to that point on the board. This signal you are focusing on is not necessarily a single PCB net though. The signal might be one branch of A0 in a design that you intend to route in a T-branch topology, with the other branch of A0 being another signal you need to focus your attention on as well, and be able to compare the route lengths of these two signals. Or the signal might include a series termination component in its path (which the PCB editor sees as one component and two PCB nets), and if that signal is in a differential pair, its length needs to be compared to the length of the other signal in that pair.

You can manage these requirements using a feature known as xSignals, where an xSignal is essentially a user-defined signal path. You select the source pad and the target pad (in the workspace or in the PCB panel) then right-click on either to define that signal path as an xSignal. As well as interactively defining an xSignal by its start and end pads, you also can run the intelligent xSignals Wizard, whose heuristics will help you to quickly set up a large number of xSignals between the chosen components. These xSignals can then be used to target design rules to your high-speed signals. The software understands the structure of these xSignals; for example, calculating the overall length of multiple nets connected through a termination component, as well as the distance through that termination component.

The PCB panel includes an xSignal mode that is used to examine and manage the xSignals. The panel also provides feedback on the signal length, highlighting xSignals that are close to meeting (yellow) or failing to meet (red) the applicable design constraints. In the image below the xSignal lengths of the CLK1 differential pair are different in length by more than allowed by the applicable Matched Length design rule. The panel includes the Signal Length, which is an accurate point-to-point length. Traditional length inconsistencies, such as tracks within pads and stacked track segments, are resolved, and accurate via span distances are used to calculate the Signal Length.

xSignals can be used to create user-defined signal paths, for rule definition and length calculations
Use the xSignals mode of the PCB panel to manage and investigate your xSignals. Note the thin line; this indicates the signal path through a series component.
(Image courtesy FEDEVEL Open Source, www.fedevel.com)

The delay caused by the length of the pin within the device package is also supported, by defining the Pin Package Delay.

Learn more about xSignals.

Defining the Properties of the Routing

Main article: Controlled Impedance Routing

Traditionally, board designers would define the widths and thickness of the routing by entering a dimension for the width and selecting a thickness of copper for that layer. This was generally sufficient since you only needed to ensure that the current could be carried and the required voltage clearances were maintained. This approach is not sufficient for the high-speed signals in your design, for these you need to control the impedance of their routes.

Controlled Impedance routing is all about configuring the dimensions of the routes and the properties of the board materials to deliver a specific impedance. This is done by defining a suitable impedance profile, and then assigning that profile to the critical high-speed nets in the routing design rules.

Defining the Impedance Profile

Main article: Configuring the Layer Stack for Controlled Impedance Routing

Impedance profiles are defined in the PCB editor's Layer Stack Manager (Design » Layer Stack Manager). The Layer Stack Manager opens in a document editor, in the same way as a schematic sheet, the PCB, and other document types do.

Once the layer properties have been configured, switch to the Layer Stack Manager's Impedance tab to add or edit single or differential impedance profiles.

A 50Ω impedance profile defined for individual nets routed on the top layer, hover the cursor over the image to display the settings for the same profile for layer L3.A 50Ω impedance profile defined for individual nets routed on the top layer, hover the cursor over the image to display the settings for the same profile for layer L3.

Impedance calculations are performed by the Simbeor® electromagnetic Signal Integrity engine from Simberian. Simbeor's model accuracy is validated through the use of advanced algorithms for 3D full wave analysis, benchmarking and experimental validation. The Simbeor engine supports all modern board structures and materials. The engine supports the use of polygons on signal layers as reference layers.

Configuring the Design Rules

The routing impedance is determined by the width and height of the route, and the properties of the surrounding dielectric materials. Based on the material properties defined in the Layer Stack Manager, the required routing widths are calculated when each impedance profile is created. Depending on the material properties, the width may change as the routing layer is changed. This requirement to changes widths as you change routing layers is automatically managed by the applicable routing design rule configured in the PCB Rules and Constraints Editor (Design » Rules).

For most board designs, there will be a specific set of nets to be routed with a controlled impedance. A common approach is to create a net class or differential pair class that includes these nets, then create a routing rule that targets this class, as shown in the images below.

Normally you manually define the Min, Max and Preferred Widths, either in the upper constraint settings to apply them to all layers; or individually for each layer in the layer grid. For controlled impedance routing you enable the Use Impedance Profile option instead, then select the required Impedance Profile from the dropdown. When this is done, the Constraints region of the rule will change. The first thing you will notice is that the available layers region of the design rule will no longer show all signal layers in the board, it will now only show the layers enabled in the selected Impedance Profile. The Preferred Width values (and diff pair gap) will update to reflect the widths (and gaps) calculated for each layer. These Preferred values cannot be edited but the Min and Max values can, set these to suitable smaller/larger values.

Routing Width Design Rule

For single-sided nets, the routing width is defined by the Routing Width design rule.

When you choose to Use an Impedance Profile, the available layers and Preferred Widths are controlled by the selected profile.When you choose to Use an Impedance Profile, the available layers and Preferred Widths are controlled by the selected profile.

Differential Pairs Routing Design Rule

The routing of differential pairs is controlled by the Differential Pair Routing design rule.

For a differential pair, the available layers, the Preferred Width and the Preferred Gap are controlled by the selected profile.For a differential pair, the available layers, the Preferred Width and the Preferred Gap are controlled by the selected profile.

Learn more about Differential Pair Routing

There is a great deal of debate about corners in high-speed signal routes. While it is agreed that the electrons will not fly off when they hit a 90-degree corner, a traditional 90-degree corner is wider across the corner diagonal, which does change the impedance of the route. Rounded or 45-degree corners are preferred - both are standard features of the PCB editor's interactive router - and if needed 90-degree corners can be mitered using the Convert Selected Tracks to Chamfered Path command. Note that this command converts the selected track segments into a single region object.

Choosing the Impedance

So how do you know what target impedance to select? This is normally driven by the characteristic source impedance of the logic family or technology being used. For example, ECL logic has a 50Ω characteristic impedance, and TTL has a source impedance range of 70Ω to 100Ω. 50Ω to 60Ω is a common target impedance used in many designs, and for differential pairs, 90Ω or 100 Ω differential impedance is common. Remember, the lower the impedance the greater the current drain, the higher the impedance the more chance there will be EMI emitted, and the more susceptible that signal will be to crosstalk.

A 100Ω differential pair can also be viewed as two, 50Ω single-ended routes that have the same length. This is not exactly correct due to the coupling that occurs between the pair, which becomes stronger as they become closer, reducing the differential impedance of the pair. To maintain 100Ω differential impedance the width of each route can be reduced, which slightly increases the characteristic impedance of each route in the pair by a few ohms.

Defining the Properties of the Board

Main article: Layer Stack Management

The materials used for the layers in your board, their dimensions, and the number of and order that the layers are arranged, are all defined in the Layer Stack Manager. Here you configure the various layers that are needed to fabricate the final board including the copper signal and plane layers, the dielectric layers that separate the copper, the cover layers, and the component overlay.

All fabricated layers are defined in the Layer Stack Manager Stackup tab.
All fabricated layers are defined in the Layer Stack Manager Stackup tab.

Detailed information about the material properties that are entered in the Layer Stack Manager are included in the Layer Stack Table and also in the Layer Stack Legend placed in a Draftsman document.

You can also Save a layer stackup as a template in the Layer Stack Manager (File menu), and Load that template into future designs.

Configuring the Vias

Main article: Defining the Via Types

As mentioned in the overview section of this article, vias affect the impedance of the signal routing and are a key consideration in high-speed design. As well as the length, hole diameter, and via land area affecting the impedance that the signal sees, any unused portion of a via barrel can act as a stub, contributing to signal reflections. To manage this, various layer-to-layer via styles can be fabricated, including Blind, Buried, µVia, and Skip Vias. These via types are all supported in Altium Designer.

Vias are defined as part of the layer stack, in the Layer Stack Manager's Via Types tab. Back drilling of unused via barrels is also supported, these are defined in the Layer Stack Manager's Back Drills tab (Learn more about configuring the board for back drilling).

All of the various types of vias that can be fabricated can be defined in the Via Types tab of the Layer Stack Manager.All of the various types of vias that can be fabricated can be defined in the Via Types tab of the Layer Stack Manager.

Quantitative studies have been performed to understand the impact of vias, such as the Altera Application Note AN529 Via Optimization Techniques for High-Speed Channel Designs.

Summarizing this study and other references, the following guidelines are given to help minimize the impact of vias:

  • Reduce the size of the via annular ring where the signal route connects to the via, the App Note suggests a via diameter/hole size of 20/10 mil (0.5/0.25 mm) for mechanically drilled vias.
  • Remove unused annular rings (also known as NFPs, or Non-Functioning Pads) on layers that the via is not connected to. Use the Tools » Remove Unused Pad Shapes command to do this.
  • Increase the clearance from the via barrel to adjacent plane layers. This is controlled by the Power Plane Clearance design rule, the App Note suggests 40 to 50 mil (1.0 to 1.25 mm). Note that this increases the size of blowouts in those plane layers.
  • Place stitching vias adjacent to signal vias whenever the signal route has a layer change that results in the return path switching to another layer. If the new reference plane layer is the same voltage as the original reference plane then those planes should be tied together with a via, within 35 mil (0.9 mm) of the signal via (center to center).
  • When the signal route has a layer change and the new reference plane layer is a different voltage, place decoupling capacitors adjacent to the signal via. This capacitor decouples directly between the 2 planes, regardless of the voltages they carry. Note that this solution can result in noise being coupled from one plane to the other, so this should only be done as a last resort to reduce the return path loop area.
  • Remove via stubs (extra via length beyond the layer that the signal route accesses the via). This is done by using suitable blind and buried vias, or by via back drilling during fabrication.

The design of the vias is a key ingredient in the high-speed board design process. The possible layer-to-layer via connection options are dictated by the fabrication process chosen to achieve the layer stackup, which means you must choose the fabrication and drilling process as the via style and the layer stackup is being defined.

The PCB editor supports back drilling (also referred to as Controlled Depth Drilling). The feature supports back drilling from both sides of the board, and back drilled sites can be easily examined in the PCB panel, with the board displayed in 3D mode.

Read more about Controlled Depth Drilling.

Managing the Return Path for High-Speed Signals

A good quality return path is essential for each high-speed signal in the design. Whenever the return path deviates and does not flow under the signal route, a loop is created and this loop results in EMI being generated, with the amount being directly related to the area of the loop.

Creating Power Planes

  • A power plane can be created from either a plane layer, or a signal layer covered by a polygon(s).
  • Creating a power plane with a plane layer:
    • Plane layers are added in the Layer Stack Manager, right-click on an existing layer to Insert layer above or Insert layer below to add a new plane layer.
    • With the plane layer selected as the active layer, double-click anywhere within the plane to open the Split Plane dialog, where the net can be assigned.
    • The software automatically pulls the plane edge back from the edge of the board by the amount specified in the Pullback Distance column for that layer in the Layer Stack Manager. If that column is not visible, right-click on an existing column heading to access the Select Columns command.
    • A plane layer can be split into separate regions by placing lines (Place » Line). Press Tab after starting to place the first line segment to set the width of the split line. Place the line segments from board edge to board edge, or create a closed shape for an island. The software will automatically detect the separate shapes created by the split lines, double-click on each shape to assign it to a net.
  • Creating a power plane with polygons on a signal layer:
    • Signal layers are added in the Layer Stack Manager, right-click on an existing layer to Insert layer above or Insert layer below to add a new signal layer.
    • If separate power zones are required it can be easier to cover the entire layer with a polygon and then slice it (Place » Slice Polygon Pour). Press Tab after starting to place the slice line to open the Line Constraints dialog, where you can set the slice width - this width will become the distance between the two polygons created by the slicing action. The slice line must start outside the polygon and finish outside the polygon.
    • To repour a polygon, right-click and select Polygon Actions » Repour Selected from the context menu. 
    • Polygons can also be shelved (temporarily hidden), right-click and select the relevant command from the Polygon Actions sub-menu. Use this feature when you need to move components and routing.
  • It can help to display the different nets in a different color, as shown in the images below. This can be done in the schematic or the PCB, learn more about Applying Color to the Nets.

The left image is a plane layer split into 3v3 and 5v0 zones, the right image is a signal layer with a 3v3 polygon and a 5v0 polygon. Net colors have been assigned and highlighting enabled.  Two power zones created by polygons on a signal layerThe left image is a plane layer split into 3v3 and 5v0 zones, the right image is a signal layer with a 3v3 polygon and a 5v0 polygon. Net colors have been assigned and highlighting enabled.

The Plane as a Signal Return Path

A good quality return path is one where:

  • There are no breaks, splits, or blowouts (holes in the plane created by a via or thruhole pin) under the signal route in the plane providing the return path (the plane closest to the signal of interest).
  • The width of the return path is ideally 3x the width of the signal routing, or 3x the distance from the route to the plane, whichever is smaller. While the greatest current density is directly below the signal route, it also spreads out into the plane on either side of the route with approximately 95% flowing within 3x the route width. Breaks in the plane within this region have the effect of increasing the impedance of the return path, and any deviation in the return path will create a loop. In terms of signal integrity, this increased return path impedance impacts the quality of the signal as much as increasing the impedance of the signal path.
  • The area of the loop has been minimized. Generally, it is more important to reduce the loop area than minimize the routed signal length. If the return path encounters a blowout, consider re-routing the signal to suit an available return path. 
  • When a power plane is providing the return path, the return energy will ultimately get to ground through a decoupling capacitor. Carefully consider the location of the decoupling capacitors near the source pin of the signal to minimize the size of any loop created.

Managing Split and Multiple Power and Ground Planes

There is general agreement that a ground plane should not be split unless there is a specific requirement for it and you understand how to define and manage it. Instead, the components should be arranged to keep noisy components separate from quiet components, and to also cluster components by the supply rail that they use.

Other points to keep in mind about power and ground planes include:

  • If the design requires a ground plane to be partially split then signals that traverse those areas should be routed across the bridge (the zone without a split below it).
  • If you are attempting to minimize circuit noise, it is better to use additional ground planes than to split a plane, and where possible, include plane layers for both the supply and ground rails of each regulated power supply. 
  • If the design includes multiple rails with each distributed on its own plane, ensure that each power plane only references its own ground plane. Do not let allow a power plane overlap (reference) a different rail's ground plane. This creates capacitive coupling, allowing noise to travel from one supply to another.
  • If the adjacent plane is a power plane that must be split into different voltage areas, then you might need to decouple directly across the two voltages areas to provide a suitable return path.

Visualizing Split Planes

To help with the task of visually checking the return paths, you can configure the display so you can more easily examine the return path under the critical route paths.

Assigning color to the plane nets can make it easier to detect where a signal crosses a split in the plane
Checking if signals travel over a split line as they traverse different voltage areas on the plane. the four highlighted nets
cross a split in the VCC power plane, creating a split in the return path of those signals.

To do this:

  • Assign a color to each power net, learn more about Applying Color to the Nets.
  • Reduce the display of layers to only show the relevant signal and plane layers. This set of layers can be saved as a Layer Set, learn more about creating a layer set.
  • Switch to the signal layer and Ctrl+Click on the net of interest to highlight it (include Shift as you click to highlight multiple nets). The advantage of highlighting over selecting is that highlighting is persistent, press Shift+C to clear the current highlight set.
  • Highlighting is achieved by dimming the rest of the objects in the workspace, the Dimmed Objects level is set in the Mask and Dim Settings section of the View Configuration panel.
  • Make the plane layer the active layer.

Your net(s) will stand out, and any splits or discontinuities that lie in the return path, such as split lines or blowouts created by through-hole pads and vias, will be easier to see. 

  • Both plane layers and signal layers covered by polygons can be used as supply rail planes.
  • You can ensure that signals are not inadvertently routed across a split in a plane by placing a keepout along the split, on the keepout layer.

Detecting Breaks in the Return Path

Breaks or necks in the return path can be detected by the Return Path design rule. The Return Path design rule checks for a continuous signal return path on the designated reference layer(s) above or below the signal(s) targeted by the rule. The return path can be created from fills, regions, and polygon pours placed on the reference signal layer, or it can be a plane layer.

The return path layers are the reference layers defined in the Impedance Profile selected in the Return Path design rule. These layers are checked to ensure the specified Minimum Gap (width beyond the signal edge) exists along the signal's path. Add a new Return Path design rule in the High Speed rule category.

The return path layers are defined in the selected Impedance Profile, the path width (beyond the signal edge) is defined by the Minimum Gap.The return path layers are defined in the selected Impedance Profile, the path width (beyond the signal edge) is defined by the Minimum Gap.

The image below shows return path errors detected for the signal, NetX, with a Minimum Gap setting of 0.1mm. It can be easier to locate Return Path errors by configuring the DRC Violation Display Style to show Violation Details but not the Violation Overlay ( show image), in the Preferences dialog. Doing this highlights the exact locations where the rule has failed, rather than the entire object(s) in violation. 

To avoid detecting small errors, such as the section highlighted in the diagonal track segment in the image above, configure the PCB.Rules.ReturnPathIgnoreArea setting in the Advanced Settings dialog. The default is to ignore areas < 10 sq mils.

Configuring and Routing Differential Pairs

Main articles: Differential Pair Routing, Controlled Impedance Routing

The definition of differential pairs can be done during schematic capture, or they can be defined once the design has been transferred to board layout. A core requirement of defining a pair on the schematic is to include an _P or _N at the end of the Net name for each of the relevant nets. Differential pairs are identified on the schematic by placing a Differential Pair directive on each net, or by placing one on a Blanket directive, where the Blanket directive overlays a set of enclosed differential-style Net Labels, as shown in the image below.

Example of how a Blanket directive can be used with a Differential Pair directive to target multiple nets

A Blanket can be used to configure multiple nets as differential pair members.

Working with Differential Pairs:

  • In the PCB editor, differential pairs can be defined in the Differential Pair Editor mode of the PCB panel. To simplify the process of defining design rules that apply to the differential pairs, they can either be assigned to Net Classes or to Differential Pair Classes, both of which are defined in the Object Class Explorer.
  • To route a differential pair with a controlled impedance, create an impedance profile in the Layer Stack Manager. Learn more about Controlled Impedance Routing.
  • The properties of the differential pair routing is defined by the Differential Pair Routing design rule.
  • To route a differential pair, you use the Interactive Differential Pair routing command. Click on either the _P or _N pad to commence routing, then use the Spacebar to cycle through the available exit routing shapes. The routing behavior is the same as single net routing, press Shift+F1 for a list of interactive routing shortcuts. As you approach the target pads, press Ctrl+Click to complete the routing up to the pads.

Differential Pair rules of thumb:

  • Length matching is critical for differential pairs to be effective, keep the lengths matched to within 25 mil (0.635 mm). Another rule of thumb that is used is to match the lengths to be within 20% of the signal rise time. Differential pairs work because the return energy flows back through the other member of the pair, the more that the lengths do not match, the greater the amount of energy that returns through the nearest plane layer instead.
  • Discontinuities in the coupling, such as when the pair members route around either side of an obstacle, increases the impedance. It can be better to route the entire pair with looser coupling (for example 2 x signal route width) to reduce the amount that the impedance changes due to coupling discontinuities.
  • Keep aggressor routes away, especially on surface layers, aim for a clearance of 3 x the signal route width for potential aggressor nets.
  • As a general rule, aim for a pair-to-other signal clearance of 2 x signal route width.
  • Keep same-layer ground polygons away by at least 3 x signal route width.
  • Reflections introduced by vias and coupling discontinuities are managed through controlled impedance routing, doing this requires a continuous reference plane below the signal path.
  • Reduce the signal layer-to-plane separation to improve immunity to crosstalk.

Controlling and Tuning the Route Lengths

Main articles: Length Tuning, Length design rule, Matched Length design rule

A key requirement of managing high-speed signals on a board is to control and tune their route lengths.

  • The absolute lengths can be monitored by the Length design rule, and the and relative route lengths monitored by the Matched Length design rule.
  • The current lengths of a set of nets, and their compliance with applicable design rules, can be checked in the PCB panel in Nets mode (as shown below).
  • If there is a Length rule and/or a Matched Length rule defined, then you can monitor the length during interactive routing or length tuning by displaying the Length Tuning Gauge (Shift+G).
  • The delay caused by the length of the pin within the device package is supported, to learn more read about Pin Package Delay.

  • Nets that include serial components in their path are managed by defining xSignals.

Design Rules

  • Managing the Overall Route Lengths - the overall route length of a net or set of nets can be monitored by a Length design rule. The Length design rule has a minimum and maximum allowed length, if the Signal Length is less than the allowed minimum it is highlighted in yellow in the PCB panel (in Nets mode), a Signal Length greater than the allowed maximum is highlighted in red.
  • Managing the Relative Route Lengths - the relative route lengths of a set of nets can be monitored by a Matched Length design rule. The Matched Length design rule has a tolerance and uses the longest route in the set of targeted nets as reference length. Yellow highlighting of the Signal Length in the panel indicates that the length of this signal is less than the longest route length minus the tolerance. Red highlighting indicates that this signal's length is greater than the longest route length. 

To understand how the settings of these two rules are resolved when both are present in a design, refer to the Length Tuning page.

Monitoring the Route Length

Current route lengths are displayed in the Nets mode of the PCB panel, and are updated as you route. The Routed length value will go yellow as you approach the target length, and turn red if you exceed it.

If there is a Length rule and/or a Matched Length rule defined, you can monitor the length during interactive routing or length tuning by displaying the Length Tuning Gauge. While you are routing, use the Shift+G shortcut to toggle the Gauge on and off.

The Gauge shows the current Routed Length as a number over the top of the slider, while the slider shows the Estimated Length. During length tuning the Estimated Length = Current Routed Length; if you are using the Gauge during interactive routing then the Estimated Length = Routed Length + distance to target (length of connection line).

The Gauge settings are calculated from the constraints defined by the applicable rules.The Gauge settings are calculated from the constraints defined by the applicable rules.

  • Gauge minimum (left edge of gauge) is 45 (lowest MinLimit)
  • Gauge maximum (right edge of gauge) is 48 (highest MaxLimit)
  • Left yellow bar (highest MinLimit) is 46.58
  • Right yellow bar (lowest MaxLimit) is 47.58 (obscured by the green bar in the image above)
  • Green bar (TargetLength) is 47.58 (route length of the longest net in the set, equal to MaxLimit)
  • Green slider and the overlaid numerical value (Current route length) is 47.197.

Tuning the Route Lengths

Route lengths can be tuned after the routing is complete, using the Interactive Length Tuning command, or the Interactive Diff Pair Length Tuning command (Route menu). These commands add accordion sections to the routing, in a choice of three shapes.

If there is an applicable Length rule and Matched Length rule, the length tuning tool considers both of these rules and works out the tightest set of constraints. So if the maximum length specified by the Length rule is shorter than the longest length targeted by the Match Length rule, then the Length rule wins and its length is used during tuning.

To see which rules are being applied or to change the accordion properties during length tuning, press Tab to open the Interactive Length Tuning mode of the Properties panel, as shown below. Note the Target Length, this is the Max Limit of the strictest applicable rule settings.

Interactive Length Tuning mode of the Properties panel, use this to configure the tuning accordion's shape and dimensions
Press TAB during length tuning to open the panel in Interactive Length Tuning mode,
where you can select the target length mode and adjust the accordion parameters.

To tune the length of a net, run the command and then click anywhere along the net's length. Move the cursor so that it follows the path of the route, tuning accordion sections will be added as you do. Tuning sections will continue to be added until the length requirements defined by the applicable design rule(s) have been satisfied. If the cursor moves outside the bounds of the tuning accordions, the accordion shapes will disappear - when the cursor is moved so that it is back within the bounds of the accordion shape, they will re-appear.

Length and Length matching rules can be applied to nets, differential pairs or xSignals. xSignals are ideal if the lengths being monitored or matched include series components or branched routing. The xSignals mode of the PCB panel displays the current routed length of each xSignal.

In Conclusion

While it is not possible to derive a universal set of rules that apply to every high-speed design, it is possible to follow good design practices that will help you succeed with your high-speed design. There are a number of industry experts that deliver practical and popular training courses on high-speed design. Use the links below to learn more, and to research specialized training options.

References

The author gratefully acknowledges the work of the following industry experts, this article is an attempt to summarize their collective knowledge.

Douglas Brooks articles

  • Microstrip Propagation Times
  • Splitting Planes For Speed and Power
  • Skin Effect
  • Differential Trace Design Rules - Truth vs Fiction

Dr. Howard Johnson articles

  • Via Inductance
  • 10 Layer Stack

Lee W. Ritchey books and articles

In-Circuit Design articles - Barry Olney

  • Differential Pair Routing
  • The Plain Truth About Plane Jumpers
  • Critical Placement
  • Stackup Planning (Parts 1, 2 & 3)
  • The Perfect Stackup

Best Practice in Circuit Board Design - Tim Jarvis RadioCAD Limited

PCB Layout - Learn EMC website

Keith Armstrong articles, EMC Information Centre (free registration required)

The Electronic Packaging Handbook - Glenn R. Blackwell

The Printed Circuits Handbook - Clyde Coombs and Happy Holden

The HDI Handbook - Happy Holden and others

Via Optimization Techniques for High-Speed Channel Designs - Altera Application Note AN529

High-Speed PCB Design Considerations - Lattice Semiconductor Application Note TN 1033 

Measuring a Signal's Flight Time - Chris Grachanen, EDN

The Future of HDI Via Structures, Power Delivery, and Thermal Management in Next Generation Printed Circuits - Tom Buck TTM Technologies

 

 

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