web page logo for wafermap converter engine

Introduction

Some of our customers would like to use WMapConvert as part of a script that can convert a large number of wafer maps to a different format without any user intervention.

While WMapConvert was not originally programmed with this feature in mind, we have embarked on a project to make a command line version. This is a fairly large project given the large number of input/output map file formats as well as a large number of rules that define the correct syntax of the various formats.

So we will be adding formats as our customers place orders for their particular situation.

 

flow chart for WMap2ATT.exe

Flow for using WMap2ATT converter.



The Command Line Syntax

wmap2att.exe input_file file_type output_file -cfg:file.cfg [options]

where

input_file         full path to the input map file

file_type          either SINF or TELP8

output_file        full path to the output file

-cfg:file.cfg      full path to the configuration file


[options]

-lot:filename     full path to lot file name (only when TELP8 is specified)
                  default is to look for LOT.DAT in same directory as the WAFER.DAT file

-rotate:degrees   [0|90|180|270]

-silent           no messages to screen

-log:log_file     full path to log file name


The Configuration File

At present, the configuration file contains only bin code mappings. However we expect that as more formats and directives are supported we will expand the the ability of the user to put additional controls in the configuration file.

Comments - if you wish to add comment lines to the configuration file, use the # symbol in column 1. The # symbol cannot be used in other columns since it is a valid bin code in the ATT format.

Each line has at a minimum, an input bin code and an output bin code which are separated by a comma. Bin codes may have different lengths but they may not contain spaced in them.

Examples of valid bin codes:

1
01
001
A1
C
.
__
#

Examples of invalid bin codes:

,    used as delimiter
0 1 space not allowed
A 1 space not allowed


Example Config File

# SINF to ATT Bin Mapping
___,.
002,P
003,F
004,F
000,F
037,$



Rotation

Sometimes to produce data in a format required by the next machine, it is necessary to rotate the data so that the wafer flat is in certain position. For example, if your input file has the wafer flat at the TOP, and your machine operates with the assumption that the data is presented with the wafer flat at the bottom, then a 180 degree rotation will produce the desired output.

 

illustration of 180 degree rotation

In this case use the command line option -rotate:180 which will provide the correct amount of rotation.


Header Mapping from SINF to ATT


SINFATT
DEVICE:AFSW-B3895_CUPNO EQUIVALENT FIELD
LOT:M50738.1M50738.1
WAFER:M50738-01C7M50738-01C7
FNLOC:180B BOTTOM
ROWCT:72072
COLCT:128128
BCEQU:000NOT CURRENTLY READ
REFPX:10010
REFPY:44044
DUTMS:mmNO EQUIVALENT FIELD
XDIES:1.491901492
YDIES:2.63202632


Bin Code Mapping from SINF to ATT

If no configuration file is used then the default behavior is to map all bin codes to FAIL (i.e. #)

Therefore we recommend that the user always use a configuration file, and at the minimum, map the PASS bin codes and the NULL bin code. It is not necessary to map the FAIL bin codes since if an unmapped bin code is encountered, it will be mapped as a FAIL. If a separate bin code is used for reference devices these too should be mapped. An example file, panther1.cfg is shown below:

# Bin mapping for SINF 2 ATT (panther)
# NULL die mapping
___,.
# pass bin code
000,P
# Reference die bin code
037,$

# Fail. If not mapped, these will be FAIL by default.
002,#
001,#
003,#
004,#
093,#
092,#
091,#
021,#
031,#



ATTMerge.exe - Merging Two ATT Files

The purpose of the ATTMerge program is to merge two incoming ATT files and to produce a third ATT file which is generated by applying the truth table.

Conditions for Merging

Before any merging will be performed the two ATT files are checked to verify that:

  1. the row and column count match
  2. the LOT_ID matches
  3. the wafer flat position should match

The Merging Rules

For each die position the following rules are applied to produce a new output at that position. These rules are hard-wired and cannot be changed by the user.

  1. if either die = '.' then the output = '.'
  2. if either die = '#' then the output = '#'
  3. if both die have same bin code [except where 1) or 2) is true] then output = input bincode
  4. if the die bin codes differ [except where 1) or 2) is true] then output = '?'

Command Line