Few tools get as much slack as autorouters do. I’ve never seen anyone devalue a hammer or a screwdriver, but autorouters are usually seen as the crutch of beginners in PCB design; something no serious PCB designer should use. Why? Why so much antagonism toward this tool?
I think the problem lies in mismanaged expectations. Most users believe that an autorouter should be able to do their work for them, it should be able to route a design to the same standard as a professional designer would. That’s completely unrealistic, if an autorouter could do as good a job as a human, PCB designers would be out of work. Think about it from a business perspective. Profits would increase considerably if businesses didn’t have to pay for the salary of a PCB designer and instead just paid for the cost of software. A breathing, thinking person can take into account factors, and variables that an autorouter simply doesn’t consider. Even the most sophisticated autorouters available are incapable of matching the quality of work that a designer can achieve.
Once this fact is accepted, then we can start to look at autorouters for what they really are: tools. An autorouter should be no different to a PCB designer then a hammer is to a carpenter. Like any tool, it can be used to expedite certain tasks, and has limitations which need to be understood in order to leverage it effectively.
From this perspective we can start to identify what types of jobs an autorouter might help us to do. One example that stands out in my mind, is connecting components to a ground plane. In many designs, the typical approach to grounding is to drop vias to the ground plane (whether internal or on a surface layer) that connect the through short traces to the various components. This keeps the impedance to ground low across all the components that connect to ground on the board. Doing this task manually is tedious, which makes it an ideal task for an autorouter.
In EAGLE, the Fanout command (which is a type of autorouter) can be made to handle this task for us by clicking the Fanout command, selecting the Fanout signal option and then clicking on a ground airwire. In a few seconds all the ground vias have been placed and connected leaving the PCB designer more time to focus on critical traces. It’s this type of task that makes the autorouter a useful tool.
In EAGLE V9, the autorouter can leverage multiple cores to have multiple routing variants running concurrently. This allows you to explore the results of various cost factor configurations in the time it used to take to try out one cost factor setup. The end result is that the user can find the optimum autorouter configuration to generate the result he/she feels is best suited for their design. The new TopRouter prerouter, uses a topological algorithm to generate results that are more esthetically pleasing and in general produce fewer vias. If you are a someone who likes the best of both worlds you could use the Quick route functions of the route command. It basically combines manual routing with the autorouter to make sure the DRC is obeyed when you make your connections.
The general work flow for using the autorouter in EAGLE effectively is to route critical traces manually first. The autorouter in EAGLE won’t modify any pre-existing traces so you can be sure that your critical traces will be untouched. Once your critical traces have been routed you can then let the autorouter handle the work of the non-critical traces and focus your effort on other tasks. The key here is determining what traces are critical in your design. Any traces that have to carry high current(more than a few amps), or high speed signals(30 MHz+) are likely critical traces in your design. If you have low-level analog signals (EKG and EEG signals come to mind) in your design these are likely critical traces as well. There are other factors that could be considered but are beyond the scope of this blog post.
Reconsider your stance on the autorouter. It is simply a tool that needs to be used properly in order to obtain a benefit. Certainly, there are designs that will contain a majority of critical traces, in which case it will be better to manually route the board. So, yes you are better than the autorouter. That’s why a design with a majority of critical traces will need 100% of your attention. For the rest of your designs take advantage of the benefits of an autorouter and allow it to boost your productivity.