↑ Return to Projects

Auto-route thin traces to a high current bus

On a recent project, this problem came up during the circuit board design. High current traces like Gnd and 5VDC, you probably need a nice fat trace. Normally pretty easy to do. Create a net class or two. maybe called POWER and set the minimum trace with up to whatever you feel is sufficient for the high current, then simply assign the necessary nets to the right net class, auto-route and you’re done. Piece of cake.

Until….

You try a design with a MSOP-16 part that has to connect to those power traces.
MSOP-16

Note the pin spacing. really REALLY tight. Yeah, that’s like 0.5mm between pins. If you’re trying to run 50 mil traces for power like I was, the auto-router will choke when it attempts to route a 50 mil trace to a pin with 0.5mm pin spacing. (50mil = 1.27mm)

What do do? Hand-route can work, but then the Design Rule Checker keeps complaining about having small traces connected to a net class with a 50mil minimum. Yeah, that works too, but it’s not pretty.

Finally zeroed in on this solution. Inserting breaks (I call them reducers) into the circuit design. Effectively creates a separate net/signal between those MSOP pins and the fat POWER signal traces.

Looks like this on the circuit diagram itself:

Reducers stuck in a signal line

Reducers stuck in a signal line

it’s really just a symbol with two pins facing each other. But two pins is enough to keep the big fat GND separate from the thin ground going to the MSOP device.

Here’s what the symbol itself looks like:

Reducer Symbol.  Simply two pins

Reducer Symbol. Simply two pins

But the trick really comes in with the package. Actually package(s). Two packages, one open, one closed. Basically the package consists of two SMD pads. One small-ish, one large-ish with enough distance between them so that the auto-router is happy routing that 50mil trace to the large pad without bumping into any clearance issues with the small pad. I did put a “restrict” area between the pads to stop the auto-router from trying to sneak small traces between the two pads.

Looks something like this:

Reducer package open.   Left pad is 25 mil square, right pad is 10 mil square

Reducer package open. Left pad is 25 mil square, right pad is 10 mil square

With this package selected for the reducer device, the auto-router will be happy and (generally) will auto-route to 100%. woohoo! Except that electrically, this is wrong. It’s an open circuit. That’s where the other package some into play. The 2nd package for the device is the ‘closed’ version. This one has a wire between the two pads. It’s electrically correct, but incompatible with the auto-router. So the game is to use the ‘open’ package when auto-routing and remember to switch all the reducers to the ‘closed’ package before producing the board.

Closed package looks like this:

Reducer package closed. 25 mil square pad on the left, 10 mil square pad on the right 10 mil wire between them

Reducer package closed. 25 mil square pad on the left, 10 mil square pad on the right 10 mil wire between them

This works pretty good as long as you remember to switch the packages! You can then move the reducer around the board either closer or farther from that MSOP pin you are trying to connect to (depends on how long you want that thin trace to be!)

In an actual board design, it looks like this OPEN. There are actually two in this picture (note the yellow arrows). You can see the fat trace on one side and the thin trace on the other.

Reducer in board showing OPEN package

Reducer in board showing OPEN package

here’s the same section of the board with the packages switches to the CLOSED package

Reducer in board with CLOSED package

Reducer in board with CLOSED package

Looks great, right? But…. there’s something funky about that reducer on the left isn’t there? Yeah, that’s one unsolved problem. This all works great connecting signals to signals (that’s the example on the right). But… connecting a thin trace to say a ground pour has problems. The pour wants to keep away from the large pad, but the pad is still to small for the pour to actually make the necessary connections (ie the clearance on the pour is larger than the large pad!). So you still don’t end up with an electrical connection.

Right now, the quick fix is to simply hand-route a stub trace from the large pad into the pour and it’s good. Work-process is then to auto-route with package OPEN, then switch to package CLOSED and check for any pour connections that didn’t make it and simply hand-add that stub trace to close the gap. Better solution might be to make the large pad larger than isolate requirement on the pour (currently 60mil). Guess when I have more time to dink with it I will.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>