Does Autorouting Fit in a Standard PCB Design Workflow?
Automation is the main reason we use progressively more powerful PCB design tools in a standard workflow. The use of automated tools in PCB design and in IC design has helped companies get products up and running quickly, and we believe it has a positive impact on competitiveness. When we talk about automation in PCB design, there is one tool that everyone loves to hate: autorouters.
Contrary to popular belief, our view is that autorouters can be incorporated into a standard design process, but they will not solve all of your design challenges. It’s also important to note that autorouters will not be appropriate for every type of design or every interconnect, so they should be used on very specific connections. With these points in mind, let’s look at the standard design workflow and see where we can identify some places to incorporate automation.
Why the Distaste for Autorouters?
An autorouter is probably the worst name that could be given to an EDA tool. The very name “autorouter” conjures up an image of a point-and-click tool that automatically routes your PCB while guaranteeing perfect signal integrity and compliance with all design rules. Of course, these point-and-click automation tools have failed to live up to the promises implied by their name, and so they are looked down on by experienced designers. If these tools were successful in implementing perfect routing, they would have displaced many PCB designers long ago.
In light of these points, it is understandable that autorouters are not perceived as effective or useful tools in PCB design. The newest generation of autorouters are AI-based, where they attempt to construct routes based on past data on successful designs within some user-defined constraints. Still, they fail to do any better than a deterministic autorouter or a random search-based autorouter.
Could Workflow Be the Problem?
If you look past the implied capabilities of an autorouter and look for the successful cases of autorouter usage, it’s possible to arrive at two conclusions.
- Autorouters can usually work fine with reasonable constraints when net count is low
- Autorouters require constraints in terms of trace design and in terms of location (layers, via count, direction, etc.)
When a tool produces some success in targeted situations, the designer’s role becomes one of configuring the tool and identifying where it should be used. In other words, the challenge in implementing autorouting and other automation tools is their place in the PCB design workflow. These automation tools need to be targeted to specific components, nets, and layers, and they need to implement a specific strategy to work correctly.
A Workflow For Autorouters
Because autorouters should be targeted tools for specific nets or components, this should be included in the workflow for PCB layout and routing. An example workflow might include:
- Identify nets that do not require controlled impedance, length tuning, or specific routing locations
- Complete the component placement stage and lock the positions of the most important components
- Route all impedance controlled/length tuned nets first, then route location/layer-specific nets
- The remaining nets could be autorouted; break these into small net groups and attempt to use the autorouter to complete these
- If the autorouter fails, then route these manually as a group or individually
From the above list and graphic, it should be clear that an autorouter is just another tool that gets set up in the standard PCB design workflow. Eliminating disappointing results is all about identifying where the autorouter tool might be most successful. Working with smaller groups is also preferred as the tool will have fewer constraints to balance and it can produce higher-quality routes.
Which nets and interfaces might be good candidates for autorouting? If your goal is to tool setup time vs. conformance to design rules, it’s probably best to focus on simpler interfaces that do not carry heavy constraints on routing. A short list might include:
- Shorter SPI buses
- I2C
- I2S
- UART
- GPIOs or other control signals
These interfaces have some common characteristics. They are all single ended, they tend to operate with slower state and timing transitions (SPI can be an exception), and they do not have an impedance or length tuning specification. This means they are hard to route incorrectly. Some components, like FPGAs or large processors, could have many control pins like GPIOs or low-speed buses like I2C, and implementing a targeted autorouting strategy could reduce the design time required for these interfaces.
PCB design professionals that want to increase their efficiency trust the routing features in Allegro PCB Designer to help them build advanced electronics assemblies. Allegro is the industry’s best PCB design and analysis software from Cadence, offering a range of product design features with a complete set of management and version control capabilities. Allegro users can access a complete set of schematic capture features, mixed-signal simulations in PSpice, and powerful CAD features, and much more.
Subscribe to our newsletter for the latest updates. If you’re looking to learn more about how Cadence has the solution for you, talk to our team of experts.