Autorouter ignoring traces on Power layer and not using VIA to GND layer.

Autorouter ignoring traces on Power layer and not using VIA to GND layer.

max.CSS
Enthusiast Enthusiast
1,718 Views
2 Replies
Message 1 of 3

Autorouter ignoring traces on Power layer and not using VIA to GND layer.

max.CSS
Enthusiast
Enthusiast

I have a 4 layer PCB:

 

1 - Signals

2 - GND

3 - Power

16 - Signals

 

VIA 1-16

 

I have manually routed the most important traces on the Power plane (I had to mix different power traces) and now I want the Autorouter to do the 2 signal layers.


However... If I turn on all 4 layers it will put signals on the GND and Power layer (as expected).
If I tell it to not rout these layers it ignores the traces already there and put signal VIA:s through my power traces. It also doesn't connect layer 1 GND:s with VIA to layer 2. A 1-16 VIA is passing all layers and can connect any layer to an other layers.

 

To use one GND and one Power plane is defacto standard in 4 layer boards, why on earth can it not avoid to put VIA:s through Powerplane traces? It must be the most common task in the world to route the signal layers and use VIA:s to GND and Power plane. It's not that it isn't possible, because the DRC check is full with overlaps in the Power plane, so obviously it is aware of the traces.

 

Why is it behaving like this? Have I missed something obvious or is it just a major bug that no one has bothered to fix yet?

 

Reply
Reply
0 Likes
Accepted solutions (1)
1,719 Views
2 Replies
Replies (2)
Message 2 of 3

rachaelATWH4
Mentor
Mentor

@max.CSS wrote:


However... If I turn on all 4 layers it will put signals on the GND and Power layer (as expected).
If I tell it to not rout these layers it ignores the traces already there and put signal VIA:s through my power traces. It also doesn't connect layer 1 GND:s with VIA to layer 2. A 1-16 VIA is passing all layers and can connect any layer to an other layers.

 


It can't connect the GND to layer 2 when the layer is disabled and you should have seen a warning such as this when you turned off the inner layers in the autorouter:

 

Autorouter Warning.png

 

I agree it shouldn't do this, but it does and at least it does tell you up front. You could probably get it to be more sensible if you use the ability to tell it to do certain nets and not others when running it from the command line and selectively route things in a section at a time, making sure it's doing things right and fixing things as you go along.

 

I personally wouldn't autoroute a board like this as there aren't any autorouters which will do a job as well as I will do it by hand and quite often there are significant fix-ups to be done afterwards that it negates the benefit. I'd use it more of an assistance tool to route in specific nets or groups of nets that I knew it could do easily and quicker than me and do the rest by hand. I'd probably be happy to use it for a backplane type board too as this sort of thing with point to point routing should be easily doable if everything is set up nicely in the board. It also does a reasonable job on BGA fanout now, there are improvements to be made there but with care its usable for that.

 

Best Regards,

 

Rachael

Reply
Reply
0 Likes
Message 3 of 3

max.CSS
Enthusiast
Enthusiast
Accepted solution

Yes, I know about the warning and I just wonder WHY?!?

I can't think of any situation where this is a desired behaviour. It looks like

- "Ohh, **** it doesn't work and I'm to bored to fix it. Just put up a warning sign instead".

 

Anyway, I thought I came up with a brilliant idea. Just copy the Power traces to the vRestrict layer as a mask to not put any VIA:s there... Ohh nooo, why would that be possible... You can't copy traces to the vRestrict layer (basically turning them into lines).

Had to manually draw lines over the Power traces on the vRestrict layer, then autoroute without Power and GND. This did the trick, now I only have to manually fix all the GND and Power connections.

Reply
Reply