Data processing method, lower computer and storage medium
By acquiring the target interaction data and location identification information of the execution device in semiconductor process equipment, and using a pre-configured target correspondence document for data processing, the accuracy and efficiency issues of interactive data processing in hardware system expansion and upgrades are solved, code maintenance is simplified, and the accuracy of data processing is improved.
Patent Information
- Application Number
- CN202411171506.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-23
- Publication Date
- 2026-03-03
AI Technical Summary
During the expansion and/or upgrade of the hardware system functions of semiconductor process equipment, existing technologies cannot quickly and effectively process interactive data, resulting in the inability to guarantee the accuracy of read and write configuration results, and making code maintenance difficult and error rate high.
By acquiring the target interaction data and its location identification information of the execution device of the semiconductor process equipment, and using a pre-configured target correspondence document, the data processing requirements information, including data channels, offset addresses and data types, is determined. Data processing is then performed based on this information without modifying the configuration code corresponding to the interaction data.
It enables simple and convenient data processing during hardware system expansion and upgrades, improves accuracy, reduces code maintenance difficulty, and ensures fast and effective data processing.
Smart Images

Figure CN121597260A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of semiconductor manufacturing technology, and in particular to a data processing method, a lower-level machine, and a storage medium. Background Technology
[0002] In semiconductor process equipment, the lower-level machine typically processes interactive data through a driver layer to achieve data interaction with the equipment's hardware system. With the rapid iteration of semiconductor process technology, higher demands are placed on the functional expansion and / or upgrades of the equipment's hardware system. During these expansions and / or upgrades, the read / write configuration information for each interactive data point will change, requiring reconfiguration of the read / write settings.
[0003] Currently, configuration codes are typically set for each interactive data of the execution device in semiconductor process equipment. The driver layer uses these configuration codes to read and write data for the corresponding interactive data. During the functional expansion and / or upgrade of the machine hardware system, the configuration codes corresponding to each interactive data need to be modified, resulting in a high error rate and making it impossible to guarantee the accuracy of the read and write configuration results for each interactive data. Consequently, it is impossible to process each interactive data quickly and effectively. Summary of the Invention
[0004] To address the aforementioned technical problems, this application provides a data processing method, a lower-level machine, and a storage medium to solve the problem that existing technologies cannot quickly and effectively process various interactive data.
[0005] To achieve the above technical objectives, the embodiments of this application provide the following technical solutions:
[0006] Firstly, the embodiments of this specification provide a data processing method, including:
[0007] Acquire target interaction data of the execution device of the semiconductor process equipment, and location identification information of the target interaction data;
[0008] Based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer, the data processing requirement information corresponding to the target interaction data is determined. The target correspondence includes the correspondence between the location identification information and the data processing requirement information. The target correspondence is generated based on the target document embedded in the driver layer. The target document includes the data channel, offset address, and data type corresponding to the candidate interaction data of each execution device. The location identification information includes the data channel or offset address. The data processing requirement information includes data processing rules, which are configured based on the data type.
[0009] Based on the data processing requirements information corresponding to the target interaction data, the target interaction data is processed.
[0010] In one implementation, the target correspondence is generated by the following method:
[0011] A structure array is generated based on the target document. The structure array includes multiple structure elements that correspond one-to-one with the candidate interaction data. Each structure element includes the data channel, offset address, and data type corresponding to the candidate interaction data.
[0012] Based on the data type in each of the structure elements, data processing rules are configured for the data channels in each of the structure elements, and the configured structure array is used as the target correspondence.
[0013] In one implementation, configuring data processing rules for the data channels in each of the structure elements based on the data types in each structure element includes:
[0014] Obtain the first target structure element from the structure array, wherein the data type in the first target structure element is the target type, and the target type includes any data type in the structure array;
[0015] Based on the data processing rules corresponding to the target type, the data channels in the first target structure element are configured with data processing rules.
[0016] In one implementation, when the location identification information includes a data channel, the data processing requirement information also includes an offset address;
[0017] The process of determining the data processing requirements corresponding to the target interaction data based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer includes:
[0018] The second target structure element in the structure array is determined based on the location identification information;
[0019] The data processing rules configured in the data channels of the second target structure element are used as the data processing rules corresponding to the target interactive data, and the offset address in the second target structure element is used as the offset address corresponding to the target interactive data.
[0020] In one implementation, the step of processing the target interaction data based on the data processing requirement information corresponding to the target interaction data includes:
[0021] Based on the data processing rules corresponding to the target interactive data, the target interactive data is converted into a new format.
[0022] Based on the offset address corresponding to the target interaction data, the format conversion result of the target interaction data is written into the target data frame, which is used to send to each of the execution devices.
[0023] In one implementation, determining the data processing requirement information corresponding to the target interaction data based on the location identification information of the target interaction data and the target correspondence pre-configured in the driver layer includes:
[0024] When the location identification information includes an offset address, the third target structure element in the structure array is determined based on the location identification information;
[0025] The data processing rules configured in the data channels of the third target structure element shall be used as the data processing rules corresponding to the target interactive data.
[0026] In one implementation, the target document is generated by the following method:
[0027] Obtain configuration data corresponding to the semiconductor process equipment. The configuration data includes data configuration information corresponding to each of the execution devices. The data configuration information includes data identifier information, data type, and offset address of the candidate interaction data of the execution device.
[0028] Based on the configuration data, multiple sub-data groups are obtained that correspond one-to-one with each candidate interaction data. The sub-data groups include the data type of the candidate interaction data and the offset address of the candidate interaction data.
[0029] Configure data channels corresponding to each candidate interaction data based on multiple sub-data groups, and add the data channels corresponding to the candidate interaction data to the sub-data groups corresponding to the candidate interaction data.
[0030] The target document is generated based on the sub-data groups corresponding to each of the candidate interaction data.
[0031] In one implementation, configuring the data channel corresponding to each of the candidate interaction data based on multiple sub-data groups includes:
[0032] Based on the number and / or sorting information of the sub-data groups, configure the data channels corresponding to each candidate interactive data.
[0033] Secondly, embodiments of this specification provide a lower-level machine, including at least one processor and at least one memory, wherein the memory stores a computer program, and when the computer program is executed by the processor, it implements the data processing method as described in any of the preceding claims.
[0034] Thirdly, embodiments of this specification provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the data processing method described in any of the preceding claims.
[0035] Fourthly, embodiments of this specification provide a computer program product or a computer program, the computer program product including a computer program stored in a computer-readable storage medium; the processor of the computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program to implement the data processing method as described in any of the preceding claims.
[0036] As can be seen from the above technical solutions, the embodiments of this application provide a data processing method, a lower-level machine, and a storage medium. The data processing method acquires target interaction data and location identification information of the execution device of a semiconductor process equipment. Based on the location identification information of the target interaction data and a pre-configured target correspondence in the driver layer, it determines the data processing requirement information corresponding to the target interaction data. The target correspondence includes the correspondence between location identification information and data processing requirement information. This target correspondence is generated based on a target document embedded in the driver layer. The target document includes the data channel, offset address, and data type corresponding to the candidate interaction data of each execution device. Location identification information includes data channel or offset address, and data processing requirement information includes data processing rules. The data processing rules are configured based on data type, and the target interactive data is processed based on the data processing requirement information corresponding to the target interactive data. Therefore, when the function of the machine hardware system is expanded and / or upgraded, it is only necessary to modify the target document embedded in the driver layer, and read the target document and configure the target correspondence in the driver layer according to the target document during the initialization of the lower-level program, so that the driver layer processes the interactive data according to the target correspondence. There is no need to modify the configuration code corresponding to each interactive data. The operation is simple and convenient, and the accuracy is high, so the interactive data can be processed quickly and effectively. Attached Figure Description
[0037] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0038] Figure 1 A schematic diagram of the structure of an EtherCAT data frame is provided for one embodiment of this specification;
[0039] Figure 2 A schematic diagram of another EtherCAT data frame structure provided for one embodiment of this specification;
[0040] Figure 3 A flowchart illustrating a data processing method provided for one embodiment of this specification;
[0041] Figure 4 This is a schematic diagram of the connection topology between a PMC, an ECAT Hub, and an actuator, provided for one embodiment of this specification. Detailed Implementation
[0042] Unless otherwise defined, the technical or scientific terms used in the embodiments of this specification shall have the ordinary meaning understood by one of ordinary skill in the art to which this specification pertains. The terms "first," "second," and similar terms used in the embodiments of this specification do not indicate any order, quantity, or importance, but are merely used to avoid confusion of constituent elements.
[0043] Unless the context otherwise requires, throughout this specification, "a plurality of" means "at least two," and "including" is interpreted as open-ended or encompassing, that is, "including, but not limited to." In the description of this specification, terms such as "one embodiment," "some embodiments," "exemplary embodiment," "example," "specific example," or "some examples" are intended to indicate that a particular feature, structure, material, or characteristic associated with that embodiment or example is included in at least one embodiment or example of this specification. The illustrative representations of the above terms do not necessarily refer to the same embodiment or example.
[0044] The technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this specification.
[0045] Overview
[0046] As described in the background section, the lower-level machine of semiconductor process equipment typically processes interactive data through a driver layer to achieve data interaction with the machine's hardware system. For example, taking an etching machine process chamber as an example, the software control system of the etching machine process chamber may include an application layer and a driver layer. The application layer is used to implement process flow and chamber maintenance services, while the driver layer is used to realize interaction with the machine's hardware system.
[0047] With the rapid iteration of semiconductor manufacturing processes, higher requirements are placed on the functional expansion and / or upgrade of the equipment hardware system. During the functional expansion and / or upgrade of the equipment hardware system, the read and write configuration information of each interactive data will change, and it is necessary to reconfigure the read and write of each interactive data.
[0048] Currently, configuration code is typically set for each interactive data point of the execution device in semiconductor process equipment. The driver layer uses this configuration code to read and write data for the corresponding interactive data. Due to the large amount of interactive data, a significant amount of code needs to be maintained. For example, a process chamber hardware system may include modules such as RF modules, temperature control modules, chamber pipeline vacuum control modules, endpoint detection modules, and electrostatic chuck modules. Each module contains multiple hardware devices, and the software control system needs to read and write hundreds of signals, each requiring corresponding configuration code. Furthermore, during the functional expansion and / or upgrade of the machine hardware system, the software driver layer needs to be continuously enriched and changed along with the hardware functionality. This necessitates modification of the configuration code corresponding to each interactive data point, resulting in a high error rate and an inability to guarantee the accuracy of the read and write configuration results for each interactive data point, thus hindering the rapid and efficient processing of this data.
[0049] To improve the real-time performance and stability of data interaction between the control system and the machine tool hardware system, and to achieve real-time stable control of the machine tool hardware system, EtherCAT (Ethernet for Control Automation Technology) communication technology can be used for data transmission. EtherCAT is a fieldbus system based on Ethernet, which has advantages such as high transmission speed, high real-time performance, flexible topology, low cost, and ease of implementation, and is widely used in the field of industrial control. EtherCAT data frames encapsulate process data objects (PDOs), with each PDO corresponding one-to-one with the data to be interacted with. Data interaction between the EtherCAT master card and the machine tool hardware system is achieved through PDO reading and writing; the data update frequency can reach 1ms / time, providing good real-time performance. The process data object can include RXPDO (Receive PDO) and TXPDO (Transmit PDO). RXPDO is used by the machine tool hardware system to receive data sent by the EtherCAT master card, and TXPDO is used by the machine tool hardware system to transmit data to the EtherCAT master card. Reading and writing a PDO can be understood as performing read and write operations on the memory address corresponding to that PDO within an EtherCAT data frame. The memory address can be uniquely determined by its offset. For example, an EtherCAT data frame can be like this: Figure 1 As shown, the SRF (Source RF) portion of the EtherCAT data frame is used to transmit the interactive data corresponding to the SRF, and the BRF (Bias RF) portion is used to transmit the interactive data corresponding to the BRF. The starting address of the SRF portion can be 424, and the starting address of the BRF portion can be 524. Both the SRF portion and the BRF portion can include various interactive data. For example, the SRF portion can include Power, and the offset address of Power can be 426, with a corresponding data length of 4 bytes. That is, the interactive data corresponding to Power can be written to offset addresses from 426 to 429.
[0050] For any PDO in an EtherCAT data frame, corresponding code needs to be configured in the software layer to read and write that PDO. When the software control system is expanded or the machine hardware system is upgraded, the EtherCAT data frame needs to be modified accordingly. Figure 1 Taking the EtherCAT data frame upgrade as an example, after the upgrade, the offset address of Power in the SRF section is modified to 430, and the starting address of the BRF section is modified to 548, as detailed below. Figure 2As shown, at this point, the corresponding offset address needs to be modified in the driver layer. Since the PDOs in the data frame are closely arranged, the offset address of each PDO will change accordingly. Therefore, the code corresponding to each PDO needs to be modified. Considering that there can be hundreds of PDOs in the data frame, and each PDO needs to be operated according to the above rules, the code maintenance is difficult and the error rate is high. At the same time, when adding each PDO to the data frame, it is also necessary to configure the data processing rules in the driver layer according to the data type corresponding to each PDO, which further increases the difficulty of code maintenance.
[0051] To address the problem that traditional methods, which rely on configuration codes corresponding to interactive data for reading and writing configurations, cannot quickly and effectively process interactive data during the functional expansion and / or upgrade of machine hardware systems, this application's technical solution obtains the target interactive data and its location identifier information from the execution device of the semiconductor process equipment. Based on the location identifier information and pre-configured target correspondences in the driver layer, the data processing requirements corresponding to the target interactive data are determined. The target correspondences include the correspondence between location identifier information and data processing requirements. These target correspondences are generated based on target documents embedded in the driver layer, which include candidate interactive data for each execution device. Based on the corresponding data channel, offset address, and data type, the location identification information includes the data channel or offset address, and the data processing requirement information includes data processing rules. The data processing rules are configured based on the data type, and the target interactive data is processed based on the data processing requirement information corresponding to the target interactive data. Therefore, when the function of the machine hardware system is expanded and / or upgraded, it is only necessary to modify the target document embedded in the driver layer, and read the target document and configure the target correspondence in the driver layer according to the target document during the initialization of the lower-level machine program, so that the driver layer processes the interactive data according to the target correspondence. There is no need to modify the configuration code corresponding to each interactive data. The operation is simple and convenient, and the accuracy is high, so the interactive data can be processed quickly and effectively.
[0052] Based on the above inventive concept, the data processing method provided in the embodiments of this specification will be described exemplarily below.
[0053] Exemplary methods
[0054] This specification provides a data processing method, such as... Figure 3 As shown, it includes:
[0055] S301. Obtain the target interaction data of the execution device of the semiconductor process equipment, and the location identification information of the target interaction data.
[0056] Specifically, semiconductor process equipment may include etching equipment, deposition equipment, wafer cleaning equipment, etc. Semiconductor process equipment may include a lower-level computer and an execution device. The lower-level computer is used to issue control commands to the execution device and / or read the execution device's operating data; wherein, the lower-level computer may be equipped with a process control module (PMC). The process control module (ModuleController) may include a data transmission device and control software. The control software may include a driver layer. The data transmission device is used to transmit interactive data between the lower-level machine and the execution device. The interactive data may include control commands to be sent to the execution device and / or the execution device's operating data. For example, the data transmission device can transmit control commands to be sent to the execution device from the lower-level machine to the execution device for control by the lower-level machine, and transmit the execution device's operating data from the execution device to the lower-level machine for monitoring the execution device's operating status. The driver layer is used to process the interactive data between the lower-level machine and the execution device to convert it into a data type readable by the lower-level machine or the execution device. For example, the control commands to be sent from the lower-level machine to the execution device are formatted and written into data frames, which are then transmitted to the execution device via the data transmission device. Simultaneously, after transmitting the execution device's operating data to the lower-level machine via data frames, the data transmission device performs format conversion on the corresponding data in the data frames to enable data reading.
[0057] In an optional implementation, the data transmission device can transmit interactive data between the lower-level machine and the execution device based on the EtherCAT communication protocol. For example, the data transmission device may include an EtherCAT MasterCard and an EtherCAT Hub connected to the MasterCard. The MasterCard can be located inside the PMC, and the ECAT Hub can be located outside the PMC. That is, the PMC is connected to the ECAT Hub through the MasterCard, and the ECAT Hub is connected to each execution device. For example, the MasterCard can be connected to the ECAT Hub through a network port. Thus, the ECAT Hub can send and receive interactive data between the lower-level machine and the execution device under the control of the MasterCard. The EtherCAT topology is highly scalable and is not constrained by the hardware system topology, making it easy to upgrade and maintain later.
[0058] Semiconductor process equipment execution devices may include hardware devices controlled by a lower-level computer. Taking etching equipment as an example, the hardware devices may include a gas box module, a lower electrode module, an RF module, a multi-zone electrostatic chuck (MZESC) module, and a vacuum module. The gas box module can connect to a mass flow verifier (MFV), a mass flow controller (MFC), and gas box valves. The lower electrode module may include chamber valves, a focus ring, a pin array, and a helium pressure controller. The RF module may include a bias voltage controller (BVC), an upper RF power supply (SRF), a lower 13M RF power supply (BRF13M), a lower 2M RF power supply (BRF2M), an upper matching circuit (SMATCH), and a lower matching circuit (BMATCH). The vacuum module may include a lower vertical valve (SFV), a forline gauge, and a chamber gauge. Gauge) and Process Gauge. Therefore, the connection topology between PMC, ECATHub, and actuators can be as follows: Figure 4 As shown.
[0059] The target interaction data may include parameter values to be written into the data frame (e.g., parameter values of control parameters to be sent to the execution device) or parameter values to be read from the data frame (e.g., parameter values of the execution device's operating parameters). The location identification information of the target interaction data is used to characterize the data source location or target location of the target interaction data. For example, when the target interaction data is a parameter value to be written into the data frame, the location identification information can characterize the target location of the target interaction data, i.e., the execution device to which the target interaction data is to be sent; when the target interaction data is a parameter value to be read from the data frame, the location identification information can characterize the source location of the target interaction data, i.e., the execution device that transmits the target interaction data.
[0060] S302. Based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer, determine the data processing requirement information corresponding to the target interaction data. The target correspondence includes the correspondence between the location identification information and the data processing requirement information. The target correspondence is generated based on the target document embedded in the driver layer. The target document includes the data channel, offset address, and data type corresponding to the candidate interaction data of each execution device. The location identification information includes the data channel or offset address. The data processing requirement information includes data processing rules, which are configured based on the data type.
[0061] Specifically, the target mapping relationship can include the correspondence between location identification information and data processing requirement information. The data processing requirement information can include data processing rules, which may include data parsing and / or format conversion methods. Additionally, when the target interaction data includes parameter values to be written into the data frame, the data processing requirement information may also include an offset address, which may include the address in the data frame where the target interaction data is written. The target mapping relationship can include a structure array, or it can include a hash table, mapping table, etc., which can be set according to actual needs.
[0062] Specifically, the target mapping relationship can be generated based on the target document embedded in the driver layer. For example, the target document can be read during the initialization of the lower-level machine program, and the target mapping relationship can be configured in the driver layer according to the target document. Alternatively, it can be determined whether the target document has been updated during the initialization of the lower-level machine program, and if the target document has been updated, the target mapping relationship can be configured in the driver layer according to the target document. For example, the version number of the target document can be used to determine whether the target document has been updated. In implementation, the target document can be modified and embedded into the driver layer when the functionality of the machine hardware system is expanded and / or upgraded.
[0063] The target document can include the data channel (channelnum), offset address (offset), and data type (datatype) corresponding to the candidate interaction data of each execution device. The candidate interaction data can include the parameter categories of the interaction data between the lower-level machine and the execution device, and each candidate interaction data can correspond one-to-one with a PDO in the data frame. The data channel corresponding to the candidate interaction data can be used to identify the parameter category of the candidate interaction data; different candidate interaction data correspond to different data channels. The offset address corresponding to the candidate interaction data can be used to determine the position of the candidate interaction data in the data frame. For example, for any candidate interaction data, the parameter value of the candidate interaction data can be read or written at the position represented by the offset address corresponding to the candidate interaction data in the data frame. The data type corresponding to the candidate interaction data is used to determine the data processing rules for the candidate interaction data. Therefore, the target document effectively obtains the mapping relationship between the execution device, offset address, data processing rules, and data channel. During data processing, only the position identification information of the target interaction data is needed to read and write data at the corresponding offset address in the data frame. When reading and writing data at the corresponding offset address in the data frame, pre-encapsulated API (Application Programming Interface) functions can be called.
[0064] The data types corresponding to the candidate interaction data can include one or more of the following: REAL (four-byte signed floating-point number), UDINT (four-byte unsigned integer), UINT (two-byte unsigned integer), INT (two-byte signed integer), USINT (single-byte unsigned integer), and BOOL (single data bit, Boolean). For example, when writing REAL type target interaction data into a data frame, the target interaction data needs to be converted into a four-byte hexadecimal number before being sent. When reading UINT type target interaction data into a data frame, the target interaction data needs to be converted from a two-byte hexadecimal number to a decimal number.
[0065] In implementation, the target correspondence can include multiple sub-correspondences that correspond one-to-one with candidate interaction data. For any sub-correspondence, it can include the data channel, offset address, and data type corresponding to the candidate interaction data in the target document. Furthermore, data processing rules corresponding to the sub-correspondence can be configured based on the data type of the candidate interaction data, enabling rapid and accurate configuration of the target correspondence. Therefore, when expanding and / or upgrading the functionality of the machine hardware system, only the target document embedded in the driver layer needs to be modified. The target document is read during lower-level program initialization, and the target correspondence is configured in the driver layer based on the target document. No modification to the configuration code corresponding to each interaction data is required. This operation is simple, convenient, and highly accurate, facilitating subsequent expansion and / or upgrading of the semiconductor process equipment's hardware system functionality. Simultaneously, configuring the driver layer using the method of this embodiment enables the integration of over 2000 data channels into a unified driver layer for stable data reading and writing.
[0066] It is understandable that the location identification information may include data channels or offset addresses. For example, when the target interactive data is a parameter value to be read from a data frame, the location identification information of the target interactive data may include the offset address corresponding to the target interactive data. When the target interactive data is a parameter value to be written into a data frame, the location identification information of the target interactive data may include the data channel corresponding to the target interactive data. Thus, by using the location identification information of the target interactive data and the target correspondence, the data processing requirements when processing the target interactive data can be quickly and accurately determined.
[0067] S303. Based on the data processing requirement information corresponding to the target interaction data, perform data processing on the target interaction data.
[0068] Specifically, data processing can include read and write operations, as well as modification and deletion operations, which can be configured according to actual needs.
[0069] In implementation, the target interactive data can be processed according to the data processing requirements information corresponding to the target interactive data. For example, when the data processing is a write operation, the target interactive data can be parsed and / or its data format converted according to the data processing rules corresponding to the target interactive data, and the parsing and / or data format conversion results can be written into the data frame based on the offset address corresponding to the target interactive data. When the data processing is a read operation, the target interactive data to be read in the data frame can be parsed and / or its data format converted according to the data processing rules corresponding to the target interactive data to obtain the target interactive data that meets the data type requirements of the lower-level machine, thereby enabling fast and accurate data processing of the target interactive data.
[0070] Understandably, when data processing is a write operation, the data channel and the expected value to be written can be passed through the PMC. The expected value to be written is the target interactive data, and the data channel is the location identifier information of the target interactive data. When data processing is a read operation, the data in the offset address of each candidate interactive data used for data reading by the lower-level machine in the data frame can be obtained and its format converted.
[0071] In the process of controlling and monitoring the operation of each actuator through the PMC, data frames can be sent via a data transmission device. The data frame starts from the data transmission device and traverses each actuator according to its topology. Essentially, when the data frame passes through any actuator, the actuator's control unit can address the data within the data frame and read the data at the corresponding location, then send it to the actuator's execution unit to complete control of that actuator. Simultaneously, the actuator can write its own operating data to the corresponding offset address in the data frame through mapping or other methods, and the PMC reads the data at the corresponding location when the data frame passes through the data transmission device. Figure 4 Taking the topology shown as an example, the data frame transmission sequence may include: ECAT Hub → Gas Box Module → Mass Flow Detector → Gas Box Module → Mass Flow Control Valve → Gas Box Module → Gas Box Valve Assembly → Gas Box Module → ECAT Hub → Chamber Valve Assembly → Focusing Ring → Three Needles → Back Helium Pressure Controller → ECAT Hub → Bias Voltage Controller → Upper RF Power Supply → Lower 13M RF Power Supply → Lower 2M RF Power Supply → Upper Matching Unit → Lower Matching Unit → ECAT Hub → Multi-zone Electrostatic Chuck Module → ECAT Hub → Subordinate Vertical Valve → Front Piping Gauge → Chamber Gauge → Process Gauge → ECAT Hub.
[0072] To further improve the configuration efficiency and reliability of the target mapping relationship, in one embodiment of this specification, the target mapping relationship is generated by the following method:
[0073] A structure array is generated based on the target document. The structure array includes multiple structure elements that correspond one-to-one with the candidate interaction data. Each structure element includes the data channel, offset address, and data type corresponding to the candidate interaction data.
[0074] Based on the data type in each of the structure elements, data processing rules are configured for the data channels in each of the structure elements, and the configured structure array is used as the target correspondence.
[0075] Specifically, a structure array can be generated based on the target document. This array can include multiple structure elements that correspond one-to-one with the candidate interaction data. For any given structure element, it can include three variables: the data channel, offset address, and data type corresponding to the candidate interaction data. By reading the data channel, offset address, and data type of the corresponding candidate interaction data from the target document and writing them to the corresponding variables within the structure element, the target-to-interaction mapping can be configured quickly and effectively at the driver layer.
[0076] In implementation, two structure arrays can be constructed: a write structure array PDOWriteData[] and a read structure array PDOReadData[]. The write structure array represents the target correspondence when data processing is a write operation. For example, the target correspondence when data processing is a write operation can include the correspondence between the offset address, data type, and data channel of RxPDO on the data frame. The read structure array represents the target correspondence when data processing is a read operation. For example, the target correspondence when data processing is a read operation can include the correspondence between the offset address, data type, and data channel of TxPDO on the data frame. Thus, when processing target interactive data, the data processing requirement information corresponding to the target interactive data can be quickly and accurately determined.
[0077] After writing the corresponding variables into each structure element of the structure array, data processing rules can be configured for the data channels in each structure element based on the data type. For example, the target processing function can be determined based on the data type, and that target processing function can be configured for the data channels in each structure element. Specifically, API functions corresponding to different data types can be pre-encapsulated, and the corresponding API functions can be called during data processing to perform data processing quickly and accurately.
[0078] In one feasible implementation, configuring data processing rules for the data channels in each of the structure elements based on the data types in each structure element includes:
[0079] Obtain the first target structure element from the structure array, wherein the data type in the first target structure element is the target type, and the target type includes any data type in the structure array;
[0080] Based on the data processing rules corresponding to the target type, the data channels in the first target structure element are configured with data processing rules.
[0081] Specifically, in the process of configuring data processing rules for each structure element in the structure array, data processing rules can be configured simultaneously for structure elements containing the same data type.
[0082] In this process, any data type in the structure array can be used as the target type. Based on the target type, all structure elements in the structure array are traversed to obtain the first target structure element in the structure array. The first target structure element is the structure element containing the target data type. Based on the data processing rules corresponding to the target type, the data channels in the first target structure element are configured with data processing rules, thereby further improving the configuration efficiency of the data processing rules for each structure element.
[0083] In implementation, the structure elements in the structure array can be traversed according to their index information to obtain the index information of each first target structure element. This index information can then be used as the first target index information. Data processing rules corresponding to the target type can be configured for the data channels corresponding to the first target index information in the structure array. Therefore, for each structure element of the same data type, only one piece of code is needed to configure the data processing rules, greatly improving the configuration efficiency of the data processing rules for each structure element and reducing the amount of code that the driver layer needs to maintain. The index information of the structure element can include the subscript of the structure element in the structure array, which can be automatically generated during the creation of the structure element.
[0084] For example, to configure data processing rules for structure elements of data type REAL in the structure array PDOWriteData[], when PDOWriteData[i].datatype is REAL, the WriteDouble() function can be configured for the data channel PDOWriteData[i].channelnum of the structure element at index i. The WriteDouble() function is used to convert the input Double (double-precision floating-point number) data into hexadecimal data.
[0085] In one feasible implementation, when the location identification information includes a data channel, the data processing requirement information also includes an offset address;
[0086] The process of determining the data processing requirements corresponding to the target interaction data based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer includes:
[0087] The second target structure element in the structure array is determined based on the location identification information;
[0088] The data processing rules configured in the data channels of the second target structure element are used as the data processing rules corresponding to the target interactive data, and the offset address in the second target structure element is used as the offset address corresponding to the target interactive data.
[0089] Specifically, when the location identification information includes a data channel, it indicates that the data processing is a write operation. That is, the target interactive data may include the parameter values of the data frame to be written. In this case, the data processing requirement information also includes the offset address.
[0090] In the process of determining the data processing requirements information corresponding to the target interaction data, the second target structure element in the structure array can be determined based on the location identification information. For example, all structure elements in the structure array can be traversed based on the location identification information of the target interaction data to obtain the second target structure element in the structure array. The second target structure element is the structure element containing the location identification information of the target interaction data. That is, the data channel in the second target structure element is the data channel corresponding to the target interaction data.
[0091] Specifically, the data processing rules configured in the data channel of the second target structure element can be used as the data processing rules corresponding to the target interactive data. At the same time, the offset address in the second target structure element can be used as the offset address corresponding to the target interactive data. This allows for the rapid and effective determination of the data processing requirements corresponding to the target interactive data. Furthermore, based on the data processing requirements, the target interactive data can be processed accurately and in real time.
[0092] In implementation, the index information of each structure element in the structure array can be traversed according to the index information of the structure elements to obtain the index information of the second target structure element. For example, the data channel variables in all structure elements can be traversed using the Structfind() function, and the index information j of the structure element whose data channel variable is the same as the position identifier information of the target interactive data can be returned as the second target index information. Thus, the data processing rules configured by PDOWriteData[j].channelnum can be used as the data processing rules corresponding to the target interactive data, and PDOWriteData[j].offset can be used as the offset address corresponding to the target interactive data. This can further improve the search efficiency of the data processing requirement information corresponding to the target interactive data and the accuracy of the search results, providing technical support for improving the data processing efficiency of the target interactive data.
[0093] In one feasible implementation, the step of processing the target interaction data based on the data processing requirement information corresponding to the target interaction data includes:
[0094] Based on the data processing rules corresponding to the target interactive data, the target interactive data is converted into a new format.
[0095] Based on the offset address corresponding to the target interaction data, the format conversion result of the target interaction data is written into the target data frame, which is used to send to each of the execution devices.
[0096] Specifically, the corresponding data processing function can be called based on the data processing rules corresponding to the target interactive data, and the target interactive data can be input into the target processing function to output the format conversion result of the target interactive data, which greatly improves the data processing efficiency. At the same time, for structure elements containing the same data type in the structure array, the same data processing function can be called. Thus, data processing of interactive data of the same data type can be achieved with a piece of code, reducing the amount of code that the driver layer needs to maintain.
[0097] In addition, the format conversion result of the target interaction data can be written into the target data frame based on the offset address corresponding to the target interaction data. The target data frame is the data frame to be sent to each execution device through the data transmission device, thereby ensuring the real-time and effective control of the execution device by the lower computer.
[0098] In a preferred embodiment, the offset address corresponding to the target interaction data and the target interaction data can be simultaneously input to the target processing function so that the target interaction data can be format-converted by the target processing function and the format-converted target interaction data can be written to the target data frame.
[0099] In one feasible implementation, determining the data processing requirement information corresponding to the target interaction data based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer includes:
[0100] When the location identification information includes an offset address, the third target structure element in the structure array is determined based on the location identification information;
[0101] The data processing rules configured in the data channels of the third target structure element shall be used as the data processing rules corresponding to the target interactive data.
[0102] Specifically, when the location identification information includes an offset address, it indicates that the data processing is a read operation, that is, the target interactive data may include parameter values to be read from the data frame.
[0103] In the process of determining the data processing requirements information corresponding to the target interaction data, the third target structure element in the structure array can be determined based on the location identification information. For example, all structure elements in the structure array can be traversed based on the location identification information of the target interaction data to obtain the third target structure element in the structure array. The third target structure element is the structure element that contains the location identification information of the target interaction data. That is, the offset address in the third target structure element is the offset address corresponding to the target interaction data.
[0104] Specifically, the data processing rules configured in the data channels of the third target structure element can be used as the data processing rules corresponding to the target interactive data. This enables the data processing requirements information corresponding to the target interactive data to be determined quickly and effectively, and then the target interactive data can be processed in real time and accurately based on the data processing requirements information.
[0105] In practice, the index information of each structure element in the structure array can be traversed according to the index information of the structure elements to obtain the index information of the third target structure element. For example, the offset address variable in all structure elements can be traversed by the Structfind() function, and the index information k of the structure element whose offset address variable is the same as the position identifier information of the target interactive data can be returned as the third target index information. Thus, the data processing rules configured by PDOWriteData[k].channelnum can be used as the data processing rules corresponding to the target interactive data, thereby further improving the search efficiency and accuracy of the data processing requirements information corresponding to the target interactive data, and providing technical support for improving the data processing efficiency of the target interactive data.
[0106] To further improve the reliability of the target document, in one embodiment of this specification, the target document is generated by the following method:
[0107] Obtain configuration data corresponding to the semiconductor process equipment. The configuration data includes data configuration information corresponding to each of the execution devices. The data configuration information includes data identifier information, data type, and offset address of the candidate interaction data of the execution device.
[0108] Based on the configuration data, multiple sub-data groups are obtained that correspond one-to-one with each candidate interaction data. The sub-data groups include the data type of the candidate interaction data and the offset address of the candidate interaction data.
[0109] Configure data channels corresponding to each candidate interaction data based on multiple sub-data groups, and add the data channels corresponding to the candidate interaction data to the sub-data groups corresponding to the candidate interaction data.
[0110] The target document is generated based on the sub-data groups corresponding to each of the candidate interaction data.
[0111] Specifically, configuration data corresponding to the semiconductor process equipment can be obtained. This configuration data may include data configuration information for each execution device. For any execution device, the data configuration information may include data identifier information, data type, and offset address of the candidate interaction data corresponding to that execution device. The data identifier information can be used to uniquely identify the candidate interaction data; for example, it may include the parameter name and parameter identifier of the candidate interaction data. It is understood that one execution device can correspond to one or more candidate interaction data. Furthermore, the data configuration information corresponding to the execution device may also include the device identifier information, device type, byte length of the candidate interaction data corresponding to that execution device, and parameter index. The configuration data corresponding to the semiconductor process equipment can be updated when the hardware system functions of the semiconductor process equipment are expanded and / or upgraded.
[0112] In practice, multiple sub-data groups can be extracted from the configuration data. Each sub-data group corresponds one-to-one with multiple candidate interaction data. Each sub-data group can include the data type and offset address of the corresponding candidate interaction data.
[0113] In addition, data channels corresponding to each candidate interactive data can be configured based on multiple sub-data groups. For example, data channels corresponding to each candidate interactive data can be automatically allocated based on the number and / or sorting information of the sub-data groups, and configured in the input / output configuration file (e.g., IO_Config.xml) of the driver layer, thereby effectively improving the configuration efficiency of data channels.
[0114] After obtaining the data channels corresponding to each candidate interaction data, the data channels corresponding to each candidate interaction data can be added to the sub-data groups corresponding to the candidate interaction data to obtain multiple sub-data groups containing data channels, data types, and offset addresses.
[0115] In practice, target documents can be generated based on the sub-data groups corresponding to each candidate interactive data. For example, each sub-data group can be written on the same line. That is, the three columns of each line in the target document are the data channel, data type and offset address used for driver layer configuration, respectively. Thus, the target correspondence can be configured quickly and effectively in the driver layer based on the target document, providing technical support for improving the real-time performance and accuracy of target interactive data processing.
[0116] In one feasible implementation, configuring the data channel corresponding to each of the candidate interaction data based on multiple sub-data groups includes:
[0117] Based on the number and / or sorting information of the sub-data groups, configure the data channels corresponding to each candidate interactive data.
[0118] Specifically, multiple random numbers of different sizes can be randomly generated based on the number of sub-data groups, and these multiple random numbers can be used as data channels corresponding to the candidate interactive data. For example, multiple random numbers can be randomly assigned to each candidate interactive data, or multiple random numbers can be assigned to each candidate interactive data based on the sorting information of multiple sub-data groups.
[0119] In addition, data channels corresponding to each candidate interactive data can be generated according to preset rules based on the sorting information of multiple sub-data groups. For example, the data channels corresponding to each candidate interactive data can be determined sequentially based on the sorting information of multiple sub-data groups, according to the preset starting channel number and preset step size.
[0120] Therefore, the data channels corresponding to each candidate interactive data can be configured quickly and effectively based on the number and / or sorting information of the sub-data groups, and there is no need to consider the relationship between the various execution devices during the configuration of the data channels.
[0121] Exemplary device
[0122] This specification also provides a lower-level machine, including at least one processor and at least one memory, wherein the memory stores a computer program, and when the computer program is executed by the processor, it implements the data processing method as described in any of the above embodiments.
[0123] In another exemplary embodiment of this specification, a semiconductor process apparatus is also provided, comprising: a lower-level machine as described in the above embodiments, the lower-level machine being configured to perform data processing on interactive data between the lower-level machine and the execution device of the semiconductor process apparatus according to the data processing method described in any of the above embodiments.
[0124] Exemplary computer program products and storage media
[0125] In addition to the methods and devices described above, the data processing methods provided in the embodiments of this specification can also be computer program products, which include computer program instructions that, when executed by a processor, cause the processor to perform the steps in the data processing methods according to various embodiments of this specification as described in the "Exemplary Methods" section above.
[0126] The computer program product described herein can be written in any combination of one or more programming languages to perform the operations of the embodiments described herein. These programming languages include object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0127] Furthermore, embodiments of this specification also provide a computer-readable storage medium having a computer program stored thereon, the computer program being executed by a processor of the steps in the data processing methods according to various embodiments of this specification as described in the "Exemplary Methods" section above.
[0128] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the methods described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this specification can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.
[0129] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0130] The embodiments described above are merely illustrative of several implementation methods outlined in this specification. While the descriptions are specific and detailed, they should not be construed as limiting the scope of the solutions provided in this specification. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this specification, and these all fall within the scope of protection of this specification. Therefore, the scope of protection for this patent should be determined by the appended claims.
Claims
1. A data processing method, characterized in that, include: Acquire target interaction data of the execution device of the semiconductor process equipment, and location identification information of the target interaction data; Based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer, the data processing requirement information corresponding to the target interaction data is determined. The target correspondence includes the correspondence between the location identification information and the data processing requirement information. The target correspondence is generated based on the target document embedded in the driver layer. The target document includes the data channel, offset address, and data type corresponding to the candidate interaction data of each execution device. The location identification information includes the data channel or offset address. The data processing requirement information includes data processing rules, which are configured based on the data type. Based on the data processing requirements information corresponding to the target interaction data, the target interaction data is processed.
2. The method according to claim 1, characterized in that, The target correspondence is generated using the following method: A structure array is generated based on the target document. The structure array includes multiple structure elements that correspond one-to-one with the candidate interaction data. Each structure element includes the data channel, offset address, and data type corresponding to the candidate interaction data. Based on the data type in each of the structure elements, data processing rules are configured for the data channels in each of the structure elements, and the configured structure array is used as the target correspondence.
3. The method according to claim 2, characterized in that, The configuration of data processing rules for the data channels in each of the structure elements, based on the data types in each structure element, includes: Obtain the first target structure element from the structure array, wherein the data type in the first target structure element is the target type, and the target type includes any data type in the structure array; Based on the data processing rules corresponding to the target type, the data channels in the first target structure element are configured with data processing rules.
4. The method according to claim 2, characterized in that, When the location identification information includes a data channel, the data processing requirement information also includes an offset address; The process of determining the data processing requirements corresponding to the target interaction data based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer includes: The second target structure element in the structure array is determined based on the location identification information; The data processing rules configured in the data channels of the second target structure element are used as the data processing rules corresponding to the target interactive data, and the offset address in the second target structure element is used as the offset address corresponding to the target interactive data.
5. The method according to claim 4, characterized in that, The data processing based on the data processing requirement information corresponding to the target interaction data includes: Based on the data processing rules corresponding to the target interactive data, the target interactive data is converted into a new format. Based on the offset address corresponding to the target interaction data, the format conversion result of the target interaction data is written into the target data frame, which is used to send to each of the execution devices.
6. The method according to claim 2, characterized in that, The process of determining the data processing requirements corresponding to the target interaction data based on the location identification information of the target interaction data and the pre-configured target correspondence in the driver layer includes: When the location identification information includes an offset address, the third target structure element in the structure array is determined based on the location identification information; The data processing rules configured in the data channels of the third target structure element shall be used as the data processing rules corresponding to the target interactive data.
7. The method according to any one of claims 1 to 6, characterized in that, The target document was generated using the following method: Obtain configuration data corresponding to the semiconductor process equipment. The configuration data includes data configuration information corresponding to each of the execution devices. The data configuration information includes data identifier information, data type, and offset address of the candidate interaction data of the execution device. Based on the configuration data, multiple sub-data groups are obtained that correspond one-to-one with each candidate interaction data. The sub-data groups include the data type of the candidate interaction data and the offset address of the candidate interaction data. Configure data channels corresponding to each candidate interaction data based on multiple sub-data groups, and add the data channels corresponding to the candidate interaction data to the sub-data groups corresponding to the candidate interaction data. The target document is generated based on the sub-data groups corresponding to each of the candidate interaction data.
8. The method according to claim 7, characterized in that, The configuration of data channels corresponding to each candidate interaction data based on multiple sub-data groups includes: Based on the number and / or sorting information of the sub-data groups, configure the data channels corresponding to each candidate interactive data.
9. A lower-level machine, characterized in that, It includes at least one processor and at least one memory, wherein the memory stores a computer program that, when executed by the processor, implements the data processing method according to any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the data processing method as described in any one of claims 1 to 8.