GDSII Boolean Script examples

This web page shows a few examples on how to run the qckbool engine on Windows in batch mode.

Minus - Not function

The minus function (logical NOT) creates an output GDSII file which consists of the first layer minus the region shared by both layers.
In the example below, the input file is reticle.gds, the output file is output.gds, RETICLE is the top cell of the input file, output layer is 59, +15-59 will perform a minus operation between 15 and 59.
C:\wcad\Qckbool\boolw32f.exe C:\example\reticle.gds C:\example\output.gds RETICLE 59 +15-59 -sizing:0.000000 -smoothing:0.000000 -job:1:1 -maxpts:3999 -window:-5217.389,-5272.000,5217.389,5272.000 +nclip:1,1 -thrnum:2 -log:C:\example\mamet2_detail.log 

AND function

The AND function creates an output GDSII file which consists of the region shared by the two layers.
In the example below, the input file is reticle.gds, the output file is output.gds, RETICLE is the top cell of the input file, output layer is 59, +15a59 will perform an AND operation between 15 and 59.
C:\wcad\Qckbool\boolw32f.exe C:\example\reticle.gds C:\example\output.gds RETICLE 59 +15a59 -sizing:0.000000 -smoothing:0.000000 -job:1:1 -maxpts:3999 -window:-5217.389000,-5272.000000,5217.389000,5272.000000 +nclip:1,1 -thrnum:2 -log:C:\example\chmet2_detail.log 

OR function

The OR function creates an output GDSII file which consists of the total region of both layers.
In the example below, the input file is reticle.gds, the output file is output.gds, TOPCOMB is the top cell of the input file, output layer is 0, +0+59 will perform an OR operation between layers 0 and 59. We also add a sizing of 1 micron. Output polygons will be sized by this value after the OR operation.
C:\wcad\Qckbool\boolw32f.exe C:\example\reticle.gds C:\example\output.gds TOPCOMB 0 +0+59 -sizing:1.000000 -smoothing:0.000000 -job:1:1 -maxpts:3999 -window:-5217.389000,-5272.000000,5217.389000,5272.000000 +nclip:1,1 -thrnum:2 -log:C:\example\chmet2_detail.log 

XOR Compare function

The XOR function (compare) creates an output GDSII file which consists of the total region of both layers minus the region shared by both layers.
In the example below, the input file is reticle.gds, the output file is output.gds, TOPCOMB is the top cell of the input file, output layer is 0, +0x59 will perform a XOR operation between layers 0 and 59. We also use a sliver value of 0.1microns - any error less than 0.1um will be ignored. The output polygons on layer 0 will represent the differences between the two layers.
C:\wcad\Qckbool\boolw32f.exe C:\example\reticle.gds C:\example\output.gds TOPCOMB 0 +0x59 -sizing:0.000000 -smoothing:0.000000 -job:1:1 -maxpts:3999 -window:-5217.389000,-5272.000000,5217.389000,5272.000000 +nclip:1,1 -sliver:0.100000 -thrnum:2 -log:C:\example\chmet2_detail.log 

Single layer union with Sizing

Qckbool allows you to perform sizing operation. User can define different sizing values for each layer in the GDSII file.
In the example below, the input file is Bias_Unit.gds, the output file is output.gds, and we are performing a union operation on layer 10 with 0.1 micron sizing.
C:\wcad\Qckbool\boolw32f.exe C:\wcad\Qckbool\EXAMPLES\Bias_Unit.gds C:\WCAD\Qckbool\EXAMPLES\output.gds TOP 10 +10 -sizing:0.100000 -smoothing:0.000000 -job:1:1 -maxpts:3999 -window:-1771.800,-1939.300,1771.800,1939.300 +nclip:1,1 -thrnum:2 -log:C:\WCAD\Qckbool\EXAMPLES\Bias_Unit_1_detail.log