The present invention relates to a managing method, and more particularly to a control method or scheme of a Generic Equipment Manager for the semiconductor industry.
The manufacturing process of semiconductor is very complicated and delicate so that the requirements of equipment automation are rather high. Although most of equipment is itself automatic, it may not be connected with a manufacturing execution system (MES) to form an integrated system, wherein the MES generally determines production scenarios for controlling the production factors adopted in the equipment (tools). Therefore, some equipment may become an isolation island in the automatic manufacturing system, which means that the equipment receives no instruction from the MES. To solve the aforementioned problem of “isolation island” and to increase the equipment utilization, an Equipment Manager is introduced. Generally, the Equipment Manager first receives a command from the MES, and then converts the command into production scenarios, and then generates equipment rules from the production scenarios for operating at least one piece of equipment connected thereto, wherein the equipment rules are used in the Equipment Manager to control the operation parameters and conditions of the equipment. Nevertheless, the Equipment Managers existing in the market usually need to conduct respective modifications and adjustments with respect to various types of equipment so as to manage those various types of equipment properly, thus generating various versions of Equipment Managers (in accordance with various types of equipment). However, the difficulty level of maintaining those various versions of Equipment Managers is quite high, thus causing a lot of inconvenience and cost.
For solving aforementioned problems, the present invention provides a methodology that can easily change the production scenarios and equipment rules by merely editing the contents of associated databases without changing the structure of the main program for the Equipment Manager. Accordingly, the present invention can make the Equipment Manager generic so that it can handle various production scenarios and control different types of equipment.
It is therefore an objective of the present invention to provide a methodology that can easily change the production scenarios and equipment rules by editing the contents of associated databases without modifying the structure of the main program for the Equipment Manager. The Equipment Manager includes a configuration controller (CC) and an equipment driver (ED). For communication between the configuration controller and the equipment driver, the present invention also defines a specification of communication protocol called the generic equipment interface (GEI) message as the communication standard between the configuration controller and the equipment driver.
It is therefore another objective of the present invention to provide an equipment management method for managing an equipment through an equipment manager that includes a configuration controller, an equipment driver and a generic equipment interface for communicating between the configuration controller and the equipment driver through generic equipment interface messages. The method includes steps of providing a production scenario to be written into a controller database of the configuration controller, transmitting the production scenario into a equipment behavior database of the equipment driver via the generic equipment interface messages, transforming the production scenario into at least one equipment rule, receiving a communication protocol message from the equipment, transforming the at least one equipment rule into the generic equipment interface messages, and transmitting the generic equipment interface messages to the configuration controller and storing the generic equipment interface messages into the controller database of the configuration controller so as to monitor and control the equipment.
Preferably, the controller database of the configuration controller is a production scenario database.
Preferably, the configuration controller is used to read the production scenario database and transmits the production scenario to the equipment driver via the generic equipment interface messages.
Preferably, the configuration controller receives an event datum from the equipment driver via the generic equipment interface messages and edits the event datum into the production scenario database.
Preferably, the driver database is an equipment behavior database.
Preferably, the equipment driver receives a controlling datum from the configuration controller via the generic equipment interface messages to be saved into a specific space of the equipment behavior database, and to be transformed into a controlling message complying with the equipment communication protocol to be transmitted to the equipment.
Preferably, the equipment driver receives an equipment message complying with the equipment communication protocol and transforms the equipment message into the generic equipment interface message, and then transmits the generic equipment interface message to the configuration controller.
Preferably, the equipment rule complies with the at least one equipment communication message standard.
Preferably, the driver database defines therein a first set of transformation rules by which the production scenario is transformed into the equipment rule, and vice versa.
Preferably, the driver database defines therein a second set of transformation rules by which the equipment communication messages are transformed into the generic equipment interface messages, and vice versa.
Preferably, the equipment communication message standard includes at least one semiconductor industry's SECS II message standard.
Preferably, the at least one production scenario and the at least one equipment rule of the equipment manager are deployed or modified by simply editing the contents of the production scenario database and the driver database without modifying one of a program structure and codes of the equipment manager.
Preferably, the generic equipment interface message is the communication protocol message between the configuration controller and the equipment driver.
Preferably, by editing the production scenario database and the driver database, the equipment manager copes with all kinds of the normal production scenarios and the equipment rules.
Preferably, the equipment manager is generic so that it handles various production scenarios and control/monitor different kinds of equipment.
Preferably, when the exceptional production scenario and/or the equipment rule are encountered, they are handled by establishing at least one user defined function.
Preferably, the method of the present invention further comprises a step of: transforming the production scenario into a specific equipment communication message so as to send the specific equipment communication message to the equipment for a management purpose.
Preferably, the method of the present invention further comprises a step that transforming the specific equipment communication message into the at least one equipment rule, storing the equipment rule into the driver database of the equipment driver, and sending the equipment rule to the configuration controller for the management purpose.
Preferably, the method of the present invention further comprises a step that transforming the at least one equipment rule into a communication protocol message.
Preferably, the method of the present invention further comprises a step that transmitting said communication protocol message to the equipment.
Now the foregoing and other features and advantages of the present invention will be more clearly understood through the following descriptions with reference to the drawings, wherein:
The present invention provides a controlling or managing method or scheme for a Generic Equipment Manager for gathering information and supervising semiconductor equipment. As shown in
Please refer to
1. Redefine the specification of the generic equipment interface massage (GEI_message).
2. Redefine and re-plan the local database of the configuration controller, and additionally provide the availability of user-defined functions.
3. Redefine and re-plan the local database of the equipment driver, and additionally provide the availability of user-defined functions.
4. Renew and stipulate the communication process between the configuration controller and the equipment driver.
The detailed descriptions about the differences between the prior art and the present invention in respect of GEI message, production scenario database, equipment behavior database, and the communication processes between the configuration controller and the equipment driver are as follows.
1. Specification of the GEI Message
The present invention individually includes the configuration controller and the equipment driver by separating the production scenarios from the equipment rules. Also, the GEI message takes the charge of the communication between the configuration controller and the equipment driver.
Although the prior art also uses the concept of the GEI message, and provides a specification for the GEI message, the definition of the specification is unclear and impractical. The present invention redesigns a new architecture for the GEI message to maintain the reasonability and feasibility of the architecture. Relevant descriptions are as follows:
(1) Prior Art
Please refer to
(2) The Present Invention
The GEI message is defined as the communication protocol between the configuration controller and the equipment driver. The header and contents of the message have the format as shown in the following.
Format Table of the GEI Message
Wherein the format of the user-defined data is defined in
(3) Comparisons Between the Prior Art and the Present Invention
Comparing the specifications of the GEI message in the prior art and the present invention, it can be found that the most significant difference between them is the definitions of specifications of transmission contents. The GEI message specification of the prior art defines the name of contents and the number, name, format, and contents of parameters without a strict stipulation in respect of their accessions. Hence it's difficult to be put into practice. On the contrary, the present invention has strict stipulations about those respects, and simplifies the accessing rules of the parameters in order to make sure that the specification of the GEI message is practical.
2. Production Scenario Database
The database used in the configuration controller is called the production scenario database.
(1) Prior Art
The table of the production scenario database defined by the prior art includes scenario table and GEI parameter tables (I), (II), (III) as shown in the following.
Scenario Table of the Prior Art
(2) The Present Invention
The production scenario database of the present invention totally uses three tables, i.e. a process table, a GEI_sequence table and a GEI_Item table. Their formats are as follows:
EQID represents the reference number of the corresponding equipment. The PROCESS_ID is the identification code of the specific process. The GEI_MSGIDs represent the sequence for sending messages in the specific process.
The format of the GEI_MSGIDs is:
The main purpose of this table is to help the configuration controller get the data sequence for transmitting message correctly through looking up this table. EQID represents the reference number of the corresponding equipment. The GEI_MSGID is the identification code of the GEI message. GEI_MSGTYPE represents the type of the GEI message. GEI_DS is the data sequence for transmitting the GEI message. The UDF_Replace represents a scheme as to whether the user-defined function (UDF) should be called to replace the transmitted/received GEI message. The UDF_Enable represents whether to execute the UDF or not. The UDF_DLLID represents the name of the dynamic linkage library including the UDF. The UDF_PID represents the name of the UDF.
The GEI_Item table defines the contents of the GEI message data to be transmitted/received. EQID represents the reference number of the corresponding equipment. The GEI_MSGID is the identification code of a GEI message of a specific item. The GEI_Item represents the code of the item. The GEI_Format represents the data type of the item. The GEI_Data means the value of the item. If the format of the item is in binary data, the value of the item is saved in the space GEI_Data_B. The UDF_Enable represents whether to execute the UDF or not. The UDF_DLLID represents the name of the dynamic linkage library including the UDF. The UDF_PID is the name of the UDF.
(3) Comparisons Between the Prior Art and the Present Invention
Comparing the production scenario databases in the prior art and the present invention, it can be found that the scenario database of the prior art is less expandable, and we must define in advance the maximum steps of each process in the scenario table of the prior art. For example, since twelve steps are used in the scenario table of the prior art to represent the longest process, if the new process needs more than twelve steps, we must increase the step number of the table. On the contrary, the production scenario database of the present invention uses a byte to represent the number of process steps (the maximal value of process steps is 255), and defines the semantic rule of a process so that in the present invention, the process steps are edited into the proper table items under the semantic rule, and then the editing of the production scenario can be completed without the necessity of modifying the structure of the database schema.
In addition, the production scenario database of the prior art can only cope with the static production scenarios, while the user-defined functions can be added into the production scenario database of the present invention for handling the dynamic operating scenarios.
3. Equipment Behavior Database
The database used in the equipment driver of the present invention is called the equipment behavior database.
(1) The Prior Art
The equipment behavior database has three tables: command/behavior table, sequence/content table, and SECS parameter table. They are presented below.
(2) The Present Invention
The present invention redesigns the equipment behavior database. The behavior database not only defines the equipment rules, but also supports the information communication between the configuration controller and the equipment driver so that the behavior database still retains a part of the tables used by the production scenario database for corresponding the production scenarios with the equipment rules. The behavior database include tables of the GEI_Couple, the GEI_Sequence, the GEI_Item, the GEI2SECS, the SECS_Sequence, the SECS_Item, the SECS2GEI, and the SECS_Default, respectively. They have the following formats.
When the equipment driver receives the GEI message from the configuration controller the equipment driver may reply the corresponding message. Therefore, this GEI_Couple table is defined to explain the relationship of the matching GEI messages in order that the equipment driver can locate and reply the correct message. EQID represents the reference number of the equipment for such message. The GEI_Primary is the code of the GEI message received by the equipment driver. The GEI_Reply is the code of the GEI message to be replied. The other messages that do not need replies will not be shown in this table.
The definition of each item in the above table is the same as that of the GEI_Sequence table in the production scenario database.
The definition of each item in the above table is the same as that of the GEI_Item table in the production scenario database.
This table describes the SECS II message in correspondence with each GEI message. The SECS_IDs represent a combination of a series of the SECS_ID. Because each SECS_ID may have different versions, a suffix is added behind the SECS_ID for differentiation.
The rule for writing SECS_IDs is:
The spaces for SECS_IDs in the GEI2SECS table only represent the type and sequence of the SECS messages without clearly showing the data sequence of messages. The above table defines a detailed message data sequence for a SECS_ID listed in the spaces of SECS_IDs in each GEI2SECS table. The EQID represents the reference number of the corresponding equipment for the message. The GEI_MSGID represents the code of GEI message. The SECS_ID represents the code of the SECS II message. The Stream represents a stream ID of the SECS II message. The Function represents a function ID of the SECS II message. The Waiting represents a waiting bit of the SECS II message. The SECS_DS represents the data sequence of SECS II message. The UDF_Replace represents whether the user define function (UDF) is to be used for replacing the process of handling the SECS II message. The UDF_Enable represents whether to execute the UDF or not. The sample format of the SECS_DS is:
This table is mainly used for the correspondence of the data in the GEI message with the SECS II message data. EQID represents the reference number of the corresponding equipment for the message. The GEI_MSGID is the code of the GEI message. The SECS_ID is the message code of the SECS II message. The SECS_Item represents the item code of the SECS II message. The SECS_Format represents the format of the item. The GEI_Item is the GEI item that corresponds to the item of the SECS II message. The Default is a preset value of the SECS_Item. If the item is represented in a binary format, the value of the item is saved in the Default_B space.
This table is specifically provided for collecting the messages actively sent by the equipment. When the equipment driver receives the message actively sent from the equipment, the equipment driver must at first sends the corresponding reply message to the equipment in order to avoid the transaction time out. EQID represents the reference number of the corresponding equipment for the message. The SECS_ID is the code of the SECS II message actively sent by the equipment. The GEI_MSGID represents the code of GEI message to be sent back to the configuration controller. The SECS_Primary is the data sequence for the SECS II message received from the equipment. The PUDF_Replace represents whether the user-defined function (UDF) is to be used to replace the original message-processing function. The PUDF_Enable represents whether to execute the user-defined function (UDF) or not. The PUDF_DLLID represents the name of the dynamic linkage library for transmitting the primary SECS II message. The PUDF_PID represents the user-defined function name for transmitting the primary SECS II message. The SECS_Reply_ID represents the SECS II message code for replying to the equipment. The SECS_Secondary is the data sequence of the replying SECS II message. The SUDF_Replace represents whether the user-defined function (UDF) is to be used to replace the message processing function for replying to the equipment. The SUDF_Enable represents whether to execute the UDF or not while processing the replying message. The SUDF_DLLID represents the dynamic linkage library file name used for processing the message for replying to the equipment. The SUDF_PID represents the name of the user define function used for processing the message for replying to the equipment.
This table is designed to correspond to Tables (iii) to (vii) mentioned above. When the equipment driver receives the primary message sent by the equipment, the secondary message to be sent back can be edited in this SECS_Default table first for facilitating the program to get data therefrom. EQID represents the reference number of the corresponding equipment for the message. The SECS_ID is the code of the SECS II message. The SECS_Item represents the item of the SECS II message. The GEI_Item represents the code of the GEI_MSG corresponding to the SECS_Item. The SECS_Format is the item format of the SECS II message. The SECS_Value is the item value of the SECS II message. If the item has a binary format, the value of item is saved in the SECS_Value_B space.
(3) Comparisons Between the Prior Art and the Present Invention
Comparing the equipment behavior databases in the prior art and the present invention, the behavior database of the prior art is less expandable. For example, observing the command/behavior table in page 14, the maximal step number of a process is ten. If the behavior process steps are more than ten, this behavior table needs to be redefined. While in the present invention, the behavior database uses a byte to represent the number of process steps (the maximal value of process steps is 255), and the semantic rule of a process is defined. Therefore, in the present invention, the equipment behavior process can be edited into the proper space according to the semantic rule without the necessity of modifying the structure of the database schema.
In the behavior database of the prior art, it neither clearly distinguishes the SECS II message sent to or received from the equipment, nor clearly defines the relationship between the equipment behavior database and the production scenario database. In the present invention, all these shortcomings in the prior art are improved or solved. In addition, the present behavior database further provides the capability of using the user-defined functions, which the prior art does not have, in order to deal with the dynamic equipment rules.
4. Message Transmission Process
The present invention separates the production scenarios in the semiconductor factory from the equipment rules so as to divide the Equipment Manager into the configuration controller and the equipment driver. Also, the present invention establishes the production scenarios and the equipment rules by way of editing data into the scenario database and behavior database, and through the communication of the GEI message. The main six processes of this equipment management scheme or method are described in the following.
(1) Packaging the GEI Message in the Configuration Controller
(2) Transforming the Production Scenarios into the Equipment Rule in the Equipment Driver
(3) Receiving the Secondary SECS II Message from the Equipment in the Equipment Driver
(4) The Equipment Driver Receives the Primary SECS II Message from the Equipment
If the W-bit of the primary SECS II message is one, the equipment driver needs to send a secondary SECS II message back to the equipment. Under this situation, the control scheme will semantically analyze the SECS II message structure designated by the SECS_Secondary space in the SECS2GEI database 307, find out the item codes of the secondary SECS II message, and extract contents of the secondary SECS II message through searching the SECS_Default database 308. Finally, the secondary SECS II message is formed and ready to be sent to the equipment.
(5) The Packing Procedure of the GEI Message in the Equipment Driver
(6) Receiving the Generic Equipment Interface Message in the Configuration Controller
The present invention will now be illustrated by way of a preferred embodiment utilizing two different wire bonders, K&S 8028 and Shinkawa UTC-300, with the same production scenario. The production scenario is defined as follows: Checking by an Equipment Manager whether the wire bonders are on-line or not; if they are on-line, executing the commands of uploading recipe and retrieving several data from the wire bonders. Although the same production scenario is involved in the K&S 8028 and Shinkawa UTC-300, their equipment rules are different due to their different equipment characteristics, as shown in
The present invention separates the production scenarios in the semiconductor factory from the equipment rules, and changes the production scenarios and the equipment rules by means of editing the contents of associated databases. Since the same production scenario is involved in this embodiment, there's no need to change the production scenario database. However, we need to change the equipment behavior database. The database-editing scheme for the above embodiment according to the present invention is described as follows.
(1) The Production Scenario Database
The production scenario database includes three tables. They are tables of Process, GEI_Sequence, and GEI_Item. Since all tables use the same reference number of the equipment in the embodiment, the EQID space will not be shown in each table.
This table is used for editing in the production scenario set by the configuration controller. In this example, the DemoProcess process will be executed. This process has two events, i.e. OnlineCheck and U_Recipe.
In the GEI_Sequence table, the OnlineCheck message is only a message without any content. The U_Recipe message transmits the process program path (PP_PATH) and the process program ID (PPID) to the equipment driver.
Because the OnlineCheck message only has a message without any content, this message is not shown in this GEI_Item table. But the OnlineCheckAck message corresponding to the acknowledgement of OnlineCheck message still needs to be processed so that the OnlineCheckAck message is placed in this table. The pairing relationship between OnlineCheck and OnlineCheckAck can be consulted in the contents of GEI_Couple table of the equipment behavior database.
The on-line status can be represented by defining the Boolean value sent back by OnlineCheckAck. The OnlineCheckResult is the user defined function to take charge of the subsequent actions, e.g., renewing the on-line status. The PP_PATH and PPID of the U_Recipe only provide the path and the file name of the “Recipe” (or process program). The U_RecipeAck includes a sent back Boolean value for representing whether the “Upload Recipe” is successful or not. Then the configuration controller calls the user defined function “SaveRecipe” to handle the subsequent actions.
(2) The Equipment Behavior Database
The equipment behavior database includes eight tables, they are GEI_Couple, GEI_Sequence, GEI_Item, GEI2SECS, SECS_Sequence, SECS_Item, SECS2GEI, and SECS_Default.
The purpose of this table is to record the pairing relationship of the GEI message.
This GEI_Sequence table used by the equipment driver is similar to that of the configuration controller. It's mainly for packaging the GEI message.
When the equipment driver receives a GEI message from the configuration controller, the contents of each item of the GEI message will be edited in this GEI_Item table first. And when the equipment driver receives a message from the equipment, the message will also be edited in this table.
This table is to edit in the transformation relationship from a GEI message to SECS II Messages.
Please refer to the preceding two tables, they are to edit therein the data sequence of each SECS II message. Wherein, the OnlineCheck only corresponds to the header of S1F1 so that the corresponding SECS_DS space has no data. The OnlineCheckAck takes the responsibility of handling the reply S1F2 message. If the contents (i.e., the Boolean value for detecting whether the connection is successful) of the GEI message sent back by the OnlineCheckAck cannot match with the contents of the S1F2 message, the user defined function “CheckResult” designated by the OnlineCheckAck will be called after the equipment driver has received the S1F2 message. Then, the result can be edited into the GEI_Item table.
The K&S 8028 wire bonder needs four steps to complete the recipe upload process. After sending out the S2F41_PREP message, the equipment driver needs to wait until the equipment actively sends out the primary S6F11 message, then the equipment driver can continue the uploading process. Therefore, before sending out the S7F5 message, the user defined function “WaitForPrep” will be called to execute the waiting action, and the equipment driver will send the S7F5 message upon receiving the S6F11 message from the equipment so as to complete the action of uploading recipe.
As for the uploading recipe process of the Shinkawa UTC-300 wire bonder, it is much simpler. It just needs to be executed according to the process without any special user defined function.
The main purpose of the SECS_Item tables are to correspond the SECS_Item with the GEI_Item, and to provide default values for editing the SECS data.
Since the process of uploading recipe for the K&S 8028 wire bonder needs to wait for the S6F11 message from the equipment, the user defined function “ProcessEvent” is prepared to take care of the S6F11 message so that the waiting event of the uploading recipe can be handled.
According to the above descriptions of the illustrated example, it becomes clear that the present invention can change production scenarios and equipment rules of the Equipment Manager by editing the contents of associated databases without the necessity of changing the primary program architecture and/or coding of the Equipment Manager. As such, the present invention can manager various types of equipment and handle different production scenarios so as to achieve generality and reusability to the maximal extent. Accordingly, the difficulty and inconvenience of modifications and adjustments for coping with different types of equipment and various production scenarios can be solved. Therefore, the present invention provides a significant improvement for the development of the semiconductor equipment automation.
While the invention has been described in terms of what are presently considered to be the most practical and preferred embodiments, it is to be understood that the invention needs not be limited to the disclosed embodiment. On the contrary, it is intended to cover various modifications and similar arrangements included within the spirit and scope of the appended claims which are to be accorded with the broadest interpretation so as to encompass all such modifications and similar structures.
Number | Date | Country | Kind |
---|---|---|---|
90132396 A | Dec 2001 | TW | national |
Number | Name | Date | Kind |
---|---|---|---|
5657252 | George | Aug 1997 | A |
5809234 | Le Van Suu | Sep 1998 | A |
6032203 | Heidhues | Feb 2000 | A |
6208904 | Mullen, Jr. | Mar 2001 | B1 |
6470227 | Rangachari et al. | Oct 2002 | B1 |
6671570 | Schulze | Dec 2003 | B1 |
6708074 | Chi et al. | Mar 2004 | B1 |
6842660 | Tripathi et al. | Jan 2005 | B1 |
20030083754 | Tripathi et al. | May 2003 | A1 |
Number | Date | Country | |
---|---|---|---|
20030208294 A1 | Nov 2003 | US |