Optimization Guide for PCB Routing Constraints
The problems that can happen by not using constraints with your PCB routing.
The different types of PCB routing constraints you can work with in your design.
How to apply rules and constraints to your PCB routing.
Complex PCB routing that requires rules and constraints for success.
The word “limit” often has a negative connotation attached to it, causing people to be wary. Limits or constraints, however, are very important for overall positive growth. According to experts, parents who don’t set limits for their children run the risk of those children growing up having little respect for the rules of society. Therefore, parents usually work hard at establishing rules and constraints for their children to grow into emotionally healthy adults.
In the same way, setting up rules and constraints for routing a printed circuit board should not be viewed as a negative part of our job. It can take time and involve research and manual input, but setting up these constraints and routing your board according to the rules can save your design from ending in disaster. We’re going to examine some of the reasons why PCB routing constraints are important and then show how using them can add a lot of value to your next design.
Problems With Not Using Rules and Constraints in PCB Routing
Constraints and rules are used in PCB design for a number of reasons. They will help you to organize your design and communicate important information between the schematic and the layout. Primarily, though, they are used to prevent manufacturing problems and to ensure the electrical performance of the circuit board. Here are some issues that constraints are designed to address:
Components that are placed too close to each other or oriented incorrectly may be difficult to assemble or solder correctly. Additionally, auto-insertion machinery may not be able to place the parts as needed, and technicians doing manual assembly may not be able to fit their tools and solder materials into the tight areas. The closer those parts are to each other, the more potential for collateral damage, as hot soldering irons or other tools impact nearby components.
Metal on the circuit board that is too close to other metal objects may also cause problems during the manufacturing process. Solder slivers can form, causing intermittent shorts, which are difficult to find and correct. Solder can also bridge between traces or pads causing direct shorts. Parts that are connected to large areas of metal, such as small surface-mount bypass capacitors attached to a ground plane, may not solder correctly without the correct thermal reliefs.
Traces used to conduct power that aren’t wide enough may be inadequate for the amount of current that they are carrying. Some traces also must have exact widths to control their impedance. Other traces need to be routed to a specific length or to match the length of similar nets. Differential pairs must be perfectly routed side-by-side. Still, other traces may need to be routed in specific patterns or “topologies.” All traces may or may not have spacing requirements to other traces side by side, above, or below them.
It used to be that you could take a PCB design, throw it into the auto-router, and end up with a completely routed board that worked perfectly. That is no longer the case. Without the proper care in trace routing widths, spacing, lengths, and topologies, you may end up with a plethora of signal integrity problems. These can range from crosstalk, reflections, ground bounce, and electromagnetic interference.
Working with PCB design rules and constraints is no longer a luxury; it is a requirement needed to satisfy the various manufacturing and electrical performance requirements for the design. Therefore, the next question is, what kind of constraints are available in the design tools that can be
PCB design rules and constraints can be set up for many things such as diff pairs, as shown here.
What Are the Different PCB Routing Constraints?
There are many different rules and constraints that you can set up for routing your PCB design, and we will list some of them here as examples. We’ll start with some non-routing constraints on components because even those will ultimately have an effect on your routing.
Components: The constraints that you can set up for components include clearances to other parts, or objects and board outline features such as cutouts. These part clearances can be to individual components, or to groups (classes) of components. You can also set constraints for which side of the board a part can be placed on or restrict it from being placed in specific areas due to height or performance reasons.
Trace widths: The width of a trace can be set up as a default for the majority of nets in a design, for specific nets, or for net classes. These constraints can be attached for controlled impedance routing widths, differential pair widths, or other sensitive nets, such as clock lines. In some cases, you may need to reduce the width of a trace for tight area routing, which is known as trace necking. You may need to route traces at extra-large widths as well for power requirements or change the widths frequently for RF designs.
Trace clearances: These constraints can be set up to control the clearances of trace-to-trace, trace-to-pad, trace-to-via, trace-to-other metal, and trace-to-other features, such as drill holes or board edges. There may also be additional clearance rules set up for specific areas or layers of the board depending on the requirements of the design.
Trace routing: Aside from basic width and clearance settings, you may need finer control over how the trace is routed. This can include minimum and maximum lengths for a trace, or matching the length of one trace to others using serpentine routing. You may also need to put topology constraints on a trace in order to ensure that it follows a specific pattern such as “T-topology” or “fly-by topology,” both of which are used in DDR memory routing patterns.
Vias: With constraints, you can specify the type of via The differential pairs constraint settings in Allegro PCB DesignerThe differential pairs constraint settings in Allegro PCB Designer that is going to be used for individual nets or net classes. These would include thru-hole, blind, buried, and microvias. You can also specify the structure of these vias such as the layer span of blind and buried vias. You will have control over via clearances to components and other objects on the board.
Planes: Constraints will allow you to control how your power and ground planes will be connected to traces and components with thermal reliefs. You can specify the minimum amount of metal widths allowed in the plane and whether it will be composed of a solid or cross-hatched pattern. As with the other constraints, you can control the clearances of your planes to traces, vias, and other board objects.
These are just some of the constraints that you can work with to help your PCB routing. The next step is to add these constraints to your design.
By assigning your nets to their net classifications in the schematic, you can save yourself a lot of trouble.
Design Tips for Setting Up Rules and Constraints
You can set up design constraints and rules for PCB routing from either the schematic or the layout. In tools such as Cadence Allegro, you can easily create and assign net classes in the schematic as you can see in the picture above. From there, you can set up specific width and clearance rules and then attach those rules to the classes that you’ve created.
On the layout side, you can work with the same set of constraints. Here is where many designers will fill in the full details of all the different width and clearance values as well as lengths and topologies. Allegro’s different simulation and analysis tools will allow you to determine what lengths your traces will need to be based on the timing of the signal. Advanced constraints, such as trace lengths, can be controlled with specialized routing features that allow you to create serpentine routing in layout.
Another tip is to make sure to use the full features of the tools to help you with setting up the rules. Allegro’s Constraint Manager has many features in which you can set up default values across an entire set of rules, saving you from having to enter each value manually.
There are also ways to copy and paste rules. When you are done, don’t forget to save your rules so you can use them again and again. In this way, you can turn your rules and constraint files into a library system that you can mine for future designs.
Setting up ground plane connectivity is handled with constraints, as shown here in Allegro PCB Designer.
Using Constraint-Driven Routing in Allegro PCB Designer
Without the proper trace routing widths, clearances, lengths, and topologies, your PCB design can quickly become a signal integrity disaster. Combine that with all of the other design requirements that must be followed and it becomes obvious why a full and comprehensive design constraint and rule system is necessary.
Fortunately, Cadence has addressed this need with their Constraint Manager application. This tool allows for the creation and assignment of classes and rules in both the schematic and layout of your PCB design and gives you some powerful editing features to organize the constraint data.
Being able to control exactly how your PCB design will behave is vital, as you can see in the ground plane connectivity shown in the picture above. Allegro gives you a lot of power in all aspects of your design, which is the key to the ultimate success of your project. To find out more about how Cadence can help you with the routing of your PCB layout, take a look at this E-book.
If you’re looking to learn more about how Cadence has the solution for you, talk to us and our team of experts.