Method, system, storage medium and electronic device for modifying an opc program

By setting breakpoints in the OPC program and obtaining graphical variable information for graphical display, the problem of long correction time in the OPC program is solved, enabling rapid location and visualization of the correction process, thus improving correction efficiency.

CN114355722BActive Publication Date: 2025-12-19HUA HONG SEMICON WUXI LTD +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210009748.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-05
Publication Date
2025-12-19
Estimated Expiration
2042-01-05

AI Technical Summary

Technical Problem

In the existing technology, the OPC program correction process is complex and cumbersome, and different products require different OPC programs for photomask patterns, resulting in long correction times and affecting production schedules.

Method used

By setting breakpoints in the OPC program, only the program before the breakpoint is executed, and relevant information of graphical variables is obtained and displayed graphically, allowing for quick location and correction of fault points.

Benefits of technology

It shortens the time required for OPC program correction, improves correction efficiency, and enables rapid location and visual diagnosis and correction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114355722B_ABST
    Figure CN114355722B_ABST
Patent Text Reader

Abstract

A method, system, storage medium and electronic device for modifying an OPC program. The method comprises: obtaining an OPC program to be modified; receiving breakpoint position information and setting a breakpoint at a position corresponding to the breakpoint position information in the OPC program to be modified; receiving a running control instruction, running the OPC program to be modified for a preset number of lines before the breakpoint, and obtaining related information of a graphic variable from the run OPC program; and performing graphic display based on the related information of the graphic variable, wherein the displayed image is related to the breakpoint position of the OPC program to be modified. The above scheme can shorten the time required for OPC program modification.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of OPC, in particular to an OPC program correction method and system, a storage medium and an electronic device. BACKGROUND

[0002] In semiconductor manufacturing, as the design size is continuously reduced, the design size is closer and closer to the limit of the photoetching imaging system, and the diffraction effect of light becomes more and more obvious, resulting in optical image degradation of the design pattern, and the actual photoetching pattern is seriously distorted relative to the pattern on the mask, and the actual pattern formed on the silicon wafer after photoetching is different from the design pattern, which is called optical proximity effect (OPE).

[0003] In order to correct the optical proximity effect, optical proximity correction (OPC) is generated. The core idea of optical proximity correction is: based on the consideration of offsetting the optical proximity effect, an optical proximity correction model is established by using an OPC program, and the design of the photo mask pattern is corrected according to the optical proximity correction model, and the correction result is used as the final photo mask pattern for photoetching. In this way, although the photoetched pattern relative to the photo mask pattern has optical proximity effect, since the photo mask pattern has been designed according to the optical proximity correction model, the photoetched pattern is close to the target pattern that the user actually wants to obtain.

[0004] In actual application, it is often necessary to correct the OPC program that does not meet the requirements. The OPC correction process is complex and tedious, and different products may have different types of photo mask patterns, and the OPC programs used to establish the optical proximity correction model are also different for different products and different types of photo mask patterns.

[0005] However, when the OPC program is corrected by using the current OPC correction method, the OPC correction result can be viewed only after the entire OPC program is run. If the OPC correction result deviates from the ideal result, the complete OPC program needs to be corrected and run again, and the time required for OPC program correction is long, which affects the production progress of the product. SUMMARY

[0006] The problem to be solved by the present application is: how to shorten the time required for OPC program correction.

[0007] To solve the above problems, the embodiment of the present application provides a method for modifying an OPC program, which comprises: obtaining an OPC program to be modified; receiving breakpoint position information and setting a breakpoint at a position corresponding to the breakpoint position information in the OPC program to be modified; receiving a running control instruction, running the OPC program to be modified for a preset number of lines before the breakpoint, and obtaining related information of a graphic variable from the running OPC program, so as to perform graphic display based on the related information of the graphic variable, and the displayed image is related to the breakpoint position of the OPC program to be modified.

[0008] The embodiment of the present application also provides a system for modifying an OPC program, which comprises: a modifying device, wherein the modifying device comprises: an obtaining unit adapted to obtain an OPC program to be modified; a breakpoint setting unit adapted to receive breakpoint position information and set a breakpoint at a position corresponding to the breakpoint position information in the OPC program to be modified; and a running control unit adapted to receive a running control instruction, run the OPC program to be modified for a preset number of lines before the breakpoint, and obtain related information of a graphic variable from the running OPC program, so as to perform graphic display based on the related information of the graphic variable.

[0009] The embodiment of the present application also provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the steps of any one of the methods.

[0010] The embodiment of the present application also provides an electronic device, which comprises a memory and a processor, and the memory stores a computer program capable of running on the processor, and the processor executes the steps of any one of the methods when running the computer program.

[0011] Compared with the prior art, the technical scheme of the embodiment of the present application has the following advantages:

[0012] With the scheme of the present application, after obtaining the to-be-corrected OPC program, different breakpoints can be set in the to-be-corrected OPC program based on the breakpoint position information, and the to-be-corrected OPC program before the breakpoint can be run, and then the related information of the graphic variable can be obtained from the run OPC program to perform graphic display based on the related information of the graphic variable. By observing the displayed graphic, whether the OPC program before the breakpoint is erroneous can be known, so that the purpose of correcting the OPC program can be achieved. In the whole OPC correction process, only the OPC program before the breakpoint can be run, and partial graphic display can be performed, and the whole OPC program does not need to be run every time, so that the time required for OPC program correction can be shortened. Moreover, since the displayed graphic is related to the breakpoint position of the to-be-corrected OPC program, whether the to-be-corrected OPC program at the breakpoint is erroneous can be quickly determined based on the displayed graphic, so that the fault point can be quickly located by visualizing the OPC program, and the time required for OPC program correction can be further shortened. BRIEF DESCRIPTION OF DRAWINGS

[0013] Figure 1 is a structure schematic diagram of an OPC program correction system in an embodiment of the present application;

[0014] Figure 2 is a schematic diagram of a displayed graphic after setting a breakpoint in a to-be-corrected OPC program in an embodiment of the present application;

[0015] Figure 3 is a schematic diagram of a to-be-corrected OPC program and a displayed graphic corresponding to the to-be-corrected OPC program; Figure 2

[0016] Figure 4 is a schematic diagram of an OPC program correction process in an embodiment of the present application;

[0017] Figure 5 is a flowchart of an OPC program correction method in an embodiment of the present application;

[0018] Figure 6 is a schematic diagram of another OPC program correction process in an embodiment of the present application. DETAILED DESCRIPTION

[0019] In actual application, the OPC program that does not meet the requirements often needs to be corrected. The OPC correction process is complex and tedious, and different products can have different types of photomask graphics, and the OPC programs used for establishing the optical proximity correction model are also different for different products and different types of photomask graphics.

[0020] ​In addition, new products need to be produced every day, and the mask pattern corrected by OPC is also updated, so it is a very time-consuming and labor-consuming task to quickly locate the position to be corrected from a large number of OPC programs.

[0021] When the current OPC correction method is used to correct the OPC program, the OPC correction result cannot be viewed until the entire OPC program is run. If an error occurs in a step of the OPC program, the OPC correction result deviates from the ideal result, and the entire OPC program needs to be run again after correction. The OPC program correction time is relatively long, usually more than one hour, which affects the production progress of the product.

[0022] To solve the problem, the application provides an OPC program correction method. When the method is used to correct the OPC program, the entire OPC correction program process can only run the OPC program before the breakpoint and perform partial graphic display, without running the entire OPC program each time, so that the OPC program correction time can be shortened. In addition, since the displayed graphics are related to the breakpoint position of the OPC program to be corrected, whether the breakpoint of the OPC program to be corrected is wrong can be quickly determined based on the displayed graphics, so that the fault point can be quickly located, and the OPC program correction time can be further shortened.

[0023] In order to make the above-mentioned objects, characteristics and advantages of the application more obvious and easy to understand, the specific embodiments of the application will be described in detail below with reference to the drawings.

[0024] Reference Figure 1 The embodiment of the application provides an OPC program correction system 10, which can comprise a correction device 11, wherein the correction device 11 can comprise an acquisition unit 111, a breakpoint setting unit 112 and a running control unit 113.

[0025] The acquisition unit 111 is suitable for acquiring an OPC program to be corrected.

[0026] The breakpoint setting unit 112 is suitable for receiving breakpoint position information and setting a breakpoint at a position corresponding to the breakpoint position information in the OPC program to be corrected.

[0027] The running control unit 113 is suitable for receiving a running control instruction, running the OPC program to be corrected before the breakpoint for a preset number of lines, and acquiring related information of a graphic variable from the run OPC program, so as to perform graphic display based on the related information of the graphic variable.

[0028] Since the breakpoint setting unit 112 can receive the breakpoint position information, the entire OPC correction procedure process can only run the OPC program before the breakpoint and perform partial graphic display, without running the entire OPC program each time, so as to shorten the time required for OPC program correction. Moreover, based on the displayed graphics, it can be quickly determined whether an error exists at the breakpoint of the OPC program to be corrected, so as to quickly locate the fault point, and further shorten the time required for OPC program correction.

[0029] In specific implementation, the correction system 10 in the embodiment of the present application can be used to correct the OPC program to be corrected when the correction result of the OPC program to be corrected does not match the ideal result. Of course, in some embodiments, the correction system 10 in the embodiment of the present application can be directly used to correct the OPC program to be corrected, instead of using the method in the embodiment of the present application to correct the OPC program to be corrected when it is determined that the correction result of the OPC program to be corrected does not match the ideal result.

[0030] In specific implementation, a corresponding calling interface can be set in the existing correction system to call the correction system 10 in the embodiment of the present application.

[0031] For example, when the correction result of the OPC program to be corrected does not match the ideal result, the "visual debugging" can be selected in the existing correction system, so as to start calling the correction system 10 in the embodiment of the present application to import the OPC program to be corrected.

[0032] In specific implementation, a variety of methods can be used to receive the breakpoint position information, and the specific implementation is not limited. For example, a virtual button can be set on the application interface of the correction system 10, and the breakpoint position information can be received through the clicking operation of the user. The target position can also be selected on the application interface of the correction system 10, and the selected target position can be set as the breakpoint position through the menu bar.

[0033] For example, for the imported OPC program to be corrected, the correction system 10 can perform line number identification, that is, automatically identify each line of the OPC program to be corrected. When receiving the breakpoint position information, the identification of each line on the application interface of the correction system 10 can be selected first, and the line where the virtual button set on the menu bar is located can be set as the position of the breakpoint.

[0034] In specific implementation, the number of breakpoints can be one or more than two, and the specific implementation is not limited. The running control subunit 113 can run the OPC program to be corrected before each breakpoint by a preset number of lines, and obtain the related information of the corresponding graphic variable from the run OPC program. The preset number of lines can be the position of the previous breakpoint, the starting position of the OPC program to be corrected, or other specified line number.

[0035] For example, two breakpoints can be set, and the corresponding line numbers are 365 and 368. The running control subunit 113 can first run the first 0th to 365th lines of the to-be-corrected OPC program, output the relevant information of the corresponding graphic variable, and then run the first 0th to 368th lines, output the relevant information of the corresponding graphic variable.

[0036] The first 0th to 365th lines of the to-be-corrected OPC program can also be run, the relevant information of the corresponding graphic variable is output, and then the 365th to 368th lines are run, and the relevant information of the corresponding graphic variable is output.

[0037] In a specific implementation, the running control subunit 113 can run the to-be-corrected OPC program line by line before the breakpoint, a preset number of lines, and determine the type of the generated variable in each line of the OPC program. When the type of the generated variable is a graphic variable, the relevant information of the graphic variable is obtained. That is, the generated variable of each line of the OPC program run before the breakpoint (including the line where the breakpoint is located) is found, and the type of each generated variable is determined. If the generated variable is a graphic variable, the relevant information of the graphic variable is obtained.

[0038] It can be understood that since the OPC program is used to correct the designed photomask pattern, and the designed photomask pattern is composed of many small graphics, the OPC program usually contains multiple graphic variables. The correction system 10 in the embodiment of the present application can make the graphics related to the same graphic variable displayed in the same layer.

[0039] In a specific implementation, the relevant information of the graphic variable can include characteristic information of the graphic variable itself and line number information where the graphic variable is located. The characteristic information of the graphic variable itself can include name information, size, and position information in the entire photomask pattern, etc., which are used to represent the attributes of the graphic itself. The line number information where the graphic variable is located is the position information of the graphic variable in the OPC program.

[0040] In other embodiments, the relevant information of the graphic variable can also include other information, which is not limited here. Based on the relevant information of the graphic variable, the corresponding graphic can be displayed.

[0041] For example, assuming that a breakpoint is set at the 368th line of the OPC program to be modified, and then the run button on the application interface of the modification system 10 can be clicked, the running control subunit 113 can run the OPC program to be modified from the start position of the OPC program to be modified line by line until stopping at the 368th line. At this time, the graphic variable related information generated at the 364th line and the graphic variable related information generated at the 367th line can be obtained. The graphic variable related information obtained is displayed in a graphic manner, and the graphic shown in FIG. 21 can be obtained. Figure 2 The graphic shown in FIG. 22 can be obtained. Figure 2 Thus, the error of the OPC program before the 368th line can be determined by observing the graphics shown in FIG. 21 and FIG. 22.

[0042] Assuming that the graphic corresponding to the graphic variable generated at the 367th line of the OPC program to be modified is obtained by expanding the graphic corresponding to the graphic variable generated at the 364th line inwards by 0.24 and outwards by 0.06.

[0043] If it is observed that the outwards expansion value of the 367th line is too small, the outwards expansion value of the 367th line can be modified to 0.1 according to requirements, and then the OPC program from the 0th line to the 368th line is run again, and the graphic shown in FIG. 31 can be obtained. Figure 3 The graphic shown in FIG. 32 can be obtained. Figure 3 In the graphic shown in FIG. 32, the graphic corresponding to the graphic variable generated at the 367th line (i.e., the graphic 31) is obtained by expanding the graphic corresponding to the graphic variable generated at the 364th line (i.e., the graphic 21) inwards by 0.2 and outwards by 0.1. Figure 3 The graphic shown in FIG. 32 meets the requirements.

[0044] In a specific implementation, after the OPC program to be modified before each breakpoint is run, the breakpoint can be cancelled, and the entire OPC program to be modified is verified again to further determine whether the modified result meets the requirements. If the requirements are met, the modified OPC program is exported and saved, and the modification is completed.

[0045] In an embodiment of the present application, referring to Figure 1 The modification system 10 can further include a graphic display device 12. The graphic display device 12 is adapted to display graphics based on the related information of the graphic variable.

[0046] It can be understood that in other embodiments, the modification system 10 can not include the graphic display device 12, and other existing graphic display devices can be used for graphic display.

[0047] In the embodiment of the present application, the graphic display device 12 can display the graphics corresponding to different graphic variables on the same display interface. That is, how many graphic variables exist in the OPC program to be corrected before the breakpoint can be displayed on the same display interface. In this way, the change of the graphics corresponding to different line numbers can be observed more conveniently.

[0048] In a specific implementation, after obtaining the related information of the graphic variables, the correction device 11 can package the related information of the graphic variables and send them to the graphic display device 12 for graphic display. The data packet of the graphic variables can be identified by the name of the graphic variable and the line number. The graphic display device 12 can be provided with a listening port, and when the data packet of the graphic variable is received, the corresponding graphic can be displayed in real time.

[0049] In a specific implementation, the graphic display device 12 can identify the name of the graphic variable and the line number corresponding to different graphics on the display interface. Specifically, after receiving the data packet of the graphic variable, the graphic display device 12 can display the name of the graphic variable as a hierarchical name, and automatically convert the line number of the graphic variable into a hierarchical number.

[0050] In a specific implementation, the graphic display device 12 can also receive user input and display only part of the graphic variables specified by the user, instead of displaying all the graphic variables before the breakpoint. In this way, the power consumption of the graphic display device 12 can be reduced, and the change of the graphics can be observed more conveniently.

[0051] For example, referring to Figure 4 After setting a reasonable breakpoint stop for the OPC program to be corrected, the correction system 10 can start running from the start position start of the OPC program to be corrected and stop at the breakpoint stop. The generated variables of each line of the OPC program running before the breakpoint (including the line where the breakpoint is located) are found, and the type of each generated variable is determined. If the generated variable is a graphic variable, the related information of the graphic variable is obtained.

[0052] For example, the related information 01.oas of the graphic variable corresponding to the first line, the related information 02.oas of the graphic variable corresponding to the second line, the related information 03.oas of the graphic variable corresponding to the third line, and the related information 04.oas of the graphic variable corresponding to the fourth line can be obtained. After the information 01.oas, 02.oas, 03.oas, and 04.oas are packaged, they are sent to the listening port of the graphic display device 12. After receiving the packaged data, the graphic display device 12 displays the graphic variables in a graphic form. Based on the user selection, the graphic display device 12 can display only the graphic 02.bias_in corresponding to the graphic variable of the second line and the graphic 04.bias_out corresponding to the graphic variable of the fourth line, where bias_in and bias_out are the names of the graphic variables.

[0053] The graphic display device 12 can compare the graphic changes before and after the relevant steps in the to-be-corrected OPC program, and further determine the program line number of the graphic variable according to the layer number, so as to quickly locate the corresponding position of the to-be-corrected OPC program.

[0054] For example, it is assumed that Figure 4 If the graphic displayed by the graphic display device 12 does not meet the requirements, the to-be-corrected OPC program from the 2nd line to the 4th line of the to-be-corrected OPC program can be quickly determined to not meet the requirements, and thus the relevant statements can be immediately modified. Then, the starting point is reset in the correction system 10, and the system is run, so that the relevant modification results can be immediately verified.

[0055] The correction system 10 of the OPC program in the embodiment of the present application can cover graphics with a width range of 20um*20um to 50um*50um, and can verify whether the OPC results of multiple graphic variables meet the expectations at a time.

[0056] As can be seen from the above, the OPC program can be breakpoint debugged by using the correction system 10, and the intermediate variables can be output to the graphic display device 12, so that the to-be-corrected OPC program can be quickly located and corrected, the correction running time is saved, the OPC correction efficiency is greatly improved, and high-quality, fast and visual diagnosis and correction of the OPC program are realized.

[0057] In order for those skilled in the art to better understand and implement the present application, the user terminal and the computer readable storage medium corresponding to the above method are described in detail below.

[0058] With reference to Figure 5 The embodiment of the present application also provides a correction method of an OPC program, which can include the following steps:

[0059] Step 51: obtaining a to-be-corrected OPC program.

[0060] In a specific implementation, the correction system of the OPC program can obtain the to-be-corrected OPC program by importing the to-be-corrected OPC program.

[0061] Step 52: receiving breakpoint position information, and setting a breakpoint at a position corresponding to the breakpoint position information in the to-be-corrected OPC program.

[0062] In a specific implementation, the way of receiving the breakpoint position information is not limited, for example, the breakpoint position information can be received by setting a virtual button on the application interface of the correction system of the OPC program.

[0063] In step 53, the running control instruction is received, the OPC program before the breakpoint is run by a preset number of lines, and the related information of the graphic variable is obtained from the run OPC program, so that the graphic display is performed based on the related information of the graphic variable, and the displayed image is related to the breakpoint position of the OPC program to be corrected.

[0064] In an embodiment of the present application, the OPC program before the breakpoint is run by a preset number of lines, and the type of the generated variable in each line of the run OPC program is determined. When the type of the generated variable is a graphic variable, the related information of the graphic variable is obtained.

[0065] In an embodiment of the present application, the number of breakpoints is two or more, the OPC program before each breakpoint is run by a preset number of lines, and the related information of the corresponding graphic variable is obtained from the run OPC program.

[0066] In an embodiment of the present application, the preset number of lines is from the starting position of the OPC program to be corrected to the line where the breakpoint is located.

[0067] In an embodiment of the present application, referring to Figure 5 , the method can further include step 54 of performing graphic display based on the related information of the graphic variable.

[0068] In a specific implementation, the graphics corresponding to different graphic variables can be displayed on the same display interface. In addition, the graphic variable names and line numbers corresponding to different graphics can be marked on the display interface. The graphics displayed on the display interface can be specified by a user.

[0069] Figure 6 An OPC program correction process in an embodiment of the present application is shown in FIG. 1. Referring to Figure 6 , after the OPC program to be corrected is obtained by the OPC program correction system, a plurality of breakpoint position indication information (i.e., correction 1 to correction n) can be received, so that a plurality of breakpoints are set on the OPC program to be corrected. The OPC program to be corrected before each breakpoint is run by a preset number of lines, and whether the type of the generated variable is a graphic variable is determined.

[0070] If the type of the generated variable is a graphic variable, the related information of the graphic variable is output to a graphic packager. If the type of the generated variable is not a graphic variable, the next line of the OPC program to be corrected is run and the type of the variable is determined.

[0071] After the related information of the graphic variable is packaged by the graphic packager, the graphic display device is sent. The graphic display device determines whether each graphic variable in the graphic variable data packet is a variable specified to be displayed by a user. If yes, the corresponding graphic is displayed on the display interface, otherwise the graphic is not displayed.

[0072] Different graphs can be displayed for different breakpoints, and the user can observe the graphs corresponding to each breakpoint and decide whether to adjust the to-be-corrected OPC program of the corresponding line number. If the to-be-corrected OPC program of the corresponding line number needs to be adjusted, the corresponding position of the to-be-corrected OPC program can be modified, that is, different feedback (feedback 1 to feedback n) is generated according to the displayed different graphs to modify the corresponding position of the to-be-corrected OPC program, so as to finally meet the OPC result.

[0073] The OPC program correction method in the embodiment of the present application can realize breakpoint debugging of the OPC process, and does not need to wait for the entire OPC program to be run, thereby saving time. In the OPC program correction process, the graphic variable can be visually output, and the running result of each step of the OPC program can be directly and intuitively observed in real time. The intermediate graphic variable is displayed through the man-machine interaction interface, the OPC program can be quickly positioned, and real-time modification and verification can be performed.

[0074] The embodiment of the present application further provides another computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the steps of the OPC program correction method in any one of the above embodiments, which will not be repeated.

[0075] In a specific implementation, the computer readable storage medium can include ROM, RAM, a magnetic disk or an optical disk, etc.

[0076] The embodiment of the present application further provides an electronic device, which can include a memory and a processor, and the memory stores a computer program capable of running on the processor, and the processor executes the steps of the OPC program correction method in any one of the above embodiments when running the computer program, which will not be repeated.

[0077] The various modules / units included in the various devices and products described in the above embodiments can be software modules / units or hardware modules / units, or partially software modules / units and partially hardware modules / units. For example, for the various devices and products applied to or integrated in a chip, the various modules / units included therein can all be implemented in the form of hardware such as circuitry, or at least some of the modules / units can be implemented in the form of a software program running on a processor integrated in the chip, and the remaining (if any) modules / units can be implemented in the form of hardware such as circuitry; for the various devices and products applied to or integrated in a chip module, the various modules / units included therein can all be implemented in the form of hardware such as circuitry, and different modules / units can be located in the same component (e.g., a chip, a circuit module, etc.) or different components of the chip module, or at least some of the modules / units can be implemented in the form of a software program running on a processor integrated in the chip module, and the remaining (if any) modules / units can be implemented in the form of hardware such as circuitry; for the various devices and products applied to or integrated in a terminal, the various modules / units included therein can all be implemented in the form of hardware such as circuitry, and different modules / units can be located in the same component (e.g., a chip, a circuit module, etc.) or different components of the terminal, or at least some of the modules / units can be implemented in the form of a software program running on a processor integrated in the terminal, and the remaining (if any) modules / units can be implemented in the form of hardware such as circuitry.

[0078] Although the present application has been disclosed with reference to the above embodiments, the present application is not limited to the above embodiments. Any person skilled in the art, without departing from the spirit and scope of the present application, can make various modifications and changes, and the scope of protection of the present application should be limited by the scope defined in the claims.

Claims

1. A method of modifying an OPC procedure, characterized by, The method comprises the following steps: acquiring an OPC program to be corrected; the OPC program to be corrected is a program used when correcting a design photomask pattern; receiving breakpoint position information and setting a breakpoint in the OPC program to be corrected at a position corresponding to the breakpoint position information; receiving a running control instruction, running the OPC program to be corrected for a preset number of lines before the breakpoint, and acquiring relevant information of a pattern variable from the run OPC program; performing pattern display based on the relevant information of the pattern variable, and the displayed image is related to the breakpoint position of the OPC program to be corrected; the pattern display based on the relevant information of the pattern variable comprises displaying different pattern variables corresponding to different patterns on the same display interface, and marking the pattern variable names and line numbers of the different patterns on the display interface; comparing the changes of the displayed image, and judging whether the OPC program to be corrected before the breakpoint is incorrect according to the changes of the image, and locating the line number of the incorrect OPC program to be corrected, so as to correct the OPC program to be corrected before the breakpoint when incorrect; wherein the running of the OPC program to be corrected for a preset number of lines before the breakpoint and the acquisition of the relevant information of the pattern variable from the run OPC program comprise running the OPC program to be corrected for a preset number of lines before the breakpoint line by line, and judging the type of a generated variable in each run OPC program; when the type of the generated variable is a pattern variable, the relevant information of the pattern variable is acquired.

2. The method of claim 1, wherein the OPC procedure is modified by, The relevant information of the pattern variable comprises characteristic information of the pattern variable itself and line number information where the pattern variable is located.

3. The method of claim 1, wherein the OPC procedure is modified by, The number of breakpoints is two or more, the OPC program to be corrected before each breakpoint is run for a preset number of lines, and the relevant information of the corresponding pattern variable is acquired from the run OPC program.

4. The method of claim 1, wherein the OPC procedure is modified by, The preset number of lines is from the starting position of the OPC program to be corrected to the line where the breakpoint is located.

5. A correction system of an OPC program, characterized by, The method comprises the following steps: a correction device, which comprises: an acquisition unit adapted to acquire an OPC program to be corrected; the OPC program to be corrected is a program used when correcting a design photomask pattern; a breakpoint setting unit adapted to receive breakpoint position information and set a breakpoint in the OPC program to be corrected at a position corresponding to the breakpoint position information; a running control unit adapted to receive a running control instruction, run the OPC program to be corrected for a preset number of lines before the breakpoint, and acquire relevant information of a pattern variable from the run OPC program; and a pattern display device adapted to perform pattern display based on the relevant information of the pattern variable; the pattern display device is adapted to display different pattern variables corresponding to different patterns on the same display interface, and mark the pattern variable names and line numbers of the different patterns on the display interface; The operation control unit is further adapted to compare the changes of the displayed images, determine whether the to-be-modified OPC program before the breakpoint is erroneous according to the changes of the images, and locate the line number of the erroneous to-be-modified OPC program to modify the to-be-modified OPC program before the breakpoint when the to-be-modified OPC program is erroneous The operation control unit is adapted to run the to-be-modified OPC program before the breakpoint by a preset number of lines and determine the type of the generated variable in each line of the run OPC program; when the type of the generated variable is a graphic variable, the operation control unit is adapted to acquire the related information of the graphic variable.

6. The system for revising an OPC program according to claim 5, wherein The related information of the graphic variable includes characteristic information of the graphic variable itself and line number information where the graphic variable is located.

7. The system for revising an OPC program according to claim 5, wherein The number of the breakpoints is more than two, and the operation control sub-unit runs the to-be-modified OPC program before each breakpoint by a preset number of lines and acquires the related information of the corresponding graphic variable from the run OPC program.

8. The system for revising an OPC program according to claim 5, wherein The preset number of lines is from a starting position of the to-be-modified OPC program to a line where the breakpoint is located.

9. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by a processor to implement the steps of the method in any one of claims 1 to 4.

10. An electronic device comprising a memory and a processor, said memory having stored thereon a computer program capable of running on said processor, characterized in that, The processor executes the computer program to implement the steps of the method in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Correction method and correction device for optical proximity effect and mask

    CN110716386A

  • Process and system for comfortable debugging of computer programs

    EP1378835A2

  • OPC inspection system

    JP2007248596A