Interrogating & Resolving Design Violations

Now reading version 23. For the latest, read: Interrogating & Resolving Design Violations for version 25

With care and attention and staged design rule checking along the way, running that final Batch DRC on the finished, fully routed board may yield only a few design violations, if any. However, there may be a sizable quantity of violations flagged, and now the task becomes one of resolving those violations.

DRC reports generated by running a Batch DRC can appear quite daunting to the new PCB designer. The secret to keeping the process manageable is to develop a strategy. One strategy is to limit the number of violations that are reported. When setting up the report options in the Design Rule Checker dialog, set the Stop When Found feature to a small number. Another strategy is to run the DRC in a number of stages. If the design contains a large number of violations, begin by enabling the rules one at a time. With experience, you will develop a preferred approach to testing the various design rules.

There are a number of ways violation information is displayed within the software. The violation markers (both Overlay and Detail) provide strong clues to the location and nature of the violation. For example, in the image below the via on the left has a detail marker that shows the diameter of the via is less than 1mm, so it must be smaller than the size allowed in the applicable Routing Via Style design rule. There is also a line drawn from the via to a pad that is nearby; this line is broken by a double-slash. This indicates that the net is un-routed (broken) between the via and pad. Use the detail markers to help interpret the error condition.

The error markers of DRC violations (both violation details and violation overlay, regardless of whether violations have been waived or not) can be removed from the design space by running the Tools » Reset Error Markers command. Note that this simply removes the error markers; the underlying design rule violations must still be analyzed and resolved.
Specific DRC violations can be waived to effectively 'suppress' a violation that is considered not to be an issue without having to craft a special (and maybe complex) design rule to facilitate the design situation. Refer to the Selectively Waiving DRC Violations page to learn more.

Detail Markers showing a via that is under-sized and an un-routed net.
Detail Markers showing a via that is under-sized and an un-routed net.

To effectively resolve a design violation, you must first be able to locate it. The PCB Editor provides various methods for interrogating design violations, as described in the following sections.

From the PCB Rules And Violations Panel

The PCB Rules and Violation panel simplifies the process of understanding and interpreting which objects a rule applies to, and why it is failing. When running an Online or Batch DRC, any rule violations will be listed in the Violations region of the PCB Rules And Violations panel. Browse violations associated with a specific rule class or individual rule within a class. Alternatively, browse all violations by selecting the [All Rules] class.

When running a Batch DRC, violations will only appear listed in the Violations region of the panel provided the option to Create Violations is enabled in the Design Rule Checker dialog.

Clicking on a violation entry will apply filtering using the offending object(s) as the scope of the filter. The resulting view in the main design window will depend on the highlighting options enabled (Mask/Dim/Normal, Select, Zoom) at the top of the panel.

Interrogate rule violations using the PCB Rules And Violations panel.Interrogate rule violations using the PCB Rules And Violations panel.

Violations themselves - or the custom violation graphics to be more specific - are drawn only on the layer(s) involved in the rule violation (the layers on which the offending primitives reside). Clicking on a particular violation will cause the layer on which that violation is associated to become the active layer in the design space, provided of course that the layer is enabled for display.

Double-clicking on a violation entry (or right-clicking and choosing Properties) will open the Violation Details dialog, which provides information about the rule being violated and the primitive(s) responsible. From this dialog the offending object can be highlighted (causing it to flash in the design space) and jumped to, effectively providing 'zoom and center'.

Highlighting essentially leaves the offending primitives in their normal visibility, with all other objects in the design space becoming temporarily monochromatic.

Using the Violation Details dialog to highlight (and jump to) the primitives involved in a design rule violation.Using the Violation Details dialog to highlight (and jump to) the primitives involved in a design rule violation.

From the Messages Panel

After running a Batch DRC, double-clicking on a violation message in the Messages panel will cross-probe to the object(s) causing that violation in the design space.

Cross-probe to a violation from the Messages panel.Cross-probe to a violation from the Messages panel.

To have violations displayed in the design space after running a Batch DRC, ensure the option to Create Violations is enabled in the Design Rule Checker dialog.

From a Generated DRC Report

If the option to Create Report File is enabled in the Design Rule Checker dialog, violations detected upon running a Batch DRC will be listed in a generated Design Rule Verification Report. Click on the hyperlinked entry for an offending object to cross-probe directly to that object in the design space.

The offending object(s) will be zoomed and centered, but no other highlighting (masking, dimming) will be applied.

Cross-probe to an offending object from the generated DRC report.Cross-probe to an offending object from the generated DRC report.

Directly in the Design Space

Violations associated with a particular design object can be interrogated directly within the PCB design space. Position the cursor over an offending object, right-click and choose a command from the Violations sub-menu. Either choose to investigate an individual violation in which the object is involved or choose to view all violations in which it is involved using the Show All Violations command. In each case, the Violation Details dialog will open, providing detailed violation information and controls for highlighting and jumping to the offending object(s). Highlighting is momentary and essentially leaves the offending primitives in their normal visibility with all other objects in the workspace becoming temporarily monochromatic. In addition, you can also opt to waive the violation.

Interrogate violations involving a specific object directly in the design space.Interrogate violations involving a specific object directly in the design space.

Note that a polygon-shaped object (e.g., Polygon Pour, Board Region, or Board Cutout) might be referenced as a PolyRegion in the Violations sub-menu.

Violations can also be browsed directly in the design space using the Board Insight pop-up. Position the cursor over an object in violation and toggle display of the pop-up using the Shift+V keyboard shortcut. Click on a violation entry to access a menu of commands, including Properties, which gives access to the Violation Details dialog. Expand an entry to browse the primitive(s) involved.

Buttons for each of the Properties, Select and Zoom commands are also available to the right of a violation entry.

Interrogate a violation using the Board Insight pop-up.
Interrogate a violation using the Board Insight pop-up.

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