Autorouting completion and quality: an autorouter developer comes clean on completion rates and the role of the designer as artist.
Today the vast majority of difficult boards are still manually routed. As someone who spends much of his life working with customers and software engineers to improve autorouters, this irks me to no end. In the past, if an autorouter could not complete a difficult board, it was simply abandoned. However, the past few years have seen a change in attitude. The demand for productive interactive autorouting of truly difficult boards is a growing tsunami. (I am referring not to medium-tough and easier boards where autorouters have proven to be effective, but rather to those boards in the "nightmare" class.)
The desire for successful autorouting has always been important but has been traditionally accompanied by an attitude that an autorouter could never compete with a top-notch designer. So, what is so different now? Mainly, the pressure to shorten design cycle time coupled with more complex designs. Interactively routing the whole board by hand just takes too long. The only alternatives are parallelizing the routing effort with multiple designers or effective autorouting, neither of which is commonplace. Due to the complexity of the routing problem on these nightmare boards, shortening the route time has once again become the best opportunity to reduce overall design time.
Man vs. Machine
Competing with the experienced designer is simple enough: route it to 100%, maintain all the quality requirements, and do it in significantly less time. Sounds simple enough, right? After all, it's only software!
A great designer can always complete 100% of routing. My service bureau's motto was: "There's always room for one more route." Still true. Often something has to be compromised to complete the routing but in general the designer (unlike an autorouter) will find a way. A designer knows what kind of pad entries are going to cause problems. A designer knows when a clearance can be violated locally without causing soldermask exposure. Quality isn't always expressed in rules and a great designer understands what can be compromised --and what can't.
With automatic routing, software vendors seek perfection but are content with "good enough." Designers usually have a different perception. Gone are the days when 99% completion is adequate. On a board with 1,000 connections, 99% completion is OK. But 99% completion on a board with 20,000 connections leaves 200 opens and only one positive angle: job security.
Designers often say, "The autorouter makes such a mess of the board that it would be easier for me to do it manually than to finish all the opens." This is a clearly a quality issue (one I will address later), but I am skeptical that it would be faster to hand-route 20,000 to 30,000 connections than autorouting and putting in 200 or 300 manually.
Supposing an autorouter does route with adequate quality, what is an acceptable number of opens if it can't route 100%? The design team manager should realize that the success of an autorouter must be measured by its overall impact on the total time to route the board. If using the autorouter and finishing manually is faster than manual routing, then it should be used. But designers measure the value of the autorouter on levels of pain. If the autorouter does a good enough job that finishing the opens is a straightforward process and doesn't require undoing more than doing, then it will be worth using.
Sometimes an autorouter will take a new approach and do better. However, it is an uphill battle to overcome traditional methods. For example, while working on achieving better completion rates on microvia boards, we found that getting the right fanout was essential; this is obvious to every designer. But we also found that if we would permit the fanout routine to complete some of the opens, the overall route time was less and completion rates higher. This is a good thing, right?
We thought so, but designers became alarmed when they saw fanout completing routes. "Fanout is fanout and routing is routing, so don't mix the two!" To me this is utter nonsense. What is the purpose of fanout? Is it to enable more effective routing and sometimes provide test point locations? Or is the purpose of fanout to provide a nice pattern of holes in a dielectric? If a board could be routed without fanouts, wouldn't that be better? If a board could be routed with 50% fewer fanouts, wouldn't that be better? When manually routing, you don't first fanout the entire board.
I can hear the skeptics: "I don't trust the automatic fanout, so I want to see all of it and approve it before I route." I also hear: "If the fanout isn't done 'right' (defined as pretty patterns), I don't want to have to remove a bunch of routes when I correct it." In the end, we added an option to route or not, but we (and our application engineers) know that allowing routing during the fanout yields higher completion in less time. Guess what they do in a benchmark?
My point is that for autorouters to succeed with new package and fabrication technology, along with a very high number of high-speed interconnects means new methods and the hurdling of certain conceptual barriers.
Quality is Job 1
Objectively, route quality can be measured by DfM checks and signal quality through simulation. Subjectively, quality is in the eye of the beholden Can a designer be objective about the quality of the autorouter results and not be consumed by his artistic inner demons? Most PCB designers, especially of my vintage, are artists at heart and few things trigger our "cringe factor" like sloppy artwork. Often the artistic demons get in the way of productivity, unless you're one of those elite designers who can route faster than anyone else and do it with style.
A few months ago, I was reviewing a design with a customer. I noticed a few areas that were less than beautiful and asked if it mattered to him. His reply: "The electrons don't know the difference." The cold truth is that if the circuit works and is completed on schedule it just doesn't matter if there are some ugly routes. I am all for beautiful designs and want our autorouter results to look like they were handcrafted. But handcrafting may not be cost-effective.
Following DfM rules is relatively straightforward for a router provided the rules can be adequately defined and there is a clear answer to the questions: What do you want the router to do if it cannot put the trace in without a violation? Do you want it to fail the entire route? Route as far as it can without error and then leave a presumably small-length open? Route with an error? If you allow the router to route with DfM errors, how many are acceptable? I find that more often than not, customers do not want the router to put in DfM violations, yet they don't want it to fail the route either.
One of the problems is that DfM checks often permit a range of values to indicate severity ant] acceptability of the error while routers tend to have a single pass/fail rule. I believe that true DfM would permit the router to have some tolerance regarding the rules and a level of acceptability, defined by the user. Still, the user needs to control where and when the rules can be stretched. This is one of the techniques used by a designer to complete a tough board. If the router has the same flexibility, it stands a much better chance of completing the board with "quality" paths.
Managing signal integrity to obtain desired delay is also a quality issue for routers. Simply stated, if the timing isn't correct, the circuit won't function as intended and therefore, the route quality is unacceptable. Routing a large bus may be straightforward, but ensuring all bits have matched delay is a significantly more difficult problem. Again, it would be good to know what to do if the bus cannot be automatically routed and matched. Should any of the routes be failed? Is a partially matched set useful to the designer or will the partial tuning just get in the way? I have seen boards with 30,000 pins in which nearly every bit of "extra" space is used up with tuning--unbelievably dense routing and tuning. How would an autorouter be judged on this type of board? Is it acceptable to route 90% and properly tune 75% of those nets? I think not, especially if the router didn't route the buses together and it didn't tune the nets in the "open" space so that the area around the large components are not blocked.
Routing a board to 100% isn't very useful if poor quality forces the designer to spend more time cleaning it up than I they would have spent routing it manually. Completion, quality and speed comprise the Holy Grail of autorouting. For many designs, the threshold of productivity autorouting has arrived. Yet, for the most difficult boards, we are still working toward solutions.
Significant engineering efforts are underway to make autorouters truly productive on even the nightmare boards. Sought-after improvements include
* Distributed autorouting using multiple route clients.
* More sophisticated tuning algorithms and bus routing capabilities.
* DfM awareness during routing.
* Applying a designer's style and approach to routing.
* Incredibly fast analysis-driven routing.
* Continued support of new technology.
Autorouting may well be productive right now, but if your autorouter just isn't powerful enough, keep an eye out for software developments over the next couple of years. Until then, I have some recommendations.
First, take an advanced routing class and become an expert. Using the default setting on a router may work for simpler boards but not for difficult ones. Get to know the techniques of scheduling, ordering, and which algorithms work best in different situations. Understand the different methods of fanout and high-speed routing.
Second, once you have the knowledge, try the router on your next board while you still route it manually. Try different setups. You may find that using a combination of automatic and interactive routing can provide significant productivity gains now.
Finally, understand that there will come a time at which autorouting is without question the only way to route a board and interactive routing will be a very small percentage of the effort. This will happen. If you understand this, then you will prepare for that inevitability by becoming an expert at autorouting. While you're at it, it wouldn't hurt to develop your placement and SI skills as well.
CHARLES PFEIL is product marketing director, Mentor Graphics, Systems Design division (mentor.com). He has worked in the PCB industry since 1966, as a designer, service bureau owner and marketing and engineering manager at Racal Redac, ASI, Cadence Design Systems, Intergraph, VeriBest, Pads and Mentor. Pfeil is scheduled to speak at PCB Design Conference East in October. He can be reached at firstname.lastname@example.org.
|Printer friendly Cite/link Email Feedback|
|Title Annotation:||Successful Autorouting|
|Publication:||Printed Circuit Design & Manufacture|
|Date:||Jul 1, 2004|
|Previous Article:||Repeatably fabricating copper channels for 10 Gb/s NRZ signaling: a statistical approach for characterizing system performance and variation for 10...|
|Next Article:||Variables of resistor heating: many variables affect resistor heating, but most of them relate to the design and construction of the PCB.|