Data processing method, charged particle beam irradiation apparatus, and program
By rounding control points of parametric curves onto a grid and referencing a table for parameter positions, the method addresses the processing load issue in electron beam lithography, enabling fast and accurate intersection calculations for complex figures.
Patent Information
- Application Number
- JP2024099822
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-20
- Publication Date
- 2026-01-08
AI Technical Summary
Existing electron beam lithography systems face significant processing loads due to the complexity of calculating intersection points between curves and polygons, particularly when approximating curves with high precision, leading to increased data processing time.
A data processing method that rounds control points of parametric curves onto a grid with a predetermined spacing, references a table defining control point positions and parameters, and calculates intersection information using these values to facilitate quick and accurate image processing.
Enables rapid and precise calculation of pixel intersections and coverage for complex figures, reducing processing time and improving efficiency in electron beam lithography.
Smart Images

Figure 2026002094000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a data processing method, a charged particle beam irradiation device, and a program. [Background technology]
[0002] As LSIs become more highly integrated, the circuit line widths required for semiconductor devices are becoming finer year by year. To form the desired circuit patterns on semiconductor devices, a method is adopted in which a high-precision master pattern formed on quartz is reduced and transferred onto a wafer using a reduction projection exposure system. To produce high-precision master patterns, a technique known as electron beam lithography is used, in which a resist is exposed to light using an electron beam writing system to form the pattern.
[0003] One known electron beam lithography device is a multi-beam lithography device that uses multiple beams to irradiate multiple beams at once, improving throughput. In this multi-beam lithography device, for example, an electron beam emitted from an electron gun passes through an aperture member having multiple openings to form multiple beams, and blanking of each beam is controlled by a blanking plate. The unblocked beam is reduced in size by an optical system and irradiated onto a desired position on a mask to be lithographed.
[0004] When electron beam lithography is performed using a multi-beam lithography system, the coverage of the input figure is calculated for each pixel divided into sections of a predetermined size, and the irradiation amount for each beam is controlled. If the input figure includes a curve, the intersection points between the curve and the section boundary are calculated, and the coverage is determined using the intersection points. However, there was a problem in that the processing load for the intersection point calculation increased as the degree of the curve increased.
[0005] Approximating a curve to a polygon makes it relatively easy to calculate intersections. However, when the approximation is performed with high precision, the number of vertices in the approximated polygon increases, which can result in a problem of requiring a significant amount of time for data processing. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Special Publication No. 2016-520920 [Patent Document 2] Japanese Patent Publication No. 2022-053208 [Patent Document 3] Japanese Patent Application Publication No. 08-016643 Summary of the Invention [Problem to be solved by the invention]
[0007] An object of the present invention is to provide a data processing method, a charged particle beam irradiation apparatus, and a program for quickly and accurately calculating information required for image processing such as pixel intersections of figures including curves. [Means for solving the problem]
[0008] A data processing method according to one aspect of the present invention involves rounding the positions of multiple control points of a first parametric curve that represents the shape of a circuit pattern onto a grid with a predetermined spacing, searching a table that defines the positions of the control points and parameters calculated from the curve for each of multiple second parametric curves, and referencing the parameters of a second parametric curve that has control points that have the same positional relationship as the multiple control points rounded onto the grid, and calculating information to be used in image processing of the circuit pattern.
[0009] A program according to one aspect of the present invention causes a computer to execute the steps of: rounding the positions of a plurality of control points of a first parametric curve that represents the shape of a circuit pattern onto a grid with a predetermined spacing; and searching a table that defines the positions of the control points and parameters determined from the curve for each of a plurality of second parametric curves, referring to the positions and corresponding parameters of the plurality of points of a second parametric curve that has control points that have the same positional relationship as the plurality of control points rounded onto the grid, and calculating information to be used for image processing of the circuit pattern.
[0010] A charged particle beam irradiation device according to one embodiment of the present invention includes an irradiation unit that irradiates an object with a charged particle beam; a memory unit that stores a table in which, for each of a plurality of second parametric curves, the positions of the control points of the first parametric curve that represents the shape of a circuit pattern are defined on a grid with a predetermined interval, searches the table, refers to the positions and corresponding parameters of the plurality of points of a second parametric curve that has control points that have the same positional relationship as the plurality of control points rounded on the grid, calculates information to be used for image processing of the circuit pattern, and controls the irradiation unit using the calculated information. [Effects of the Invention]
[0011] According to the present invention, it is possible to quickly and accurately calculate information required for image processing, such as pixel intersections of a figure including curves. [Brief explanation of the drawings]
[0012] [Figure 1] 1 is a schematic diagram of a multi-charged particle beam writing apparatus according to an embodiment of the present invention; [Figure 2] FIG. 2 is a plan view of a shaped aperture array substrate. [Figure 3] 3A to 3D are diagrams showing monotonically increasing or monotonically decreasing curves. [Figure 4] FIG. 10 is a diagram illustrating an example of a cubic Bezier curve. [Figure 5] FIG. 10 is a diagram illustrating an example of a cubic Bezier curve. [Figure 6] FIG. 10 is a diagram illustrating an example of a table that defines the relationship between parameters and positions on a curve. [Figure 7] 10 is a flowchart illustrating a drawing method. [Figure 8] FIG. 10 is a diagram illustrating a drawing operation. [Figure 9] 1 is a flowchart illustrating a pixel map generation method. [Figure 10]FIG. 10A is a diagram showing an example of a B-spline curve, FIG. 10B is a diagram showing an example of a Bezier curve, and FIG. 10C is a diagram showing a conversion formula. [Figure 11] FIG. 11A is a diagram showing an example of a Bezier curve, FIG. 11B is a diagram showing an example of division of a Bezier curve, and FIG. 11C is a diagram showing an example of the Bezier curve after division. [Figure 12] FIG. 10 is a diagram illustrating an example of rounding of control points. [Figure 13] FIG. 10 is a diagram illustrating an example of pixel intersections. [Figure 14] FIG. 10 is a diagram illustrating an example of calculation of pixel coverage. [Figure 15] FIG. 10 is a diagram illustrating an example of the center of gravity of a Bezier curve. DETAILED DESCRIPTION OF THE INVENTION
[0013] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the embodiment, a configuration using an electron beam as an example of a charged particle beam will be described. However, the charged particle beam is not limited to an electron beam, and an ion beam or the like may also be used.
[0014] Fig. 1 is a schematic diagram of a lithography apparatus 100 according to an embodiment. As shown in Fig. 1, the lithography apparatus 100 includes a lithography unit 150 and a control unit 160. The lithography apparatus 100 is an example of a multi-charged particle beam lithography apparatus. The lithography unit 150 includes an electron optical column 102 and a lithography chamber 103. Inside the electron optical column 102, an electron gun 201, an illumination lens 202, a shaping aperture array substrate 203, a blanking aperture array substrate 204, a reduction lens 205, a limiting aperture member 206, an objective lens 207, and a deflector 208 are arranged.
[0015] An XY stage 105 is arranged in the patterning chamber 103. A substrate 101 to be patterned is arranged on the XY stage 105. The substrate 101 is, for example, a mask blank or a semiconductor substrate (silicon wafer). In addition, a position measurement mirror 210 is arranged on the XY stage 105.
[0016] The control unit 160 has a control computer 110, a deflection control circuit 130, a stage position detector 139, and memory units 140, 142, and 144. Drawing data is input from the outside and stored in the memory unit 140. The drawing data defines information on a plurality of graphic patterns that describe the semiconductor circuit pattern to be formed on the substrate 101. The graphic patterns include curves, and the shapes of the patterns are defined by, for example, cubic B-spline curves.
[0017] A table that defines the positions of control points and positions on the Bezier curve corresponding to a plurality of parameters for each of a plurality of shapes of Bezier curves is stored in the storage unit 142. The method for creating the table will be described later.
[0018] The control computer 110 has an area density calculation unit 111, an irradiation time calculation unit 112, a data processing unit 113, and a writing control unit 114. Each unit of the control computer 110 may be configured with hardware such as an electric circuit, or may be configured with software such as a program that executes these functions. Alternatively, the control computer 110 may be configured with a combination of hardware and software. When configured with software, a program that realizes at least some of the functions of the control computer 110 is stored in a storage unit 144 (recording medium) such as a flexible disk or CD-ROM. The control computer 110 is a computer having a CPU, and the CPU reads and executes the program. The storage unit 144 is not limited to a removable storage device such as a magnetic disk or optical disk, but may also be a fixed storage medium such as a hard disk drive or memory.
[0019] The stage position detector 139 irradiates the mirror 210 with a laser beam and receives the reflected light to detect the position of the XY stage 105 based on the principle of laser interference.
[0020] 2 is a conceptual diagram showing the configuration of shaping aperture array substrate 203. As shown in FIG. 2, shaping aperture array substrate 203 has a plurality of apertures 203a formed in the vertical direction (y direction) and horizontal direction (x direction) at a predetermined arrangement pitch. It is preferable that each aperture 203a is formed in the same rectangular or circular shape with the same dimensions. Multibeams 20 are formed by portions of electron beam 200 passing through each of these plurality of apertures 203a.
[0021] The blanking aperture array substrate 204 has passage holes formed in alignment with the positions of the apertures 203a of the shaping aperture array substrate 203. A blanker, consisting of a pair of two electrodes, is disposed in each passage hole. Blanking control is performed by, for example, grounding one of the two electrodes of the blanker to maintain it at ground potential and switching the other electrode to ground potential or a potential other than ground potential, thereby switching the deflection of the beam passing through the passage hole on and off. When the blanker does not deflect the beam, the beam is turned on. When the blanker deflects the beam, the beam is turned off. In this way, the multiple blankers perform blanking deflection of the corresponding beams among the multiple beams that have passed through the multiple apertures 203a of the shaping aperture array substrate 203.
[0022] An electron beam 200 emitted from an electron gun 201 (emitting section) illuminates the entire shaping aperture array plate 203 via an illumination lens 202. The electron beam 200 illuminates an area that includes all of the apertures 203a. The electron beam 200 passes through the multiple apertures 203a in the shaping aperture array plate 203, thereby forming a multibeam 20 that includes multiple individual beams. The overall shape of the beam array of the multibeam 20 is, for example, rectangular.
[0023] The individual beams that make up the multi-beam 20 pass through corresponding blankers on the blanking aperture array substrate 204. The blankers blank out the individual beams that are to be turned off. The blankers do not blank out the individual beams that are to be turned on. The multi-beam 20 that has passed through the blanking aperture array substrate 204 is reduced by a reduction lens 205 and travels toward a central opening formed in a limiting aperture member 206.
[0024] Here, individual beams controlled to the beam-off state are deflected by the blanker and follow a trajectory that passes outside the opening of the limiting aperture member 206, and are therefore blocked by the limiting aperture member 206. On the other hand, individual beams controlled to the beam-on state are not deflected by the blanker and pass through the opening of the limiting aperture member 206. In this way, blanking control is performed by turning the blanker deflection on and off, and the individual beams are controlled to be turned on and off. The blanking aperture array substrate 204 functions as an irradiation time control unit that controls the irradiation time of each beam of the multi-beam.
[0025] The limiting aperture member 206 passes the individual beams deflected by the blankers of the blanking aperture array substrate 204 to be in a beam-on state, and blocks the individual beams deflected by the blankers of the blanking aperture array plate 204 to be in a beam-off state. Then, the beams formed from when the beams are turned on until when the beams are turned off and which have passed through the limiting aperture member 206 form a multi-beam for one shot.
[0026] The multi-beams that have passed through the limiting aperture member 206 are focused by the objective lens 207 to form a pattern image with the desired reduction ratio on the substrate 101. The beams (the entire multi-beams) that have passed through the limiting aperture member 206 are deflected together in the same direction by the deflector 208, and are irradiated onto the desired position on the substrate 101.
[0027] When the XY stage 105 is moving continuously, the deflector 208 controls the irradiation position of the beam so that it follows the movement of the XY stage 105, at least while the beam is being irradiated onto the substrate 101. Ideally, the multiple beams irradiated at one time are arranged at a pitch obtained by multiplying the arrangement pitch of the multiple openings 203a in the shaping aperture array substrate 203 by the desired reduction ratio described above.
[0028] Next, a method for creating the table stored in the storage unit 142 will be described. The graphic pattern to be drawn contains a plurality of frequently used curves, and these curves are expressed as cubic Bezier curves (second parametric curves), and a table is created that defines the positions of the control points of the cubic Bezier curves and the positions on the Bezier curves corresponding to a plurality of parameters. The cubic Bezier curves defined in the table are monotonically increasing curves as shown in FIGS. 3A and 3B, or monotonically decreasing curves as shown in FIGS. 3C and 3D. Note that, although an example using a Bezier curve will be described in this embodiment, other parametric curves such as a Nurbs curve may also be used.
[0029] A cubic Bezier curve is expressed using four control points, as shown in Figure 4. Of the four control points P0 to P3, two control points (end points), the start point P0 and the end point P3, are located on the curve. The start point P0 is set as the reference point (origin), and the positions of the other three control points P1 to P3 are defined in a table. Here, the control points P0 to P3 are located on a grid with a predetermined spacing. The grid spacing is determined according to the required accuracy. For example, the grid spacing is approximately 1 / 100 to 1 / 200 of the size of the Bezier curve in the X or Y direction.
[0030] Furthermore, a cubic Bezier curve is a parametric curve, and the curve (x(t), y(t)) is expressed by the parameter t (0≦t≦1). As shown in FIG. 5, t=0 corresponds to the start point P0, and t=1 corresponds to the end point P3. The positions (x coordinate, y coordinate) on the curve for multiple t are defined in a table. For example, the parameter t ranging from 0 to 1 is divided into 100 equal parts, and the positions on the curve for each value of t are defined in a table.
[0031] FIG. 6 shows an example of values defined in the table. The starting point P0 is set as the reference point, and the coordinates of the other three control points P1 to P3 are defined in the table. In addition, the position (X1, Y1) of the point on the curve when the parameter t=0.01, the position (X2, Y2) of the point on the curve when t=0.02, ..., the position (X 99 ,Y 99 ) is defined in the table.
[0032] A table defining information such as that shown in Fig. 6 for Bezier curves of a plurality of shapes is created in advance and stored in storage unit 142. Bezier curves whose information is defined in the table are often used in graphic patterns. Alternatively, graphic patterns described in the drawing data in storage unit 140 may be analyzed, and information such as that shown in Fig. 6 may be defined in the table for Bezier curves of frequently used shapes.
[0033] Next, the pattern writing method according to this embodiment will be described with reference to the flowchart shown in FIG. 7. In the pattern area density calculation step (step S1), the area density calculation unit 111 virtually divides the writing area of the substrate 101 into a plurality of rectangular mesh areas (divided areas). The size of the mesh area is, for example, approximately the same as that of one beam, and each mesh area becomes a pixel (unit irradiation area). The area density calculation unit 111 reads writing data from the storage unit 140, and uses the pattern defined in the writing data to calculate the pattern area density (coverage) ρ of each pixel, and generates a pixel map that defines the coverage of each pixel. The method of generating the pixel map will be described later.
[0034] In the irradiation time calculation step (step S2), the irradiation time calculation unit 112 multiplies the pattern area density ρ by a reference irradiation dose D0 to calculate the irradiation dose ρD0 of the beam irradiated to each pixel. The irradiation time calculation unit 112 may further multiply by a correction coefficient for correcting for proximity effects, etc. The irradiation time calculation unit 112 divides the irradiation dose by the current amount of each of the multiple beams constituting the multi-beam to calculate the irradiation time of each of the multiple beams.
[0035] In the irradiation time control data generation step (step S3), the data processing unit 113 rearranges the irradiation time data in shot order according to the writing sequence, and generates irradiation time control data.
[0036] In the data transfer step (step S4), the writing control unit 114 outputs the irradiation time control data to the deflection control circuit 130. The deflection control circuit 130 outputs the irradiation time control data to each blanker of the blanking aperture array plate 204.
[0037] In the drawing process (step S5), the drawing control unit 114 controls the drawing unit 150 to execute drawing processing on the substrate 101. Each blanker of the blanking aperture array plate 204 switches the beam on and off based on the irradiation time control data, thereby providing a desired exposure dose for each pixel.
[0038] Fig. 8 is a conceptual diagram for explaining the drawing operation. As shown in Fig. 8, a drawing region 80 on a substrate 101 is virtually divided into a plurality of rectangular stripe regions 82 with a predetermined width in the y direction (first direction). First, the XY stage 105 is moved and adjusted so that an irradiation region (beam array) 84 that can be irradiated with a single multi-beam irradiation is positioned at the left end of the first stripe region 82, and drawing begins.
[0039] When writing the first stripe region 82, the XY stage 105 is moved in the -x direction, thereby relatively progressing writing in the +x direction. The XY stage 105 is moved continuously at a predetermined speed. After writing the first stripe region 82 is completed, the stage position is moved in the -y direction, and the beam array 84 is adjusted to be positioned at the right end of the second stripe region 82. Next, the XY stage 105 is moved in the +x direction, thereby writing in the -x direction.
[0040] In the third stripe region 82, writing is performed in the +x direction, and in the fourth stripe region 82, writing is performed in the -x direction. Writing time can be shortened by alternately changing the direction of writing. Alternatively, each stripe region 82 may always be written in the same direction, that is, in either the +x direction or the -x direction.
[0041] Next, a pixel map generation method performed by the area density calculation unit 111 will be described with reference to the flowchart shown in FIG.
[0042] The area density calculation unit 111 reads out the drawing data from the storage unit 140 and converts the curves of the figure pattern defined by the cubic B-spline curves into cubic Bezier curves (step S101). For example, the cubic B-spline curve shown in Fig. 10A is converted into the cubic Bezier curve shown in Fig. 10B. Fig. 10C shows an example of the conversion formula.
[0043] A cubic Bezier curve is expressed using four control points, as shown in Fig. 11A. In other words, in the example shown in Fig. 10B, a series of four control points surrounds the periphery of the shape. Of the four control points, two control points (end points), the start point and the end point, are located on the curve.
[0044] The area density calculation unit 111 divides the curve represented by the four control points into finer Bezier curves at the positions of the extreme values and inflection points (step S102). The inflection points are defined by the curvature=(dPx / dt)(dPy 2 / dt 2 )-(dPy / dt)(dPx 2 / dt 2 )=0. The extreme values are the points where dPx / dt=0 and dPy / dt=0.
[0045] For example, the Bezier curve shown in FIG. 11A includes one maximum value, one minimum value, and one inflection point, and is therefore divided into four Bezier curves B1 to B4 as shown in FIG. 11B.
[0046] As shown in FIG. 11C, the Bezier curve (first parametric curve) after division becomes a curve element that monotonically increases or monotonically decreases in the X and Y directions.
[0047] The area density calculation unit 111 calculates the intersections of each divided Bezier curve with the boundaries of the mesh regions (pixels) (step S103).
[0048] In the intersection calculation, the area density calculation unit 111 first selects one of the multiple Bezier curves after division that has not yet been selected, and then rounds the four control points of the selected Bezier curve onto a grid with a predetermined spacing. The grid spacing is the same as the grid spacing when the table was created.
[0049] FIG. 12 shows an example of rounding the control point P1 onto the grid, i.e., moving it onto the nearest grid.
[0050] The area density calculation unit 111 searches the table of the storage unit 142 to determine whether a curve having control points with the same positional relationship as the four control points after rounding onto the grid is defined. When determining whether a curve has control points with the same positional relationship, for example, if the values defined in the table are such that the start point P0 is the reference point and the coordinates of the other three control points P1 to P3 are defined in the table as described in FIG. 6, the area density calculation unit 111 determines whether the start point P0 of the Bezier curve rounded onto the grid at a predetermined interval is the reference point and the coordinates of the other three control points P1 to P3 are defined in the table. If a curve with the same positional relationship of the four control points is defined in the table, the area density calculation unit 111 references the relationship between the parameter t in the table and the position on the curve, and calculates the intersection point with the boundary of the mesh region.
[0051] For example, when calculating the position of the intersection point K1 shown in FIG. 13, the X coordinate X Left are known, and the X positions X1 to X corresponding to the parameters t=0.01 to 0.99 defined in the table shown in Figure 6 are 99 See X i ≦X Left ≦X i+1Then, find the i that is close to the boundary. i , X i+1 Using the parameters corresponding to Left Calculate the parameter t corresponding to X by interpolation. Left The Y coordinate on the curve is calculated from the parameter t corresponding to the intersection point K1, and the position of the intersection point K1 is found.
[0052] For example, X 25 ≦X Left ≦X 26 and by interpolation, X Left The parameter t corresponding to is calculated as 0.254. The Y coordinate corresponding to parameter t = 0.254 is Y 25 and Y 26 The position of the intersection point K1 is calculated from the above.
[0053] The position of the intersection point K2 shown in Figure 13 can be calculated in a similar manner. Top are known, and the Y positions Y1 to Y corresponding to the parameters t=0.01 to 0.99 defined in the table shown in Figure 6 are 99 Refer to Y j ≦Y Top ≦Y j+1 Then, find j such that Y j , Y j+1 Using the parameters corresponding to Top Calculate the parameter t corresponding to Y by interpolation. Top The X coordinate on the curve is calculated from the parameter t corresponding to the intersection point K2, and the position of the intersection point K2 is found.
[0054] This method rounds the control points of the Bezier curve onto a grid and finds the parameter t of the intersection point K1 by interpolation, so the calculated position of the intersection point K1 deviates from the true value, but the difference from the true value is small. The narrower the grid spacing, the smaller this difference becomes. By referencing the values in the table, the position of the intersection point K1 can be found quickly and accurately while reducing the amount of calculation required to calculate the position of the intersection point K1.
[0055] If a curve with the same positional relationship between the four control points is not defined in the table, a known curve processing is performed to calculate the intersection with the boundary of the mesh area. In this case, the amount of calculation required for the intersection calculation is greater than when using a table reference method.
[0056] The area density calculation unit 111 sequentially selects all (post-division) Bezier curves surrounding the periphery of the figure, performs the above process, and calculates the intersections with the boundary of the mesh region.
[0057] The area density calculation unit 111 uses the calculated intersection points to calculate the coverage (area density) of each pixel using a known method and generates a pixel map (step S104). For example, as shown in FIG. 14, the pixel is divided into a triangular portion (A1, A3) and a curved fan portion (A2), and the area of each is calculated. The area of the curved fan portion is calculated by a line integral with the pixel intersection points as its range. The coverage of the pixel is calculated by adding the areas of the triangular portion and the curved fan portion. The pixel map is used when the irradiation time calculation unit 112 calculates the beam irradiation amount to be irradiated to each pixel.
[0058] As described above, according to this embodiment, the control points of the Bezier curve are rounded onto a grid, and the parameter t of the intersection between the pixel boundary (the boundary of the pixel; the boundary of the mesh area) and the Bezier curve is calculated by interpolation, thereby enabling the intersection to be calculated quickly and with high accuracy according to the grid spacing.
[0059] In the above embodiment, an example has been described in which the parameter t in the range of 0 to 1 is equally divided, and the positions (x coordinate, y coordinate) of points on the Bezier curve corresponding to each parameter value are defined in a table, but the size of the Bezier curve in the X direction may be equally divided, and the value of the parameter t and the y coordinate corresponding to each x coordinate point may be defined in a table. Also, in an area where the change in the Y direction of the Bezier curve is large, the curve may be divided finely in the X direction, and in an area where the change in the Y direction is small, the curve may be divided roughly in the X direction, and the value of the parameter t and the y coordinate corresponding to the divided x coordinate points may be defined in a table.
[0060] Multiple tables with different division numbers for parameter t in the range of 0 to 1 may be created and stored in storage unit 142. A table with a large number of divisions is suitable for high-precision drawing, and a table with a small number of divisions is suitable for high-speed drawing with reduced precision. Area density calculation unit 111 switches between tables to be used depending on the required drawing precision.
[0061] A table may be created by normalizing a Bézier curve. For example, the X position of the start point of the Bézier curve is normalized to 0, and the X position of the end point is normalized to 1. The control points of the normalized Bézier curve are positioned on a grid. The normalized Bézier curve is divided in the X direction at a predetermined index size, and a table is created that defines the value of the parameter t corresponding to each division point. When calculating the intersection point, the Bézier curve to be calculated is normalized, the normalized control points are rounded onto a grid, the table is searched, and a curve with the same positional relationship of the four control points rounded onto the grid is extracted. The parameters corresponding to the division points of the extracted curve are referenced, and the parameter t of the intersection point is calculated by linear interpolation.
[0062] In the above embodiment, an example was described in which a table that associates the parameter t of a Bezier curve with a position on the curve is prepared, and an intersection calculation is performed to find the pixel coverage by referring to the table. However, a table may also be created that defines the line segment connecting the start point and end point of the Bezier curve and the center of gravity of the area enclosed by the Bezier curve.
[0063] For example, as shown in Fig. 15, a table is created in which the start point P0 of the Bezier curve is set as the reference point (origin) and the positions of the other three control points P1 to P3 correspond to the center of gravity G of the area surrounded by the line segment connecting the start point P0 and the end point P3 and the Bezier curve. Here, the control points P0 to P3 are assumed to be located on a grid with a predetermined interval. The center of gravity G can be found from the positions of the four control points P0 to P3 using known center of gravity calculations.
[0064] The center of gravity is calculated when correcting the dose in the pattern drawing process. The control points of the Bezier curve to be calculated are rounded onto a grid, and a table is searched to extract the center of gravity associated with the curve that has control points that are in the same positional relationship as the four control points rounded onto the grid. Because the control points of the Bezier curve to be calculated are rounded onto a grid, the calculated center of gravity position deviates from the true value, but the difference from the true value is small. By using the values in the table, the center of gravity position can be determined quickly and accurately while keeping the amount of calculations to a minimum.
[0065] A Bézier curve may be normalized to create a center of gravity table. For example, a Bézier curve is translated, rotated, and scaled, and normalized so that its start point is (0,0) and its end point is (1,0). The control points of the normalized Bézier curve are positioned on a grid. A table is created that associates the centers of gravity with the positions of the normalized control points. When calculating the center of gravity, the Bézier curve to be calculated is normalized, the normalized control points are rounded onto a grid, and the table is searched to extract the center of gravity associated with the curve whose control points are in the same positional relationship as the four control points rounded onto the grid. The extracted center of gravity position is then subjected to the inverse transformation (translation, rotation, and scaling) performed when the Bézier curve was normalized, to find the center of gravity.
[0066] A table may be created that associates the start point P0 of the Bezier curve as the reference point (origin) with the positions of the other three control points P1 to P3 and the area of the region enclosed by the line segment connecting the start point P0 and end point P3 and the Bezier curve. Area calculations are performed during proximity effect correction and other processes in pattern rendering. The control points of the Bezier curve to be calculated are rounded onto a grid, and the table is searched to extract the area associated with a curve having control points that are in the same positional relationship as the four control points rounded onto the grid. Because the control points of the Bezier curve to be calculated are rounded onto a grid, the calculated area deviates from the true value, but the difference from the true value is small. Using the values in the table allows for fast and accurate calculations while minimizing the amount of calculations.
[0067] A table may be created that associates the starting point P0 of the Bezier curve with the positions of the other three control points P1 to P3 and the curvature of the Bezier curve. Curvature calculations are performed during bias correction and other processes in the pattern drawing process. The control points of the Bezier curve to be calculated are rounded onto a grid, and the table is searched to extract the curvature associated with a curve that has control points that are in the same positional relationship as the four control points rounded onto the grid. Because the control points of the Bezier curve to be calculated are rounded onto a grid, the calculated curvature deviates from the true value, but the difference from the true value is small. By using the values in the table, the curvature can be calculated quickly and accurately while reducing the amount of calculation.
[0068] A table is created according to the image processing of the circuit pattern to be performed, such as calculation of the intersection point between the pixel boundary and the Bezier curve, calculation of the position of the center of gravity of the area surrounded by the Bezier curve and the line segment connecting the start point and end point of the Bezier curve, calculation of the area of the area surrounded by the Bezier curve and the line segment connecting the start point and end point of the Bezier curve, and calculation of the curvature of the Bezier curve, and the table is stored in the memory unit 142.
[0069] In the above embodiment, an example has been described in which a curve of a graphic pattern defined by a cubic B-spline curve is converted into a cubic Bezier curve, but the degree of a parametric curve is not limited to 3. Similarly, the degree of a Bezier curve defined in a table is not limited to 3.
[0070] In the above embodiment, an example has been described in which the input graphic is expressed by a B-spline, but graphics expressed by other parametric curves may also be used as input data as long as they can be converted into Bezier curves.
[0071] The table stored in the storage unit 142 may reduce the number of data patterns defined in the table by reusing the defined data through inversion or rotation. The table may be stored in another computer connected via a network.
[0072] In the above embodiment, a drawing device that draws a pattern on a substrate has been described, but the present invention can also be applied to other irradiation devices that irradiate a target with a beam, such as an inspection device. For example, one inspection method for a pattern inspection device that inspects mask defects is "die-to-database inspection," in which drawing data (semiconductor circuit data) is input into the inspection device, a reference image is generated based on the data, and the reference image is compared with an optical image that is measurement data obtained by capturing the pattern. The method of the above embodiment can be used when performing image processing to generate a reference image from drawing data.
[0073] Furthermore, in the above embodiment, a multi-beam irradiation device that uses multiple beams to irradiate many beams at once has been described, but the same technique can also be applied to a single-beam irradiation device that irradiates a substrate to be irradiated with one beam.
[0074] A program that realizes at least a part of the functions of the control computer 110 may be distributed via a communication line (including wireless communication) such as the Internet. Furthermore, the program may be encrypted, modulated, or compressed and distributed via a wired line or wireless line such as the Internet, or stored on a recording medium.
[0075] The present invention is not limited to the above-described embodiments, and the components can be modified and embodied in practice without departing from the spirit of the invention. Furthermore, various inventions can be created by appropriately combining multiple components disclosed in the above-described embodiments. For example, some components may be omitted from all the components shown in the embodiments. Furthermore, components from different embodiments may be appropriately combined. [Explanation of symbols]
[0076] 100 Drawing device 110 Control computer 111 Area density calculation section 112 Irradiation time calculation unit 113 Data Processing Unit 114 Drawing control unit
Claims
1. The positions of the plurality of control points of the first parametric curve representing the shape of the circuit pattern are rounded onto a grid with a predetermined interval; A data processing method that searches a table defining the positions of control points and parameters determined from the curve for each of a plurality of second parametric curves, references the parameters of a second parametric curve having control points that have the same positional relationship as the plurality of control points rounded onto the grid, and calculates information to be used in image processing of the circuit pattern.
2. the parameters determined from the curve are positions of a plurality of points on the second parametric curve and parameters corresponding to the plurality of points; 2. The data processing method according to claim 1, wherein the information used in the image processing of the circuit pattern is an intersection point between the boundary lines of rectangular partitioned regions obtained by dividing an object to be irradiated with a charged particle beam into predetermined sizes and the first parametric curve.
3. 3. The data processing method according to claim 2, wherein the parameters of the intersection point are calculated by interpolation using parameters corresponding to two points on the reference second parametric curve that are close to the boundary line of the partitioned area.
4. The data processing method according to claim 3 , further comprising calculating a coverage of the circuit pattern in the partitioned area using the intersections.
5. the parameter obtained from the curve is the position of the center of gravity of the area surrounded by the line segment connecting the start point and the end point and the second parametric curve; 2. The data processing method according to claim 1, wherein the information used in the image processing of the circuit pattern is the position of the center of gravity of the area surrounded by the line segment connecting the start point and end point of the first parametric curve and the first parametric curve.
6. the parameter obtained from the curve is the area of a region surrounded by a line segment connecting the start point and the end point and the second parametric curve; 2. The data processing method according to claim 1, wherein the information used in the image processing of the circuit pattern is the area of a region surrounded by the line segment connecting the start point and end point of the first parametric curve and the first parametric curve.
7. the parameter determined from the curve is the curvature of a second parametric curve; 2. The data processing method according to claim 1, wherein the information used in the image processing of the circuit pattern is the curvature of the first parametric curve.
8. 2. The data processing method according to claim 1, wherein the first parametric curve is generated by dividing a parametric curve that expresses the shape of the circuit pattern at positions of extrema and inflection points.
9. 2. The data processing method of claim 1, wherein the first parametric curve and the second parametric curve are Bezier curves.
10. 2. The data processing method according to claim 1, wherein the circuit pattern is a semiconductor circuit pattern.
11. A step of rounding the positions of a plurality of control points of a first parametric curve that represents the shape of a circuit pattern onto a grid with a predetermined interval; a step of searching a table defining the positions of control points and parameters calculated from the curve for each of the plurality of second parametric curves, and referring to the positions of the plurality of points and corresponding parameters of the second parametric curve having control points that are in the same positional relationship as the plurality of control points rounded on the grid, and calculating information to be used in image processing of the circuit pattern; A program that causes a computer to execute the following.
12. an irradiation unit that irradiates a charged particle beam onto an object; a storage unit that stores a table that defines, for each of a plurality of second parametric curves, positions of control points and parameters that can be determined from the curve; a control unit that rounds the positions of a plurality of control points of a first parametric curve that expresses the shape of a circuit pattern onto a grid with a predetermined interval, searches the table, refers to the positions of the plurality of points and corresponding parameters of a second parametric curve that has control points that have the same positional relationship as the plurality of control points rounded onto the grid, calculates information to be used in image processing of the circuit pattern, and controls the irradiation unit using the calculated information; A charged particle beam irradiation device comprising:
13. the storage unit stores a plurality of tables each having a different number of points on the second parametric curve; The charged particle beam irradiation device according to claim 12 , wherein the control unit switches the table to be searched based on the required accuracy of the circuit pattern.
Citation Information
Patent Citations
Area calculating method
JP1996016643A
Tessellation of 2D Curves Using a Graphics Pipeline
JP2016520920A
Data generation method, charged particle beam irradiation device, and program
JP2022053208A