Select Operation With OVERLAP Option

005_select_overlap : Select Operation With OVERLAP Option

Minimum Required Version : Expert 4.8.8.R, Guardian 4.8.5.R

Guardian DRC contains a SELECT statement that can be used to identify layout objects for a particular design rule check. The SELECT statement has many different forms; each signified by a different relational options. In this example, the OVERLAP relational option is demonstrated with the SELECT operation.

Loading the Example Circuit and DRC Script

Open Expert, load the example circuit in the Expert project select_overlap.eld, and open the sample layout cell named DFF. This sample layout contains a D-Flip Flop circuit which will be used to show the operation of the SELECT command with the OVERLAP option. Next, the DRC script containing the appropriate rule set must be loaded by selecting the Expert menu Verification->DRC->DRC Script Panel. From the script panel, select File->Open and browse to the DRC rule set for this example, named select_overlap.dsf.


The syntax for the SELECT command with relation=OVERLAP can be seen in the example DRC script and is also reproduced below:

   SELECT: Relation=OVERLAP,
                    [,Nodes < range >]
                    [,Shapes < range >]),]
           Layer1=< layer1 identifier >,
           Layer2=< layer2 identifier >,
           LayerR=< result layer identifier >;

This command creates shapes on LayerR of Layer1 that overlap a region from Layer2. The Touch- option can be used to exclude selection in the case where the shapes only touch externally. Using the options Nodes or Shapes with a specified range will only select Layer1 shapes that match that range condition. For example: Options=(Shapes > 2) will select any Layer1 region that overlaps more than 2 Layer2 regions. Another option setting shown above is Options=(C) , in which the selection operation will be based on electrical connectivity information. Using Options=(NOT) will perform the selection operation if the conditions of the select command are not met.

In this example the SELECT command with relation=OVERLAP is used to check for a DRC rule that specifies that CONTACT and VIA geometries cannot overlap. The scratch layer "cont_via_olap" is generated using the SELECT command, and is flagged as an error in the error database by using the COPY command, which will copy the "cont_via_olap" shapes to ID="text" , which contains the rule name or description.

The "cont_via_olap" scratch layer is written back to the layout in this example deck. To prevent any scratch layers from being written to the layout, the command:
can be changed to

DRC Output

To run the example DRC script, select the menu item DRC->Run from the DRC script panel with the select_overlap.dsf script loaded. Once the DRC is complete, return to the Expert window containing the layout and select Verification->DRC->Errors->Load Errors. This will open the error window containing all errors found by the DRC script. As seen in Figure1 , there are two errors for CONTACT overlapping VIA.

By selecting the first error and clicking on the "Load" button in the error window and selecting the Expert menu item Verification->DRC->Errors->First Error the layout view will be taken to the first violation as seen in Figure2 , which shows a CONTACT shape and VIA shape partially overlapping each other. Selecting Verification->DRC->Errors->Next Error will move the layout view to the second violation as seen in Figure3. In this case, the CONTACT shape and VIA shape are coincident with each other.