Software maintenance method and semiconductor process equipment

By obtaining and loading configuration files, generating and configuring software maintenance interfaces, the problem of poor flexibility and scalability of software maintenance functions in the prior art is solved, and efficient functional maintenance and cost reduction are achieved.

CN119415131APending Publication Date: 2025-02-11BEIJING NAURA MICROELECTRONICS EQUIP CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411545255.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-02-11

AI Technical Summary

Technical Problem

The flexibility and scalability of software maintenance functions of existing semiconductor process equipment leads to low development efficiency and high maintenance costs, especially when the IO and instruction services of hardware modules change, a large amount of code needs to be re-edited.

Method used

By obtaining configuration files, including the configuration information of the hardware module, input and output configuration information, loading the corresponding interface template to generate a software maintenance interface, and configuring the display controls and command key controls based on the configuration information, so that they can display the hardware module information and issuance instructions.

Benefits of technology

The separation of interface and functional data is realized, and functional changes can be achieved through changes in configuration files, which improves the flexibility and scalability of the system, reduces development and maintenance costs, and increases the degree of reuse of interface templates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119415131A_ABST
    Figure CN119415131A_ABST
Patent Text Reader

Abstract

The invention discloses a software maintenance method and semiconductor process equipment. The method comprises the steps that a configuration file is acquired, the configuration file comprises hardware module configuration information, input and output configuration information and instruction configuration information of the semiconductor process equipment, and the hardware module configuration information comprises an identifier of an interface template corresponding to a hardware module; the interface template corresponding to the identifier of the interface template is loaded to generate a software maintenance interface, and the software maintenance interface comprises a display control and an instruction key control; the display control is configured according to the input and output configuration information, so that the display control can display the information of the hardware module; and configuring the instruction key control according to the instruction configuration information, so that the instruction key control can issue a corresponding instruction. The method is high in flexibility and expandability, the development efficiency is improved, and the maintenance cost is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of semiconductor technology, and in particular, relates to a software maintenance method and semiconductor process equipment. Background Art

[0002] With the continuous development of semiconductor technology, the design of semiconductor process equipment (such as single-wafer cleaning equipment) is also constantly updated and iterated, which requires the maintenance functions of the software to change accordingly.

[0003] The maintenance function is mainly divided into two parts: one is the display function, and the other is the command execution function. Among them, the display function is responsible for displaying the status and values ​​of each hardware module in the equipment, such as whether the current status of the hardware module is ready, whether an abnormality occurs, or the current temperature value, pipeline flow value, pH (Pondus Hydrogenii, referred to as PH) value of the hardware module. The command execution function includes the basic control command execution of the hardware module and the combined control command execution of each control unit.

[0004] In the related art, any single display or control instruction requires a corresponding program implementation, and the program code has a corresponding input output (IO) or instruction service. When the IO and instruction services need to be changed, the code needs to be re-edited, so the flexibility and scalability are poor. For hardware modules with exactly the same user interface (UI) but different IO and instruction services, such as process modules (PM) with exactly the same mechanical structure, due to the strong coupling between UI, IO and instruction services, it is necessary to repeatedly create multiple PM channels at the UI layer, and repeatedly write multiple instruction service-related logics in the background, resulting in a large amount of duplicate code and duplicate mechanical workload, so the development efficiency is low and the maintenance cost is high. Summary of the invention

[0005] The purpose of the embodiments of the present application is to provide a software maintenance method and semiconductor process equipment to solve the problems of poor flexibility and scalability, low development efficiency and high maintenance cost in related technologies.

[0006] To achieve the above objectives, the present application embodiment adopts the following technical solutions: In a first aspect, an embodiment of the present application provides a software maintenance method, comprising: obtaining a configuration file, the configuration file comprising hardware module configuration information, input / output configuration information and instruction configuration information of semiconductor process equipment, the hardware module configuration information comprising an identifier of an interface template corresponding to the hardware module; loading an interface template corresponding to the identifier of the interface template to generate a software maintenance interface, the software maintenance interface comprising a display control and an instruction button control; configuring the display control according to the input / output configuration information so that the display control can display information of the hardware module; configuring the instruction button control according to the instruction configuration information so that the instruction button control can issue corresponding instructions.

[0007] In a second aspect, an embodiment of the present application provides a semiconductor process equipment, including: a configuration management unit for generating and storing configuration files; an interface management unit for generating and storing interface templates; and a mapping and parsing unit for implementing the steps of the software maintenance method described in the first aspect above.

[0008] At least one of the above technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects: When implementing the software maintenance function, the embodiment of the present application obtains a configuration file, which includes the hardware module configuration information, input / output configuration information and instruction configuration information of the semiconductor process equipment, the hardware module configuration information includes the identifier of the interface template corresponding to the hardware module, and the interface template corresponding to the identifier of the interface template is loaded to generate a software maintenance interface, the software maintenance interface includes a display control and an instruction button control, the display control is configured according to the input / output configuration information so that the display control can display the information of the hardware module to implement the display function, and the instruction button control is configured according to the instruction configuration information so that the instruction button control can issue the corresponding instruction to implement the instruction execution function. The embodiment of the present application separates the interface from the function-related data (the input / output IO configuration information and the instruction configuration information in the configuration file), and associates the display control and the instruction button control in the interface with the IO configuration information and the instruction configuration information respectively to implement the display function and the instruction execution function. This method makes the implementation of the maintenance function dependent on the data in the configuration file. When the IO configuration information and the instruction configuration information change, the function can be implemented only by changing the configuration file, so the flexibility and scalability are high. For hardware modules with exactly the same user interface UI but different IO configuration information and instruction configuration information, the functions can be realized only by modifying the configuration files, which effectively improves the reuse of interface templates, thereby improving development efficiency and reducing maintenance costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings: Figure 1 A schematic diagram of a software maintenance solution in the related art; Figure 2 A flowchart of a software maintenance method provided for one embodiment of the present application; Figure 3 A schematic diagram of an interface template and a configuration template provided for one embodiment of the present application; Figure 4 A flowchart of a software maintenance method provided for another embodiment of the present application; Figure 5 A flowchart of an instruction execution provided for an embodiment of the present application; Figure 6 A schematic diagram of the interface and configuration of a simple instruction type instruction provided for one embodiment of the present application; Figure 7 An interface and configuration diagram of an instruction type with reference issuance provided for an embodiment of the present application; Figure 8 A schematic diagram of the configuration of an instruction of a conditional determination instruction type provided for one embodiment of the present application; Fig. 9 A schematic diagram of the configuration of a long key command type instruction provided for one embodiment of the present application; Fig.10 A schematic diagram of a configuration of a single-click operation dual-instruction type instruction provided for an embodiment of the present application; Fig.11 A schematic structural diagram of a semiconductor process equipment provided for one embodiment of the present application. DETAILED DESCRIPTION

[0010] In order to make the purpose, technical solution and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described below in combination with the specific embodiments of the present application and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.

[0011] The terms "first", "second", etc. in this application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here. In addition, the "and / or" in this application represents at least one of the connected objects, and the character " / " generally represents that the front and back associated objects are in an "or" relationship. It should be noted that the data involved in this application are all obtained on the premise of obtaining user authorization.

[0012] With the continuous development of semiconductor technology, the design of semiconductor process equipment (such as single-wafer cleaning equipment) is also constantly being updated and iterated. From mechanical structure to electrical design, from process methods to software control, the continuous optimization of single-wafer cleaning equipment requires the maintenance function of the software to change accordingly.

[0013] In the software of the single-chip cleaning equipment, the maintenance function plays an extremely important role in the basic control of each hardware module of the single-chip cleaning equipment and the debugging and maintenance of the single-chip cleaning equipment. The maintenance function is mainly divided into two parts, one is the display function, and the other is the instruction execution function. Among them, the display function is responsible for the display of the status and values ​​of each hardware module in the equipment, such as whether the current status of the hardware module is ready, whether an abnormality occurs, or the current temperature value, pipeline flow value, pH value, etc. of the hardware module. The instruction execution function includes the execution of basic control instructions of the hardware module, and the execution of combined control instructions of various control units, such as the transfer module control (TMC), process module control (PMC), and chemical liquid distribution system (CDS). Basic control instructions include the lifting and rotating instructions of each control motor shaft of the chamber, the heating instructions of the heater, etc. The combined control instructions are instructions with complete meanings, such as the loop, flushing, and drain instructions of CDS.

[0014] In the related art, there is a one-to-one correspondence between the graphical user interface (GUI) and the implementation logic of the hardware module status, numerical display, and control command issuance, that is, any single display or control command requires a corresponding program implementation, and the program code has corresponding input and output IO or command services. Figure 1 As shown, eight chambers with exactly the same interfaces are taken as an example for explanation.

[0015] 1. The overall maintenance function is realized.

[0016] The eight chambers have the same interface, which is represented by PML1~4 and PMR1~4. In the implementation, each interface needs to be completed, and each function needs to be implemented in the function implementation logic of each interface, that is, one interface and one set of codes.

[0017] 2. Display function realization.

[0018] On the basis of the realization of one interface and one set of codes for the overall maintenance function, the display function of various maintenance signals is realized by binding the IO of the lower computer, and the change of IO value will cause the display to change accordingly. In this technical solution, the IO is solidified in the program, and the eight chambers are solidified with their own IO and display functions, that is, the maintenance signal A1 in the interface of PML1 is bound to the specified IO, and the maintenance signal A2 of PML2 is bound to the specified IO.

[0019] 3. Instruction execution function is realized.

[0020] In terms of instruction execution, each specific function and service requires a specific method to implement, which can be divided into the following situations: (1) Implementation of different action instructions for the same control object.

[0021] Different instructions for the same control object need to be implemented separately in the code. For example, the Gripper Open and Gripper Close instructions of the chamber, for the two Gripper control buttons on the interface, the Open Gripper and Close Gripper instructions need to be implemented separately in the program logic.

[0022] (2) Implementation of instructions for different control objects.

[0023] The maintenance instructions belonging to different control units in TMC and PMC need to be implemented separately in the code. For example, the light-emitting diode (LED) switch instruction of TMC and the LED switch instruction in PMC belong to different control objects, so the control instructions of the two need to be implemented separately.

[0024] (3) Interface input control parameter instruction implementation.

[0025] For instructions that require parameter input from the interface, such as inputting traffic parameter control loop and other instructions, it is necessary to obtain the valid parameters input by the front end in the code, and after processing, send the instructions and parameters to the execution unit.

[0026] However, in the above scheme, when the IO and instruction services need to be changed, it is necessary to re-edit the code, modify the IO and services bound to the code, and recompile. In terms of the process, it has a strong dependence on the upstream links and cannot quickly adapt to the upstream changes, so the flexibility and scalability are poor. In addition, for hardware modules with exactly the same UI but different IO and instruction services, such as PMs with exactly the same mechanical structure, the difference is only in the IO and instruction services. In the implementation logic of the above scheme, due to the strong coupling of UI with IO and instruction services, it is necessary to repeatedly create multiple PM channels at the UI layer, and repeatedly write multiple instruction service issuance related logics in the background, resulting in a large amount of duplicate code and duplicate mechanical workload, so the development efficiency is low and the maintenance cost is high. To this end, the present application proposes a software maintenance method, semiconductor process equipment and storage medium to solve the problems of poor flexibility and scalability, low development efficiency and high maintenance cost in related technologies.

[0027] The technical solutions provided by various embodiments of the present application are described in detail below in conjunction with the accompanying drawings.

[0028] Figure 2 A flowchart of a software maintenance method provided by an embodiment of the present application is shown below. Figure 2 As shown, the software maintenance method of the embodiment of the present application may specifically include the following steps: S201, obtaining a configuration file, wherein the configuration file includes hardware module configuration information, input / output configuration information and instruction configuration information of a semiconductor process device, wherein the hardware module configuration information includes an identifier of an interface template corresponding to the hardware module.

[0029] In an embodiment of the present application, the executor of the software maintenance method of the embodiment of the present application is a software maintenance device, which can be set in the host computer and / or the slave computer of the semiconductor process equipment (such as single-wafer cleaning equipment, etc.), and specifically can be the mapping and parsing unit in the software maintenance device.

[0030] The configuration file can be pre-generated by the configuration management unit.

[0031] The configuration management unit defines the interface template used by the currently configured hardware module through module configuration management, and generates the corresponding hardware module configuration information, which at least includes the identifier of the interface template used by the currently configured hardware module, such as the name of the interface template. The interface template determines the interface layout and interface control composition, and further determines the interface objects to be associated with the subsequent IO configuration and instruction configuration.

[0032] Module configuration management is used to clarify the function of the current module. For example, when a PM interface template is selected, the function is the function set in the PM interface template. When a CDS template is configured, the interface template and the control unit of the template are used.

[0033] Based on the usage scenarios of maintenance functions, the configuration management unit abstracts configuration templates applicable to all currently known maintenance functions, and selects corresponding configuration templates based on the interface templates for function configuration, i.e., IO configuration and instruction configuration, and generates corresponding IO configuration information and instruction configuration information. In the configuration template, adjustments can be made based on the interface templates that are maximized to meet the needs of actual business scenarios.

[0034] The configuration management unit defines the IO channels bound to the display function in the maintenance function and the configuration of related properties, such as control nodes, control visibility and other properties through IO configuration management.

[0035] The configuration management unit defines the instructions bound to the instruction execution function in the maintenance function and the configuration of instruction-related parameters, nodes, instruction execution types and other attributes through instruction configuration management, which includes all the information required for instruction issuance.

[0036] For example, in the configuration file structure table corresponding to the configuration file shown in Table 1, the hardware module configuration information includes the name of the interface template "pipepanle".

[0037] Table 1 Configuration file structure

[0038] Among them, in the module configuration, the Name attribute is the name of the software maintenance interface displayed on the final software interface, and the pipepanel attribute determines the interface template to be used currently. When the interface template is determined, the instruction configuration and IO configuration templates are also determined accordingly.

[0039] IO configuration is used to implement the display function. The display of the interface display control is associated with the IO channel value, indicating the IO status. The Name property is the control name, and the control name is used to determine the unique control in the corresponding interface template; the Channel property refers to the IO channel associated with the display control, so that the display control changes with the IO channel value; Tooltip is used to indicate the actual material number to be displayed, and corresponds one-to-one with the components on the actual device, such as valves on the device; the Visible property is used to control the visibility of the display control. When there is a small difference between the final interface and the interface template, this property can be modified to achieve the situation where different interfaces are generated based on the same interface template but due to different configurations, so that the interface template can have a certain degree of compatibility under the condition of maximizing the design.

[0040] Instruction configuration is used to implement the instruction execution function. Due to the large number of scenarios and complex situations, a set of configuration rules that can meet all currently known scenarios is extracted based on all current scenarios, and a certain degree of scalability is maintained in development to adapt to more scenarios in the future. The important elements in the instruction configuration are shown in Table 1 above, where the first-level element Service Control is the simplest parameter-free instruction type, that is, when the instruction is issued, there is no need to issue parameters from the interface or through other means; the second-level element Link Control is used to handle the situation where parameters are issued, and defines whether it is an interface instruction to issue parameters, parameter values, parameter types, etc., and processes and parses the associated controls according to the set rules; the second-level element Condition is used to make conditional judgments before issuing instructions to determine whether the current device status meets the instruction issuance conditions. In addition, in the instruction configuration, "Service Type" can be used to add different types of instruction processing, so that the instruction execution form has a certain degree of scalability, so as to better implement a set of codes to deal with all instruction issuance functions.

[0041] S202, loading an interface template corresponding to the identifier of the interface template to generate a software maintenance interface, wherein the software maintenance interface includes a display control and a command button control.

[0042] In an embodiment of the present application, the interface template can be pre-generated by the interface management unit. The interface management unit refers to the part of the software interface that the user sees, and the user interacts by viewing the control display or clicking buttons. The interface management unit is mainly responsible for integrating and managing the interface templates required for the maintenance function, including PMC interface templates for different models, interface templates for different CDSs, and templates for other interfaces such as TMC. The interface template is finally determined based on the mechanical structure design and functional design of different hardware modules. It is used as an interface template for the maintenance function of this model and similar models, which determines the display content of the display function and the instruction execution method of the instruction execution function, and is closely related to actual business needs.

[0043] For example, the maintenance interface template of PM, where multiple chambers share the same interface template and have their own corresponding configuration data, the mapping parsing unit reads the configuration data corresponding to each chamber by obtaining the identifier of the interface template, parses the IO channels and instructions in the configuration file, and associates them with the functional controls in the interface template to achieve the final complete maintenance function. When the interface template is selected, its corresponding configuration template is also determined.

[0044] The mapping and parsing unit establishes an association between the static interface template and the static configuration template, dynamically generates an interface instance, and binds the data in the configuration template with the functional controls in the interface, so that it has complete display and instruction execution functions, and finally realizes the maintenance function.

[0045] Figure 3 It is the main component and association of the interface template and configuration template. Through the configuration file, different services and IO channels can be bound and configured under the same interface, thereby realizing interface reuse.

[0046] The mapping parsing unit reads the configuration file through the module parsing unit and obtains the identifier of the interface template therein. According to the identifier of the interface template, a corresponding interface template is selected from multiple interface templates generated by the interface management unit, and the selected interface template is loaded to generate a software maintenance interface instance. The generated software maintenance interface includes functional controls: display controls and command button controls, but does not yet have actual display and command execution functions.

[0047] For example, the interface template configuration of chambers 1 to 4 (PML1 to 4) is as follows. The module parsing unit can parse and map the interface template configuration of PML1 to 4 into the interface instance of PMPipePanel: <PM_Setting> <moduleinfo name="PML1" pipepanel="PMPipePanel" / > <moduleinfo name="PML2" pipepanel="PMPipePanel" / > <moduleinfo name="PML3" pipepanel="PMPipePanel" / > <moduleinfo name="PML4" pipepanel="PMPipePanel" / > < / PM_Setting> S203: Configure the display control according to the input and output configuration information so that the display control can display the information of the hardware module.

[0048] In an embodiment of the present application, the mapping parsing unit reads the configuration file through the IO parsing unit, obtains the IO configuration information therein, and configures the display control in the software maintenance interface so that the display control can display the information of the hardware module, that is, realizes the display function.

[0049] S204: Configure the command button control according to the command configuration information, so that the command button control can issue corresponding commands.

[0050] In an embodiment of the present application, the mapping parsing unit reads the configuration file through the instruction parsing unit, obtains the instruction configuration information therein, and configures the instruction button control in the software maintenance interface so that the instruction button control can issue corresponding instructions, that is, realize the instruction execution function.

[0051] It should be noted here that the functional controls (ie, display controls and command button controls) in the software maintenance interface may specifically include but are not limited to picture-type controls, text-type controls, and the like.

[0052] In summary, the software maintenance method of the embodiment of the present application, when implementing the software maintenance function, obtains a configuration file, the configuration file includes the hardware module configuration information, input and output configuration information and instruction configuration information of the semiconductor process equipment, the hardware module configuration information includes the identifier of the interface template corresponding to the hardware module, loads the interface template corresponding to the identifier of the interface template to generate a software maintenance interface, the software maintenance interface includes a display control and an instruction button control, the display control is configured according to the input and output configuration information so that the display control can display the information of the hardware module to realize the display function, and the instruction button control is configured according to the instruction configuration information so that the instruction button control can issue the corresponding instruction to realize the instruction execution function. The embodiment of the present application separates the interface from the function-related data (the input and output IO configuration information and the instruction configuration information in the configuration file), and associates the display control and the instruction button control in the interface with the IO configuration information and the instruction configuration information respectively to realize the display function and the instruction execution function. This method makes the realization of the maintenance function depend on the data in the configuration file. When the IO configuration information and the instruction configuration information change, the function can be realized only by changing the configuration file, so the flexibility and scalability are high. For hardware modules with exactly the same user interface UI but different IO configuration information and instruction configuration information, the functions can be realized only by modifying the configuration files, which effectively improves the reuse of interface templates, thereby improving development efficiency and reducing maintenance costs.

[0053] Figure 4 A flowchart of a software maintenance method provided by another embodiment of the present application is shown below. Figure 4 As shown, in Figure 2 Based on the illustrated embodiment, the software maintenance method of the embodiment of the present application may specifically include the following steps: S401, obtaining a configuration file, wherein the configuration file includes hardware module configuration information, input / output configuration information, and instruction configuration information of a semiconductor process device, wherein the hardware module configuration information includes an identifier of an interface template corresponding to the hardware module.

[0054] S402, loading an interface template corresponding to the identifier of the interface template to generate a software maintenance interface, wherein the software maintenance interface includes a display control and a command button control.

[0055] In the embodiment of the present application, steps S401-S402 are the same as steps S101-S102 in the above embodiment and are not described again here.

[0056] The IO configuration information includes at least the identifier of the display control (for example, the name of the display control, corresponding to the attribute Name in Table 1) and the IO channel corresponding to the identifier of the display control (corresponding to the attribute Channel in Table 1). Step S203 in the above embodiment "configure the display control according to the input and output configuration information so that the display control can display the information of the hardware module" may specifically include the following step S403.

[0057] S403: Associating the display control with the corresponding input and output channel, so that the display control can display the information of the corresponding hardware module according to the value of the associated input and output channel.

[0058] In an embodiment of the present application, the mapping and parsing unit binds each display control in the software maintenance interface generated in step S402 to its corresponding IO channel according to the identifier of each display control in the IO configuration information obtained in step S401 and the IO channel corresponding to the identifier of each display control. Each display control obtains the value of the IO channel associated with itself in real time, and displays the information of the corresponding hardware module according to the value of the IO channel to realize the display function.

[0059] For example, the IO configuration of chamber 1 (PML1) is as follows. The IO parsing unit in the mapping parsing unit can associate the IO channel " / IO / PML1 / Rinse1SupplyVlv_DI" of the PMC with the valve control of AOV_05 on the interface. When the value of the IO channel changes, the valve switch display corresponding to the valve control will also change accordingly: <maintenancecontrol name="AOV_05" node="”PMC”" channel=" / IO / PML1 / Rinse1SupplyVlv_DI" tooltiptext="SBV4F03" / > The instruction configuration information includes at least the identifier of the instruction button control (for example, the name of the instruction button control, corresponding to the attribute Name in Table 1) and the instruction corresponding to the identifier of the instruction button control (corresponding to the attribute ServicePath in Table 1). Step S204 in the above embodiment "configure the instruction button control according to the instruction configuration information so that the instruction button control can issue the corresponding instruction" may specifically include the following step S404.

[0060] S404: Associating the instruction button control with the corresponding instruction, so that the instruction button control can issue the associated instruction.

[0061] In an embodiment of the present application, the mapping and parsing unit binds each instruction button control in the software maintenance interface generated in step S402 with its corresponding instruction according to the identifier of each instruction button control in the instruction configuration information obtained in step S401 and the instruction corresponding to the identifier of each instruction button control. When each instruction button control is triggered (for example, a single click trigger), each instruction button control obtains the instruction associated with itself in real time and sends the instruction to the corresponding execution unit to realize the instruction execution function.

[0062] The instruction parsing unit in the mapping parsing unit will have different effects on different types of services. The execution process of all instructions can be as follows: Figure 5 As shown, the following steps are included: S501, click the command button control.

[0063] S502, button click event response.

[0064] S503: Match the instruction corresponding to the instruction button control.

[0065] S504, determine whether the instruction is valid. If yes, execute step S505. If no, execute step S510.

[0066] S505: Send the instruction to the lower computer.

[0067] S506, the lower computer executes service-related actions.

[0068] S507, the action execution result is fed back to the host computer.

[0069] S508, determine whether the instruction execution is completed. If yes, execute step S510. If no, execute step S509.

[0070] S509: Throw out an alarm. Execute step S510.

[0071] S510, end the response.

[0072] Furthermore, the IO configuration information also includes control visibility corresponding to the identifier of the display control (corresponding to the attribute Visible in Table 1). In the above embodiment, step S203 "configuring the display control according to the input and output configuration information so that the display control can display the information of the hardware module" may specifically include the following steps: The display control is associated with the corresponding input and output channels and control visibility, so that when the control visibility is visible, the display control can display the information of the corresponding hardware module according to the value of the associated input and output channel, or, when the control visibility is invisible, the display control is not displayed.

[0073] In the embodiment of the present application, the mapping and parsing unit binds each display control in the software maintenance interface generated in step S402 with the corresponding IO channel and control visibility according to the identifier of each display control in the IO configuration information obtained in step S401, the IO channel corresponding to the identifier of each display control, and the control visibility of each display control. When each instruction button control is triggered (for example, a single click trigger), each display control obtains the value of the IO channel associated with itself and the control visibility in real time, and when the control visibility is the control visible, the corresponding hardware module information is displayed according to the value of the IO channel to realize the display function. When the control visibility is the control invisible, the display control is not displayed.

[0074] Furthermore, the instruction configuration information also includes an instruction execution type (corresponding to the attribute ServiceType in Table 1), which can realize the execution of a single instruction or multiple instructions.

[0075] A single instruction is a one-to-one correspondence between an instruction button control and an instruction. An instruction button control only sends one instruction. This type is the type of most instructions.

[0076] For single instruction types, according to the differences in interface operations, sent parameters, etc., they can be divided into simple instruction types, parameter sent instruction types (without interface interaction), parameter sent instruction types (with interface interaction) and conditional judgment instruction types.

[0077] The embodiment of the present application analyzes and summarizes the configurable solutions of the service according to the specific situation, realizes the configurability in various scenarios according to different situations, and maintains the maximum compatibility in the currently known scenarios. Therefore, a set of configuration rules are designed in terms of type to adapt to various situations, so that the system maintains good scalability and can flexibly cope with more subsequent scenarios.

[0078] For simple instruction types, according to step S404, only the instruction is bound, and the instruction is issued when the instruction button control is triggered. For example, the interface and configuration of the simple instruction type can be as follows Figure 6As shown, the instruction parsing unit associates the PMC instruction " / Control / Functional / PML1 / FncPML1 / OpenShutter" with the instruction button control "ShutterDoorOpen" on the interface, and when the instruction button control "ShutterDoorOpen" is clicked, the instruction " / Control / Functional / PML1 / FncPML1 / OpenShutter" is executed. The instruction parsing unit associates the PMC instruction " / Control / Functional / PML1 / FncPML1 / CloseShutter" with the instruction button control "ShutterDoorClose" on the interface, and when the instruction button control "ShutterDoorClose" is clicked, the instruction " / Control / Functional / PML1 / FncPML1 / CloseShutter" is executed.

[0079] For the parameter-based instruction type, the instruction configuration information also includes the parameter delivery mode corresponding to the instruction (corresponding to the attribute Is Parameter in Table 1) and the preset parameter value when the parameter delivery mode is the instruction delivery mode (corresponding to the attribute parameter Text in Table 1). In the above embodiment, step S204 "configure the instruction button control according to the instruction configuration information so that the instruction button control can deliver the corresponding instruction" may specifically include the following steps: The command button control is associated with the corresponding command, parameter sending method, and preset parameter value, so that the command button control can send the associated command, and send the parameter value input on the interface when the associated parameter sending method is the interface input method, or send the preset parameter value when the associated parameter sending method is the command sending method.

[0080] In the embodiment of the present application, among the parameter-based instruction types, the interface interaction type is a parameter determined by the user through interface input to be sent to the lower computer, and supports the sending of string, integer, and Boolean type parameters. The non-interface interaction type is usually a parameter specially added by the lower computer to distinguish different functions. The parameter does not need to be input by the user through the interface. The parameter can be determined only through the configuration file and sent when the instruction is executed.

[0081] The mapping and parsing unit binds each instruction button control in the software maintenance interface generated in step S402 with the corresponding instruction, the parameter sending method and the preset parameter value according to the identifier of each instruction button control in the instruction configuration information obtained in step S401, the instruction corresponding to the identifier of each instruction button control, the parameter sending method and the preset parameter value corresponding to the instruction. When each instruction button control is triggered (for example, a single click trigger), each instruction button control obtains the instruction associated with itself, the parameter sending method and the preset parameter value corresponding to the instruction in real time, and when the parameter sending method is the interface input method, the instruction and the parameter value input by the interface are sent to the corresponding execution unit to realize the instruction execution function; when the parameter sending method is the instruction sending method, the instruction and the preset parameter value are sent to the corresponding execution unit to realize the instruction execution function.

[0082] For example, the interface and configuration of the parameter issuing command type can be as follows Figure 7 As shown, the instruction parsing unit associates the PMC instruction " / Control / Functional / PML1 / Axis / FncChuck / CheckBrake", the presence or absence of the interface input parameter "isParameter="true", and the preset parameter value "parameterText="Down"" with the instruction button control "CheckBrakeDeactivate" on the interface. When the instruction button control "CheckBrakeDeactivate" is clicked, the instruction " / Control / Functional / PML1 / Axis / FncChuck / CheckBrake" is executed, and the preset parameter value "Down" is issued.

[0083] For conditional determination instruction types, the instruction configuration information also includes the instruction execution condition corresponding to the instruction (corresponding to the attribute Description in Table 1). Step S204 in the above embodiment, "configuring the instruction button control according to the instruction configuration information so that the instruction button control can issue the corresponding instruction", may specifically include the following steps: The command button control is associated with the corresponding command and the command execution condition, so that the command button control can issue the associated command when the command execution condition is met.

[0084] In the embodiment of the present application, the mapping and parsing unit binds each instruction button control in the software maintenance interface generated in step S402 with the respective corresponding instructions and instruction execution conditions according to the identifier of each instruction button control in the instruction configuration information obtained in step S401, the instruction corresponding to the identifier of each instruction button control, and the instruction execution condition corresponding to the instruction. When each instruction button control is triggered (for example, a single click trigger), each instruction button control obtains the instruction and instruction execution condition associated with itself in real time, and when the device meets the instruction execution condition, the instruction is sent to the corresponding execution unit to implement the instruction execution function. When the device does not meet the instruction execution condition, the instruction is not sent.

[0085] The instruction execution condition may specifically include but is not limited to the conditions that the value of the IO channel must meet, and may be an AND or NOT logical judgment condition of the value of the IO channel.

[0086] For example, the configuration of the conditional instruction type can be as follows Figure 8 As shown, the instruction parsing unit associates the CDS instruction " / Control / Functional / Medium1System / FncSupplySystem / Restart", the instruction execution condition " / SETUP / Medium1SystemData / ChemicalStatus==Heating || / SETUP / Medium1SystemData / ChemicalStatus==Ready" / " (i.e., the status of the drug solution is Heating or Ready) with the instruction button control "Restart" on the interface. When the instruction button control "Restart" is clicked, it is determined whether to execute the instruction " / Control / Functional / Medium1System / FncSupplySystem / Restart" by judging whether the status of the drug solution is Heating or Ready.

[0087] For multiple command types, they can be divided into long-press command types and single-click operation double command types.

[0088] When the instruction type in the instruction configuration information is a long key instruction type (i.e., Jog type), step S204 in the above embodiment, "configuring the instruction key control according to the instruction configuration information so that the instruction key control can issue the corresponding instruction", may specifically include the following steps: The command button control is associated with the corresponding command, so that the command button control can issue the associated command in a long-press state, and stop issuing the associated command in a stop-button state.

[0089] Specifically, the long key command type means that the command is executed when the command key is long pressed, and the command is no longer executed once the key is stopped. For example, the Jog command for motor shaft movement control means that the motor shaft moves in the set direction when the key is pressed, and the motor shaft no longer moves when the key is stopped. The action only occurs during the key press phase, and is no longer executed when the key is stopped.

[0090] The corresponding configuration can be as follows Fig. 9 The instruction parsing unit associates the PMC instruction "btnArm1JogHighMoveStart" with the instruction button control "MoveStart" on the interface. When the instruction button control "MoveStart" is long pressed, the instruction "btnArm1JogHighMoveStart" is executed. When the instruction button control "MoveStart" stops being pressed, the execution of the instruction "btnArm1JogHighMoveStart" is stopped.

[0091] When the instruction type in the instruction configuration information is a single-click operation dual instruction type (i.e., DS1 type), step S204 in the above embodiment, "configuring the instruction button control according to the instruction configuration information so that the instruction button control can issue the corresponding instruction", may specifically include the following steps: The command button control is associated with the corresponding command, so that the command button control can issue the state synchronization command and the associated command, and the associated command is executed after the state synchronization command is executed.

[0092] Specifically, single-click operation with two instructions requires the completion of fixed state synchronization instructions before execution, and then the configured instructions are executed. This is used in situations where state asynchrony may occur, leading to the execution of dangerous actions, such as the initialization instructions for the entire chamber.

[0093] The corresponding configuration can be as follows Fig.10 The instruction parsing unit associates the PMC instruction "btnInit" with the instruction button control "Init" on the interface. When the instruction button control "Init" is clicked, the state synchronization instruction is executed first, and then the instruction "btnInit" is executed.

[0094] It should be noted here that when the existing interface templates do not meet the needs of semiconductor process equipment, new interface templates need to be added to meet the new needs, and configuration templates corresponding to the interface templates need to be added simultaneously. The configuration content is completed according to actual business needs, and the configuration information is filled in, that is, only the configuration file needs to be modified to achieve it.

[0095] In summary, the software maintenance method of the embodiment of the present application separates the interface from the function-related data (input and output IO configuration information and instruction configuration information in the configuration file), and associates the display control and instruction button control in the interface with the IO configuration information and the instruction configuration information respectively to realize the display function and the instruction execution function. This method makes the realization of the maintenance function dependent on the data in the configuration file. When the IO configuration information and the instruction configuration information change, the function can be realized only by changing the configuration file, so the flexibility and scalability are high. For hardware modules with exactly the same user interface UI but different IO configuration information and instruction configuration information, the function can be realized only by modifying the configuration file, which effectively improves the reuse degree of the interface template, thereby improving the development efficiency and reducing the maintenance cost. By associating the display control with the IO channel, the display function is realized. By associating the instruction button control with the instruction, the instruction execution function is realized. For different types of instructions, the execution of various types of instructions can be realized through a set of instruction parsing rules.

[0096] The present application also provides a semiconductor process equipment. Fig.11 As shown, the semiconductor process equipment 900 may specifically include: a configuration management unit 901, an interface management unit 902 and a mapping analysis unit 903 which are arranged in a host computer and / or a slave computer of the semiconductor process equipment. The configuration management unit 901 is used to generate and store configuration files.

[0097] The interface management unit 902 is used to generate and store interface templates.

[0098] The mapping and parsing unit 903 is used to implement the steps of any of the above software maintenance method embodiments.

[0099] The semiconductor process equipment of the embodiment of the present application separates the interface from the function-related data (the input and output IO configuration information and the instruction configuration information in the configuration file), and associates the display control and the instruction button control in the interface with the IO configuration information and the instruction configuration information respectively, so as to realize the display function and the instruction execution function. This method makes the realization of the maintenance function depend on the data in the configuration file. When the IO configuration information and the instruction configuration information change, the function can be realized only by changing the configuration file, so the flexibility and scalability are high. For hardware modules with exactly the same user interface UI but different IO configuration information and instruction configuration information, the function can be realized only by modifying the configuration file, which effectively improves the reuse degree of the interface template, thereby improving the development efficiency and reducing the maintenance cost. The display function is realized by associating the display control with the IO channel. The instruction execution function is realized by associating the instruction button control with the instruction. For different types of instructions, the execution of various types of instructions can be realized through a set of instruction parsing rules.

[0100] An embodiment of the present application also proposes a readable storage medium, on which one or more computer programs are stored. The one or more computer programs include instructions. When the program or instructions are executed by a processor in a semiconductor process equipment including multiple application programs, the processor in the semiconductor process equipment can execute the various processes of the above-mentioned software maintenance method embodiment, and is specifically used to execute the steps of any of the above-mentioned software maintenance method embodiments.

[0101] The readable storage medium of the embodiment of the present application separates the interface from the function-related data (the input and output IO configuration information and the instruction configuration information in the configuration file), and associates the display control and the instruction button control in the interface with the IO configuration information and the instruction configuration information respectively, so as to realize the display function and the instruction execution function. This method makes the realization of the maintenance function depend on the data in the configuration file. When the IO configuration information and the instruction configuration information change, the function can be realized only by changing the configuration file, so the flexibility and scalability are high. For hardware modules with exactly the same user interface UI but different IO configuration information and instruction configuration information, the function can be realized only by modifying the configuration file, which effectively improves the reuse degree of the interface template, thereby improving the development efficiency and reducing the maintenance cost. By associating the display control with the IO channel, the display function is realized. By associating the instruction button control with the instruction, the instruction execution function is realized. For different types of instructions, the execution of various types of instructions can be realized through a set of instruction parsing rules.

[0102] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0103] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0104] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0105] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0106] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0107] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0108] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0109] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

[0110] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined in this article, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0111] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0112] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0113] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0114] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included within the scope of the claims of the present application.

Claims

1. A software maintenance method, characterized in that: include: Acquire a configuration file, wherein the configuration file includes hardware module configuration information, input / output configuration information, and instruction configuration information of the semiconductor process equipment, wherein the hardware module configuration information includes an identifier of an interface template corresponding to the hardware module; Loading an interface template corresponding to the identifier of the interface template to generate a software maintenance interface, wherein the software maintenance interface includes a display control and a command button control; Configuring the display control according to the input and output configuration information so that the display control can display the information of the hardware module; The command button control is configured according to the command configuration information so that the command button control can issue corresponding commands.

2. The method according to claim 1, characterized in that The input-output configuration information includes the identifier of the display control and the input-output channel corresponding to the identifier of the display control; The configuring the display control according to the input-output configuration information so that the display control can display the information of the hardware module includes: The display control is associated with the corresponding input and output channel, so that the display control can display the information of the corresponding hardware module according to the value of the associated input and output channel.

3. The method according to claim 1, characterized in that The command configuration information includes the identifier of the command button control and the command corresponding to the identifier of the command button control; The configuring the command button control according to the command configuration information so that the command button control can issue a corresponding command includes: The instruction button control is associated with the corresponding instruction so that the instruction button control can issue the associated instruction.

4. The method according to claim 3, characterized in that The instruction configuration information also includes a parameter delivery method corresponding to the instruction and a preset parameter value when the parameter delivery method is an instruction delivery method; The configuring the command button control according to the command configuration information so that the command button control can issue a corresponding command includes: The instruction button control is associated with the corresponding instruction, the parameter sending method, and the preset parameter value, so that the instruction button control can send the associated instruction, and send the parameter value input by the interface when the associated parameter sending method is the interface input method, or send the preset parameter value when the associated parameter sending method is the instruction sending method.

5. The method according to claim 3, characterized in that: The instruction configuration information also includes instruction execution conditions corresponding to the instruction; The configuring the command button control according to the command configuration information so that the command button control can issue a corresponding command includes: The instruction button control is associated with the corresponding instruction and the instruction execution condition, so that the instruction button control can issue the associated instruction when the instruction execution condition is met.

6. The method according to claim 5, characterized in that The instruction execution conditions include conditions that the values ​​of the input and output channels must satisfy.

7. The method according to claim 2, characterized in that The input-output configuration information also includes the visibility of the control corresponding to the identifier of the display control; The configuring the display control according to the input-output configuration information so that the display control can display the information of the hardware module includes: The display control is associated with the corresponding input / output channel and the control visibility, so that when the control visibility is control visible, the display control can display the information of the corresponding hardware module according to the value of the associated input / output channel, or when the control visibility is control invisible, the display control is not displayed.

8. The method according to claim 3, characterized in that The instruction configuration information also includes an instruction type corresponding to the instruction; When the instruction type is a long key instruction type, configuring the instruction key control according to the instruction configuration information so that the instruction key control can issue a corresponding instruction includes: The instruction button control is associated with the corresponding instruction, so that the instruction button control can issue the associated instruction in a long-press state, and stop issuing the associated instruction in a stop-press state.

9. The method according to claim 8, characterized in that The instruction configuration information also includes an instruction type corresponding to the instruction; When the instruction type is a single-click operation dual-instruction type, configuring the instruction button control according to the instruction configuration information so that the instruction button control can issue a corresponding instruction includes: The instruction button control is associated with the corresponding instruction, so that the instruction button control can issue a state synchronization instruction and the associated instruction, and the associated instruction is executed after the state synchronization instruction is executed.

10. A semiconductor process equipment, characterized in that: include: A configuration management unit, used to generate and store configuration files; An interface management unit, used to generate and store interface templates; A mapping and parsing unit, used to implement the steps of the method as described in any one of claims 1 to 9.

Citation Information

Cited By

  • Semiconductor software system management method, device, equipment, medium and program product

    CN121351047A