1. Field of the Invention
The present invention relates to testing software. More specifically, the present invention discloses a universal and integrated wafer testing real-time monitoring software system and its open system architecture.
2. Description of the Prior Art
Wafer testing is an extremely important link in the semiconductor industry. However, the testing results need to be analyzed very quickly in order to improve yield. Common programs only provide a database to users from a graphical user interface (GUI). Users cannot find the root cause of low yield wafers from the database because most of them are binary files and show no relationship. Besides, it provides no E test data or ASCII file to users, therefore, it is difficult to trace wafer process errors. Yield improvement is related to wafer manufacturing processes and IC design specifications, but the present invention can perform numerous sorts of analyses to find out the root cause of low yield wafers because all data can be traced under different sub-directories. Data in all different sub-directories of this platform may be data coming from probers, data from testers, data from stdf files, data from E test machines or WAT results from wafer manufacturing processes.
Generally speaking, testers for wafer testing can be of different brands and of different purposes. Major tester vendors include Teradyne, Agilent and Credence. On the other hand, TSK, TEL and EG are also three major brands of wafer probers, which are used in conjunction with testers. Additionally tester terminals may use personal computers (PCs) or workstations, and hence generate PC based or Unix based data files. Binary output files generated by wafer probers are also in different formats depending on brands. Due to marketing considerations, software from one prober vendor does not support reading binary file types of another vendor. So users must buy different supporting software to accommodate different probers and shortcomings and loopholes appear at the system integration level. Furthermore users easily subject themselves to pressure from vendors, such as they should only buy one type of prober. Additionally, they cannot generate good competition among prober vendors and have an active position in accessing technologies.
Wafer testing factories in Taiwan are facing no smaller a challenge than that of foundries. In order to take orders from TSMC or UMC, testing factories must send back results as soon as possible in TSMC or UMC compatible formats. Currently it is even required to send files immediately after testing. At the same time testing factories need to handle data transfer for different IC design companies and this transfer is automatic. When using different probers, reading binary files generated from different probers and converting them into ASCII files is also a challenge because all conversions should be done by a single piece of automation software, not by different programs in different paths. Furthermore users should not perceive any difference despite different data formats.
In the automation software there exists a mechanism that can tell the type of prober generating a file and call corresponding routines to read and convert a file. Moreover, accuracy of test data is also very important. Many testing factories use tester generated software bin files as their basis. But if a part of the dies on a wafer are retested, the second results only contain results of those dies retested, not results from the whole wafer. This requires a manual decision and a program to merge these test results into a file. The number of passing dies after merge and that in the hardware bin file read by a prober may become inconsistent. Normally TSMC or UMC also requires sending back both software bin files (generated by testers) and hardware bin files (generated and converted by probers). This data cannot contain any errors and cannot be changed manually with an editor. If a change is needed, then changed data become the basis due to the exceptions.
Foundries have adequate manpower and resources for system level integration, however, owing to this very advantage, foundries have to spend a lot in manpower to support system integration.
Therefore, there is need for a universal and integrated wafer testing real-time monitoring software system with an open system architecture, which enables data processing with very little manpower and no error, and conveniently and efficiently analyzes production data and tracks yield and yield improvement.
To achieve these and other advantages and in order to overcome the disadvantages of the conventional method in accordance with the purpose of the invention as embodied and broadly described herein, the present invention provides a universal and integrated wafer testing real-time monitoring software system and its open system architecture.
The present invention, under the condition of limited manpower support, provides unique automation software to support production and R&D related departments in an effective and cost-saving manner. Furthermore, issues arising from production lines, due to personnel changes or caused by new workers unfamiliar with operation of software, or data which contains errors and cannot be send out, are eliminated. This invention has a mechanism that not only provides all backup and logging functionalities but most importantly uses files to complete all workflows required by different devices. These workflow files can be modified and maintained very easily. Most importantly, these file are managed by dedicated staff. To production line operators, operating this software involves no menu selection. It only requires clicking a few buttons to go to a particular wafer from a particular lot to generate all data. Therefore this pushes the foolproof mechanism to a limit and at the same time does not affect making menus during engineering development. Because of this, this invention provides software that is very easy to use. For example, it only takes a single ten-minute training session for operators to become skilful and not error prone.
Other common software on the market cannot provide this function, because they have different architectures than the present invention. Databases of common software are usually stored in locations unknown to users and it is necessary to execute such software in order to see data from different lots. This invention uses a known sub-directory hierarchy; inside the software users can switch freely. Furthermore, the data processing speed of this invention is more than five times of that of typical software on the market.
All results produced by this invention are placed under a fixed path. Therefore anyone can easily locate a file under that fixed path regardless of the file type. It isn't required to operate the software in order to locate data. On the contrary, any text editor can open any data file after the file has been generated in real-time by this invention. Wafer map files consist of both text and graphics files. The graphics files can be opened and edited with a wafer map editor alone. This invention is a system formed by a network of four mutually support programs. Therefore, under normal operating conditions of the first receiving and sending program, the other three programs can all perform any upgrade without affecting data transfer in production lines and without data loss since after the upgrade the automatic data transfer program can re-send data not yet transferred to the network drives according to its built-in intelligence.
The present invention provides a system level mechanism targeting all sorts of possible issues, and this mechanism can solve all imaginable problems. This ultimately leads to a road to success for the semiconductor testing industry. It not only puts users on the same track as the rest of the world but also frees them from the nightmare of being controlled by others.
For other software on the market, an upgrade requires a complete production line shut down and production can resume only after the upgrade has been completed. Because of this, loss of data and retesting in production create great disturbances. Many times carelessness not only makes it necessary to retest wafers but also increases number of returns from customers since dies are deemed defective owing to additional probe marks caused by retesting.
An objective of the present invention is to provide a universal and integrated real-time processing system for wafer testing data, enabling data processing with very little manpower and no error. This system provides a very convenient and efficient analysis platform for research with high stability and simultaneity of production data and subsequent yield tracking and yield improvement.
Another objective of the present invention is to improve the fixed architecture of common software, and to adopt an open architecture. In using the software platform of this invention, when entering, using and exiting this software, users are empowered to create interface files for communication with external software (specified in information files) to achieve communication of this software with external systems through reading data files in the current working directory provided by this software using an external communication interface specification file. Therefore all special requests can be accommodated using this framework without any need of modifying the main program. As a result, errors can be avoided and the labor cost of frequently modifying the main program can be eliminated.
Another objective of the present invention is to provide a dynamic binning change by using associated external programs to extract datalogs from stdf files and change limits based on statistical process control (SPC) analysis and recreate its binning file. This is accomplished based on the flexible architecture which is completely different from other common software. The newly recreated binning file could rescue a lot of marginal dices and improve wafer yield, however, every minor change could be easily monitored under each wafer lot.
Another objective of the present invention is to also add many foolproof mechanisms in addition to providing easy operation and speed in high efficiency. Setting up and locking of operating parameters in an information file makes operators less error prone and preserves flexibility for line management to modify the set-up file. It can completely meet special requirements without having to change the main program.
Another objective of the present invention is to remedy the serious flaw of being able to process data of only one specific prober in common programs, and to provide a framework for data from three major probers on the market, as well as data from a user defined prober. This allows data from any future probers manufactured to be processed using a special definition. This means that all intellectual property rights are held by the software owner instead of being controlled by prober manufacturers.
This invention provides a wafer testing real-time monitoring software system and its unique open software architecture achieves real-time monitoring of wafer test results and on-line changing of externally hooked software to satisfy special needs of customers without changing its main program. The software structure of the present invention can receive and process binary files from different probers and convert these into readable ASCII files. This invention basically consists of four software programs that can operate independently.
The first program is an automatic transfer program, whose basic function is to receive from the production line, binary files or ASCII files in either PC format or Unix format. According to a user defined information file, the program scans for incoming files and then sends out to paths specified in the information file using a network drive function.
The second program converts wafer test results from a binary file to an ASCII file, and has a universal on-line monitoring interface that shows test results in real-time on on-line monitors in production lines through its network drive and drive mapping functions.
The third program receives ASCII files from the second program and performs wafer map editing. Users can call up this editor in different workstations for such wafer map editing. An imperfect or contaminated die can be marked by clicking the mouse pointer over the die. Even if the die tested okay previously, it has to be removed like a bad die. The die data are then saved into a file, which is used to generate off-line inking or an inkless file. All related files are sent out after that. This software also allows mouse click input from users. Alternatively, it also allows machine generated data files about wafer surface imperfection and contamination to be integrated with raw test data file by external software in the postprocessor and the resultant test data to be used instead of mouse clicking input. After all editing is done, the program sends all files to the workstation running the fourth program. The software uses an output trigger file and an error trigger file generated by external software in the post processor as a final gatekeeper to decide whether to send files to the fourth software or not. This is a flexible interface of this invention, and can handle requirements for different products and customers. Because external software is defined in information files according to each individual product, it is not necessary to change the main program to handle any new requirements; all it takes is writing new external software. Inside this program, there are 4 different wafer maps binning selections. All these binning files not only provide a cross check for hardware binning, software binning, stdf binning and process binning but also provide a platform for user to extract data from stdf data log files and create dynamic limits and then recreate a new binning file to rescue some marginal fail die after statistical analysis is made. By doing this, users can improve the yield if process data drifts from lot to lot but still maintain the control of the quality of test while everything is under user's control from remote terminal service. This unique flexibility can let design houses control everything and save a lot of cost.
The fourth program is an auto-ftp program, which automatically scans data and sends data to remote locations. This software is easy to set-up, easy to edit, and provides automatic debugging and convenient to use functions. It also provides a “backup file” function after sending out files. If it is unable to transmit a file, it generates an error message log file so that a user can easily see reasons for any errors and find corresponding solutions. Individual batch files can be set up to target major customers. Using information files set-up by the user, the program can transfer different files related to different products to different subdirectories of different ftp sites according to customer requests. This program provides text file functions for the above-mentioned files. Therefore transition between workers in adjacent shifts is easier and less prone to error. Processing of emergency files is also quicker.
These four programs can work independently. However, owing to their mutual support functions, they can form a seamless network to handle requests both from production lines and from customers. Moreover, the second and the third program can call pre-processor, post-processor and user procedures. Therefore no frequent modification to this open software architecture is required once it is completed. Any special requirement can be met by modifying external software. External software exists in batch files for pre-processor, post-processor and user procedures.
In addition, this invention processes a universal integration function which can process files from different types of probers like TSK, TEL and EG. The unique design of this invention enables it to process files in these three different formats generated by the above probers in a uniform manner. After processing, the result is in a standardized ASCII format and the editing program can further process it. To meet requirements from different customers, final output files can be made into different device dependent formats by using external software to facilitate sending out of the file.
Another major characteristic of this invention is that multiple workstations can process data from probers simultaneously. The on-line monitor on a production line can see production results from multiple major workstations through the network drive and drive mapping functions. After which it can take the next processing step, which is to re-generate a raw data floppy diskette depending on whether a retest or a fail die retest is necessary. This greatly reduces cycle time of wafer testing. This invention also has a multi-processing function. As a result it can minimize risks of data loss. It also has a built-in intelligence function, so upgrading of any of the four programs does not affect data communication between them.
To summarize, this invention aims at improving production line monitoring efficiency during wafer testing, minimizing problems during upgrade of data processing automation software and improving efficiency in handling of abnormalities. As a result, it greatly smoothes the work flow. The open software architecture makes it possible for all R & D and production departments to create different external programs to suit their needs. After a supervisor includes these into the device definition file, the programs can process data following instructions in this file. In addition, this file can also disable any menu items in the editor program and prevent operators from choosing the disabled item thereby make production lines foolproof.
These and other objectives of the present invention will become obvious to those of ordinary skill in the art after reading the following detailed description of preferred embodiments.
It is to be understood that both the foregoing general description and the following detailed description are exemplary, and are intended to provide further explanation of the invention as claimed.
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. In the drawings,
Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the description to refer to the same or like parts.
Regarding this invention, all detailed explanations on the software specification are described in the following software description of functionality and capability.
Conventions:
This documentation uses the following typographic conventions:
Functionality:
Autoprocess.exe (Win32 program)
Description: periodically scans through all subdirectories under a source directory and automatically processes any existing TSK format binary wafer file based on a given lookup table. It calls tsk2tsmc.exe for each binary wafer file to produce TSMC format ASCII wafer file and other files for later use by editor.exe. The following is the list of output files that tsk2tsmc.exe produces and their naming convention:
Please refer to the description of tsk2tsmc.exe for more detail on these output files. All processed files are moved to a backup directory. It assumes the directory structure as shown if
It is run in minimized mode since there is no need to interface with the user.
Example: autoprnt -t1 -w -d -sd:\monitor \map -fnetdrive.txt -linflookup.txt- Ittellookup.txt -lootherlookup.txt
Example: x:\monitor \map\autoprnt -t0.5 -n -d -sx:\monitor \map -fx:\monitor \map\netdrive.lst
-lx:\monitor \map\inflookup.txt-Itx:\monitor\map\tellookup.txt - lox:\monitor\map\otherlookup.txt
Note: the drive specified in x:\monitor\map\netdrive.lst is relative to current machine (the machine that starts autoprnt), not x drive (the machine where autoprnt resides.) So, if x:\monitor\map\netdrive.lst specifies ‘c’, it refers to c drive for current machine.
Arguments: All arguments' order is insignificant.
-d
Disables printing all output text files to printer. This argument is optional. Default is print all files, if not specified.
-fNetdrive.lst
Specifies the network drive list in a file named Netdrive.lst. This file must be an ASCII text file that contains only one network drive letter (case insensitive) in each line. Any line starts with ‘;’ is a comment line and is ignored by the program. If this argument is specified, all output text files will be duplicated to the corresponding directory in network drives as well as to \tsmc\EdaData\device\lotNo in all network drives. This argument is optional.
Example of the network drive list file which specifies five network drives, H, X, Y and Z will look like this:
-linflookup.txt
Specifies the lookup table of directory and wafer data options for each lot of wafers in a file named Netdrive.lst. The file name can be either full name (including full path) or partial file name. This file must be an ASCII text file that contains lines in the following format:
Field1: the device name string contained in each TSK format binary wafer file. This is the key to look up.
Field2: specify the output device directory under source directory.
Field3: specify if bin 0 is valid for this device. Use -b0 if allow bin 0; otherwise use -b1.
Field4: specify if the wafer data is sort1 or sort2 data. Use -sort1 for sort 1, -sort2 for sort 2.
Field5: specify the wafer data in TSMC, IBM or UMC format. This field is optional provided that field6 is omitted. Default is TSMC format, if not specified.
Field6: specify any update string(s) to overwrite the one(s) in map.inf. This provides a way of fixing the wafer data produced by TSK prober. All text pass field5 is considered field6. This field is optional.
The first field starts at the first character of the line. Each field is separated by either blank(s) or tab. There is no limit on number of lines in this file. However, it's limited to the amount of available memory. The default inflookup.txt table are for TSK prober.
-Ittellookup.txt
Once tellookup.txt is specified, Autoprocess.exe load tellookup.txt table and call tel2tsmc.exe if this file comes from the TEL prober which is specified in prober_tester.txt file.
-lootherlookup.txt
Once otherlookup.txt is specified, Autoprocess.exe load tellookup.txt table and call other2tsmc.exe if this file comes from the OTHER prober which is specified in prober_tester.txt file.
-n
This argument is optional and is only used by tsk2tsmc.exe. Please refer to the “-n” argument in the description of tsk2tsmc.exe for more detail.
-sSrcPath
Specifies the source directory. This path can be either full path or partial path. This argument is optional. Default is \monitor \map in current drive.
-r7
Specifies in days how frequent to delete empty subdirectories under the source directory. The number following “-r” must be an integer number. This argument is optional. Default is 7 days, if not specified.
-t30
Specifies in minutes how frequent to scan subdirectories under the source directory. The number following “-t” can be either an integer or a floating point number. This argument is optional. Default is 30 minutes, if not specified.
-w
This argument is optional and is only used by tsk2tsmc.exe. Please refer to the “-w” argument in the description of tsk2tsmc.exe for more detail.
Tsk2Tsmc.exe (DOS program)
Description: converts TSK format binary wafer file into TSMC format ASCII wafer file and produces all files that are needed for running editor.exe for that wafer. The following is the complete list of the output files:
Example: tsk2tsmc -b1 -sort1 -w -pP001 -ic:\monitor \map\C952bin.inf c:\monitor
-b0, -b1
Specifies if bin 0 is valid for this wafer. Use -b0 if allow bin 0; otherwise use -b1. This argument is optional. Default is -b1, if not specified.
-cIBM, -cUMC
Specifies the wafer data and the I/O file naming convention is TSMC, IBM or UMC format. This argument is optional. Default is -cTSMC, if not specified.
-ic: \monitor\map\device_bin.inf
Specifies the bin info file for this wafer. The file name can be either full name or partial name. This file must be an ASCII file and must contain at least one line for each of the following formats except “password:” line is optional.
The keyword and each field are separated by either blank(s) or tab.
-n
Output short form instead of long form for map diagram file and marking dice and skip dice list file. This argument is optional. Default is long form, if not specified.
-pPXXX
Specifies the prober number for the input wafer file. It must be in the range of p001 to p999.
-sortN
Specifies the sort number for the input wafer file. It must be in the range of sort1 to sort9.
-uUpdateStr
Specifies the update text to replace the counter parts in the bin info file (defined in “−i” argument.) Please refer to “Field6” for the “-1” argument in the description of Autoprocess.exe for more detail.
-w
Specifies if tsk2tsmc.exe should pause the DOS window and wait for a key stroke before it exits. This allows the user to view any message (either success or error) that tsk2tsmc.exe shows. This argument is optional. Default is no pause, if not specified.
srcTskBinaryFile
Specifies the input TSK format binary wafer file. This file name can be full name or partial name.
dstMarkFile
Specifies the output file for marking die and skip die list. This file name can be full name or partial name.
dstWaferMap
Specifies the output file for the wafer map diagram. This file name can be full name or partial name.
dstTsmcAsciiFile.log
Specifies the output TSMC format ASCII wafer file. This file name can be full name or partial name.
Tel2Tsmc.exe (DOS program)
Description: converts TEL format binary wafer file into TSMC format ASCII wafer file and produces all files that are needed for running editor.exe for that wafer. The usage method is the same as Tsk2Tsmc.exe program
Eg2Tsmc.exe (DOS program)
Description: converts EG format binary wafer file into TSMC format ASCII wafer file and produces all files that are needed for running editor.exe for that wafer. The usage method is the same as Tsk2Tsmc.exe program.
Other2Tsmc.exe (DOS program)
Description: converts OTHER format binary wafer file into TSMC format ASCII wafer file and produces all files that are needed for running editor.exe for that wafer. Other format means any brand name prober which is not in the main stream. The usage method is the same as Tsk2Tsmc.exe program
Wafermap.exe (DOS program)
Description: converts TSMC format ASCII wafer file into TSK format binary wafer file. It also produces map.idx and other report files. The following is the list of all output files and their naming convention:
kSPILOLD|-kSPILNEW|-kSPLIOPT|-kASE}] [-nDevName] [-softbin] [-s] [−xsuffix] [{-ymin2ymax\kymax2ymin}] map.inf srcTsmcAsciiFile dstPath
Example: wafermap -f -x -F -kASE -nmv4300 -s -b1
-2floppy
Tells wafermap.exe to also output the TSK format binary file using floppy file convention and map.idx to a:\map directory on a floppy drive. This argument is optional.
-b0, -b1
Specifies if bin 0 is valid for this wafer. Use -b0 if allow bin 0; otherwise use -b1. This argument is optional. Default is -b1, if not specified.
-cIBM, -cUMC
Specifies the wafer data is TSMC, IBM or UMC format. This argument is optional. Default is
-cTSMC, if not specified.
-f
Forces the report file name for each wafer the same as the input wafer file name, but with “.rpt” extension, instead of using floppy output file name convention. This argument is optional. Default is using floppy output file name convention for individual report file, if not specified.
-kANM, -kSPILOLD, -kSPILNEW, -kSPLIOPT, -kASE
Tells wafermap.exe to also output the specified format inkless file. “-kSPILOLD” and “-kSPILNEW” are obsolete and should not be used any more. They are here for backward compatibility. This argument is optional. Default is no inkless file output, if not specified.
-nDevName
Specifies the device name string to be shown when output the inkless file. This argument is only required if inkless output file is specified.
-softbin
Tells wafermap.exe that the bin codes in input wafer file are software bin codes instead of hardware bin code. This argument is optional. Default is hardware bin codes, if not specified.
-s
Specifies the input wafer file is sampling sort. This argument is optional. Default is not sampling sort, if not specified.
-xsuffix
Specifies the suffix of the input TSMC format ASCII wafer file name. This argument is optional. Default is “-F”, if not specified.
-ymin2ymax, -ymax2ymin
Forces the y order of dice when outputting TSK format binary wafer file. This argument is optional. Default is using original order defined by line “y_dir:” in map info file, if not specified.
map.inf
Specifies the input map info file. This file name can be full name or partial name.
srcTsmcAsciiFile
Specifies the input TSMC format ASCII wafer file. This file name can be full name or partial name.
DstPath
Specifies the output directory. This path can be full path or partial path.
Editor.exe (Win32 program)
Description: provides a GUI to let the user view, edit, save and transfer wafer data, statistics and report files.
For supervisor only:
An external file user.txt in the info directory (see below directory structure) defines a list of users along with their levels of authority to run editor.exe. The least authority can only view and transfer wafer data, but cannot edit or save the wafer data. The highest authority can also edit dice, change notch, change the pass bin code, unlock the data for editing and save the changes. This file contains lines in the following format:
User_Name field, up to 10 characters, case insensitive.
Password field, up to 10 characters, case sensitive.
EditTypes fields, specifies the editing power for that user. Up to 6 fields can be specified, all case insensitive and can be in any order.
Unlock field, specifies if that user has the power of unlocking the data. This field is case insensitive.
A line starts with ‘;’ is a comment line and is ignored by the program.
All required fields must be specified in the above order. All optional fields can be specified in any order, but must be appeared after all required fields. The first field starts at the first character of the line.
This file should only be created and edited by the person with the highest authority to run this program, and be made as a hidden file. The following is an example of the file contents of user.txt:
An external file company.inf in the info directory (see below directory structure) defines a list of company names along with their 2-character abbreviation. The file contains lines in the following format:
Company_Abbreviation field, 2-character string, specifies the abbreviation for that company.
Company_Name field, a text string, specifies the company's name.
All fields' order is significant. The first field starts at the first character of the line.
The following is an example of the file contents of company.inf:
The program assumes directory structure, for source TSMC format ASCII wafer files, source info files, supporting programs and output files, as shown in
-sSrcDir
Specifies the source directory of the supporting programs. The source directories for info files and data files are conducted from this directory using the assumption described in “Description” section. This argument is optional. Default is current directory, if not specified.
Menu commands:
File
Lets you open a wafer to view and may be edited if the user has the authority. You must enter the device name, lot no, sort ID, wafer no and subdirectory, so the program can locate the wafer file and its supporting info files. You must also specify the type of the wafer:
This is used to indicate the file name convention. For IBM and UMC wafer, wafer ID is also required.
You can specify any or none of the following wafer's options:
You can also optionally specify a pre-process batch file to be run before the program opens this wafer. This gives you a chance to fix some wafer data problems programmatic ally.
Suffix Convention . . .
Lets you change the suffix of the file name for an edited wafer. Default is -F.
Naming Convention . . .
Lets you choose the output TSK format binary file name between network convention and floppy convention. The floppy convention is map_NNN.dat for each wafer file, where NNNN is a 4-digit number.
Transfer Lot Data . . .
Lets you transfer original, re-test, inspection and final TSMC format ASCII wafer files to srcDrive:\Company_Data, report files to srcDrive:\RPT, and final TSMC format ASCII wafer files to srcDrive:\user as a backup. Before the program transfer the data, it will give you a chance to save or quit the process, if you have made changes but have not saved it yet.
Run Post Processor . . .
Lets you have a chance to run a post process batch file after the lot data have been transferred.
Save Die Info . . .
Lets you save your editing.
Save Die Info As . . .
Lets you save your editing to a different file.
Save Color Info
This lets you save you change of the color scheme.
Save Color Info As . . .
This lets you save your changes of the color scheme to a different file.
Page Setup . . .
Lets you set-up your printer.
Print . . .
Lets you print the wafer map to a printer.
Exit
Exit the program.
Edit
IQC
Change the edit mode to IQC. Any mouse click on a good die will toggle between a good die and an IQC marked die. This command is dimmed if you don't have the authority to edit IQC dice. For supervisor only: This authority is defined in user.txt.
CP1
Change the edit mode to CP1. Any mouse click on a good die will toggle between a good die and a CP1 marked die. This command is dimmed if you don't have the authority to edit CP1 dice. For supervisor only: This authority is defined in user.txt.
CP2
Change the edit mode to CP2. Any mouse click on a good die will toggle between a good die and a CP2 marked die. This command is dimmed if you don't have the authority to edit CP2 dice. For supervisor only: This authority is defined in user.txt.
INK
Change the edit mode to INK. Any mouse click on a good die will toggle between a good die and an INK marked die. This command is dimmed if you don't have the authority to edit INK dice. For supervisor only: This authority is defined in user.txt.
V/M
Change the edit mode to V/M. Any mouse click on a good die will toggle between a good die and a V/M marked die. This command is dimmed if you don't have the authority to edit V/M dice. For supervisor only: This authority is defined in user.txt.
P-S L/A
Change the edit mode to P-S L/A. Any mouse click on a good die will toggle between a good die and a P-S L/A marked die. This command is dimmed if you don't have the authority to edit P-S L/A dice. For supervisor only: This authority is defined in user.txt.
Inkless File Output . . .
Tells editor.exe to also produce inkless output file. You can choose either ANIM, SPIL or ASE format inkless output. The old and new SPIL formats are obsolete and are only there for backward compatibility.
Data Unlocked/Data Locked
Lets you lock or unlock the data file. This command is dimmed if you don't have the authority to unlock the data files. For supervisor only: This authority is defined in user.txt.
Display Options . . .
Lets you change the display layout. You can choose to show the wafer map as a whole or in quadrants. You can also choose to show the inspection logging form or hide it.
Security
Set Password . . .
This command does nothing if you don't have the authority to unlock the data files. This authority is defined in user.txt. You must enter the password to be able to change the notch and/or change the pass bin code(s). For supervisor only: This password is defined in map.inf for this lot.
Notch
This menu is dimmed if you don't have authority to unlock the data files and if you do not set the correct password. In this case, the pull-down menu is not shown.
0 degree
Lets you set the notch to be 0 degree. A check mark next to the left of this command indicates it's the notch for this wafer.
90 degrees
Lets you set the notch to be 90 degrees. A check mark next to the left of this command indicates it's the notch for this wafer.
180 degrees
Lets you set the notch to be 180 degrees. A check mark next to the left of this command indicates it's the notch for this wafer.
270 degrees
Lets you set the notch to be 270 degrees. A check mark next to the left of this command indicates it's the notch for this wafer.
Pass_bin
Lets you change the pass bin code list. This menu is dimmed if you don't have authority to unlock the data files and if you do not set the correct password. In this case, the pull-down menu is not shown.
A list of pass bin will be shown in this pull-down menu. Each is a selectable menu command. Each click toggles the bin between being a pass bin code and being a fail bin code. A check mark next to the left of the command indicates it's a pass bin code. Example:
Size.exe (DOS program)
Description: creates a trimmed version of the source TSMC format ASCII wafer file. It removes any duplicated die in FIFO order, i.e., the last duplicate is kept while any previous duplicate is removed. The newly created file will be named the same as the source file with either a given suffix or default suffix.
Example: size -x-F D:\tsmc\EDAdata\3880\D5M08.1\*.*
Arguments: All optional arguments' order is insignificant. All required arguments' order is significant and must be specified after all optional arguments.
-xsuffix
Specifies the suffix of the output TSMC format ASCII wafer file name. This argument is optional. Default is “-R”, if not specified. Ex.“D:\tsmc\EDAdata\8123\DA0662.00\DA0662.00-1-01-R”.
srcTsmcAsciiFile
Specifies the input TSMC format ASCII wafer file. This file name can be full name or partial name and can include wild card characters.
Rotate.exe
This program is renamed to RotateWM.exe. Please refer to the description for RotateWM.exe
Autoftp.exe (DOS program)
Description: automatically logs on to the given ftp site with the given user name and password, performs either “get” or “put” operation depending on what the user specifies, then logs off when it is done. The ftp operation is performed in binary mode.
-dir RemoteDirectory {-filePatternfilePattern|-timeStamp MMDDhhmmYYYY}
Example: autofpt get-machine ftp.yahoo.com -user foo -password foo1234 -dir outgoing -filePattern*.dat
Example: autofpt put -machine 123.45.67.89 -user foo1 -password foo56 -dir incoming
-timeStamp 121108002000
Arguments: All arguments' order is insignificant. This is the only program in this documentation that all its arguments are case sensitive. However, the program name is case insensitive.
put, get
Specifies the ftp operation to be performed. This argument is optional. Default is put, if not specified.
-machine RemoteHostName
Specifies the ftp site to log on. A space is required between -machine and RemoteHostName.
-user RemoteUsrName
Specifies the user name to log on. A space is required between -user and RemoteUsrName.
-password RemotePswd
Specifies the password to log on. A space is required between -password and RemotePswd.
-dir RemoteDirectory
Specifies the source directory on ftp site for a “get” operation, or the destination directory on ftp site for a “put” operation. A space is required between -dir and RemoteDirectory.
-filePattern filePattern
Specifies the files to get. A space is required between -filePattern andfilepattern. You must specify this pair of arguments for a “get” operation. It is ignored for a “put” operation.
-timeStamp MMDDhhmm YYYY
Tell the ftp command to put all files whose last modification time is later than MMDDhhmmYYYY. A space is required between -timeStamp and MMDDhhmmYYYY. You must specify this pair of arguments for a “put” operation. It is ignored for a “get” operation. MMDDhhmmYYYY is interpreted as the follow:
Rotatewm.exe (DOS program)
Description: rotates the given wafer, in TSK format binary file, for the given degrees clockwise.
Example: rotateWM -sC:\monitor\8123\p017\DA0662.00-oC:\monitor \8123\p017\DA0662.00\rotate 900*
Arguments: All arguments' order is significant except that the order of -s and -o can be interchanged.
-sSrcPath
Specifies the source directory. This can be a full path or a partial path. This argument is optional. Default is current directory, if not specified.
-oDstPath
Specifies the destination directory. This can be a full path or a partial path.
{90|-90}
Specifies the degrees of the angle to rotate clockwise. So, if “-90” is specified, the wafer will be rotated 90 degrees counter-clockwise.
SrcTskBinaryFile
Specifies the source TSK format binary wafer file to be rotated. This file name can contain wild card characters.
Findfile.cpp
Description: the template of source code for searching all files in current directory.
Winftp.exe (Win32 program)
Description: periodically logs on to the given ftp site, checks for files in the given source directories specified in the instruction file, and performs the “put” operation. Optionally, it will also duplicate the incoming files to the corresponding directories in the network drive(s). All processed files are renamed with a file modification time stamp and moved to srcPath\backup.
Example: winftp -t1 -ic :\monitor\map\ioumc.txt -fc :\monitor \map\netdrive.txt
Arguments: All arguments' order is insignificant.
-tN, -hN
Specifies the frequency to logon to ftp and perform any necessary operation according to the instruction file. N is the number of minutes if “-t” is specified, or hours if “-h” is specified.
-iInstructFile
Specifies the instruction file. This file name can be either full name or partial name. This file must be an ASCII text file. The file contains lines in the following format:
I: followed by ftp_site, user_name and password specifies the ftp site address, the user name and password for logon.nes. The file can contain multiple “I:” lines. Each “I:” line can be followed by 1 or multiple pairs of “DI:” and “DO:” lines.
DI: followed by SrcPath specifies the source directory in local machine. This path can be either full path or partial path.
DO: followed by dstPath specifies the destination directory in ftp site. This path can be either full path or partial path.
“DI:” and “DO” lines must be specified in pair, i.e., a “DI:” line must be followed by a “DO:” line and a “DO:” line must follow a “DI:” line.
All keywords start at the first character of the line. The keyword and each field are separated by either blank(s) or tab.
The following is an example of the file contents of an instruct file:
-fNetDrive.lst
Specifies the network drive list to duplicate the incoming files to. This argument is optional. The file format is the same as that of “-f” argument in Autoprocess.exe. Please refer to its description for more detail.
Lacido.dll (Win32 DLL)
Description: the shared library that contains routines to check if a given Wafer Map Editor software is registered and if a given Wafer Map Editor software is authorized to be used on the current machine. These routines are called by all programs mentioned in “Software Specification” documentation that the user must run WinInstall.exe to gain authorization of the usage.
DosInstall.exe (DOS program)
Description: installs all objects required to run all DOS programs, mentioned in “Software Specification” documentation that are subject to authority check.
MMDD
Specify the date of the installation.
MM, 2-digit number range from 01-12, specifies the month; January=01, February=02, and so on.
DD, 2-digit number range from 01-31, specifies the day of the month.
WinInstall.exe (Win32 program)
Description: installs all objects required to run all Win32 programs, mentioned in “Software Specification” documentation, that are subject to authority check. It requires the authority to run it. It shows the amount of authorized time left to run each of those programs and lets the user recharge or change them.
Uninstall.exe (Win32 program)
Description: removes all objects required to run all DOS programs, mentioned in “Software Specification” documentation that are subject to authority check.
The following is a description of the present invention as illustrated in the figures.
As shown in
The autoxfer.exe program following instructions in an information file (ioinfo.txt) sends data files under scanned directories to other systems as shown in
According to network drive assignment, files are sent to local drives as well as an editor PC to facilitate editing. The systems PC1, PC2, PC3, PC4, PC5 . . . which run autoprocess.exe all have identical internal sub-directory name and contents, so every pair of PCs can back up each other by assigning network drives. Two PCs running autoprocess are set up to transfer converted data to two editing PCs; PC21 and PC22. So beside the local drives of the PCs running autoprocess, data for an editing PC also exist on PC21 and PC22. Therefore the system has a complete backup and machines going down are not a problem. Every PC running autoprocess.exe can connect to up to ten on-line monitor PCs by using drive mapping of network drives. The ten-monitor limit is imposed by Windows. So PC100, PC101, PC102, PC103 . . . PC200 on the production line can be used as on-line monitors. Batch files can be set up there and the drive mapping file in C drives of the PCs controls drive mapping between monitor PCs and the autoprocess PCs. The monitors running on the on-line PCs see the same thing as the autoprocess PCs. The monitors run on the on-line PCs but the database resides on the autoprocess PCs. All data generated from the production line are available on the monitors of the on-line PCs within one minute. If data are not available, it means either data files have not been generated or transfers were not successful.
If any test has no data file, it means everything needs to be retested. There will be many risks in retesting. For example, one or two additional probing marks will be made during probing. Generally speaking, customers do not allow more than three probing marks since it would cause difficulty in wire bonding of pads. If a low yield wafer is to be retested normally, retesting is targeted at failed dies only, but it requires a raw data file for the whole wafer. This issue can be solved by the on-line monitor in
After data are sent to an editing PC, a product engineer can use the network to connect to either one of the two editing PCs that mutually back up each other. The engineer can perform file transfer based on status of the wafer map check. All engineers using this editing PC can configure their local PCs to be on-line monitors and work on their PCs without affecting each other. Some engineers only look at test results, some process wafer data file for a whole lot. All final results are shown in
After conversion, the user clicks the refresh button and the data will be shown again at the bottom of the screen and the associated check box will be green indicating the data are in the working directory.
By this conversion, any data from the production line can be placed into correct sub-directories through autoxfer.exe for use by the software of the invention. If a transfer is not successful, the file whose transfer failed is put into a sub-directory corresponding to the name of the failing drive for transfer in the next scan. Files in the source directory are still moved into the back-up directory after the scan.
In addition an operator can select a wafer using check boxes on the left, then clicking the button in the lower left to execute the binary to ASCII program to select correct wafer yield data into the working directory (indicated by green in the square) shown in
By choosing “Inkless File Output”, a window will be displayed as in
Users can also select “Display Options” and then a small window will be displayed as in
This invention has many foolproof mechanisms. Some information files, like the map.inf, are generated by the tsk2tsmc.exe program and transferred to the lot directory. If an operator uses a wrong set-up file in a prober which results in errors in the map.info file, the supervisor can create a correct map.inf file in the parent device directory. The editor program gives precedence to the map.inf file in the parent directory. Certain information files, like the softmap.inf file, are created for testers or other machines. All such files are stored in device directories.
The look-up table in
The look-up table in
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the scope or spirit of the invention. In view of the foregoing, it is intended that the present invention cover modifications and variations of this invention provided they fall within the scope of the invention and its equivalent.