Lithography machine client status management system

By introducing an object management module and a control operation module into the lithography machine client status management system, the problem of low efficiency in traditional systems has been solved, and more efficient user task execution and system status management have been achieved.

CN119395947BActive Publication Date: 2026-03-06NEW YIDONG (SHANGHAI) TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-22
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

Traditional lithography machine client status management systems are inefficient, requiring users to frequently check system status to execute tasks, and parameter configuration may render operations unexecutable, wasting time and resources.

Method used

An independent object management module is used to manage system state changes, and a control operation module is used to set control operation modes, thereby improving the efficiency and rationality of user task execution.

Benefits of technology

It reduces unnecessary user operations, improves system efficiency, reduces repetitive development, conforms to object-oriented development principles, has a clearer code architecture, and runs more efficiently.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119395947B_ABST
    Figure CN119395947B_ABST
Patent Text Reader

Abstract

A client-side state management system for a lithography machine is provided. This system includes: a system state module for configuring system states; an object management module for maintaining pointers to interface object instances based on system state changes, wherein the interface object instance pointers are associated with system state changes through registration and removal; and a control operation module for setting control operation modes based on task IDs according to system state changes. By managing system state changes through an object management module independent of system state, and setting control operation modes by the control operation module when system state changes, the efficiency and rationality of user task execution are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of lithography machine technology, and more specifically, to a client status management system for a lithography machine. Background Technology

[0002] Photolithography machines are crucial equipment in the semiconductor manufacturing process. Their function is to precisely transfer circuit patterns from a photomask to a silicon wafer or other substrate according to predetermined dimensions and positions through an exposure process. This requires extremely high alignment accuracy between the photomask and the silicon wafer or other substrate. The accuracy and resolution of the photolithography machine are critical to the quality and performance of chip manufacturing.

[0003] Lithography machines are complex systems with numerous tasks, requiring various sensors to work together to complete a wide range of operations. Under such a large and precise system control, overall system state control and management are paramount. The software control system engineer must carefully consider which hardware components can operate under what conditions, and how they should operate. Poor system state control and management can lead to anything from tasks failing to run properly to hardware damage – a situation that is unacceptable in high-cost lithography equipment.

[0004] In traditional lithography machine main control system client software, the usual practice for issuing control task requests is to check the current system status when a task is executed (e.g., clicking a button) to determine if the task can be executed, and then inform the user via a prompt box. This traditional approach is firstly simplistic and crude; the user is only informed of task availability when they want to execute the task. If the task requires configuring numerous parameters, the user will only receive a notification that the task is not executable after setting the parameters and then executing the task, wasting their time and effort. Secondly, this traditional approach is inefficient, as it checks the system status every time a button is clicked, even if the system status hasn't changed. Therefore, from a system development perspective, this is not the optimal choice.

[0005] Therefore, it is desirable to provide an improved client state management system solution for lithography machines. Summary of the Invention

[0006] This application provides a client state management system for a lithography machine. It manages system state changes through an object management module that is independent of the system state, and sets the control operation mode by a control operation module when the system state changes, thereby improving the efficiency and rationality of user task execution.

[0007] According to one aspect of this application, a client state management system for a lithography machine is provided, comprising: a system state module for configuring system state; an object management module for maintaining interface object instance pointers based on system state changes, wherein the interface object instance pointers are associated with system state changes through registration and removal; and a control operation module for setting control operation modes based on system state changes according to task ID.

[0008] The aforementioned client status management system for the lithography machine further includes: a kernel / GUI module for configuring the underlying dependency library of the human-machine interface; and a communication module for configuring the dependency library for information interaction with the server.

[0009] In the aforementioned client status management system for the lithography machine, the system status includes at least one of the following: idle status, busy status, fault status, stopped status, and offline status.

[0010] In the aforementioned lithography machine's client status management system, the task ID includes at least one of the following: exposure, cascade scanning, wafer loading, wafer unloading, wafer shifting, status check of each station in the wafer transfer control system, photomask scanning, photomask loading, photomask unloading, photomask shifting, status check of each station in the photomask transfer control system, table moving to a designated position, table moving to a baseline detection coarse alignment position, table moving to a baseline detection fine alignment position, table moving to a fine alignment mark position, table moving to the upper wafer position, table moving to the lower wafer position, table moving to the wafer alignment microscope position, table moving to the origin position, photomask table moving to a designated position, photomask table moving to the origin position, photomask table moving to the working position, photomask table moving to the upper wafer position, slit moving to a designated position, slit moving to the fully open position, slit moving to the origin position, system reset, and system pause.

[0011] In the aforementioned client status management system for the lithography machine, the system status module, the object management module, and the control operation module are implemented based on a class diagram, and the user interface object inherits from the stage change class.

[0012] In the aforementioned client state management system for the lithography machine, the class diagram includes member variables and member methods.

[0013] In the aforementioned client state management system for the lithography machine, the member variables include: a member for recording the current state of the current system state, and a control multi-pointer hash table for storing registered object pointers, system states, and task IDs, allowing hash structure members with the same key value.

[0014] In the aforementioned client state management system for the lithography machine, the member methods include: an initialization function (no input parameters, no output parameters, and an empty return value) used for module initialization; a registration function (no input parameters including an observer interface object pointer, task ID, and system state, no output parameters, and an empty return value) used to register windows requiring interface state management to the client state management system; a state change function (no input parameters including system state and task ID, no output parameters, and an empty return value) used to override a base class virtual function to switch states upon receiving a state change; a state setting function (no input parameter including task ID, no output parameters, and an empty return value) used to set different control operation modes according to the system state; and a state acquisition function (no input parameters, system state as the output parameter, and an empty return value) used to acquire the current system state.

[0015] The client state management system for the lithography machine provided in this application embodiment can manage system state changes through an object management module that is independent of the system state, and set the control operation mode by the control operation module when the system state changes, thereby improving the efficiency and rationality of user task execution. Attached Figure Description

[0016] Various other advantages and benefits of this application will become apparent to those skilled in the art upon reading the detailed description of the preferred embodiments below. The accompanying drawings are for illustrative purposes only and are not intended to limit the scope of this application. It is obvious that the drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort. Furthermore, the same reference numerals denote the same parts throughout the drawings.

[0017] Figure 1 The illustration shows a schematic diagram of the architecture of a client state management system for a lithography machine according to an embodiment of this application.

[0018] Figure 2 The illustration shows a schematic diagram of another architectural example of a client state management system for a lithography machine according to an embodiment of this application.

[0019] Figure 3 The illustration shows a schematic diagram of the user initialization process of the client state management system of a lithography machine according to an embodiment of this application.

[0020] Figure 4 The illustration shows a schematic diagram of the system state change process of the client state management system of a lithography machine according to an embodiment of this application.

[0021] Figure 5The illustration shows a schematic diagram of the module class design of the client state management system of a lithography machine according to an embodiment of this application.

[0022] Figure 6 The diagram illustrates an example of the workflow of a lithography machine.

[0023] Figure 7 The illustration shows a client state management system for a lithography machine according to an embodiment of this application. Figure 6 A schematic diagram of the system state change process of the task flow. Detailed Implementation

[0024] Hereinafter, exemplary embodiments according to this application will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this application, and not all embodiments of this application. It should be understood that this application is not limited to the exemplary embodiments described herein.

[0025] Indicative System

[0026] Figure 1 The illustration shows a schematic diagram of the architecture of a client state management system for a lithography machine according to an embodiment of this application. Figure 1 As shown, the client state management system for the lithography machine according to an embodiment of this application includes a system state module, an object management module, and a control operation module. It manages the system state changes that occur when the lithography machine performs system tasks by combining object-oriented thinking.

[0027] Specifically, in this embodiment, the system status module is used to configure the system status, including, for example, an idle status, a busy status, and a fault status. When the lithography machine's main control system is in an idle status, the user can perform any operation; when the lithography machine's main control system is in a busy status, it indicates that a task is being executed (initialization / control transmission / alignment / exposure / measurement, etc.), and the user cannot perform other tasks; when the lithography machine's main control system is in a fault status, the user cannot perform other tasks.

[0028] The object management module is used to maintain pointers to UI object instances based on system state changes. Specifically, the object management module is used to register UI instance objects to pass its own object pointer to the system state module and remove specified UI instance objects from the system state module. In other words, the UI object instance pointers can associate UI instance objects with system state changes through registration and removal.

[0029] The control operation module is used to set the control operation mode based on system state changes according to the task ID. For example, the display mode of the control, such as the button, can be set according to the task ID, including control enable, control visibility, control operability, etc.

[0030] Therefore, the client state management system for the lithography machine according to the embodiments of this application includes: a system state module for configuring system state; an object management module for maintaining interface object instance pointers based on system state changes, wherein the interface object instance pointers are associated with system state changes through registration and removal; and a control operation module for setting control operation modes based on system state changes according to task ID.

[0031] In other words, in this embodiment of the application, the client status management system of the lithography machine manages the system status, interface objects, and task IDs by registering the managed objects to the module and notifying the designated objects when the module receives a status change.

[0032] Figure 2 The illustration shows a schematic diagram of another architectural example of a client state management system for a lithography machine according to an embodiment of this application. For example... Figure 2 As shown, the client status management system of the lithography machine according to the embodiments of this application may further include a kernel / GUI module for configuring the underlying dependency library of the human-machine interface and a communication module for configuring the information interaction dependency library with the server.

[0033] Figure 3 The illustration shows a schematic diagram of the user initialization process of the client state management system for a lithography machine according to an embodiment of this application. Figure 3 As shown, after the participants, i.e., users or engineers, start the program, they can first initialize the human-computer interaction interface (UI), and then initialize the client state management system. Once the client state management system has completed initialization, it can send an initialization response to the user, allowing the user to register as a member, and the client state management system will manage the object pointer in the container and send a registration response to the user.

[0034] Figure 4 The illustration shows a schematic diagram of the system state change flow of a client state management system for a lithography machine according to an embodiment of this application. For example... Figure 4 As shown, after a user sends a task start request to the server, the server replies to the user with a task start request response, and the user sends a task start notification to the client state management system. Then, the client state management system changes the current system state and searches for members registered with the current system state and task ID, thereby notifying relevant members in the registry of the system state change and modifying the control operation mode in the user UI, such as the control display mode.

[0035] Figure 5 The illustration shows a schematic diagram of the module class design of the client state management system for a lithography machine according to an embodiment of this application. For example... Figure 5As shown in this embodiment, the client-side state management system of the lithography machine can be designed at the module software level based on a class diagram. It is worth noting that the class diagram design needs to be closely related to the hardware of the lithography machine. For example, during the photomask transmission process, before the photomask is placed on the photomask worktable, the system is in a busy state. If the robotic arm malfunctions during the transmission process, the lower-level machine will obtain the fault information and report it to the upper-level server, which will then report it to the client. At this time, the system is in a fault state. If the transmission is normal, the system state will change from busy to idle after the action is completed.

[0036] That is, such as Figure 5As shown, the system states are enumerated, such as Idle, Busy, Error, Stop, and Offline. Furthermore, the task IDs are enumerated, including: JobExposure, CSTScan, WaferLoad, WaferUnLoad, WaferMove, WTStationCheck (Wafer Control System Station Status Check), RMScan, ReticleLoad, ReticleUnLoad, ReticleMove, RTScan (Reticle Control System Station Status Check), WSMove (Workbench Move to Specified Position), WSMove (Workbench Move to Baseline Coarse Alignment Position), WSMove (Workbench Move to Baseline Fine Alignment Position), and WSMove (Workbench Move to Fine Alignment Mark Position). The tasks include: (WSMoveFMRAPos), stage moving to the upper wafer position (WSMoveWaferPos), stage moving to the lower wafer position (WSMoveUnloadPos), stage moving to the silicon wafer alignment microscope position (WSMoveWAScopePos), stage moving to the origin position (WSMoveResetPos), mask stage moving to the specified position (RSMove), mask stage moving to the origin position (RSMoveReset), mask stage moving to the working position (RSMoveWorkPos), mask stage moving to the upper wafer position (RSMoveReticleLoadPos), slit moving to the specified position (BlindMove), slit moving to the fully open position (BlindMoveFullSize), slit moving to the origin position (BlindMoveReset), system reset (SystemReset), and system pause (SystemPause). In other words, these task IDs also correspond to hardware-related tasks. For example, the hardware action corresponding to mask scanning (RMScan) is that the unpacking module opens the mask box, the scanner performs the scan, and the signal results are ultimately transmitted back to the interface for display.

[0037] Therefore, the lithography machine's client state management system is based on enumerated system states and task IDs. Each module and registered UI interface object inherits the stage change (IstageChange) class and overrides its state change (StateChange) virtual function. In this way, after the system state changes, the UI interface is notified by calling the system state method in the class diagram based on the system change virtual function.

[0038] Specifically, the class diagram implementation of the lithography machine's client state management system includes member variables and member methods. The member variables include the current state (currentState_) used to record the current system state member, and a widgetMultiHash_ used to store pointers to registered objects, system states, and task IDs in a hash structure member that allows members with the same key-value pair.

[0039] In addition, member methods include multiple functions, specifically, such as Figure 5 As shown, it includes:

[0040] The Initialize function has no input parameters, no output parameters, and returns an empty value. It is used for module initialization.

[0041] The `Register` function takes pointers to observer UI objects, task IDs, and system states as inputs, no output parameters, and an empty return value. It registers windows requiring UI state management with the client state management system. Here, the lithography machine's client state management system manages registered observers and UIs that need to monitor system state changes, which are pointers to objects inheriting from the `IstageChange` class.

[0042] The StateChange function takes the system state and task ID as input parameters, has no output parameters, and returns an empty value. It is used to override the base class virtual function to switch states after receiving a state change.

[0043] The SetState function takes the task ID as input, has no output parameters, and returns an empty value. It is used to set different control operation modes according to the system state.

[0044] The GetState function takes no input parameters, outputs the system state, and returns an empty value. It is used to obtain the current system state.

[0045] Therefore, through the client state management system of the lithography machine according to the embodiments of this application, when developing the interface, the user only needs to register the interface controls that need state management to the client state management system. In this way, when the system state changes, each interface will receive a notification of the state change and control the operation mode of the controls through different states.

[0046] Application Examples

[0047] Figure 6 and Figure 7The illustration shows a schematic diagram of the system state change flow based on the task flow of the client state management system of a lithography machine according to an embodiment of this application. Wherein, Figure 6 The diagram illustrates an example of the workflow for a lithography machine, and Figure 7 The illustration shows a client state management system for a lithography machine according to an embodiment of this application. Figure 6 A schematic diagram of the system state change process of the task flow.

[0048] like Figure 6 As shown, when the user clicks the CST scan button, a task execution request is sent, and the silicon wafer slot sensor checks the CST status. If the CST is in place, the robot's status is checked, and if the robot is idle, a robot reset is performed, including robot retraction, rotation to the CST direction, and Z-axis movement to zero. Then, the scanning light is turned on, and the robot begins scanning the designated CST, including Z-axis movement and map scanning. Finally, in response to confirming the scan is complete, the light is compared to the scanning light.

[0049] In such Figure 6 Based on the task flow shown, after the task execution button is clicked, the corresponding system status is obtained according to the client status management system of the lithography machine in this embodiment of the application, and then updated to the current status and notified of the current status. That is, as shown... Figure 7 As shown, when a user clicks a task execution button, such as a CST scan button, on the client interface, a task execution request is sent. After receiving a response to the request, the task ID is sent to the client status management system. The client status management system retrieves the system status corresponding to the task ID from the control multi-finger hash list and updates the current status. It then searches for the control object with the specified system status and task ID from the control multi-finger hash list and notifies the current system status to set the control operation mode.

[0050] Therefore, the client state management system of the lithography machine according to the embodiments of this application is designed from an architectural perspective. It does not care who the registrant is or how the control state should change after the state changes. It only needs to notify each registrant of the system state change, which results in lower coupling.

[0051] Furthermore, when the system state changes, the control operation mode on the client interface will also change accordingly. Users know in advance whether the operation can be performed under the current system state, rather than being informed whether the operation can be performed only when they operate the control, thus reducing unnecessary user operations. Moreover, users do not need to check the current system state every time they operate a control, reducing repetitive development and improving system efficiency.

[0052] In addition, from the perspective of client-side code development, high cohesion and low coupling are in line with the object-oriented development concept, making the code architecture clearer, improving running efficiency, reducing repetitive judgment code, and making the program execute more efficiently.

[0053] The basic principles of this application have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this application are merely examples and not limitations, and should not be considered as essential features of each embodiment of this application. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the application to the necessity of employing the aforementioned specific details for implementation.

[0054] The block diagrams of devices, apparatuses, devices, and systems involved in this application are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0055] It should also be noted that in the apparatus, equipment, and methods of this application, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions of this application.

[0056] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this application. Therefore, this application is not intended to be limited to the aspects shown herein, but rather to be accorded the widest scope consistent with the principles and novel features disclosed herein.

[0057] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this application to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.

Claims

1. A client state management system of a lithography machine, comprising: a system state module configured to configure a system state; an object management module configured to maintain a pointer of an interface object instance based on a system state change, the pointer of the interface object instance being associated with the system state change by registration and removal; and a control operation module configured to set a control operation mode based on a system state change according to a task ID; wherein the system state module, the object management module and the control operation module are implemented based on a class diagram, and an interface object of a user end inherits a phase change class, the class diagram comprising member variables and member methods; wherein the system state module, the object management module and the control operation module are implemented based on a class diagram, and an interface object of a user end inherits a phase change class, comprising: based on the system state and the task ID, the system state module, the object management module, the control operation module and the interface object all inherit the phase change class and override a state change virtual function, so that after the system state changes, the system state method in the class diagram is called through the state change virtual function to notify a UI interface.

2. The client state management system of a lithography machine according to claim 1, further comprising: a kernel / GUI module configured to configure a human-computer interaction interface bottom layer dependent library; and a communication module configured to configure an information interaction dependent library with a server end. The system state comprises at least one of an idle state, a busy state, a fault state, a stop state and an offline state.

3. The client state management system for a photolithography machine of claim 1, wherein, The task ID comprises at least one of exposure, cassettescan, wafer loading, wafer unloading, wafer shifting, wafer transfer system station state checking, reticle scan, reticle loading, reticle unloading, reticle shifting, reticle transfer system station state checking, stage moving to a specified position, stage moving to a baseline detection coarse alignment position, stage moving to a baseline detection fine alignment position, stage moving to a fine alignment mark position, stage moving to a wafer loading position, stage moving to a wafer unloading position, stage moving to a wafer alignment microscope position, stage moving to an origin position, reticle stage moving to a specified position, reticle stage moving to an origin position, reticle stage moving to a working position, reticle stage moving to a reticle loading position, slit moving to a specified position, slit moving to a fully open position, slit moving to an origin position, system resetting and system pausing.

4. The client state management system for a photolithography machine of claim 1, wherein, The member variables comprise a current state for recording a current state for a current system state, and a control multi-pointer hash table for allowing a hash structure member with a same key value to store a registered object pointer, a system state and a task ID.

5. The client state management system for a photolithography machine of claim 1, wherein, The member methods comprise:

6. The client state management system for a photolithography machine of claim 5, wherein, an initialization function with no input parameter, no output parameter and a return value of null, for module initialization; a registration function with an input parameter of a pointer of an interface object of an observer, a task ID and a system state, no output parameter and a return value of null, for registering a window requiring interface state management to the client state management system; and a removal function with an input parameter of a pointer of an interface object of an observer, no output parameter and a return value of null, for removing a window requiring interface state management from the client state management system. A state change function, input parameters are system state and task ID, output parameter is null, return value is null, used to rewrite the virtual function of the base class to switch the state after receiving the state change; A set state function, input parameters are task ID, output parameter is null, return value is null, used to set different control operation modes according to the system state; and A get state function, input parameter is null, output parameter is system state, return value is null, used to get the current system state.

Citation Information

Patent Citations

  • Method for displaying interface information of photoetching machine

    CN118011742A

  • Centralized distribution of multicast requests in a data processing system

    US20240211398A1