Impedance Controlled Routing for Boards Made in Altium Designer
Computing requirements and applications require data be processed at faster rates than ever before. As communication bands start to fill and new wireless communication components hit the market, components need to transmit and receive at higher frequencies and then convert these signals to digital data. Specialized applications like 5G wireless will be operating with mmWave components (24 to 48 GHz).
This means that signal integrity issues like crosstalk, EMI, and ringing, and noise, in general, are becoming ever more critical in PCB design. Analysis tools need to be able to identify and provide some insight into compensating signal integrity problems in PCBs during the design phase. No one wants to receive their finished board from a manufacturer, only to test it and find that bit error rates are sky high. This is where simulation tools become critical, allowing you to diagnose signal integrity problems before your product hits the shelves.
Altium Designer® ’s environment includes tools that allow you to define signal traces in your PCB using specialized design rules. Altium allows you to incorporate the appropriate impedance formula for your trace configuration as a design rule, making impedance controlled design much easier. This critical feature is only inherent in rules-driven design, making it easy to include impedance calculations as part of your overall design workflow.
Impedance Controlled Routing
You could certainly start designing your board with a devil may care attitude towards impedance. The risk is that the traces you place will not properly match impedance between sources and loads. As a result, you might experience intense ringing in some traces due to signal reflection from impedance discontinuities. You’ll have to use the signal integrity tool to identify each mismatch and manually apply termination.
If you’re working with a device that requires a large number of traces and will operate at high speed, the best way to ensure traces are terminated is to use a technique called impedance controlled routing. This strategy incorporates the standard impedance formula for different trace configurations as part of your design rules. Your interactive router will place traces with the appropriate width such that your traces will have a defined impedance value.
Setting Up Impedance Calculations
Enabling impedance controlled routing in Altium occurs after your schematics are completed but before you layout your board. You’ll want to set up this feature and enable design rules when designing your layer stack.
Once you have designed your schematic, you need to define a layer stackup before beginning impedance controlled routing. Create a blank PCB, go to the “Design” menu, and click “Layer Stack Manager”. In the lower right corner of the dialog box, you’ll see an “Impedance Calculation” button. This will open up the Impedance Formula Editor dialog. By default, the editor includes standard formulas for microstrip and stripline traces.
The Impedance Formula Editor in Altium
Note that these default formulas are commonly accepted for microstrip and symmetric stripline traces. If you plan to use, for example, asymmetric stripline traces on the internal signal layers, the formula will be different and you’ll need to enter this manually. Normally, these odd arrangements are not used except in special circumstances, and your board will work fine at high speeds with either microstrip or stripline traces.
Once you’ve defined the impedance formulas that are relevant for your design and created your layer stack, you’ll need to define constraints on your routing tools. This will ensure that your traces will have the required width in order to maintain a specific impedance value during interactive routing.
Before going further, you might be thinking “Wait, impedance depends on the cross-sectional area. How do we control the thickness of the traces?” Remember, the thickness of the traces was specified using the layer thickness in the layer stackup. If you look at the previous image, you’ll see that traces on the top and bottom layers will be 0.05 mm thick, and traces in the internal layers will be 0.036 mm thick.
If manually typing out the entire formula is not your cup of tea, you can use the Query Helper to enter the formula. You can access the Query Helper by clicking the “Helper” button. This dialog shows you the syntax you must use to refer to different parameters in your board. This is listed in the “PCB Functions” -> Impedance list. This gives you a massive level of control over your impedance calculations.
Query Helper dialog in Altium
There is one important point to remember when using these tools: changing the calculated impedance formula will not automatically update the calculated trace width formula, and vice versa (this dialog does not magically turn you into an engineer). If you use a different impedance formula, you’ll need to solve for the corresponding trace width on your own.
Defining Impedance Control as a Design Rule
The design rules you define next will specify the width required to maintain a specific impedance value. If it turns out that the required trace width is too large, you can increase the trace thickness by changing the thickness of the signal layer. Note that you should always use a back-of-the-envelope calculation to get an idea of the trace width and thickness you’ll be using.
To start configuring your design rules, open up the “PCB Rules and Constraints Editor.” Click on the “Design” menu and then click the “Rules” option. If you look at the list on the left hand side of the editor, you’ll see an entry for “Routing”. Click into the Routing -> Width -> Width option. This design rule is outlined in red in the following image.
Setting up impedance control during routing in Altium
There are two important points in this dialog, which are also outlined in red. First, you can choose to apply impedance control to traces in specific signal layers or with specific signal nets. If you look near the top of the dialog, there is a drop-down menu that currently says “All.” This means that impedance controlled routing will be used in all signal layers and on all nets. If you like, you can open this menu and select specific signal layers and nets that will use impedance controlled routing.
To enable impedance control, simply click on the check box near the middle of the dialog. The dialog will change and you’ll no longer see a drawing of a trace as in the previous figure. Instead, there will be three options that allow you to define the desired impedance, as well as upper and lower tolerances on your desired impedance value. After you click the “Apply” button, the trace outline will reappear, as shown in the next image.
Impedance control is now applied to the top layer
Here, impedance control has been applied to all signals in the top layer. The tolerance has been defined as +/- 10% as we are routing microstrips. Note that this is the tolerance value that is typically specified by most designers, but your fabricator must have tight manufacturing tolerances in order to reach this tolerance on the outer layers. Standard copper etching and deposition processes on the outer layers can produce traces with impedance that will be far more than the +/-10% tolerance. Therefore, impedance control should be applied to inner layers if very tight impedance control is required.
Note that this setting actually takes priority over impedance control on specific signal nets. Suppose, for example, you are routing a net through multiple layers. If one of these layers has impedance control enabled, then impedance control enabled for all signals, then this will be automatically applied to the signal net. If multiple nets are routing through multiple layers, but only some of these nets require impedance control, then you’ll want to enable impedance control on specific nets, rather than on an entire layer.
Now that the layer stack is finished and this important design rule is enabled, you can capture your schematic as an initial layout. You can start arranging components and routing traces. When you’re using the interactive router, you’ll notice that “[Width From: Rule Preferred]” appears in the status bar at the bottom of the screen as you route. Your traces will appear on your board with predefined width.
Impedance control automatically defines your trace width as you route
When you’re deciding whether to use impedance controlled routing in your PCB, it is a good idea to run a signal integrity simulation and identify impedance mismatches in your board. A large impedance mismatch between two points in your board can cause ringing, which appears as a large underdamped oscillation superimposed on top of your signal. Using impedance controlled routing can ensure that your impedance values match throughout a signal net or across your entire board. You can also use the signal integrity tool in Altium Designer to determine the best termination option for specific traces.
The rules-driven design engine in Altium Designer makes it easy to implement an impedance controlled routing scheme. If you have an existing design that has signal integrity problems, the signal integrity simulator can iterate through possible termination schemes and show you the results, allowing you to select the right scheme to terminate your traces. Combined with the top-notch CAD tools and component libraries, and you can easily identify and alleviate signal problems in your next PCB. Only Altium Designer offers all these features and many more.
Talk to an Altium expert today to learn more about the signal integrity tools in Altium Designer.