Design Rules for High Voltage in Multilayer with Altium Designer

by John Walt Childers

Use these rules at your own risk. The idea here is to present an approach to a complex problem. The rules below illustrate that approach. They are NOT guaranteed to work for your board. It is ON YOU to experiment with your design rules exhaustively before building your board.

Note: This is an advanced topic and I assume the reader has experience with Altium Designer 's query syntax and its use in design rules.

Multilayer boards have an advantage in high voltage design, because electrical objects on inner layers are insulated from each other by a good dielectric. Epoxy fiberglass is a better insulator than air, meaning clearance requirements are smaller. Thus traces can be closer to pads and other traces on inner layers than they can on outer layers for the same voltage difference.

Here is the caveat in Altium Designer's query language: "Multilayer" is a layer name just like "Top Layer" and "Bottom Layer." In trying to implement smaller clearances on inner layers, I did not discover this fact and its importance until I set up numerous experiments, deliberately introducing errors and seeing whether or not they were flagged as such by my design rules. Altium Designer's query syntax does not recognize that "Multilayer" embodies any electrical layer—the syntax is too literal to manage that leap in artificial intelligence.

Altium's actual clearance checking does function correctly, meaning multilayer objects are compared with mid layer and outer layer objects. But the query language does not work that well, so we have to make up for that shortcoming by writing a few extra clearance rules.

Here are some examples that show this factor. To set these examples up, let's use net classes for each nominal or worst case voltage: +250 Volts and +750 Volts. This is a multilayer board with both surface mount and through-hole component pads and with all vias going all the way through the board, so there are vias and pads on the layer named "MulitLayer". In looking at these examples, one should be aware that design rule "priority" greatly affects how your rules work as a set. The simple guideline for priority is to set the most common, least specialized rules to the lowest priority. The default clearance rule is always the lowest priority rule.

Warning: If you didn't already know this about Altium Designer's implementation of priority, then this article might be confusing for you. If your head seems to spin while reading this, it would be best if you could go to the Altium forums and wiki for help and learn how to use some simple design rules until you are very competent with that. Then return to this article. If you continue on and become confused, take my advise and do as described just above.

Clearance Spacing Requirements Used Here Are Not Necessarily What Your EE Would Want To Use

Your clearance numbers for creepage may not agree with mine for these voltages. The amount of creepage used depends on your source data, environment of end use, factors of safety etc. I have used IPC-2221B Generic Standard on Printed Board Design, Section 6, for information on this. Table 6-1 is key. My clearances are slightly more than what would be found in Table 6-1, and section 6.3 for Type B1 (internal conductors) Type B (external conductors, uncoated at low altitude). If the electrical engineer wants more clearance, I do what he wants. Also, 2221B applies only to common dielectrics, i.e. woven fiberglass with epoxy-based resin systems. For other materials, you'd need to do some research.

Whatever clearances you settle on, you can adjust that parameter as needed in your design rules.

The Nitty Gritty: Getting Your High Voltage Clearance Rules To Function Properly in Altium Designer

Compare nets in +750 Volts to all other nets, assuming they are all low voltage (0 to 12 Volt), for now ignoring that 250 Volt objects will be included as part of "all other nets." This set of clearance rules will be given a lower priority than the rules used to compare 750V to 250V. These rule paradigms will work for any voltages--only the actual clearances will change for different voltage differences and for other complexities as mentioned .

Five rules are needed for one voltage difference. We need three rules to cover objects on outerlayers and two more for inner layers.

  1. Compare objects on "MultiLayer". :
    First Object query is InNetClass('+750Volts') And OnMultiLayer
    Second Object query is Not InNetClass('+750Volts') And OnMultiLayer Different Nets Only, Minimum Clearance 160mil
    Because MultiLayer includes outer layers, this clearance is an "in air" creepage.
    Side note: "In air" means on the outer surface of the board, as though no solder mask is used. Solder mask provides very little insulation for creepage purposes, so its presence is being ignored here.

  2. Compare +750 Volt objects on Top layer to other objects on top or multi layer:
    First Object query is InNetClass('+750Volts') And OnTopLayer
    Second Object query is Not InNetClass('+750Volts') And (OnTopLayer Or OnMultiLayer)
    Different Nets Only, Minimum Clearance 160mil
    The "OnTopLayer Or OnMultiLayer" is necessary because Altium does not recognize that if an object is on the "MultiLayer" it is also automatically on the "TopLayer". The syntax is too literal for that. Now are you getting my point?
  3. Compare "not 750V" objects on Top layer to +750 Volt objects on top or multi layer :
    First Object query is Not InNetClass('+750Volts') And OnTopLayer
    Second Object query is InNetClass('+750Volts') And (OnTopLayer Or OnMultiLayer)
    Different Nets Only, Minimum Clearance 160mil
    Is this rule really necessary? Yes! This is a case where the caveat mentioned above and regarding "Multilayer" as a layer name in Altium Designer's query language results in us having to write "extra" rules.
  4. Compare 750V objects on the middle trace layer to other objects on middle or multi layer
    First Object query is InNetClass('+750Volts') And OnMid
    Second Object query is Not InNetClass('+750Volts') And (OnMid Or OnMultiLayer)
    Different Nets Only, Minimum Clearance 40mil
    Now in this board design only one of the inner layers is being used for 750 Volt routes. That's why I could get away with using OnMid instead of using the actual middle layer name. If more than one inner layer was used for 750V, then I would have to have a set of two rules like 4 and 5 herein for each layer specifically. If I used OnMid, it could be comparing objects on one of the inner layers with objects on another one of the inner layers, which would be pointless.
  5. Compare "not 750V" objects on the middle trace layer to +750 Volt objects on middle or multi layer.
    First Object query is Not InNetClass('+750Volts') And OnMid
    Second Object query is InNetClass('+750Volts') And (OnMid Or OnMultiLayer)
    Different Nets Only, Minimum Clearance 40mil
    This brings up why priority is so important. Rules 4 and 5 here, being for an inner layer, could result in a clearance violation not being flagged for objects on an outer layer if they were multilayer objects, like vias. So Rule 1 above will have to be a higher priority than these last two rules.

The Above Set of 5 Rules Sets the Pattern

I am not going to go through another set of rules for clearance between 250 Volts and 750 Volts. Suffice it to say that it will require another five rules for the voltage difference of 500 Volts and your "Not InNetClass('+750Volts')" query object will change to "InNetClass('+250Volts')." Any entire set of rules comparing 750 Volt objects to 250 Volt objects will have to be a higher priority for that set than the set of rules above, which compare 750 Volts to all other nets. This would be a more specialized set of rules, so it gets a higher priority. Another way to say that is that a smaller set of objects meets the 750/250 Volt set of rules than the set in 1-5 above, so it would need a higher priority.

There could be many more rules needed, of course. I hope the above are enough to get you started thinking about all the possibile comparisons needed to cover your board.

High Voltage Clearance Between Layers

Traces might cross over each other on adjacent layers. At least high voltage traces will cross over ground plane. You need to know what the clearance requirements are for your dielectrics and thickness of separation for the worst case voltage difference and set that as the minimum dielectric thickness between layers. You wouldn't use the same clearance for that as for the inner layer trace-to-trace rules (40mil in this example), but would use something less. On this high-voltage board, 10 mils was used for all dielectric thicknesses. Warning: That is NOT a recommendation. Layer-to-layer clearance voltage requirements are covered in UL 60950.

Complex Subject

High voltage is a complex subject when you consider effects such as AC and crosstalk. If you do a Google search on "high voltage site:altium.com" you can find many articles by Altium on these complexities, so I recommend that. However, you won't find an article on how to use Altium Designer's design rules for nailing down your clearance rules as I've described herein.

Altium techdocs don't teach these techniques.

I searched and searched for just such an article and never found one. I had to make these discoveries myself.

Summary

Objects of different voltages on one of the two outer layers need to be compared through a set of three rules:

  1. The first voltage on MultiLayer to the second voltage on MultiLayer
  2. The first voltage on the specific outer layer to the second voltage on the same outer layer or MultiLayer
  3. The first voltage on the specific outer layer or MultiLayer to the second voltage on the same outer layer
Rules 1 through three illustrate this. So for outer layers, where you might have been thinking one rule, think three.

Objects of different voltages on one of the inner layers need to be compared through a set of two rules:

  1. The first voltage on the specific inner layer to the second voltage on the same inner layer or MultiLayer
  2. The first voltage on the specific inner layer or MultiLayer to the second voltage on the same inner layer

Well, I imagine that most people who tried to read this were bored to tears and left their computers. Maybe even had some beers. If you read this far, it could only be because you have battled with high voltage multilayer boards and know how painful it could be if they don't come out right. We're in the same boat.

by John Walt Childers, CID

21 March 2014, revised 8 March 2022

Golden Gate Graphics resides in Aurora, a suburb of Denver located in the middle of the Rocky Mountain Front-Range High-Tech Corridor , which includes the following Colorado cities from south to north:
Fountain, Colorado Springs, Monument, Palmer Lake, Castle Rock, Highlands Ranch, Centennial, Englewood, Littleton, Denver, Golden, Aurora, Broomfield, Louisville, Lafayette, Boulder, Niwot, Longmont, Loveland, Ft. Collins and Greeley.