Tutorial - Setting Up the Design Constraints in Altium Designer

Main page: Defining Design Requirements Using the Constraint Manager

Do I have the Constraint Manager?

Altium Designer suggests two distinct approaches to defining design constraints: the PCB Rule and Constraints Editor dialog and the Constraint Manager. The Constraint Manager is available in a PCB design project only if the Constraint Management option was enabled in the Create Project dialog when this project was created.

Note that this tutorial page applies only if the Constraint Manager was enabled for the tutorial project and, therefore, is available for it. To quickly check if the Constraint Manager is available for the tutorial project, open the Design main menu from the Schematic editor when the project's schematic document is open and check for the Constraint Manager command (). If the Constraint Manager is not available, skip this page and go to the next page: Creating and Configuring the PCB Document.

Altium Designer's PCB editor is a rules-driven environment. With a well-defined set of design constraints, you can successfully complete board designs with varying and often stringent design requirements.

Design constraints are configured in the Constraint Manager accessible from both the schematic and PCB sides of the design. In this tutorial, the design constraints will be defined from the schematic side and then transferred to the PCB, along with other design data (components and nets).

The constraints that are needed will depend on the nature of your design and manufacturing capabilities. There is no specific set of constraints that suits every design.

Defining the Clearance Constraint

The first step is to define how close electrical objects that belong to different nets can be to each other. This requirement is handled by the clearance design constraints. The Constraint Manager includes the Clearances view that presents the clearance matrix where clearances between net classes in the design can be defined. For the tutorial, a clearance of 0.25 mm between all objects is suitable.

  1. When the project's schematic sheet is the active document (click the schematic document tab at the top of the design space if it is not), select the Design » Constraint Manager command from the main menus to open the Constraint Manager i. The Clearances view of the Constraint Manager opens by default.

    Javascript ID: Tutorial_OpenCM_AD24
  2. Select the Tools » Measurement Units » mm command from the main menus to switch the current measurement units from mils to millimeters in the Constraint Manager.

  3. Click within the cell on the intersection of the All Nets row and the All Nets column, type 0.25, and press Enter.

    Javascript ID: Tutorial_CM_AllNetsClearance_AD24

    It is not necessary to enter the measurement units. The default measurement units will be added to the entered value automatically.

Defining the Width Constraints

The width of the routing is controlled by the applicable width design constraint, which is automatically selected when you start routing a net.

  • When you are configuring the constraints, the basic approach is to set the generic constraint to target the largest number of nets and then add specific constraints to target nets with special width requirements, such as power nets. Constraint priority applies automatically based on the natural hierarchy of design objects. For example, the tutorial design includes several signal nets and two power nets. The net constraint for all nets can be configured at 0.25 mm. Although the All Nets scope also targets the power nets, these nets can be specifically targeted by adding a specific constraint.

  • The width design constraint included minimum, maximum, and preferred settings. Use these if you prefer to have some flexibility during routing.

  • Avoid using the minimum and maximum settings to define a single constraint value to suit all sizes required in the entire design. Doing this means you forgo the ability to get Altium Designer to monitor that each design object is appropriately sized for its task.

  1. Open the Physical view of the Constraint Manager using the corresponding button at the top.

  2. Click within the cell in the Min Width or Preferred Width column for All Nets and define the following width values at the bottom part of the Constraint Manager:

    • Min Width = 0.2

    • Preferred Width = 0.25

    • Max Width = 0.25

    Javascript ID: Tutorial_CM_AllNetsWidth_AD24
  3. The next step is to add another constraint to specify the routing width for the power nets. To do this, create a net class for power nets and then apply specific width constraints to this class. In the Physical view, select the rows for 12V and GND nets by holding the Ctrl key and clicking the net names, then right-click the selection and choose the Classes » Add Selected to Class » New Class command from the context menu.

  4. In the Add Class dialog that opens, type Power in the Name field, make sure that both 12V and GND nets are listed in the Member column, then click Ok.

  5. An entry for the net class Power will appear in the Physical view, with the 12V and GND nets listed under it. Click within the cell in the Min Width or Preferred Width column for this net class and define the following width values:

    • Min Width = 0.25

    • Preferred Width = 0.5

    • Max Width = 0.5

    Javascript ID: Tutorial_CM_PowerNetsWidth_AD24

Defining the Via Style Constraint

As you route and change layers, a via is automatically added. In this case, the via properties are defined by the applicable via style design constraint.

  1. In the Physical view of the Constraint Manager, click within the cell in the Via Style column for All Nets and define the following via style values at the bottom part of the Constraint Manager:

    • Diameter = 1

    • Hole Size = 0.6

    Javascript ID: Tutorial_CM_AllNetsViaStyle_AD24

    Since it is highly likely that the power nets can be routed on a single side of the board, it is not necessary to define a routing via style constraint specifically for power nets.

  2. Save the changes made in the Constraint Manager by selecting the File » Save command from the main menus.

  3. Close the Constraint Manager by right-clicking its tab at the top of the design space and selecting the Close Multivibrator.PrjPcb [Constraints] command from the context menu.

Defining the constraints is now complete. It's time to create the PCB!
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Note

The features available depend on your Altium product access level. Compare features included in the various levels of Altium Designer Software Subscription and functionality delivered through applications provided by the Altium 365 platform.

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Content