GDS-SR - Scripting for Automation



Our users have requested that we make gds-sr into a scriptable engine; many companies now rely on manufacturing software to hold all relevant data concening a "job" including all the data gds-sr needs to generate a stepped mask set.

  automation scripting



This is achieved by creating a resource file for gds-sr.exe to read and then simply calling the gds-sr executable and passing it the name of the scripting file. We recommend the additional option -no_messages so that any message dialogs that require an acknowledgement are suppressed.


 c:\wcad\gds-sr\gds-sr.exe  e:\cad_data\samples\gds_sr_sample_script.txt -disable_messages


Example Script for Reticle Input

The contents of the script differ slightly if the input comes as a reticle or if a single die is stepped across the wafer. The annotated example below shows how a reticle input script is generated. Annotations are in "green" and are not part of the script text.

Comment lines start with the semicolon ; symbol

; Reticle Script Example April 5, 2013
; 5x8 Reticle Array
; multiple products
; 300 mm wafer


[DATABASE]      mandatory
TYPE=GDS-SR     indicates type of resource file
VERSION=2.0     current version = 2.0
UNITS=um        all dimensions input in these units (including GDSII)

SETTINGS
Define a temp directory of files that are generated during computations
Define an output directory for gdsii, SINF and placement table
the directories must exist; gds-sr will not create them on the fly
negative die edge spacing is used to allow poly layers to overlap.

[SETTINGS]
INPUT_DIRECTORY=E:\cad_data\sample
TEMP_DIRECTORY=E:\cad_data\sample\working\temp\
OUTPUT_DIRECTORY=E:\cad_data\sample\working\output\
DIE_EDGE_SPACING=-10

Define the wafer diameter, exclusion area, flats and whether you 
want to generate die in the exclusion (margins)

[WAFER]
DIAMETER=300000
MARGIN=3000
CROSSHAIRS=YES | NO        Creates X and Y crosshairs on display and in GDSII
FLAT_TOP=0
FLAT_RIGHT=0
FLAT_BOTTOM=0
FLAT_LEFT=0
GENERATE_MARGIN_DIES=YES   needed to generate extra die for clipping by HExtract

The Stepping Section is used when working with a single product die instead
of a reticle. In this example we don't need it since we define input as reticle.

; [STEPPING]
; X=4822.4
; Y=4066.4
; STREET_X=-18
; STREET_Y=-18.7
; PATTERN=RECT
; SREF_OFFSET_X=-11889.1
; SREF_OFFSET_Y=4326
; CENTER=DIE

You need either a [RETICLE] or [STEPPING] Section
In this example the foundry provided input data as a reticle

[RETICLE]
CELL_X=5
CELL_Y=8
STEP_X=4822.400000         Either specify step size inside of the 
STEP_Y=4066.400000         reticle and number of cells
;RETICLE_X=24112.000000    or reticle size and number of cells
;RETICLE_Y=32531.200000
OFFSET_X=-11889.100000
OFFSET_Y=4326.000000


[RETICLE_GRID]  Each entry in the array is a die index number
 1  1  1  1  1  0 indicates no die in that position
 2  2  2  2  2 
 2  2  2  2  2 
 4  4  4  4  4 
 4  4  4  4  4 
 5  5  5  5  5 
 3  3  5  5  5 
 3  3  3  3  3 
 
The [DIES] Section lists each unique die that must be loaded into GDS-SR for
 stepping or for replacement. (i.e. a target or test device.)
[DIES]
; WIDTH=4840.4                             not needed as width and height
; HEIGHT=4085.1                            extracted from the GDSII file
; CENTER_X=0
; CENTER_Y=0
COUNT=7                                    number of unique die files to be imported


                                
[DIE-1]                                    Each Die gets a unique name and index number.
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
INDEX=1                                    entries in RETICLE_GRID refer to this
FILE=E:\cad_data\sample\102A.gds           filename
STRUCTURE=TOP                              specify structure
SINF=01                                    assign SINF ID 
RATIO=0                                    always set = 0 for reticle input
COLOR=0 0 255                              color is not important in batch mode

[DIE-2]
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
INDEX=2
FILE=E:\cad_data\sample\103A.gds
STRUCTURE=TOP
SINF=02
RATIO=0
COLOR=0 0 255

[DIE-3]
INDEX=3
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
EXTENTS -1000 -1000 1000 1000              If present, overrides computed data extents

FILE=E:\cad_data\sample\104A.gds
STRUCTURE=TOP
SINF=03
RATIO=0
COLOR=0 0 255

[DIE-4]
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
INDEX=4
FILE=E:\cad_data\sample\103B.gds
STRUCTURE=TOP
SINF=04
RATIO=0
COLOR=0 0 255

[DIE-5]
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
INDEX=5
FILE=E:\cad_data\sample\104B.gds
STRUCTURE=TOP
SINF=05
RATIO=0
COLOR=0 0 255

[DIE-6]
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
INDEX=6
FILE=E:\cad_data\sample\target-D-L.gds     this is a drop-in target die
STRUCTURE=TOP
SINF=FF                                    note we assign it SINF value: FF
RATIO=0
ALIGNMENT=LEFT                             Identifies this die as a left alignment die 
COLOR=255 128 64

[DIE-7]
UNITS=UM                                   GDSII Units of this die
RESOLUTION=0.001                           GDSII Resolution of this die
INDEX=7
FILE=E:\cad_data\sample\target-D-R.gds     this is a drop-in target die
STRUCTURE=TOP
SINF=FF
RATIO=0
ALIGNMENT=RIGHT                            Identifies this die as a right alignment die 
COLOR=0 255 255


Changing, Knockout, Delete, Colorizing Arrayed Die
Knocking Out and Replacing Arrayed Die
this section is used to KNOCKOUT (or DELETE) die as needed.
Also used to change or substitute an arrayed die with a target or test die
window is LLx,LLy,URx,URy; you can set LLx=URx and LLy=URy to define a point
[CHANGES]
KNOCKOUT -106584.200000  102475.000000 -103084.200000  106575.000000 
KNOCKOUT -106584.200000 -106575.000000 -103084.200000 -102475.000000 
KNOCKOUT  103084.200000  102475.000000  106584.200000  106575.000000 
KNOCKOUT  103084.200000 -106575.000000  106584.200000 -102475.000000 
KNOCKOUT   -7982.000000 -147599.000000    7982.000000 -143810.000000 
DELETE    -10844.200000  104920.000000  -10844.200000  104920.000000
REPLACE   -74580.000000   14382.000000  -74580.000000   14382.000000 Amber-D-L.gds/TOP
REPLACE    70091.000000   14382.000000   70091.000000   14382.000000 Amber-D-R.gds/TOP
COLOR      25000.000000   68000.000000   25000.000000   68000.000000 255/0/0

If a die is knocked out it remains in GDSII output (for sacrificial clipping) but is 
removed from the SINF map. If a die is deleted it is removed from both GDSII and SINF.

If [ALIGNMENT_DIE_REGIONS are defined then the user does not need to manually REPLACE arrayed
die with alignment die as shown above. 



Auto Placement of Alignment Devices
see  Automatic Placement of Left/Right Alignment Die
_200 indicates for 200 mm wafer; _300 indicates setting for 300 mm wafer

[ALIGNMENT_DIE_REGIONS]
SHOW_REGIONS=YES|NO
CENTER_DISTANCE_200=
LOWER_Y_200=
UPPER_Y_200=
MARGIN_DISTANCE_200=
CENTER_DISTANCE_300=
LOWER_Y_300=
UPPER_Y_300=
MARGIN_DISTANCE_300


Displaying Incoming Fiducials
This section is used to generate for display and bitmap export only (no effect 
on GDSII or on the map file). The resulting bitmap is normally then placed into 
a documentation package such as one that might be generated by a by MS Word 
or AutoCAD.

[INCOMING_FIDUCIALS]
; Name     Shape  Size   Cen-X   Cen-Y  RGB Color
POLYMER_UL ROUND  1000  -68400   70450  225 120 163
POLYMER_LL SQUARE 1000  -68400  -70450  225 120 163


Color and Fill Pattern Controls
Affects display and bitmaps; no effect on GDSII or die map
[COLOR]
BACKGROUND=255 255 255
WAFER_OUTLINE=0 0 0
WAFER_FILL=0 255 0
WAFER_PATTERN=Solid
WAFER_VISIBLE=YES
MARGIN_OUTLINE=0 0 0
MARGIN_FILL=255 255 0
MARGIN_PATTERN=Solid
MARGIN_VISIBLE=YES
DIE_ENCLOSED_OUTLINE=0 0 0
DIE_ENCLOSED_FILL=0 255 0
DIE_ENCLOSED_PATTERN=Solid
DIE_ENCLOSED_VISIBLE=YES
DIE_MARGIN_OUTLINE=0 0 0
DIE_MARGIN_FILL=255 0 0
DIE_MARGIN_PATTERN=Diagonal Cross
DIE_MARGIN_VISIBLE=YES
COLLAR_OUTLINE=0 0 0
COLLAR_FILL=255 0 0
COLLAR_PATTERN=Solid
COLLAR_VISIBLE=YES
RETICLE_OUTLINE=0 0 0
RETICLE_VISIBLE=YES


GDSII
Any data on your imported die will be automatically passed to the GDSII output.
You can control whether you want GDS-SR to generate wafer outlines, margin, cross
hairs, and knockout windows with the directives below.

[GDSII]
DIE_LAYERS=70:20 30:20 10:20
EXPORT_MARGIN=YES
MARGIN_LAYER=62
EXPORT_WAFER=YES
WAFER_LAYER=63
EXPORT_CROSSHAIRS=YES
CROSSHAIRS_LAYER=100
EXPORT_KNOCKOUTS=YES
KNOCKOUTS_LAYER=101
EXPORT_RETICLES=YES
RETICLES_LAYER=102
GDSII_FILE=array_before_clipping.gds
VIEW_GDSII=YES|NO                          If YES, calls GDSII Viewer and passes file name


SINF WAFER MAP
If you wish to export a SINF wafer map include this section 
andmake sure to specify an output file name.

[SINF_WAFER_MAP]
FILE=array_sinf.txt
DEVICE_LABEL=Example
LOT_LABEL=00293
WAFER_LABEL=0302
FNLOC_TOP=                                 Used to overwrite the default flat/notch location.           
FNLOC_BOTTOM=
FNLOC_LEFT=
FNLOC_RIGHT=

Die Placement Table
If you wish to export a simple die placement table include
this section and make sure to specify an output file name.


[DIE_PLACEMENT_TABLE]
FILE=die_placement_table.txt

Exporting a BMP bitmap
If you want to export a bitmap add this section.
[BITMAP_IMAGE]                             
FILE=C:\Temp\export.bmp                    name and location
SIZE=2000                                  bitmap width in pixels.


Closing GDS-SR
You need this directive to close the gds-sr executable once it is complete:

[SCRIPT]
AUTO_CLOSE=YES

 






Program Operation:   1 2 3 4 5 6 7 8


GDS-SR Home Download Revision History Price


ARTWORK CONVERSION SOFTWARE, INC.                  Company Profile
417 Ingalls St.,     Santa Cruz, CA 95060         Tel (831) 426-6163     Fax 426-2824               email: info@artwork.com