EEVblog > EEVblog Specific
#93 - Autorouters
vonnieda:
Hi Dave, and all,
I am not an EE, but I do quite a bit of electronics design. I have no formal training and have been slowly learning what I know since I was a little kid putting Radio Shack kits together with my dad. These days I am doing quite a bit of PCB design for little projects of my own. Your rant #93 on autorouters struck a nerve with me and I wanted to ask about it.
I've been using the EAGLE autorouter for all of my projects. I read the documentation about it and some tutorials and believe I know how to use it pretty well. I know to set up proper minimums for my different nets and to tell it the right spacing for the board house I am eventually sending the board to (or bigger, if I can help it). One thing I have never done is any manual routing. I jumped directly into PCB design with, what I consider to be, moderately complex boards. I'm not talking about computer motherboards or anything but boards with lots of small components on physically small boards, double sided and all surface mount.
What my question boils down to is: Is it really true that real engineers (like yourself) would really manually route boards like this? I've attached a few recent examples to this post. It seems to me like the routing would be wildly difficult and take a huge amount of time as you had to go back and change things as the routing gets more complex. I expect your answer will be "Yes, that is a very simple board and would be easy to manually route!" so if anyone can recommend some resources on learning to manually route I'd really appreciate it. I've love for my routes to come out cleaner. I know the autorouter does a poor job but it's always worked for me.
Thanks!
Examples:
This board is for a clock I built. The board is 2.25" x 2.00"
This board is for a brewery display. The board is 2.6" x 2.00"
jahonen:
I definitely agree with Dave.
AFAIK, at my work, most boards really are routed manually. Even those what would be called quite complex. Autorouter works only acceptably with very specific problems. I would not ever think about using it on analog or switch-mode power supplies or anything like that. Autorouter does not know how to correctly route power distribution nets on double and single-sided boards, or bypassing. Or it doesn't know how to steer currents to small loops (or even where the loops are). You do as a designer (at least you should know!).
For most boards, semi-automatic routing works best, i.e. software performs plowing of existing traces for easier routing. I wouldn't even think about trying to create differential pairs or length matched nets (those serpentine patterns you'll see often on computer motherboards) without any automation (or length-matched differential pairs!). But I guess that stuff is something what average hobbyist will ever need to do. I mean something like this.
One must just take the time to learn the optimal way to route, and placing the parts or choosing optimal pins if possible. Often the latter two is very important and often determines whether the board is routable.
Regards,
Janne
EEVblog:
--- Quote from: vonnieda on June 12, 2010, 06:16:31 pm ---What my question boils down to is: Is it really true that real engineers (like yourself) would really manually route boards like this?
--- End quote ---
Yes, it's true.
I do not know one single profesional PCB designers who uses an autorouter for anything close to a majority of their designs.
--- Quote ---I've attached a few recent examples to this post. It seems to me like the routing would be wildly difficult and take a huge amount of time as you had to go back and change things as the routing gets more complex. I expect your answer will be "Yes, that is a very simple board and would be easy to manually route!" so if anyone can recommend some resources on learning to manually route I'd really appreciate it. I've love for my routes to come out cleaner. I know the autorouter does a poor job but it's always worked for me.
--- End quote ---
I guarantee you that one day it will not work and your circuit will fail.
You have been simply lucky so far to not deal with circuits that are critical in terms of circuit layout and signal integrity.
That LED display board is a classic example of where poor routing is not going to matter a rats, because there are generally no signal integrity issues with such a board.
I've done that myself where I've had say a one-off board that I've had to send away for manufacture within an hour to meet some ridiculous deadline. In that case I would simply let the autorouter rip on all non-essential parts of the board.
Yes, that board is not at all that hard to route, it's pretty simple, but yes, it takes time. The problem with trying to teach PCB design is the infinite variety of layout, every one is different and will have it's own rules. The key though is in placement and to group components according to functional dependence. i.e. if two chips are joined with an 8 bit bus, you place them side by side and not on opposite sides of the board. Or if you have a filter circuit based around a quad op-amp then you place the passive components around the opamp chip with the shortest paths.
Autorouters really came about in late 70's and 80's because PCB manufacture and IC integration techniques really weren't progressing to the point we have single chips to do everything today. So it was common to end up with a design that had to fit hundreds of digital TTL and microprocessor chips onto a double sided or 4 layer board for instance to save cost.
So you ended up with computer motherboards and the like that looked like this:
Hence all the chips were laid out in rows or columns like this and they were not fun or easy to manually route. But because they generally only operated at 10's of MHz at most, and all routes could be in opposite directions on different layers which was perfect for autorouters and they generally worked pretty well in these cases. They were useful. But placement was still very important of course, that has never changed.
Fast forward to the last 20 years or so and we've gotten back to a point were signals are 100 times faster and there are single chip solutions for most things, and signal integrity is often vital. This is now the complete opposite to what autorouters are good at.
Dave.
EEVblog:
http://more-noise-than-signal.blogspot.com/2010/06/eagle-cad-autorouter.html
Dave.
DJPhil:
When I first looked in to designing a pcb the material I found through google and the like seemed pretty much unanimous in it's distrust of autorouting. I'm still a complete newbie, but for the few boards I've slapped together I've tried doing each one both ways to see what differed. My experience is limited to the few boards I've done in KiCad, all of which were low voltage audio amplifiers of one sort or another, so no advanced concepts to speak of.
Using KiCad on small, single sided boards it seemed the autorouter's decisions were difficult to understand but occasionally insightful to the beginner. I often forget to use the space under components, and by using autoroute/undo I can sometimes catch really stupid mistakes. I often spend a good deal of time second guessing, checking guides, and googling to sort out which of a few options for a given route makes the most sense. I can see a pro using autoroute to do a first pass on a simple, tolerant design as Dave mentions, but I think autoroute's of very limited use to the beginner. If it's doing things that even I can see are wrong on a small microphone preamp board then my trust in it is extremely limited.
I take it as a given that since I haven't even begun to deal with digital anything, or signal integrity beyond proper grounding, there's little I have ever had to worry about with routing. I just wanted to express a complete beginner's point of view.
That, and Dave's second example board above is awesome.
Navigation
[0] Message Index
[#] Next page
Go to full version