Error Checking

Designing a board is a difficult process that involves the simultaneous juggling of competing design requirements.  Mistakes will be present on your design.

Let's find them and deal with them.

1. Overview

There are multiple opportunities to catch design errors prior to shipping.  Some of the error-checks must be performed by fabrication houses while other error-checks can be found by EDA programs.  Unfortunately, some errors cannot be determined with current software offerings.

EDA Software

EDA software capabilities vary widely, but most of them are able to perform some type of electrical rule check (ERC) and Design Rule Check (DRC.)  These tests are performed by the designer / electrical engineer.

ERC - Electrical Rules Check

The Electrical Rules Check (ERC) is performed in the schematic capture utility.  Designers run this test to look for mistakes caused by inattention to detail during schematic capture.  This test requires a well-maintained parts library to function correctly and requires customization to work with programmable microcontrollers, FPGAs, or anything else with programmable pins.

The ERC matrix from Diptrace

What it can do

This checks basic net connectivity -- looking for open-circuit and short-circuit faults in the schematic document.  Additionally, these checks can ensure that pins are correctly connected to one another -- for example, that a digital output is connected to a digital input, that outputs are not directly connected to power-rails, etc...

What it cannot do

ERCs cannot perform basic electrical engineering tasks such as ensuring that a 5V output is not connected to a 3.3V input.  They cannot tell you if you forgot to include a component, or made a mistake in setting up the hierarchy of your design.

Fabrication House

DRC - Design Rule Check

The Design Rule Check (DRC) checks trace and space minimums, copper clearances to board edges, minimum drill sizes, etc...  This test checks the basic manufacturability of your design against values you input into your program.

What it Can Do

The DRC can determine if there is too little copper in an area or too little space between copper features.  It checks for minimum annular ring sizes and minimum drill sizes.

What it Cannot Do

DRCs cannot determine if you chose the correct copper weight for your design, or if you selected the right creepage and clearance values for high-voltage circuits.  This test doesn't care what pins are connected, or if you use teardrops.  It's just an algorithm that measures dimensions and distances between features in your design.

Fabrication House Software

DFM - Design For Manufacture

The Design for Manufacture test checks everything that DRC test checks and more.  Manufacturers have a quality control process that looks at the reasons that designs fail to be manufactured correctly at their specific plant.  When they find a problem, they can create a "rule" that looks for that problem in future layouts.  For example, a designer might have run a trace a bit too close to a non-plated through-hole -- not a problem on a laser-drill process, but a big problem on a mechanical-drill process.

What the Test Can Do

Similar to the DRC performed by the EDA software, the DRC looks for measurements between copper features.  A good DRC will apply rules based on the stackup and processes used to fabricate the board.  

What the Test Cannot Do

DRCs have no idea what you designed, and what the nets actually do.  So no signal-integrity or power-integrity analysis can occur.  There is no indication of voltages in gerber files, so no creepage and clearance checks can occur.  DRCs do not look at part numbers and they do not look at footprints, so you can use the wrong part land pattern and create a board that cannot be assembled.

DFA - Design for Assembly

The design for assembly test looks for issues that might keep a board from being successfully populated with parts.

What the Test Can Do

This test looks for problems that might keep the board from being successfully assembled.  Are you mixing lead and lead-free parts?  Do you have the wrong land-pattern for your part footprint?  Are your parts too close to the edge?  Do you have open vias in a thermal pad?

What the Test Cannot Do

DFA software cannot always predict how solder will behave on a board nor how the board will behave during reflow.