Académique Documents
Professionnel Documents
Culture Documents
INTRODUCTION
Constraints derived from board fabrication and assembly requirements have always driven PCB design. These days
those constraints are overshadowed by the design requirements of differential pairs, BGAs, low voltage devices, and
high-speed parallel interfaces. These design components generate higher numbers and tighter tolerances of highspeed constraints.
Imagine a PCB designer finding missing or incorrect high-speed constraints during the late stages of layout design.
An attempt to fix the issue could start a costly redesign cycle, as routing changes for one signal could easily
introduce problems with neighboring signals. As the issue snowballs, a large amount of rework could be required,
causing delays and
additional costs.
Such scenarios show why
it is important to capture
signal integrity
requirements in the form
of high-speed constraints
as early as possible in the
PCB design cycle. These
constraints must be
rigorously maintained
throughout the design
cycle to ensure the
proper electrical
performance of the
completed board design.
Figure 1: An independent study by the Aberdeen Group points to the importance of signal integrity
According to an
in PCB design.
independent study
performed by the
Aberdeen Group in 2010,
89% of PCB design developers and 77% of managers say that they design for technical performance, such as signal
integrity, in order to achieve manufacturability and costs goals (Figure 1).
w w w. m e nto r. co m /p a d s
Figure 2: Constraint management can be complicated, especially with traditional dialog-based environments. A spreadsheetbased approach simplifies the entire process.
Powerful spreadsheet editing features, like multi-row/multi-column copy/paste and auto fill, allow large numbers of
constraint values to be captured or modified quickly. Opening two instances of the Constraint Manager allows
constraint values to be copied from one project to another, thus providing constraint reuse capabilities.
CONSTRAINT TYPES
There are a number of design-constraint types. Common design constraints include the following:
Length constraints impose restrictions on routing length for nets and net branches and include minimum length,
maximum length, and matched length. Minimum and maximum length constraints can be assigned to a constraint
class, individual net, or to an individual net branch (pin pair).
To define a matched-length constraint, a matched length group is required. A matched-length group includes the
group name and the group tolerance value. This approach establishes a restriction on relative lengths of group
members, i.e. the length difference between any two group members should not exceed the specified tolerance
value. A matched-length group can include either nets or net branches (pin pairs). Mixing nets and pin pairs in one
group is not allowed.
Routing constraints impose restrictions on routing layers, via usage, and trace width. Routing constraints are
defined at the net-class level and are applied to all nets in the net class. They impose restrictions on routing layer
usage, on via types allowed for routing, and on the allowed trace-width range.
w w w. m e nto r. co m /p a d s
Topology constraints restrict routing patterns for particular nets. They are used to control the routing structure
and to impose length restrictions on net branches (pin pairs).
PADS supports two topology constraints: topology type and max stub length. The topology type can be set to
three values:
MST (Minimum Spanning Tree) imposes no restrictions on the routing structure of the net
Chained restricts routing to a sequential pattern starting from the source pin and ending with the
terminator pin.
Custom indicates that the net branching is defined by a user and cant be violated during routing.
The max stub length constraint applies to nets with chained and custom topologies. It restricts the length of traces
shared by adjacent net branches. Both constraints can be specified at the constraint class level or be overwritten
for individual nets.
Figure 2: The spreadsheet view shows constraint types that can be specified for individual branches of nets with custom topology.
Shown here are matched-length restrictions and a stub-length violation.
Clearance constraints define a minimum allowed clearance between edges of two routing objects (such as traces,
pads, and copper areas) on a particular routing layer. Defining clearances is a two-stage process. First, create a set of
named clearance rules and specify the clearance values for each rule. Then, specify how to apply those rules to
particular nets referencing rules by their names. Figure 3 shows an example screen showing clearance constraints.
w w w. m e nto r. co m /p a d s
Differential pair constraints include trace width, differential spacing, and maximum separation distance. The
maximum separation distance, which specifies how long traces can run parallel while violating the differential
spacing value, is layer independent.
w w w. m e nto r. co m /p a d s
Figure 6: Constraint classes eliminate the need to create length and topology constraints for individual nets.
w w w. m e nto r. co m /p a d s
Figure 8: Condense constraint violations into a short list for easy review. Use cross-probing to locate violations on the board.
w w w. m e nto r. co m /p a d s
MF 6-14
MISC-2040 w