Applied Parameters: None
This command is used to access the PCB Rules and Constraints Editor dialog in which you can browse and manage the defined design rules for the current PCB document.
Altium Designer's PCB Editor uses the concept of Design Rules to define the requirements of a design. These rules collectively form an 'instruction set' for the PCB Editor to follow. They cover every aspect of the design – from routing widths, clearances, plane connection styles, routing via styles, and so on. Rules can be monitored as you work, and you can also run a batch test at any time to generate a DRC report.
Altium Designer design rules are not attributes of the objects; they are defined independently of the objects. Each rule has a scope that defines which objects it must target. Rules are applied in a hierarchical fashion, for example, there could be a clearance rule for the entire board, then a clearance rule for a class of nets, then another for one of the pads in a class. Multiple rules of the same type can be set up. It may arise that a design object is covered by more than one rule with the same scope. In this instance, a contention exists. All contentions are resolved by a priority setting. The system goes through the rules from highest to lowest priority and picks the first one whose scope(s) matches the object(s) being checked.
With a well-defined set of design rules, you can successfully complete board designs with varying and often stringent design requirements. And as the PCB Editor is rules-driven, taking the time to set up the rules at the onset of the design will enable you to effectively get on with the job of designing, safe in the knowledge that the rules system is working hard to ensure that success.
This command is accessed from the PCB Editor by choosing the Design » Rules command from the main menus.
After launching the command, the PCB Rules and Constraints dialog will open. Use this dialog to define new design rules or edit/remove existing rules with respect to each of the following rule categories:
- There are two types of design rules - unary and binary. Unary rules apply to one object, or each object in a set of objects. As a consequence, unary design rules have one rule scope. Binary rules apply between two objects, or between any object in one set to any object in a second set. As a consequence, binary design rules have two rule scopes.
- When adding a new rule to a rule type that already contains one or more existing rules, the priority will be set to 1 (i.e. the highest priority).
- A new rule can also be created using the Design Rule Wizard. Access is made directly using the Rule Wizard command (from the Design menu) or by clicking the Rule Wizard button on the lower-left of the PCB Rules and Constraints Editor dialog.
- When scoping a rule, the Query Builder is a simpler method of constructing a query, using sensitive condition types and values that only allow the designer to build using relevant 'building blocks'. For advanced query construction with full keyword specification and operator syntax use the Query Helper.
- If a particular design rule is no longer required but may be used again in the future, rather than delete it, it can be disabled. Do this by toggling the corresponding Enabled option for the rule in one of the relevant summary lists in the PCB Rules and Constraints Editor dialog.
- Many rule types have default rules created when a new PCB document is created. In a similar fashion, if all specific rules for one of those rule types are deleted, the default rule will be re-added automatically the next time the PCB Rules and Constraints Editor dialog is accessed. Alternatively, default rules can be created again by clicking the Create Default Rules button at the bottom of the dialog.
- Use the PCB Rules And Violations panel to quickly interrogate to which objects a rule applies. This can be particularly useful when creating a query for a rule’s scope(s) since a rule can be edited directly from the panel, and therefore, the query can be 'massaged' until the desired objects are captured by the scope(s).