1 After the PCB design is completed, the Design Rule Checker (DRC) can be used to detect any design rule violations. These operations must be completed before the subsequent processing begins, and developers of circuit schematic generation tools must provide DRC tools that are easy for most designers to use.

2 There are many advantages to writing your own PCB design rule checker. Although designing a checker is not an easy task, it is not unattainable, as any designer familiar with existing programming or scripting languages can design a checker.

3 The advantages of this job are immeasurable. By writing their own PCB design rule checker, designers can better control and optimize the PCB design process, improve product quality and reliability.

4 In addition, custom DRC tools can better adapt to specific design and process requirements, thereby improving production efficiency and reducing costs.

5 In short, writing your own PCB design rule checker is a valuable and challenging task that can bring many benefits to designers and manufacturers.


However, general-purpose tools marketed are often not flexible enough to meet specific design needs. Therefore, customers must convey new feature requirements to DRC tool developers, which usually requires a certain amount of money and time, especially when the requirements are constantly updated. Fortunately, most tool developers provide customers with a convenient way to write their own DRC to meet specific needs. However, this powerful tool has not been widely recognized or used. This article aims to provide a practical guide to harnessing the benefits of DRC tools.

The DRC must traverse the entire circuit diagram of the PCB board design, including every symbol, every pin, every net, every attribute, and, if necessary, create an unlimited number of “attached” files. As described in Section 4.0, the DRC can flag any minor deviations that violate the design rules. For example, one of the accompanying files might contain all the decoupling capacitors used in the design. If the number of capacitors is lower or higher than expected, a red mark will be flagged where there may be a power line dv/dt problem.

These side files may be necessary, but not every commercial DRC tool will necessarily be able to create them. Another advantage of DRC is that it can be easily updated to accommodate new design features that may affect design rules. Moreover, once sufficient experience in the field is gained, many other functions can be implemented. For example, if you can write your own DRC, then you can write your own bill of materials (BOM) creation tool, which can better handle specific user needs, such as how to obtain device “extra hardware” that is not itself part of the schematic database (e.g. socket, heat sink, or screwdriver).

Alternatively, designers can write their own Verilog netlist analyzer with full flexibility in the design environment, such as how to obtain a Verilog model or time file for a specific device. In fact, since the DRC traverses the entire design circuit diagram, all valid information can be collected to output the simulation and/or BOM required for the Verilog netlist analysis of the PCB design. It’s a bit far-fetched to discuss these topics without providing any program code, so we’ll use a circuit diagram acquisition tool as an example. This article uses the ViewDraw tool developed by Mentor Graphics, which is attached to the PADS-Designer product line. In addition, we have adopted the ViewBase tool, a library of simplified C routines that can be called to access and access the ViewDraw database. Using the ViewBase tool, designers can easily use C/C language to write a complete and efficient DRC tool for ViewDraw.

It is important to note that the basic principles discussed here apply equally to any other PCB schematic tool. Input file

In addition to the circuit diagram database, the DRC also needs some input files that can describe specific situations to handle, such as automatic connection to the power plane with valid power net names. For example, if the power net is named POWER, then the power plane will be automatically connected to the power plane using the backend package device (as applicable for ViewDrawpcbfwd). Below is a list of input files that must be placed in a fixed global location so that the DRC can automatically find and read it, and then store this information inside DRC at runtime.

The file legal_pwr_net_name is optional. This file contains all legal net names of POWER signal, such as VCC, V3_3P, and VDD. In PCB layout/routing tools, names need to be case-sensitive. Generally, VCC is not the same as Vcc or vcc. VCC can be a 5.0V power supply, and V3_3P can be a 3.3V power supply. The file legal_pwr_net_name is optional, as the backend wrapper device configuration file must usually contain a set of legal powerline net names. If the Cadence Design Systems Allegro routing tool is used, the pcbfwd file name is allegro.cfg and has the following entry parameters:

Ground: VSS CGND GND GROUND

Power supply: VCC VDD VEE V3_3P V2_5P 5V 12V

If the DRC can read the allegro.cfg file directly, instead of legal_pwr_net_name, it will get better results (i.e. fewer chances of introducing errors).

Some symbols must have external power line pins because these symbols are not connected to regular power line layers. For example, the VCC pin of an ECL device can be connected to either VCC or GROUND; its VEE pin can be connected to the GROUND or -5.0V plane. In addition, the power line pins can also be connected to the filter before reaching the power line layer. The power line pins are usually not externally attached to the device symbol. Instead, an attribute of the symbol (called SIGNAL here) describes which pin is a power or ground pin and describes the net name that the pin should be connected to.

SIGNAL = VCC:10

SIGNAL=GROUND:20

The DRC can read this property and ensure that the net name is saved in the legal_pwr_net_name file. If the net name is not included in the legal_pwr_net_name, then the power pins will not be connected to the power plane, which is a serious problem on a PCB board.

Leave a Comment

Contact

WellCircuits
More than PCB

Upload your GerberFile(7z,rar,zip)