Control system for semiconductor spray process tools

Abstract: Method and apparatus for providing integrated monitoring, control and diagnostics functions for semiconductor spray processors is disclosed. In a preferred embodiment, a spray processor host system of the present invention comprises a plurality of PC-class computers interconnected via a network link. Each of a first subset of the spray processor host system computers comprises a supervisor computer connected to one of a plurality of spray process tools, which in the preferred embodiment comprise Mercury® MP processors. The supervisor computers provide ongoing information exchange with the processors and maintain up-to-date status information. Each supervisor computer maintains an event log of processor operations and operator actions, as well as data capture files for storing process variables captured by the supervisor computer. Each of a second subset of the spray processor host system computers comprises an engineer computer for providing the system operator with a command driven interface to the spray processor host system. Each engineer computer can monitor a plurality of supervisor computers and used to enable such functions as recipe directory editing, recipe downloading, event log searching, data capture file data graphing and processor status viewing. A third subset of the spray processor host system computers comprises a bridge computer for providing a communications link between the supervisor computers and a upstream host computer outside the spray processor host system, for example, a lot scheduling or material flow control computer.

Description: The invention relates generally to wet chemical spray process tools employed in the manufacture of integrated circuit ("IC") chips and, more particularly, to a system for providing integrated monitoring, control and diagnostics functions in connection with such tools. The etching of oxide layers or films on the surface of semiconductor wafers is an important aspect of the manufacture of IC chips. Much of such wafer processing is performed using a wet etching process in which combinations of liquid acids and other chemicals and deionized ("DI") water and DI water alone are alternately sprayed onto wafers respectively to etch, clean and rinse the wafers. In addition, the wafers are periodically sprayed with nitrogen gas for drying the wafers. Typically, each wafer is confined in a wafer carrier made of a suitable acid-resistant material. One or more such wafer carriers are carried on a variable speed turntable or rotor in a closed bowl of a spray process tool, which tool may be programmed with respect to certain phases of its operation, including the rotational speed of the rotor, the order in which the liquid chemicals, DI water, and nitrogen gas are applied to the wafers and the temperature of the chemicals and DI water. One such spray process tool is the MERCURY® MP, which is commercially available from FSI International, Chaska, Minnesota. The MERCURY® MP is a multi-cassette spray tool that can be configured to perform a variety of semiconductor wet chemical processing operations, including resist removal and prediffusion cleans using a combination of sulfuric acid and hydrogen peroxide (SPM clean), oxide etching using hydroflouride/DI water ("HF/DI") mixtures, and variations on the conventional RCA clean developed by RCA Corporation, Princeton, New Jersey. The technology underlying semiconductor spray process tools has attracted increased attention over the last several years, resulting in substantial refinement thereof. However, despite the significant advances made in this area, many of the spray process tools that are currently commercially available suffer certain striking deficiencies. In particular, such tools lack advanced process data monitoring capabilities, such as the ability to provide historical parametric data in a user-friendly format, as well as event logging, real-time graphical display of both current and the entire run's process parameters, and remote, i.e., local site and worldwide, monitoring. These deficiencies can engender nonoptimal control of critical process parameters, such as chemical flow rate accuracy, stability and repeatability, process temperatures and mechanical tool parameters. This variability manifests itself as within-run, run-to-run and tool-to-tool disparities that can propagate into deviations in product quality and performance, whereas an ideal monitoring and diagnostics system for such tools would provide a means of monitoring this variability, as well as providing means for optimizing control of critical parameters. Another disadvantage suffered by currently available tools is that they have a limited display, typically capable of displaying only a few lines of information, thereby limiting the utility thereof. Therefore, what is needed is a system for providing integrated monitoring, control and diagnostics functions for use with semiconductor spray process tools. PRIOR ART An article entitled "Selection of SCADA Application Enabler Software Platforms" in the publication "Advances in Instrumentation and Control" Vol. 50, part OI, published 25 April 1995, pages 265-274 provides a general discussion of supervising control and data acquisitions. EP-A-0530937 describes a multiprocessing system for wafer processing. EP-A-0397924 describes a workstation with a host and process controllers. The foregoing problems are solved and a technical advance is achieved by a method and apparatus embodying the present invention and described herein for providing integrated monitoring, control and diagnostics functions for semiconductor spray tools. In a departure from the art, a spray processor host system enables operators to use, monitor and maintain spray process tools. SUMMARY OF THE INVENTION In one aspect the present invention provides a system for providing integrated monitor and control functions for a semiconductor spray process tool, the system comprising: a supervisor computer electrically connected to said spray process tool for collecting and storing on a mass storage device of said supervisor computer equipment status and process data generated by said spray process tool during each process run and for storing a plurality of process recipes executable by said spray process tool; an engineer computer electrically connected to said supervisor computer for generating control signals to said spray process tool via said supervisor computer, said control signals including process recipe download requests for causing said supervisor computer to download requested ones of said process recipes to said spray process tool for execution, said engineer computer receiving said collected equipment status and process data from said supervisor computer and being capable of displaying said received equipment status and process data in at least one user-selected format. In another aspect the present invention provides a method of providing integrated monitor and control functions for a semiconductor spray process tool, the method comprising: utilizing a supervisor computer to collect equipment status and process data generated by said spray process tool during each process run; storing said collected equipment status and process data and a plurality of process recipes executable by said spray process tool on a storage device of the supervisor computer; utilizing an engineer computer connected electrically to the supervisor computer to generate control signals for controlling the operations of said spray process tool via the supervisor computer, said control signals including process recipe download requests for causing requested ones of said process recipes to be downloaded from said storage device to said spray process tool for execution; and utilizing the engineer computer to display said collected equipment status and process data in at least one user-selected format. In the described embodiment, the spray processor host system comprises a plurality of PC-class computers interconnected via an Ethernet or other appropriate network link. Each of a first subset of the spray processor host system computers is adapted to perform as a supervisor computer. Each supervisor computer is connected to one of a plurality of spray process tools, which preferably comprise MERCURY® MP processors, for communicating therewith. Each of a second subset of the spray processor host system computers comprises an engineer computer for providing a system operator with a command driven interface to the spray processor host system Each engineer computer can monitor a plurality of supervisor computers and is used to enable such functions as recipe directory editing, recipe downloading, event log searching, data capture file data graphing and processor status viewing. These functions can also be performed from each supervisor for the particular processor connected thereto. A third subset of the spray processor host system computers comprises one or more bridge computers for providing a communications link between the supervisor computers and an upstream host computer outside the spray processor host system, for example, a lot scheduling or material flow control computer. Preferably, each supervisor computer includes the functionality of a bridge computer, although a separate bridge computer may be provided for providing a communications link between several supervisor computers and the upstream host computer. In operation, each of the supervisor computers provides ongoing information exchange with its respective processor and maintains up-to-date processor status information for access by other computers on the network. In particular, each supervisor computer maintains an event log of processor operations and operator actions, as well as data capture files for storing process variables captured by the supervisor computer. An engineer computer may be used to access the event logs and data capture files for any of the supervisor computers connected thereto for display in one of several user selected formats. In particular, the data stored in the data capture files may be displayed as graphs of operator-selected parameters, such as chemical flow rates, turntable rpm and temperature, by a system operator using one of the engineer computers. This data may be used, for example, in optimizing flow stabilization algorithms and procedures that control chemical ratios, developing machine operating protocols that insure the proper process temperature for optimal performance and device yield, detection of deteriorating equipment performance indicative of imminent equipment failure, and equipment failure analysis of system aborts, alerts or alarms. In addition, the operator is provided with the ability to acknowledge alarms, as well as add and delete recipes and select recipes to be downloaded to a processor, using the engineer or supervisor computer, at which point, the appropriate supervisor computer performs the requested function. Moreover, connection of the spray processor host system to a VAX or other SECS-compatible system via an Ethernet network enables the above-described functions to be performed remotely, i.e., from local sites and worldwide. Optimally, data capture files stored on hard drives of the supervisor computers are periodically automatically uploaded to a large hard drive of an archive computer and deleted from the hard drives of the individual supervisor computers, thereby increasing the number of data capture files that may be stored on the system as well as the amount of time such files may be stored. A technical advantage achieved with the system is that it provides an easily accessible database in which a log of process events may be stored and subsequently retrieved. Another technical advantage achieved with the system is that it enables remote monitoring and analysis from on-site and off-site locations. Another technical advantage achieved with the system is that it enables an operator to monitor the real-time status of all critical parameters, including chemical flow, process temperature, turntable speed, recipe progress, runtime, process steps and alarms. Another technical advantage achieved with the system is that it provides enhanced recipe features, including the storage of recipes on a hard drive, rather than on floppy disks, the display of multiple steps of a recipe at a time, and the automation of recipe selection. Another technical advantage achieved with the system is that it enables the remote acknowledgement of alarms. Yet another technical advantage achieved with the system is that it enables full event logging, such that keys pressed and functions performed by the tool may be reviewed at any given time. Still another technical advantage achieved with the system is that it enables chemical flow rate, temperature, turntable speed, and other data to be collected and plotted in graphical form in real time on the display of a computer associated with the tool. Still another technical advantage achieved with the system is that it effectively provides each processor with a full screen display, rather than the small display typically provided on the spray processor. In the accompanying drawings, by way of example only: FIG. 1A is system block diagram of a conventional spray process tool. FIG. 1B is a block diagram of a spray processor host system embodying the present invention. FIG. 1C is a flow diagram of data flow within the spray processor host system. FIG. 2 is a flow diagram of the operator interface of the spray processor host system. FIG. 3 illustrates a system status screen of the spray processor host system . FIG. 4 illustrates a detail screen of the spray processor host system. FIG. 5 illustrates a view recipe screen of the spray processor host system. FIG. 6 illustrates an active alarms screen of the spray processor host system. FIG. 7 illustrates a pre-alarm detail screen of the spray processor host system. FIG. 8 illustrates a recipe directory screen of the spray processor host system. FIG. 9 illustrates an event log setup screen of the spray processor host system. FIG. 10 illustrates a data capture status screen of the spray processor host system. FIG. 11 illustrates an add or replace a recipe screen of the spray processor host system. FIG. 12 illustrates a view event log screen of the spray processor host system. FIG. 13 illustrates a data capture search screen of the spray processor host system. FIG. 14 illustrates a list of files screen of the spray processor host system. FIG. 15 illustrates a data capture parameters screen of the spray processor host system. FIG. 16 illustrates a graph screen of the spray processor host system. FIG. 17 is a flowchart of a preferred method of operation. FIG. 18 is a flowchart of a background process. FIG. 1A is a system block diagram of a conventional spray process tool (processor) 10, which in a preferred embodiment is a MERCURY® MP available from FSI International, for processing semiconductor wafers in the manufacture of IC chips. As shown in FIG. 1A, a controller 12 is electrically connected to a chemical delivery system 14, a nitrogen delivery system 16 and a DI water delivery system 18 for controlling the flow rate of the delivery of chemicals, nitrogen, and DI water from the chemical, nitrogen and DI water delivery systems 14, 16 and 18, respectively, to the process chamber 20 for etching, drying and cleaning wafers (not shown) disposed on a turntable (not shown) within the process chamber 20. The controller 12 is further electrically connected to the process chamber 20 for controlling the rotational speed of the turntable disposed therein. Chemical waste from the process chamber 20 is disposed through the chemical waste and exhaust system 22, the operation of which is also controlled by the controller 12. As is well known in the art, recipes for controlling various aspects of the operation of the processor, including, for example, chemical flow rate and temperature and turntable speed, are stored on floppy disks and input to the processor 10 via a 1.44 MB floppy disk drive 24. A particular recipe may be selected for implementation by the controller 12 in a known manner. The processor 10 further comprises a small display 26 for displaying, for example, a indication of the recipe step currently being executed. For purposes that will subsequently be described in detail, access to control signals and other data generated by or communicated to the controller 12 may be had via a host communication port 28 electrically connected to the controller 12. In view of the fact that the operation of the processor 10, as briefly described above, is well known in the art, such operation will not be further described in detail. FIG. 1B is a system block diagram of a preferred embodiment of the spray processor host system 100 of the-present invention. As shown in FIG. 1B, the system 100 includes one or more supervisor computers, collectively represented in FIG. 1 by a single supervisor computer 102. The COM1 port of each supervisor computer 102 is electrically connected to a spray process tool, such as the processor 10 shown in FIG. 1A, via a standard RS-232 port connection, for communicating therewith using Gem compatible SECS II protocol. In particular, as will subsequently be described in greater detail, during each process run of the processor 10, event data and operating parameters are written to a data capture file corresponding to that process run and stored on a hard drive 103 of the supervisor computer 102 connected thereto. Recipes for implementation by the processor 10 are also stored on the hard drive 103, from which they may be downloaded to the processor 10, as will be described. In this manner, the recipes may be stored in a much more permanent manner than previously used, i.e., floppy disks. The system 100 further includes at least one engineer computer 106, comprising a modem 107a and connected to a printer 107b, for monitoring a plurality of supervisor computers, such as the supervisor computer 102. In the presently preferred embodiment, the engineer can effectively monitor up to eight such supervisor computers. The engineer computer 106 is electrically connected to the supervisor computer(s) 102 via a local area network 108, which in the preferred embodiment comprises a Lantastic network. In this regard, it should be understood that both the supervisor computer(s) 102 and the engineer computer 106 include appropriate hardware, specifically, compatible network cards, for connecting to the network 108. The engineer computer 106 provides an interface to spray processor host system operators and, as will subsequently be described in detail, initiation of recipe directory editing, recipe downloads, event log searching, data capture graphs, processor status viewing and other functions are controlled using the engineer computer 106. Such functions may also be performed directly from the supervisor computer 102. Remote connection to the engineer computer 106 via the modem 107a enables the system 100 to be controlled and monitored from an off-site location. It should be noted that the engineer computer 106 need not be a "dedicated" spray processor host system 100 computer and may in fact be used to perform additional tasks not associated with the system 100. As previously indicated, during each process run of the processor 10, event data and operational parameters are captured in a data capture file associated with the particular run and stored on the hard drive 103 of the supervisor computer 102. In view of the fact that there will typically be five or six process runs a day, each resulting in the generation of a data capture file hundreds of kilobytes to more than a megabyte in size, depending on the data capture rate and process run time, typical PC hard drive, such as the hard drive 103, will be incapable of storing more than a few weeks worth of process data. In most instances, this will be insufficient to ensure that historic data is no longer needed before it will need to be deleted to free up space for new data. As a solution to this problem, an archive computer 109a and associated archive disk drive 109b are provided on the network 108 for "archiving" data capture files for longer periods of time. In the preferred embodiment, the data capture disk drive 109b comprises five hard drives each having 800 to 900 MB of disk space, i.e., enough space to store approximately three months worth of data capture files, thereby increasing the likelihood that capture data will not have to be deleted until it is no longer needed. Moreover, because the capture disk drive 109b is networked, it is accessible by any computer in the spray processor host system 100. In accordance with a feature of the present invention, the archive computer 109a periodically (e.g., every ten days) copies data capture files stored on each supervisor's hard drive to the archive hard drive 109b, after which the copied data capture files are deleted from the supervisor hard disk drive. In order to prevent data capture files to which data is currently being added from being deleted during this periodic archiving process, in one aspect of the invention, the most recent two days worth of data capture files are not copied to the archive hard drive 109b and hence are not deleted from the supervisor hard drives. In this manner, data capture files may be automatically, as well as manually, archived. In addition, other files stored on the supervisor hard drives, such as individual configuration, recipe and other system files, are also copied to the archive disk drive 109b during the periodic archiving process, thereby preventing such information from being lost should a supervisor computer fail during operation of the system 100. A bridge computer, which in the illustrated embodiment comprises the same computer as the supervisor computer 102, provides a communication bridge between the spray processor host system 100 and an upstream host computer outside the spray processor host system 100, such as a lot scheduling or a material flow control computer (not shown), via an RS-232/SECS II connection from the COM2 port thereof to a second, proprietary network 110, which in the preferred embodiment comprises an Ethernet network. Such a connection enables communication and interaction between the spray processor host system 100 and a manufacturing execution system (MES) 112, which in the preferred embodiment comprises the Workstream MES available from Consilium, Inc., of Mountain View, California. In addition, as will be further described in detail, such a connection enables remote access to the spray processor host system 100 from any VAX terminal 114 on the network 110. In the presently preferred embodiment, each supervisor computer, such as the computer 102, also includes the functionality of a bridge computer; however, it would be possible to implement the system 100 using a single bridge computer for providing a communications link for more than one supervisor computer. In the preferred embodiment, each supervisor computer 102 comprises a 486DX PC having at least a 120 Mb hard drive (FIG. 1B, 103) and a 3½ inch floppy drive (not shown). Each supervisor computer 102 is responsible for providing ongoing information exchange with its associated processor 10, as well as maintaining up-to-date controller status for the other computers on the network to access. In addition, each supervisor computer 102 performs functions for engineer and bridge computers on the network, such as recipe downloading, error handling, event reporting and alarm handling, maintains an event log of processor 10 operations and operator actions, and captures and stores process variables in data capture files for each process run. In the multiple computer environment shown in FIG. 1B, the supervisor computer 102 need not include its own keyboard or display. The engineer computer 106 provides the system operator with access to status information for up to eight supervisor computers, as well as to parametric data, and various other files on any of the supervisor computers on the network. In addition, the engineer computer provides operator interface functions, such as recipe directory editing, system status information, initiating recipe download, event log searching, alarm clearing, and the graphing of data capture files. The bridge computer, which in the illustrated embodiment comprises supervisor computer 102, is responsible for sending event messages, including alarm messages, to an upstream-host system connected to the network 110, receiving and processing messages, such as recipe download and alarm clear, from the upstream host, and synchronizing the network clocks with the upstream host. FIG. 1C illustrates the information flow of the system of FIG. 1B. Recipe download requests are transmitted to the supervisor computer 102 either directly from the engineering computer 106, as indicated by a path 150, or indirectly from the VAX terminal 114 via the workstream database 112, as indicated by paths 152, 154, for causing the supervisor computer 102 to download process recipes from the supervisor hard drive 103 to the spray processor 10, as indicated by paths 155 and 156. Start and abort requests from the VAX terminal 114 are also transmitted to the supervisor computer 102, via path 152, workstream database 112 and path 154, which forwards them for execution by the spray processor 10 via path 156. The spray processor 10 constantly transmits equipment status and process data to the supervisor computer 102, as indicated by a path 158, which data is transmitted to the supervisor hard drive 103, as indicated by a path 160, for storage in data files. Equipment status and real time data from the spray processor 10 are also transmitted to the engineering computer 106, as indicated by a path 162, and equipment status data is transmitted to the VAX terminal 114 via the workstream database 112, as indicated by paths 164, 166. The data files comprising equipment status and process data from the spray processor 10 and stored on the supervisor hard drive 103 are periodically uploaded to the archive hard drive 109b via the archive computer 109a, as indicated by paths 168 and 169, from which they may be accessed by the engineering computer 106, as indicated by a path 170. Equipment status and historical data stored on the supervisor hard drive 103 may be subsequently accessed for use by the supervisor computer 102 via the path 155. As previously indicated, on each computer is stored a configuration file unique to the particular computer and, if the computer is a supervisor, the processor to which it is connected. The configuration file, designated #CONFIG.FSI, is read at startup of the spray processor host system to determine the functionality of the computer, i.e., supervisor, engineer, bridge, or any combination thereof. As will be described in greater detail with reference to FIGs. 17 and 18, the use of a configuration file such as that described below enables a single software utility program comprising separate modules for implementing the functionality of each of the three types of computers to be run on all of the computers in the system 100, with the functionality of the particular computer being determined by its configuration file. In other words, one purpose of the configuration file is to specify which of the three modules of the software utility the computer is to run. In the presently preferred embodiment, #CONFIG.FSI may be edited using any number of available editors and any characters to the right of an asterisk ("*") are read as comments. As shown below, the #CONFIG.FSI file begins with comments giving restrictions on the length of certain names and other information concerning the use of the file. Next is a "NETWORK" section pertaining to the computer network, including information regarding the number of computers in the network (1 to 20), information about each computer, the computer on which backup copies of recipes are to be stored, the computer that has a printer, such as the printer 107b, for printing recipes, and the number of the computer being used as a message router to an external host (usually the bridge computer). An exemplary NETWORK section is shown below. As shown below, a "DATA CAPTURE" section pertains to data capture and includes information for identifying the data capture disk and directory, the amount of disk space on the data capture disk that cannot be used for data capture, the rate of data capture saves to the disk, in seconds, a keyword "ARCHIVE," and the archive directory path. In particular, the data capture rate allows the user to determine the frequency with which data is "captured" from each processor, thereby determining the resolution of graphs to be created using the system 100, as the smaller the data capture rate (in seconds) specified, the more accurate the graph. A typical data capture rate is 2 to 3 seconds. Next, as shown below, a "COMMUNICATIONS" section pertains to communication information; specifically, processor communication information, including baud rate (default 9600), parity (default N), data bits (default 8) and stop bits (default 1), and upstream host communication information, including baud rate (default 9600), parity (default N), data bits (default 8) and stop bits (default 1). As shown below, the next section, designated "PARAMETERS," pertains to flow system information and includes, for each chemical, the chemical name, chemical code number (as shown in FSI manuals), maximum range of the chemical flow and units in a table of seven chemical flows. In the preferred embodiment, flow system seven is designated as the DI water system. As shown below, the next section comprises a table of up to five other parameters monitored by the system, including parameter name, parameter maximum and parameter units. The parameters occupy fixed positions in the table and include RPM (turntable RPM), Hot H20 (hot water temperature), Etch Probe (etch probe/spray post temperature), Analog-1 (spare system input) and Analog-2 (spare system input). A blank in the parameter name entry indicates that the parameter corresponding to that position in the table is not used. Finally, as shown below a digital input section comprises INPUTS, which are digital inputs up to 6, and the numbers of the inputs to be monitored. FIG. 2 illustrates a flow diagram 200 of the operator interface of the spray processor host system 100, wherein a plurality of labeled boxes represent display screens and windows for presentation on a display of the engineer computer 106. Upon initiation of the spray processor host system, a system status screen 202 is displayed on the display of the engineer computer 106. An exemplary system status screen is shown in FIG. 3. At this point, it should be noted that at the top of each spray processor host system screen, such as the system status screen 202 shown in FIG. 3, is a title line 300 which shows, from left to right, the name of the supervisor computer, in this case, "FSI_1," the screen title, in this case "FSIHOST SYSTEM STATUS," and the current date and time, in this case, "09-07-94 10:57:53." At the bottom of each screen is a key definition section 302 labeled "KEYS ACTIVE." As its label suggests, the key definition section comprises a list of active keys for the screen, it being understood that the active keys will change with the screen, as well as with the current security level. In addition, certain keys retain a particular function throughout all of the screens, including the arrow keys, which are used for moving from one entry field to another, <END> to go to the last page of a list of items, <ENTER> or <RETURN> to select information from a list or to finish entering data in an input field, <ESC> to exit from the current screen to the previous screen or system status screen 202, <PG DN> to view the next page of a list, <PG UP>to view the previous page of a list, <+> to select, or highlight, a particular entry from a list of entries, and <PRT SCRN> to print data capture graphs. The system status screen 202 shows status information for each of up to eight processors/supervisor computers. Below the title line 300 is information about each processor 104, including the processor name in a field labeled "FSI", the recipe step being executed in a field labeled "STEP"; the recipe number and name in a field labeled "RECIPE", the processor status in a field labeled "STATUS", the processor owner in a field labeled "OWNER", and the time of day at which execution of the current recipe will end in a field labeled "END TIME." The processor status will be listed as "IDLE" if the processor 1-4 is not performing any functions, "SETUP" if the processor 104 is getting ready to change to a new status, "EXECUTING" if the processor 104 is running a recipe, "BUSY" if the processor 104 is performing a task, such as autofilling canisters, "WASHDOWN" if an alarm condition exists, "PAUSE" if the processor 104 is attending to an alarm condition or if a manual function, such as opening or closing the lid, is being performed. In the center of the screen 202 is a one-line status message 304 for the processor 104 whose name is highlighted above. The format of the status message 304 when the status of the highlighted processor 104 is EXECUTING is Recipe: recipe name (recipe number) ; Step time = sss sec; Time remaining = mm:ss . Otherwise, the status message 304 will simply read processor name is status Where processor name is the name of the highlighted processor and Status is the status thereof as listed above. Referring to FIGs. 2 and 3, depression of <F1> from the system status screen 202 results in the generation of a help window 204 in which is displayed information regarding use of the spray processor host system. Depression of <CTRL> and <F1> simultaneously (hereinafter represented "<CTRL-F1>") results in the display of a change security level window 206 for enabling the operator to change the security level of the system. Depression of <F2> results in the display of a detail screen 208 for the selected processor, as will be described in greater detail below with reference to FIG. 4. Depression of <F3> results in the generation of a change owner window 210 for enabling the operator to change the owner of the selected processor. Depression of <F6> results in the display of a view recipe screen 212, which is described in greater detail below with reference to FIG. 5. Depression of <F7> results in the display of a recipe directory screen 214, which is described in greater detail below with reference to FIG. 8. Depression of <F8> results in the display of an event log screen 216, which is described in greater detail below with reference to FIG. 9. Depression of <F11> results in the display of a data capture status screen 218, which is described in greater detail below with reference to FIG. 10. Finally, depression of <CTRL-F12> results in the display of an "End Program" window 220 for prompting the operator to input whether or not he or she actually wants to exit the spray processor host system. Depression of <Y> or <F12> terminations execution of the spray processor host system. Depression of any other key returns the operator to the system status screen 202. FIG. 4 is an illustration of the detail screen 208. As shown in FIG. 4, the detail screen 208 shows process information for a selected processor. As described above, the detail screen is displayed by selecting a processor 104 from the system status screen 202 and then depressing <F2>. The information on the detail screen is updated periodically, for example, on the order of once every second, while a recipe is executing. Below the title line of the detail screen is a one lines status message 400, the format and content of which is similar to the status message 304 of the system status screen 200. Below the status message 400 is the recipe step number currently being executed, in this case, "16," and a chemicals table 402 showing current chemical flow information. The "CHEMICAL" column of the table 402 lists the process chemicals (up to eight), as specified in the particular supervisor's configuration file. The format and content of the configuration file has been described in detail above. The order and position of the chemicals in the table 402 is important because each position corresponds to a flow system. For example, the illustrated detail screen 208 lists DI in the seventh position, because it will be connected to the seventh flow system. The "MAX" and "UNITS" columns together specify the maximum value allowed for each chemical. These values are specified by a system manager in an supervisor's configuration file. The "SET PT" column shows the output set point as specified in the active recipe and is an actual value, rather than a percentage. The "READ OUT" column shows the output value as reported by the processor 104 in the most recent data reading. Again, these are actual values, not percentages. The "VALVE" column shows whether the output flow is on or off. A graph 404 next to the table 402 shows percent deviation or percent full scale for each chemical with an "ON" value. Pressing <F2> toggles between the two types of information. A Percent Deviation graph, shown in FIG. 4, shows the deviation between the setpoint and readout values, from -4 to +4 percent, thereby enabling quick identification of possible errors in the process run. A Percent Full Scale graph (not shown) shows the readout as a percentage of the maximum flow value in a format similar to that-of the Percent Deviation graph. Below the chemicals table 402 is a parameters table 406. As with the chemicals, each parameter is listed in the parameters table 406 with its maximum, units, setpoint and readout values. The spray processor host system supports the following parameters: RPM, which is the operator-defined name for turntable information, "Hot H2O," which is the DI water heater temperature, "Etch Probe," which is the spray post temperature, and "Analog-1" and "Analog-2," which are operator-defined readings. Below the graph 402, a box 408 shows values for "Run Count" and "Washdown." Run Count is the number of process runs since the last time the run count was cleared. This value is available from the processor 104 and can be used for scheduling maintenance. Washdown is the amount of washdown time necessary to recover from an alarm; that is, the amount of time it takes to halt the current process step and completely rinse the wafers in response to an alarm. Below the parameters table 406 are three more items of information, including "INPUTS," which is a string of eight s and/or 0s showing which inputs are on (1) and which inputs are off (0), "PROCESS," which indicates the current recipe step in terms of step number, step time, turntable speed and a list of active outputs, and "ACTIVE ALARMS," which lists the numbers of the active alarms, in red. Detailed alarm information is displayed on a separate alarms screen (FIG. 6). From the detail screen 208, as previously described, pressing <F2> toggles the graph 402 between Percent Deviation and Percent Full Scale, as represented in FIG. 2 by a screen block 222. Once the graph 402 is toggled, the operator is automatically returned to the detail screen 208. Pressing <F4> enables an operator to download a recipe from either of two libraries maintained by the spray processor host system on each of the supervisors, such as the supervisor 102, including a production library containing tested production recipes, and an engineering library, containing the test recipes. To download a recipe, the operator presses <F4> from the detail screen 208 to display a download window 224, at which point, the operator may press <P> or <RETURN> to download from the production library, or <E> and then <RETURN> to download a recipe from the engineering library. After choosing a library, the operator is prompted to enter the number of the recipe to be downloaded, at which point, the operator may return to the detail screen 208 by pressing <ESC>. Pressing <F6> from the detail screen 208 results in the display of a View Recipe screen 212, which will be discussed in greater detail below with reference to FIG. 5. Pressing <F7> from the detail screen 208 clears any active alarms, as represented in FIG. 2 by a window block 226. Pressing <F8> from the detail screen 208 results in the display of an active alarms screen 228, as illustrated in greater detail in FIG. 6, it being understood that this option is only available when there is in fact an active alarm. From the active alarms screen 228, the operator may obtain information regarding the status of the processor 104 immediately prior to the alarm by pressing <F6>, which results in the display of a pre-alarm status screen 230, as illustrated in greater detail in FIG. 7, it being understood that this option is only available when there is in fact an active alarm. The pre-alarm detail screen comprises the contents of the detail screen 208 just before the alarm occurred. From the active alarms screen 228, pressing <F7> clears all active alarms, as represented in FIG> 2 by a window block 231. Pressing <F9> from the detail screen 208 resets the run counter, which keeps track of the number of process runs since the last reset thereof, to zero, as represented in FIG. 2 by a window block 232. Finally, pressing <F11> from the detail screen 208 results in the display of a data capture window 234 for enabling the operator to stop or start capture data and review captured data. From the data capture window 234, pressing <V> enables the operator to view the data being captured, as represented in FIG. 2 by a window block 236 and described in greater detail below, while pressing <S> enables the operator to stop data capture, as represented in FIG. 2 by a window block 238. From the system status screen 202, depression of <F3> results in the display of the change owner window 210 for enabling the operator to change the owner of a selected processor. In the preferred embodiment, the available owners include "PROD" for production runs, "MAINT" for processor maintenance, "QUAL" for qualification testing, "ENG" for testing by engineering, and "RSVD" for reserved. To change the owner, the operator simply presses <+> until the desired owner is displayed, at which point, the operator presses <RETURN> to return to the system status screen 202. Pressing <F6> from the system status screen 202 results in the operator being prompted to enter the number of the recipe to be viewed, it being noted that, as described below, if the number is not known, the operator may locate the number by pressing <F7> to use the recipe directory 214 (FIG. 8). Once a recipe number has been entered, the view recipe screen 212, which is illustrated in greater detail in FIG. 5, is displayed. As shown in FIG. 5, for each recipe step, the step number (0-99), step duration (in seconds), turntable RPM, and the output function numbers are specified. Below the numbers are the function descriptions in the same order as the numbers. As represented in FIG. 2 by a window block 240, the current recipe may be printed by pressing <ALT-P>. Pressing <F7> from the system status screen 202 results in the operator being prompted to select either the production or engineering library, as discussed above. Once the appropriate library has been selected, the recipe directory screen 214, as illustrated in greater detail in FIG. 8, is displayed. The recipe directory screen 214 shows each recipe's number and name, the date and time when the entry therefor was created or changed, and possibly a comment. From the recipe directory screen 214, depression of <F5> enables the operator to edit the recipe directory screen 214, as represented by an edit recipe directory window block 242. At that point, the operator may press <F6> to view a recipe, as represented by the view recipe screen block 212, <F7> to delete a recipe, as represented by a delete a recipe window block 244, and <F8> to copy ?. recipe, as represented by a copy a recipe window block 246, it being understood that recipes to be viewed, deleted or copied are designated by the operator's entering the appropriate recipe number. In addition, depression of <F9> results in the display of an add or replace a recipe screen 248, as shown in greater detail in FIG. 11. In a preferred embodiment, new recipes may be added to the system using a "MERCURY® Offline Editor" ("MOE") program provided by the manufacturer of Mercury processors to create and edit recipes for implementation therein. The MOE editor is used to create recipes because of its built-in safety checks. In operation, a floppy disk containing the recipes for a processor 10 is inserted into a computer (not shown) running the MOE program, at which point recipes may be edited or created in a known manner. In the prior art, the disk containing the recipes is used to input recipes directly to the processor 10. However, in accordance with a feature of the present invention, recipes for execution by the processor 10 are also stored on the hard drive 103 of the associated supervisor computer 102. Accordingly, after recipes are created or edited using the MOE, the disk containing the processor 10 recipes is inserted in the appropriate floppy drive (i.e., A: or B:) of the supervisor computer, and then <F9> is pressed. At that point, a list of all the recipes on the disk is displayed. To add a recipe, the selected recipe is highlighted using the arrow keys, at which point the operator may press <ENTER> to add the selected recipe. The operator is then prompted to enter a recipe number for the recipe. If the entered number is the same as an existing recipe, the operator is queried as to whether the existing recipe with the same recipe number is to be replaced. The new recipe is then copied to the recipe subdirectory and its name added to the recipe file. From the system status screen 202, pressing <F8> results in the display of the event log search screen 216, which is shown in greater detail in FIG. 9. From the event log search screen 216, the operator may enter search criteria with respect to dates, times and various other parameters. Pressing <F8> again initiates the search. Once the search is completed, an event log 250, as shown in greater detail in FIG. 12, comprising all the events that match the search criteria is displayed. From the system status screen 202, pressing <F11> results in the display of the data capture status screen 218, as shown in greater detail in FIG. 10. The data capture status screen 218 shows data capture information for the selected host. The message below the title line indicates the status of the data capture. In the preferred embodiment, if data capture is not active the message following the host number and name is "data capture not active." If data capture is active, the message indicates the name for the data capture file and the number of records written so far, for example, "data being captured to hmmddqq.rrr, nnn records written." The file name represents the host number ( h ), month ( mm ), day ( dd ), sequence of run ( rrr ) and recipe number ( nnn ), From the data capture status screen 218, the operator can delete old data capture files by pressing <F7>, search for selected data capture files by pressing <F10> and graph captured data by pressing <F11>. The operator's pressing <F7> results in the display of a delete data capture window 252 for prompting the operator to specify, by date or by percentage, capture files to be deleted. As previously indicated, such manual deletion of files may be an alternative or supplemental to a periodic archiving process. and therefore might not be implemented on a regular basis Pressing <F7> from the delete data capture window 252 results in the display of a delete by date screen 254 for enabling the operator to delete data capture files older than a specified date. After the operator has typed the date for the earliest file to be retained (i.e., not to be deleted), pressing <F7> causes all files older than the selected date to be deleted. Pressing <F8> from the data capture window 252 results in the display of a delete by percent screen 256 for enabling a operator to delete the oldest files until a certain percentage of disk space occupied by the files is freed up. In the preferred embodiment, the default value for disk space to be reclaimed is thirty percent (30%); however, the operator may enter any percentage value from one (1) to ninety nine (99). After the operator has typed the percentage of files to be deleted, a list of files to be deleted is displayed. If the operator determines that certain of the listed files should not be deleted, the file can be marked to be saved to diskettes prior to deletion thereof. Files are marked by highlighting the file, using the arrow keys, and then pressing <+>. After the operator has inserted a formatted disk to which the marked files are to be saved, the operator may press <F7> to proceed with the deletion and/or saving of the files. After the files have been deleted, the total disk space reclaimed and the percentage disk space reclaimed are displayed. From the data capture status screen 218, pressing <F10> results in the display of a data capture search screen 258, which is shown in greater detail in FIG. 13. At that point, the operator may input information regarding which files are to be listed by specifying bank number, month, day, sequence number and recipe number thereof. Depression of <F11> once the search criteria have been entered results in the display of a list of files screen 260, shown in greater detail in FIG. 14, comprising a list of files that match the search criteria. From the list of files screen 260, the operator may graph the data contained in a data capture file in one of three ways. First, without selecting any of the files on the list of files screen 260, the operator may press <F11> to specify the name of a file to be graphed. Alternatively, the operator may select a single file from the screen 260 and then press <F11> to graph that file. Finally, the operator may select two files from the screen 260 and then press <F11> to graph the files. In the preferred embodiment, real time graphing of data is accomplished as follows. While data is being collected by the supervisor computers and stored in data capture files, it may also be displayed on the display of the supervisor and/or engineering computer. The user may specify the data capture rate in the configuration file of the supervisor. The operator may create graphs of captured data by first searching for the data capture files, as described above, or by pressing <F11> from the data capture status screen 218. Depression of <F11> from either the data capture status screen 218 or the list of files screen 260 results in the display of a data capture parameters screen 262, which is illustrated in greater detail in FIG. 15. In the preferred embodiment of the present invention, each graph may include up to six plots, which represent flow systems and other parameters. The operator may graph parameters from a single-file, or from two files for comparison purposes. The operator selects the parameters to be plotted using the data capture parameters screen 262 by typing a number next to each parameter to be plotted. Once the parameters are chosen, pressing <F11> displays a graph screen 264 of the selected parameters for the selected file(s). An exemplary graph screen, containing two graphs corresponding to the data capture parameter screen 262 as shown in FIG. 15, is shown in FIG. 16. Referring to FIG. 16, from the graph screen 264, pressing <F1> displays help, including information about other active keys. Pressing <F3> enables the operator to change the time base of the X axis. Responsive to depression of <F3>, the operator is prompted to enter a new start end end time, upon entry of which, the graph is redrawn. Pressing <F4> enables the operator to change the flow range on the Y axis. Responsive to depression of <F4>, the operator is prompted to enter the lowest and highest values, respectively, for the flow system range, upon entry of which the graph is redrawn. The information contained in the data capture files and event logs may be used for various diagnostic and optimization purposes. For example, the data may be used to generate flow stabilization algorithms and procedures for controlling chemical ratios, and thus clean efficiency and repeatability. In addition, the data may be used to implement machine operating protocols that insure process temperatures are at the desired value for optimal performance and device yield. Moreover, the data may be used in the detection of deteriorating equipment performance indicative of imminent equipment failure, as well as equipment failure analysis of system aborts, alerts or alarms. As indicated above, in the presently preferred embodiment, the spray processor host system is implemented using a software utility that is run on all of the computers in the system (i.e., supervisor, engineer and bridge) and that contains the functionality for implementing each computer type. Accordingly, the functionality of each individual computer is determined by its configuration file, which is read at startup of the utility on each of the computers. In other words, as described below with reference to FIGs. 17 and 18, each computer implements only those portions of the utility comprising the functionality thereof as designated in its configuration file. As has also been previously indicated, each computer may be configured to function as one or more "types" of computers. For example, as shown in FIG. 1B, the computer 102 includes the functionality of both a supervisor and bridge. Similarly, although not shown, a single computer could be configured to function as both a supervisor and an engineer or an engineer and a bridge using the same utility and executing different modules thereof. FIG. 17 is a flowchart of a preferred method of operation of the present invention. Execution begins in step 1700, in which the system 100 is initialized. In step 1701, a determination is made whether the computer is an engineer computer, such as the engineer computer 106. This determination is made by referring to the configuration file of the computer. If the computer is an engineer computer, execution proceeds to step 1702; otherwise, execution proceeds to a background process, which will be described in detail below with reference to FIG. 18. In step 1702, the system status screen 202 (FIGs. 2 and 3) is displayed. In step 1704, a determination is made whether a key has been pressed. If not, execution proceeds to the background process (FIG. 18) described below. If in step 1704, it is determined that a key has been pressed, execution proceeds to step 1706, in which a determination is made whether an arrow key has been pressed, indicating that the user wants to select a different supervisor computer. If so, execution proceeds to step 1708, in which the system status screen for the next supervisor computer is displayed, and then returns to step 1704. If in step 1706 it is determined that an arrow key has not been pressed, execution proceeds to step 1710, in which a determination is made whether <ALT-T> has been pressed. If not, in step 1712 the screen is updated according to the key(s) pressed, as described above with reference to FIGs. 2-16; otherwise, execution proceeds to step 1714, in which the messages comprising communications between the current supervisor computer and its associated processor (hereinafter referred to as "SECS messages," as described in further detail with reference to FIG. 18) are displayed to enable a user to debug the process. Execution then returns to step 1704. FIG. 18 is a flowchart of a background process of the present invention which is continually executed by the supervisor, engineer and bridge computers comprising the spray processor host system of the present invention. As previously indicated, if in step 1701 a determination is made that the computer is not an engineer computer, or if in step 1704 a determination is made that no key has been pressed, execution proceeds to step 1800, in which a message.net file, which is stored on a RAM drive (not shown) of the computer, is read. The message.net file is used to store communications between the computer on which the file is stored and the other bridge, supervisor and engineer computers comprising the spray processor host system 100. In step 1802, the messages stored in the message.net file are processed. In step 1804, a determination is made whether the computer is a supervisor computer. If so, execution proceeds to step 1806, in which the computer checks its COM1 port for a message, designated a COM1 SECS message, from its associated spray processor. The COM1 SECS message read in step 1806 is then parsed and processed in steps 1808 and 1810, respectively. Execution then proceeds to step 1812. Similarly, if in step 1804, there is no message.net file message to be read, execution proceeds directly to step 1812. In step 1812, a determination is made whether the computer is a bridge computer. If not, execution returns to step 1800; otherwise, execution proceeds to step 1814, in which a message, designated a COM2 SECS message, from the upstream host is read from the COM2 port of the computer and then parsed and processed in steps 1816 and 1818, respectively. If at any point during execution of the background process illustrated in FIG. 18 a key is pressed, execution will return immediately to step 1704 (FIG. 17). In this manner, while not processing keystrokes, each computer is constantly reading and processing communications from other devices within and outside the system 100. It is understood that the present invention can take many forms and embodiments. The embodiments shown herein are intended to illustrate rather than to limit the invention, it being appreciated that variations may be made without departing from the spirit of the scope of the invention. For example, upstream hosts other than Workstream may be used. In addition, rather than archiving data capture files on a separate archive computer 109a, each supervisor computer may be equipped with large disk drives capable of storing more than a few weeks worth of files, in which case, data capture files could be automatically deleted as specified in the configuration file of the supervisor and the archive computer 109a would be used for storing backup copies of the system files of each supervisor computer. Moreover, any combination of the bridge, supervisor and engineer computer functions may be implemented by a single personal computer, a single bridge/supervisor computer combination may provide an upstream communications link for multiple (i.e., up to seven additional) supervisor computers, and a single supervisor computer may be configured to supervise more than one processor. Still further, rather than being implemented using a single utility comprising the functionality of all three types of computers, the present invention could be implemented using three separate utilities, each comprising the functionality of a single type of computer, in which case the functionality of the computer would be determined by the identity of the utility executed thereby.

Claims: A system (100) for providing integrated monitor and control functions for a semiconductor spray process tool (10), the system comprising: a supervisor computer (102) electrically connected to said spray process tool for collecting and storing on a mass storage device (103) of said supervisor computer (102) equipment status and process data generated by said spray process tool during each process run and for storing a plurality of process recipes executable by said spray process tool; an engineer computer (106) electrically connected to said supervisor computer for generating control signals to said spray process tool via said supervisor computer (102), said control signals including process recipe download requests for causing said supervisor computer to download requested ones of said process recipes to said spray process tool for execution, said engineer computer receiving said collected equipment status and process data from said supervisor computer and being capable of displaying said received equipment status and process data in at least one user-selected format. A system according to claim 1 and further comprising a bridge computer (102) electrically connected to said supervisor computer (102) and said engineer computer (106), said bridge computer (102) providing a communications link between said system and an upstream host, said upstream host being capable of generating control signals to said spray process tool via said supervisor computer. A system according to claim 1 or 2 and further comprising an archive computer (109a) electrically connected to said supervisor computer and said engineer computer, said archive computer comprising a mass storage device (109b) having substantially more storage capacity than said supervisor computer mass storage device (103), said archive computer mass storage device serving for storing data files comprising said collected equipment status and process data, backup copies of said process recipes and other system files of said supervisor computer. A system according to claim 3, wherein said engineering computer is further capable of displaying contents of selected ones of said data files stored on said archive computer mass storage device. A system according to any one of claims 1 to 4, wherein said engineering computer is further capable of displaying a process recipe being executed by said spray process tool and providing an indication of a current step of said displayed process recipe. A system according to any one of claims 1 to 5 further comprising a printer (107b) electrically connected to said engineer computer for printing said received equipment status and process data in said user-selected format. A system according to any one of claims 1 to 6, wherein said engineer computer further comprise a modem (107a) for enabling remote control of said spray process tool and said supervisor computer. A system according to any one of claims 1 to 7, wherein said process data comprises chemical flow rates, turntable rotational speed and process temperature, and wherein said at least one user selected format comprises a graph of said process data. A system according to any one of claims 1 to 8, wherein said control signals comprise start and abort requests for respectively starting and aborting a current process run. A system according to any one of claims 1 to 9, wherein said control signals comprise an alarm clear signal for clearing an alarm condition of said spray process tooL A system according to any one of claims 1 to 10 or claim 3, wherein the or each computer mass storage device comprises a hard disk drive. A method of providing integrated monitor and control functions for a semiconductor spray process tool (10), the method comprising: utilizing a supervisor computer (102) to collect equipment status and process data generated by said spray process tool during each process run; storing said collected equipment status and process data and a plurality of process recipes executable by said spray process tool on a storage device (103) of the supervisor computer (102); utilizing an engineer computer (106) connected electrically to the supervisor computer (102) to generate control signals for controlling the operations of said spray process tool via the supervisor computer (102), said control signals including process recipe download requests for causing requested ones of said process recipes to be downloaded from said storage device to said spray process tool for execution; and utilizing the engineer computer (106) to display said collected equipment status and process data in at least one user-selected format. A method according to claim 12 and further comprising utilizing a bridge computer (102) to provide a communications link between said spray process tool and an upstream host generating control signals for controlling operations of the spray process tool. A method according to claim 12 or 13 and further utilizing an archive computer (109a) periodically to archive data files comprising said collected equipment status and process data and backup copies of said process recipes on a second storage device of the archive computer having substantially more storage capacity than said storage device of the supervisor computer. A method of claim 14 further comprising utilizing the engineer computer to display contents of selected ones of said data files stored on said second storage device. A method according to any one of claims 12 to 15 further utilizing the engineer computer to display a process recipe being executed by said spray process tool and to provide an indication of a current step of said displayed process recipe. A method according to any one of claims 12 to 16 further comprising utilizing a printer to print said received equipment status and process data in said user-selected format. A method according to any one of claims 12 to 17 further comprising utilizing a modem for remote control of said spray process tool. A method according to any one of claims 12 to 18, wherein said process data comprises chemical flow rates, turntable rotational speed and process temperature, and wherein said at least one user selected format comprises a graph of said process data. A method according to any one of claims 12 to 19, wherein said control signals comprise start, stop and abort requests for respectively starting, stopping and aborting a current process run. A method according to any one of claims 12 to 20, wherein said control signals comprise an alarm clear signal for clearing an alarm condition of said spray process tool.

Inventors: ALLEN MICHAEL, LANDIS DONALD, LEE PATRICK, LINZY DAVID, LUCA SUSAN B, SEATON JAY J, ALLEN, MICHAEL, LANDIS, DONALD, LEE, PATRICK, LINZY, DAVID, LUCA, SUSAN B., SEATON, JAY J.
Applicants: ADVANCED MICRO DEVICES INC, ADVANCED MICRO DEVICES INC.
Application year: 1996
Main classification: G05B19
IPC codes: H01L21, G05B19, G05B23