A design layout internal structure processing method and device and computer equipment

CN117371383BActive Publication Date: 2026-09-22DONGFANG JINGYUAN ELECTRON LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311403566.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-10-26
Publication Date
2026-09-22
Estimated Expiration
2043-10-26

AI Technical Summary

Technical Problem

[0005]为了解决现有技术将设计图形中壳与各个孔连接为一体时,使得最终输出的设计图形的出现严重轮廓变形的问题,本发明提供一种设计版图内部结构处理方法、装置及计算机设备

Benefits of technology

[0048]1.本发明实施例提供的一种设计版图内部结构处理方法,用于将设计版图内设计图形的壳和孔的轮廓边连接为整体,包括以下步骤:

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117371383B_ABST
    Figure CN117371383B_ABST
Patent Text Reader

Abstract

The present application relates to the field of photolithography, and particularly relates to a design layout internal structure processing method and device and computer equipment.The method comprises: obtaining vertex position information of shells and holes;establishing a search frame based on the vertex position information of a certain hole;expanding the four edges of the search frame in a horizontal or vertical direction with respect to the edges, so that the edges intersect with the contour edges of other holes or shells to obtain intersection points;filtering out the position of the nearest intersection point to the vertex of the hole along the expansion direction of the search frame, and saving the vertex position and the position of the nearest intersection point to obtain an initial data set;iteratively establishing the search frame to save the vertex positions of all holes in the layout and the corresponding nearest intersection point positions to obtain a final data set;establishing a connection relationship between the shells and the holes based on the final data set and a preset weight rule, and connecting the contour edges of the shells and the holes of the design graph as a whole based on the connection relationship.The method solves the problem of severe contour deformation in the final output design graph of the prior art.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of photolithography, and in particular to a method, apparatus, and computer device for processing the internal structure of a design layout. Background Technology

[0002] In integrated circuit manufacturing, patterns on a photomask are transferred onto a silicon wafer through photolithography and etching. The geometry on this photomask used in manufacturing integrated circuits is defined as the integrated circuit layout. The layout is the bridge from design to manufacturing, and it consists of a large number of polygons, often referred to as the design pattern. Typically, a design pattern contains multiple holes and hulls. The hulls form the outer contour of the design pattern, while the holes are the open portions. When processing the design pattern, it is often desirable to connect the holes and hulls into a single unit.

[0003] Existing techniques typically involve establishing coordinate axes on a layout, ensuring that the coordinates of the vertices of the shell and holes on the coordinate axes are integers. Then, starting from a vertex on the hole's outline, a line segment is extended in one direction. This line segment intersects with the outlines of neighboring holes or shells, thus completing the connection between all holes and the shell. However, during the connection process, the line segment may connect to two types of outlines, resulting in two types of intersection points: one where the line segment intersects an edge that is parallel, perpendicular, or at a 45° angle on the coordinate axis; the intersection point with this edge is called a qualified intersection point. The other type of intersection point is where the line segment intersects an edge that is not parallel, perpendicular, or at a 45° angle; these are called unqualified points. Existing techniques connect these connection points, qualified points, and unqualified points to ultimately achieve a unified connection between the shell and each hole.

[0004] However, since the vertices of holes and shells in the layout are all integers, at qualified intersections, the ordinates are the same as those of the connecting points, meaning the ordinates of qualified intersections are integers. Furthermore, both vertices of the edge containing a qualified intersection are integers; that is, regardless of whether the edge is parallel to, perpendicular to, or at a 45° angle to the coordinate axis, the x-coordinate of a qualified intersection will also be an integer. However, for unqualified intersections, although their ordinates are integers, their x-coordinates may be infinitely repeating decimals. If the coordinates of an unqualified intersection are input into the computer, the accuracy will be inaccurate. As a result, the computer will lose some information, causing distortion of the edge containing the unqualified intersection. This, in turn, leads to accuracy errors in the entire design drawing. Although the loss of edge accuracy due to non-qualified intersections is unavoidable, when using existing technology for connection, since line segments only extend mechanically in one direction, it is impossible to distinguish whether the edges connected to the line segments are qualified or unqualified intersections. This results in the generation of unqualified intersections when connecting the shell and various holes into one unit, leading to a large number of unqualified intersections and their corresponding deformed edges during the connection process, resulting in severe contour distortion in the final output design graphics. Summary of the Invention

[0005] To address the problem of severe contour distortion in the final output design when the shell and holes are connected as a single unit in existing technologies, this invention provides a method, apparatus, and computer device for processing the internal structure of a design layout.

[0006] To solve the above-mentioned technical problems, the present invention provides the following technical solution: a method for processing the internal structure of a design layout, used to connect the outline edges of the shell and holes of a design graphic within the design layout into a whole, comprising the following steps:

[0007] Obtain the vertex position information of the shell and the hole;

[0008] A rectangular search box is created based on the vertex position information of a certain hole;

[0009] Extend the four sides of the search box in the horizontal or vertical direction to intersect with the outline of other holes or shells to obtain the intersection point.

[0010] Filter out the position of the nearest intersection point to the vertex of the hole along the expansion direction of the search box, and save the vertex position and the position of the nearest intersection point to obtain the initial dataset;

[0011] The process of iteratively building the search box is used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset;

[0012] Based on the final dataset and preset weight rules, establish the connection relationship between the shell and the hole, and connect the outline edges of the shell and the hole of the design graphic into a whole based on the connection relationship.

[0013] Preferably, obtaining the vertex position information of the shell and the hole includes:

[0014] Establish a coordinate system for the design graphics within the layout, the coordinate system including the horizontal axis and the vertical axis;

[0015] The x-coordinate and y-coordinate of the vertices of the shell and holes in the design graphic are set to integers in the coordinate system;

[0016] Obtain the position information of the vertices of the shell and the hole in the coordinate system.

[0017] Preferably, establishing a search box based on the vertex position information of a certain hole includes:

[0018] Based on the position information of all vertices of a certain hole, the vertices with the largest and smallest x-coordinates, as well as the vertices with the largest and smallest y-coordinates, are selected from all vertices of the hole, and the selected vertices are taken as the extreme value vertices.

[0019] Find the position of the extreme vertex;

[0020] A search box is constructed based on the positions of the extreme and maximum vertices, such that the search box can enclose the entire outline of the hole and the extreme and maximum vertices are located on the four sides of the search box, and the sides of the search box are perpendicular to or parallel to the horizontal coordinate.

[0021] Preferably, expanding the four sides of the search box along directions horizontally or vertically to the sides includes:

[0022] The search box is rectangular. The four sides of the search box are expanded along the positive or negative directions of the horizontal axis, or along the positive or negative directions of the vertical axis.

[0023] Preferably, filtering the position of the closest intersection point to the vertex of the hole along the expansion direction of the search box includes:

[0024] Obtain all vertices of the hole and the distance values ​​between the corresponding intersection points of the vertices along the expansion direction of the search box;

[0025] Sort the distance values ​​by size and filter out the smallest distance value;

[0026] Obtain the position of the vertex and intersection point corresponding to the minimum distance value, so as to obtain the position of the nearest intersection point to the vertex of the hole.

[0027] Preferably, establishing the connection relationship between the shell and the hole based on the final dataset and preset weight rules includes:

[0028] Based on the final dataset, obtain the vertex positions of all holes and their corresponding nearest intersection points;

[0029] Obtain the outline of the edge containing the nearest intersection point. If the edge is parallel, perpendicular, or forms a 45° angle with the x-coordinate or y-coordinate, the nearest intersection point is considered a qualified intersection point; otherwise, it is considered an unqualified intersection point.

[0030] The weighted relationship between adjacent holes or between a hole and the shell is obtained based on whether the nearest intersection point corresponding to the vertex of the hole is a qualified intersection point;

[0031] The connection between the shell and the hole is established based on the weight relationship and the preset weight rules.

[0032] Preferably, establishing the connection relationship between the shell and the hole based on the weight relationship and the preset weight rules includes:

[0033] Determine whether the nearest intersection point corresponding to the vertex of the hole is a valid intersection point;

[0034] If so, record it as the first weight;

[0035] If not, it is recorded as the second weight;

[0036] The first weighted method is selected to connect all holes and shells within the design drawing to establish the connection relationship between the shells and holes.

[0037] Preferably, connecting the outline edges of the shell and the hole of the design graphic into a whole based on the connection relationship includes:

[0038] Randomly select a vertex of the inner shell of the design graphic as the starting point;

[0039] Treat all vertices and nearest intersections on the shell and hole as connection points;

[0040] Starting from the initial point, connect all vertices and the nearest intersection point in sequence based on the connection relationship, so that the outline edges of the shell and the hole are connected as a whole.

[0041] To solve the above-mentioned technical problems, the present invention provides another technical solution as follows: a design layout internal structure processing device, applied to the above-mentioned design layout internal structure processing method, the device comprising:

[0042] Recognition module: used to obtain vertex position information of the shell and holes;

[0043] Search module: Used to create a rectangular search box and extend the four sides of the search box along the horizontal or vertical directions of the sides respectively;

[0044] Data acquisition module: used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset;

[0045] Processing module: Used to connect the outline edges of the shell and holes of the design drawing into a whole based on the connection relationship.

[0046] To solve the above-mentioned technical problems, the present invention provides another technical solution as follows: the method for processing the internal structure of the above-mentioned design layout includes a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the method for processing the internal structure of the design layout.

[0047] Compared with the prior art, the design layout internal structure processing method, apparatus, and computer equipment provided by the present invention have the following beneficial effects:

[0048] 1. An embodiment of the present invention provides a method for processing the internal structure of a design layout, used to connect the outline edges of the shell and holes of a design graphic within the design layout into a whole, comprising the following steps:

[0049] Obtain the vertex position information of the shell and the hole;

[0050] A search box is created based on the vertex position information of a certain hole;

[0051] Extend the four sides of the search box in the horizontal or vertical direction to intersect with the outline of other holes or shells to obtain the intersection point.

[0052] Filter out the position of the nearest intersection point to the vertex of the hole along the expansion direction of the search box, and save the vertex position and the position of the nearest intersection point to obtain the initial dataset;

[0053] The process of iteratively building the search box is used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset;

[0054] The connection relationship between the shell and the hole is established based on the final dataset and preset weight rules, and the contour edges of the shell and the hole in the design graphic are connected as a whole based on the connection relationship. This avoids the mechanical direct connection of holes to holes or holes to shells as in existing technologies. It also minimizes the involvement of unqualified intersection points in the process of establishing the connection relationship between the shell and the hole, thus optimizing the problem of severe contour distortion in the final output design graphic.

[0055] 2. The method for obtaining the vertex position information of the shell and the hole in this embodiment of the invention includes:

[0056] Establish a coordinate system for the design graphics within the layout, the coordinate system including the horizontal axis and the vertical axis;

[0057] The x-coordinate and y-coordinate of the vertices of the shell and holes in the design graphic are set to integers in the coordinate system;

[0058] Obtain the position information of the vertices of the shell and hole in the coordinate system. After establishing the coordinate system, the position information of all vertices on the shell and hole in the coordinate system can be obtained directly, which is simple and convenient.

[0059] 3. The method of establishing a search box based on the vertex position information of a certain hole in this embodiment of the invention includes:

[0060] Based on the position information of all vertices of a certain hole, the vertices with the largest and smallest x-coordinates and the largest and smallest y-coordinates are selected from all vertices of the hole, and the selected vertices are taken as the extreme value vertices.

[0061] Find the position of the extreme vertex;

[0062] A search box is constructed based on the location of the extreme vertex, ensuring that the search box encompasses the entire outline of the hole and that the extreme vertex lies on one of the four sides of the search box. Furthermore, the sides of the search box are perpendicular or parallel to the x-coordinate. This unique search box is used to search for a large number of intersections. The most suitable intersection is then selected from these, avoiding the mechanical extension issues of existing technologies that can lead to omissions of the hole's outline or the hole itself.

[0063] 4. The method of extending the four sides of the search box along directions horizontally or vertically to the sides, as described in this embodiment of the invention, includes:

[0064] The search box is rectangular, and its four sides are expanded along either the positive or negative horizontal axis, or along either the positive or negative vertical axis. This embodiment provides a wide search range to avoid missing any holes when establishing connections between them and their neighboring holes.

[0065] 5. In this embodiment of the invention, filtering the position of the closest intersection point to the vertex of the hole along the expansion direction of the search box includes:

[0066] Obtain all vertices of the hole and the distance values ​​between the corresponding intersection points of the vertices along the expansion direction of the search box;

[0067] Sort the distance values ​​by size and filter out the smallest distance value;

[0068] Obtain the positions of the vertices and intersections corresponding to the minimum distance value to find the position of the nearest intersection to the vertex of the hole. Firstly, the nearest intersection indicates a connection between the hole or shell containing the nearest intersection and the hole containing the vertex. Secondly, the distance between the nearest intersection and the vertex, i.e., the minimum distance value, also indicates that a connection has been established between the hole and its nearest neighboring hole or shell. This avoids omissions during the connection establishment process.

[0069] 6. The method of establishing the connection relationship between the shell and the hole based on the final dataset and preset weight rules in this embodiment of the invention includes:

[0070] Based on the final dataset, obtain the vertex positions of all holes and their corresponding nearest intersection points;

[0071] Obtain the outline of the edge containing the nearest intersection point. If the edge is parallel, perpendicular, or forms a 45° angle with the x-coordinate or y-coordinate, the nearest intersection point is considered a qualified intersection point; otherwise, it is considered an unqualified intersection point.

[0072] The weighted relationship between adjacent holes or between a hole and the shell is obtained based on whether the nearest intersection point corresponding to the vertex of the hole is a qualified intersection point;

[0073] The connection between the shell and the hole is established based on weighted relationships and preset weighted rules. This embodiment fully considers the impact of defective points on the contours of holes or shells in the design drawing. By specifically judging the edges corresponding to the nearest intersection points and then filtering them using preset weighted rules, the use of defective points to establish connection relationships between the shell and the hole or between holes is avoided.

[0074] 7. The method of establishing the connection relationship between the shell and the hole based on weighted relationships and preset weighted rules in this embodiment of the invention includes:

[0075] Determine whether the nearest intersection point corresponding to the vertex of the hole is a valid intersection point;

[0076] If so, record it as the first weight;

[0077] If not, it is recorded as the second weight;

[0078] Connect all holes and shells within the design drawing using the method with the highest weighting to establish connection relationships between shells and holes. Avoid using substandard intersections to establish connections between shells and holes or between holes themselves. This prevents severe contour distortion in the final output design drawing.

[0079] 8. The embodiment of the present invention, which connects the outline edges of the shell and hole of the design graphic into a whole based on the connection relationship, includes:

[0080] Randomly select a vertex of the inner shell of the design graphic as the starting point;

[0081] Treat all vertices and nearest intersections on the shell and hole as connection points;

[0082] Starting from the initial point, connect all vertices and the nearest intersection point in sequence based on the connection relationship, so that the outline edges of the shell and the hole are connected as a whole.

[0083] 9. The present invention also provides a design layout internal structure processing device, which has the same beneficial effects as the above-described design layout internal structure processing method, and will not be described in detail here.

[0084] 10. Embodiments of the present invention also provide a computer device, which has the same beneficial effects as the above-described method for processing the internal structure of a design layout, and will not be described in detail here. Attached Figure Description

[0085] Figure 1 It is a schematic diagram of the process of connecting the shell and the hole into a whole in the design drawing of the existing technology layout.

[0086] Figure 2a It is the result of connecting the shell and holes in the existing technical design. Figure 1 .

[0087] Figure 2b Figure 2 shows the result of connecting the shell and holes in the existing technology design.

[0088] Figure 3 This is a schematic flowchart of a design layout internal structure processing method provided in the first embodiment of the present invention.

[0089] Figure 4 This is a schematic diagram illustrating the process of expanding the search box provided in the first embodiment of the present invention.

[0090] Figure 5 This is a schematic diagram of the connection between the inner shell and holes or holes and holes in a design layout provided in the first embodiment of the present invention.

[0091] Figure 6 This is a schematic diagram of the internal structure processing device of the design layout provided in the second embodiment of the present invention.

[0092] Figure 7 This is a schematic diagram of the computer device structure provided in the third embodiment of the present invention.

[0093] Explanation of reference numerals in the attached diagram:

[0094] 1. Design layout internal structure processing device; 2. Computer equipment;

[0095] 11. Identification module; 12. Search module; 13. Data acquisition module; 14. Processing module; 21. Memory; 22. Processor; 23. Computer program;

[0096] search box; Hull. Detailed Implementation

[0097] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0098] In the embodiments provided by this invention, it should be understood that "B corresponding to A" means that B is associated with A, and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B solely based on A; B can also be determined based on A and / or other information.

[0099] It should be understood that the phrase "one embodiment" or "an embodiment" throughout the specification means that a specific feature, structure, or characteristic related to the embodiment is included in at least one embodiment of the invention. Therefore, "in one embodiment" or "in an embodiment" appearing throughout the specification does not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Those skilled in the art should also recognize that the embodiments described in the specification are optional embodiments, and the actions and modules involved are not necessarily essential to the invention.

[0100] In various embodiments of the present invention, it should be understood that the sequence number of each process does not necessarily imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0101] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, or they may sometimes be executed in reverse order, depending on the functions involved. It is particularly important to note that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0102] In integrated circuit manufacturing, patterns on a photomask are transferred onto a silicon wafer through photolithography and etching. The geometry on this photomask used in manufacturing integrated circuits is defined as the integrated circuit layout. The layout is the bridge from design to manufacturing, and it consists of a large number of polygons, often referred to as the design pattern. Typically, a design pattern contains multiple holes and hulls. The hulls form the outer contour of the design pattern, while the holes are the open portions. When processing the design pattern, it is often desirable to connect the holes and hulls into a single unit.

[0103] Please see Figure 1 Existing techniques typically involve establishing coordinate axes on a layout, ensuring that the coordinates of the vertices of the shell and holes on the layout are integers. Starting from a vertex on the hole's outline, the vertex with the largest vertical coordinate and the largest horizontal coordinate (upright point) is selected, and a line segment is extended from this vertex in one direction. Preferably, a line segment is extended horizontally, intersecting with the outlines of neighboring holes or shells to create a cut point. Finally, the positions of all cut points and vertices are stored. A vertex on the shell is randomly selected as the starting point, and vertices are connected together along the shell's outline in a clockwise or counterclockwise direction. When a cut point is reached, the cut point on the shell is connected to the corresponding vertex on the hole, thus completing the connection between all holes and the shell.

[0104] Please see Figure 1 Establish a coordinate system on the design map. Figure 1 This is a schematic diagram illustrating the process of connecting the shell and hole as a whole in the design drawing, where the design drawing includes the shell (Hull) and the hole (Hole). The coordinates of the vertices of both the shell and the hole are integers in the coordinate system. A line segment is extended horizontally from vertex 1up1 of hole 1H1. It should be noted that the horizontal direction is parallel to the x-coordinate. The line segment intersects hole 1H2 at intersection point 1cp1. Furthermore, a line segment is extended horizontally from vertex 1up2 of hole 1H2 in one direction, intersecting the shell at intersection point 1cp2. At this point, randomly select vertex 1a on the shell as the starting point, and connect vertices 1b and 1c sequentially along the shell's contour. An intersection point 1cp2 is found between vertices 1c and 1d. Then connect intersection point 1cp2 and its corresponding vertex 1up2. Next, an intersection point 1cp1 is found between vertices 1up2 and 1e. Then connect intersection point 1cp1 and its corresponding vertex 1up1. Continue connecting vertices 1g and 1h along the contour of hole H1. Finally, there are no more intersection points to connect. The final path connecting the shell and hole contours in the design drawing is: 1a, 1b, 1c, 1cp2, 1up2, 1cp1, 1up1, 1g, 1h, 1up1, 1cp1, 1e, 1f, 1up2, 1cp2, 1d, and 1a. This completes the connection of the shell and hole contours in the design drawing.

[0105] However, two problems may arise during the connection process. Firstly, line segments may connect to two types of contour lines, resulting in two types of intersection points. One type is where the line segment intersects with an edge that is parallel, perpendicular, or at a 45° angle on the coordinate axes, such as the edge between vertices 1c and 1d. The intersection point of the line segment with this edge is called a qualified intersection point, i.e., intersection point 1cp2 is a qualified intersection point. The intersection point of the line segment with an edge that is not parallel, perpendicular, or at a 45° angle is called a non-qualified point, such as the edge between vertices 1up2 and 1e. Existing technology connects the connection points, qualified points, and non-qualified points to ultimately achieve a unified connection between the shell and each hole.

[0106] However, since the vertices of holes and shells in the layout are all integers, at a valid intersection point, the ordinate is the same as the ordinate of the connecting point, meaning the ordinate of the valid intersection point is also an integer. Furthermore, both vertices of the edge containing a valid intersection point are integers; that is, regardless of whether the edge is parallel to, perpendicular to, or at a 45° angle to the coordinate axis, the x-coordinate of the valid intersection point will also be an integer. However, for invalid intersection points, although their ordinates are integers, their x-coordinates may be infinitely repeating decimals or irrational numbers. If the coordinates of an invalid intersection point are input into a computer, the computer will round them, inevitably resulting in a loss of precision. This loss of precision will cause distortion of the edge containing the invalid intersection point, leading to accuracy errors in the entire design. Although the loss of edge accuracy due to non-qualified intersections is unavoidable, when using existing technology for connection, since line segments only extend mechanically in one direction, it is impossible to distinguish whether the edges connected to the line segments are qualified or unqualified intersections. This results in the generation of unqualified intersections when connecting the shell and various holes into one unit, leading to a large number of unqualified intersections and their corresponding deformed edges during the connection process, resulting in severe contour distortion in the final output design graphics.

[0107] Another problem is that current technology only mechanically extends the vertices of holes in one direction. If the arrangement of holes within the design is unusual, some holes may be missed during line extension, making it impossible to connect the shell and all holes within the design as a whole. For example, please refer to... Figure 2a and Figure 2b , Figure 2a and Figure 2b The result of connecting the shell and holes in the existing technology design can be seen in... Figure 2a In the diagram, holes 2H1, 2H2, and 2H3 form a loop. Because existing techniques connect them using vertices and intersections, after connection, many edges will be missing in the diagrams of holes 2H1, 2H2, and 2H3. These missing edges are indicated by dashed lines. Figure 2bIn the problem, since both holes 2H5 and 2H6 are connected by vertex 2up1 on hole 2H4, it is impossible to connect to hole 2H6 through hole 2H4, resulting in the omission of hole 2H6. These two situations are collectively referred to as the omission problem.

[0108] In summary, the problems with existing technologies, besides the tendency to omit edges or holes when connecting holes and shells in a design layout into a single unit, also include the inability to prevent the generation of substandard intersections, resulting in a large number of substandard intersections and their corresponding deformed edges during the connection process.

[0109] To resolve the above issues, please refer to Figure 3 The first embodiment of the present invention provides a method for processing the internal structure of a design layout, used to connect the outline edges of the shell and holes of a design graphic within the design layout into a whole, including the following steps:

[0110] S1, obtain the vertex position information of the shell and the hole;

[0111] S2, Establish a rectangular search box based on the vertex position information of a certain hole;

[0112] S3, expand the four sides of the search box in the horizontal or vertical direction to make them intersect with the outline of other holes or shells to obtain the intersection point;

[0113] S4. Filter out the position of the nearest intersection point to the vertex of the hole along the expansion direction of the search box, and save the vertex position and the position of the nearest intersection point to obtain the initial dataset;

[0114] S5, the process of iteratively building the search box, to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset;

[0115] S6 establishes the connection relationship between the shell and the hole based on the final dataset and preset weight rules, and connects the outline edges of the shell and the hole of the design graphic into a whole based on the connection relationship.

[0116] Understandably, in this embodiment of the invention, all design graphics within the design layout are situated within a coordinate system. Specifically, the vertex position information of the shell and holes in the design layout is first obtained. The vertex position information refers to the coordinates of the vertices in the coordinate system. Further, a search box can be established based on the vertex position information of a particular hole. The search box is rectangular and can encompass the entire outline of the hole. Further, the four sides of the search box are extended horizontally or vertically to intersect with the outlines of other holes or shells to obtain intersection points. It should be understood that the prior art uses a line segment extending in one direction from the vertex of the hole. Therefore, it may exhibit the aforementioned... Figure 2aThe problem is that the line segment extending from the vertex of hole 2H1 cannot pass through hole 2H3, but instead directly connects to hole 2H2. This leads to the subsequent formation of a loop between holes 2H1, 2H2, and 2H3. In this embodiment, the search box is expanded along its entire edge in a direction either horizontal or vertical to the edge, until it intersects with the contour edges of other holes or shells to obtain intersection points. Furthermore, in this embodiment, all four edges of the search box are expanded using the above method to find intersection points. Therefore, the method for obtaining intersection points in this embodiment is more complex, and the number of intersection points obtained is also greater.

[0117] Furthermore, the search box is expanded to find the position of the nearest intersection point to the vertex of the hole. This vertex position and the nearest intersection point position are then saved to obtain the initial dataset. It should be understood that since there are numerous intersection points obtained after expanding the search box, and when connecting shells and holes within the design, we often only need a single line segment to connect two holes or between a hole and a shell. Therefore, in practice, for the relationship between a hole and other holes or shells, only the position of one vertex of the hole and the position of its corresponding intersection point need to be saved. Specifically, the position of the nearest intersection point to the vertex of the hole is saved, and both the vertex position and the nearest intersection point position are stored in the initial dataset. It should be noted that the above process only describes saving the vertex position and the nearest intersection point for a single hole. However, by iteratively building the search box, the vertex positions of all holes within the layout and their corresponding nearest intersection point positions can be saved, and the saved results become the final dataset. At this point, the final dataset contains vertex position information for all holes and shells in the design drawing, including vertex positions for connecting holes to holes or holes to shells, as well as the nearest intersection point position that establishes a correspondence with the aforementioned vertices.

[0118] It should be understood that, firstly, existing technologies, due to their mechanical extension in one direction, cannot distinguish between qualified and unqualified intersections formed by the edges connecting to line segments, leading to severe contour distortion in the final output design. In this embodiment, the connection relationship between the shell and the hole is established based on the final dataset and preset weight rules, and then the contour edges of the shell and the hole in the design are connected as a whole based on this connection relationship. This avoids the mechanical direct connection of holes to holes or holes to shells, as is done in existing technologies. This minimizes the participation of unqualified intersections in the establishment of the connection relationship between the shell and the hole, thus optimizing the problem of severe contour distortion in the final output design. Secondly, existing technologies are prone to omissions when establishing connection relationships. This embodiment uses a unique search box to search for a large number of intersections, and then selects the most suitable intersection from among them, avoiding the problem of omissions in the contour edges of holes or the holes themselves caused by the mechanical extension in existing technologies.

[0119] Furthermore, in step S1 above, obtaining the vertex position information of the shell and the hole includes:

[0120] S11, Establish a coordinate system for the design graphics within the layout, the coordinate system includes the horizontal axis and the vertical axis;

[0121] S12, set the x and y coordinates of the vertices of the shell and hole of the design graphic in the coordinate system to be integers;

[0122] S13, obtain the position information of the vertices of the shell and the hole in the coordinate system.

[0123] It should be understood that establishing a coordinate system for the design within the layout allows for the intuitive output of the positional information of the vertices of holes and shells within the design. Setting the x and y coordinates of the vertices of the shells and holes to integers in the coordinate system is to avoid irrational numbers or infinitely repeating decimals being rounded off in the computer when connecting the shells and holes, causing vertex precision deviations and resulting in distortion of the outlines of the holes and shells after connection. Specifically, after establishing the coordinate system, the positional information of all vertices on the shells and holes within the coordinate system can be directly obtained, which is simple and convenient.

[0124] Furthermore, in step S2 above, establishing a search box based on the vertex position information of a certain hole includes:

[0125] S21. Based on the position information of all vertices of a certain hole, filter out the vertices with the largest and smallest x-coordinates and the largest and smallest y-coordinates among all vertices of the hole, and take the filtered vertices as the extreme value vertices.

[0126] S22, obtain the position of the extreme vertex;

[0127] S23. Establish a search box based on the position of the extreme vertex, so that the search box can surround the entire outline of the hole and the extreme vertex is located on the four sides of the search box, and the sides of the search box are perpendicular or parallel to the horizontal coordinate.

[0128] Please understand that this should also be consulted. Figure 4 , Figure 4 This diagram illustrates the process of expanding the search box. Based on hole 4H1, the position information of all its vertices is obtained. Then, the vertex with the largest x-coordinate (4a), the vertex with the smallest x-coordinate (4c), the vertex with the largest y-coordinate (4d), and the vertex with the smallest y-coordinate (4b) within hole 4H1 are selected. Specifically, vertices 4a, 4b, 4c, and 4d are called the extreme vertex vertices, and their positions are obtained. The search box is then constructed based on the positions of these extreme vertices. Figure 4 (Short dashed box) so that the search box can surround the entire outline of hole 4H1, and the extreme vertex is located on the four sides of the search box.

[0129] Furthermore, the search box is rectangular, and its four sides can be expanded along either the positive or negative horizontal direction, or along either the positive or negative vertical direction. Please continue reading. Figure 4 The search box can be expanded along the positive direction of the horizontal axis until it intersects with the hull. It should be noted that as long as the outline of the hole or hull is within the expanded range of the search box... Figure 4 Within the long dashed box (in the middle section), all points on its edges can be considered intersection points. For example, intersection points 4cp1, 4cp2, 4cp3, 4cp4, and 4cp5 are the intersection points of the search box with hole 4H2 and the shell during the expansion of the search box along the positive direction of the horizontal axis. Therefore, all of the above points can be used as intersection points. It should be noted that the above intersection points are only shown as examples; in reality, any point whose outline is within the expansion range of the search box can be considered an intersection point.

[0130] It should be understood that this embodiment uses a search box to expand in four directions to intersect with the contour edges of other holes or shells to generate intersection points. Since the side lengths of the search box are composed of the vertices with the largest or smallest x-coordinates, or the largest or smallest y-coordinates among all vertices of the hole, the search box, during its expansion, represents the maximum possible relationship between a vertex on that hole and other holes or shells. In other words, if the expanded frame is located at the maximum or minimum value of the vertex on the side length of the search box (…), then… Figure 4 If a dashed box (in the center) can intersect with another hole, it means that a connection can definitely be established between the two holes. Conversely, if it cannot intersect with another hole, it means that a connection cannot be established between the two holes. Using a search box avoids the problem of some hole edges or some holes being missed when establishing connections between holes or between a hole and the shell, which is common in existing technologies.

[0131] It should be noted that in this invention, x is the abscissa of the coordinate system and y is the ordinate of the coordinate system, which will not be repeated hereafter.

[0132] Further, in step S4, filtering out the position of the closest intersection point to the vertex of the hole along the expansion direction of the search box includes:

[0133] S41, along the expansion direction of the search box, obtain all vertices of the hole and the distance values ​​between the corresponding intersection points of the vertices;

[0134] S42, sort the distance values ​​by size and filter out the smallest distance value;

[0135] S43, obtain the position of the vertex and intersection point corresponding to the minimum distance value, so as to obtain the position of the nearest intersection point to the vertex of the hole.

[0136] Understandably, after establishing a search box on a hole and obtaining the intersection point through its expansion, since only the connection between vertices and intersection points needs to be established, the distance values ​​between all vertices of the hole and their corresponding intersection points can be obtained starting from the vertex of the hole and extending along the search box expansion direction. These distance values ​​are then sorted by size, and the smallest distance value is selected based on the sorting result. The position information of the vertex and intersection point corresponding to the smallest distance value is then obtained. Specifically, this intersection point is taken as the nearest intersection point. For an example, please refer to [further details]. Figure 4 Vertex 4d can intersect hole 4H2 at intersection points 4cp1 and 4cp2, and intersect the shell at intersection point 4cp3. The distance from vertex 4d to intersection point 4cp1 is 4x1, the distance to intersection point 4cp2 is 4x2, and the distance to intersection point 4cp3 is 4x3. Vertex 4d can intersect hole 4H2 at intersection point 4cp5 along the positive x-axis direction. The distance from vertex 4a to intersection point 4cp5 is 4x4. The following distances exist: 4x4 < 4x1 < 4x2 < 4x3. Therefore, the minimum distance between holes 4H1 and 4H2 is 4x4. That is, for hole 4H1, the minimum distance value in the positive x-axis direction is 4x4, and the vertex corresponding to the minimum distance value is 4a, with intersection point 4cp5.

[0137] It should be understood that by sorting the distance values ​​by size and selecting the smallest distance value, the vertex position and intersection position corresponding to the smallest distance value are stored in the initial dataset. Subsequently, vertices and intersections can be connected to form a unified whole between holes or between holes and shells. Firstly, the nearest intersection indicates a connectable relationship between the hole or shell containing the intersection and the hole containing the vertex. Secondly, the distance between the nearest intersection and the vertex, i.e., the smallest distance value, also indicates that a connection has been established between the hole and its nearest neighboring hole or shell. This avoids omissions during the connection establishment process.

[0138] Furthermore, in step S6 above, establishing the connection relationship between the shell and the hole based on the final dataset and preset weight rules includes:

[0139] S61, based on the final dataset, obtain the vertex positions of all holes and their corresponding nearest intersection positions;

[0140] S62, obtain the outline of the edge where the nearest intersection point is located. If the edge is parallel, perpendicular or at a 45° angle to the horizontal or vertical coordinate, the nearest intersection point is determined to be a qualified intersection point; otherwise, it is an unqualified intersection point.

[0141] S63, obtain the weight relationship between adjacent holes or between a hole and the shell based on whether the nearest intersection point corresponding to the vertex of the hole is a qualified intersection point;

[0142] S64 establishes the connection relationship between the shell and the hole based on the weight relationship and the preset weight rules.

[0143] Understandably, by Figure 4 It is known that after establishing the search box, the four edges of the search box can be expanded along the four directions. For example, after expanding the search box for hole 4H1 along the negative direction of the vertical coordinate, the final minimum distance value is 4x5, which is the minimum distance between hole 4H1 and the shell, with the corresponding vertex 4b and intersection point 4cp6. That is, during the expansion of the search box corresponding to a certain hole or shell, we can obtain multiple vertices and the nearest intersection point corresponding to each vertex. However, existing technologies usually use mechanical connections and do not consider which of the many vertices to select as the final connection scheme. In this implementation, firstly, based on the final dataset, the vertex positions of all holes and their corresponding nearest intersection point positions are obtained, then the contour of the edge where the nearest intersection point is located is obtained, and it is determined whether the edge where the nearest intersection point is located is parallel, perpendicular, or at a 45° angle to the horizontal or vertical coordinate. For example Figure 4 As shown, intersection point 4cp5 is an unqualified intersection point, while intersection point 4cp6 is a qualified intersection point. Further, in step S64 above, establishing the connection relationship between the shell and the hole based on the weight relationship and preset weight rules includes:

[0144] S641 determines whether the nearest intersection point corresponding to the vertex of the hole is a qualified intersection point;

[0145] S642, if so, is recorded as the first weight;

[0146] S643, if not, is recorded as the second weight;

[0147] S644: Select the first weight dominant method to connect all holes and shells in the design drawing to establish the connection relationship between shells and holes.

[0148] It should be understood that if an edge is parallel, perpendicular, or forms a 45° angle with the x-coordinate or y-coordinate, then all points on that edge must be integers. This means that the points will not be converted into irrational numbers or infinitely repeating decimals after being output to the computer, and the nearest intersection point can be considered a qualified intersection point. Qualified intersection points are designated as the first weight, and unqualified intersection points as the second weight. The first weight-dominant method is used to select the vertices and nearest intersection points with the dominant first weight. Based on these positions, all holes and shells within the design drawing are connected to establish the connection relationship between the shells and holes. It should be understood that the first weight-dominant method prioritizes selecting the nearest intersection point as a qualified intersection point. For example, please refer to [further details omitted]. Figure 4Intersection point 4cp5 is considered an unqualified intersection point, while the qualified intersection point 4cp6, with a higher weight, takes precedence. Therefore, the connection between hole 4H1 and the shell is ultimately established by connecting vertex 4b and intersection point 4cp6. This embodiment avoids using unqualified intersection points to establish connections between the shell and the hole, or between holes themselves, by assigning weights to qualified and unqualified intersection points. This prevents severe contour distortion in the final output design.

[0149] Specifically, please refer to Figure 5 In one possible implementation, multiple nearest intersections between holes or between holes and shells during the search box expansion process may all be qualified intersections. In this case, the best nearest intersection can be selected by establishing a two-dimensional array. Figure 5 In this process, a search box can be established using the method described above. The shortest distance between a given hole and other holes or shells can be found using the search box. Then, by comparing the minimum value in the two-dimensional array, the optimal nearest intersection point can be obtained. See Table 1 below:

[0150] Table 1 shows the distance relationships between holes or between holes and the shell.

[0151] hole1 5x2 5x1 hole2 5x2 5x4 5x3 hole3 5x4 5x5 hull1 5x1 5x3 5x5

[0152] It should be understood that Table 1 shows the distance relationships between holes or between holes and the shell. For example, for hole1, by establishing a search box, it can be seen that it intersects hole2 along the positive x-axis direction, and the shortest distance is 5x2. It intersects hull1 along the negative y-axis direction, and the shortest distance is 5x1. Although the intersection points of hole1's search box with hole2 and hull1 are both valid intersection points, by comparing 5x2 > 5x1, we find that the shortest distance for hole1 is 5x1. Therefore, the vertex position and intersection point corresponding to 5x1 are chosen to establish the connection between hole1 and hull1. Furthermore, for hole2, by establishing a search box, it can be seen that it intersects hole3 along the positive x-axis direction, and the shortest distance is 5x4. By establishing a search box, it can be seen that it intersects hole3 along the negative x-axis direction, and the shortest distance is 5x4. It intersects hole1 along the negative y-axis direction, and the shortest distance is 5x2. The two boxes intersect at hull1 along the positive ordinate direction, and their shortest distance is 5x3. Although the intersections of hole2's search box with hole1, hole3, and hull1 are all valid, by comparing 5x3 > 5x4 > 5x2, we can determine that its shortest distance is 5x2. We then establish the connection between hole1 and hole2 using the vertex and intersection positions corresponding to 5x2. Similarly, for hole3, 5x4 is its shortest distance. That is, for... Figure 5The design diagram is shown. The final selection of 5x1, 5x2, and 5x4 vertex and intersection positions is used to establish connections between shells and holes, or between holes themselves. 5x3 and 5x5 are discarded. It should be understood that in this embodiment, if multiple qualified intersection points can be obtained during the expansion of a hole's search box, the position of the nearest qualified intersection point and its corresponding vertex position are preferentially used as the basis for establishing connections between that hole and other holes or shells. This avoids generating a large number of unqualified intersection points and their corresponding deformed edges during the connection process, and directly establishes connections between a hole in the design diagram and its nearest other holes or shells.

[0153] It should be noted that the above is merely an example. If there is no connection between holes or between a hole and the shell, it will be indicated as blank in Table 1.

[0154] Furthermore, in step S6 above, connecting the outline edges of the shell and the hole of the design graphic into a whole based on the connection relationship includes:

[0155] Randomly select a vertex of the inner shell of the design graphic as the starting point;

[0156] Treat all vertices and nearest intersections on the shell and hole as connection points;

[0157] Starting from the initial point, connect all vertices and the nearest intersection point in sequence based on the connection relationship, so that the outline edges of the shell and the hole are connected as a whole.

[0158] Please refer to [link / reference] for more information. Figure 2a In existing technologies, only upright points and cutpoints are typically used as connection points for searching. When a vertex in a hole contains both upright and non-upright points, the upright point is prioritized for connection. For example, when passing through point 2a, after finding connection point 2b, points 2a and 2b are connected. The search continues until point 2d is found, and the connection continues towards point 2d, without finding point 2c. This results in some edges of the hole being missed. In this implementation, a vertex of the inner shell of the design is randomly selected as the starting point. Then, all vertices on the shell and the hole, as well as the nearest intersection point, are used as connection points. During the connection process, whether it is a regular vertex in the hole and shell, or the vertex corresponding to the nearest intersection point, it is treated as a connection point and connected based on the connection relationship to connect the outline edges of the shell and the hole as a whole. This avoids the problem of some hole outline edges being missed in the design.

[0159] The second embodiment of the present invention also provides a design layout internal structure processing device 1, applied to the above-described design layout internal structure processing method. The design layout internal structure processing device 1 includes:

[0160] Recognition module 11: Used to obtain vertex position information of the shell and holes;

[0161] Search module 12: Used to create a rectangular search box and extend the four sides of the search box along the horizontal or vertical directions of the sides respectively;

[0162] Data acquisition module 13: used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset;

[0163] Processing module 14: Used to connect the outline edges of the shell and holes of the design drawing into a whole based on the connection relationship.

[0164] The present invention also provides a design layout internal structure processing device 1, which has the same beneficial effects as the above-described design layout internal structure processing method, and will not be described in detail here.

[0165] The third embodiment of the present invention also provides a computer device 2, which is applied to the above-mentioned design layout internal structure processing method. The device is characterized in that it includes a memory 21, a processor 22 and a computer program 23 stored in the memory 21. The processor 22 executes the computer program 23 to implement the design layout internal structure processing method.

[0166] The present invention also provides a computer device 2, which has the same beneficial effects as the above-described method for processing the internal structure of a design layout, and will not be described in detail here.

[0167] Compared with the prior art, the design layout internal structure processing method, apparatus, and computer equipment provided by the present invention have the following beneficial effects:

[0168] 1. An embodiment of the present invention provides a method for processing the internal structure of a design layout, used to connect the outline edges of the shell and holes of a design graphic within the design layout into a whole, comprising the following steps:

[0169] Obtain the vertex position information of the shell and the hole;

[0170] A search box is created based on the vertex position information of a certain hole;

[0171] Extend the four sides of the search box in the horizontal or vertical direction to intersect with the outline of other holes or shells to obtain the intersection point.

[0172] Filter out the position of the nearest intersection point to the vertex of the hole along the expansion direction of the search box, and save the vertex position and the position of the nearest intersection point to obtain the initial dataset;

[0173] The process of iteratively building the search box is used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset;

[0174] The connection relationship between the shell and the hole is established based on the final dataset and preset weight rules, and the contour edges of the shell and the hole in the design graphic are connected as a whole based on the connection relationship. This avoids the mechanical direct connection of holes to holes or holes to shells as in existing technologies. It also minimizes the involvement of unqualified intersection points in the process of establishing the connection relationship between the shell and the hole, thus optimizing the problem of severe contour distortion in the final output design graphic.

[0175] 2. The method for obtaining the vertex position information of the shell and the hole in this embodiment of the invention includes:

[0176] Establish a coordinate system for the design graphics within the layout, the coordinate system including the horizontal axis and the vertical axis;

[0177] The x-coordinate and y-coordinate of the vertices of the shell and holes in the design graphic are set to integers in the coordinate system;

[0178] Obtain the position information of the vertices of the shell and hole in the coordinate system. After establishing the coordinate system, the position information of all vertices on the shell and hole in the coordinate system can be obtained directly, which is simple and convenient.

[0179] 3. The method of establishing a search box based on the vertex position information of a certain hole in this embodiment of the invention includes:

[0180] Based on the position information of all vertices of a certain hole, the vertices with the largest and smallest x-coordinates and the largest and smallest y-coordinates are selected from all vertices of the hole, and the selected vertices are taken as the extreme value vertices.

[0181] Find the position of the extreme vertex;

[0182] A search box is constructed based on the location of the extreme vertex, ensuring that the search box encompasses the entire outline of the hole and that the extreme vertex lies on one of the four sides of the search box. Furthermore, the sides of the search box are perpendicular or parallel to the x-coordinate. This unique search box is used to search for a large number of intersections. The most suitable intersection is then selected from these, avoiding the mechanical extension issues of existing technologies that can lead to omissions of the hole's outline or the hole itself.

[0183] 4. The method of extending the four sides of the search box along directions horizontally or vertically to the sides, as described in this embodiment of the invention, includes:

[0184] The search box is rectangular, and its four sides are expanded along either the positive or negative horizontal axis, or along either the positive or negative vertical axis. This embodiment provides a wide search range to avoid missing any holes when establishing connections between them and their neighboring holes.

[0185] 5. In this embodiment of the invention, filtering the position of the closest intersection point to the vertex of the hole along the expansion direction of the search box includes:

[0186] Obtain all vertices of the hole and the distance values ​​between the corresponding intersection points of the vertices along the expansion direction of the search box;

[0187] Sort the distance values ​​by size and filter out the smallest distance value;

[0188] Obtain the positions of the vertices and intersections corresponding to the minimum distance value to find the position of the nearest intersection to the vertex of the hole. Firstly, the nearest intersection indicates a connection between the hole or shell containing the nearest intersection and the hole containing the vertex. Secondly, the distance between the nearest intersection and the vertex, i.e., the minimum distance value, also indicates that a connection has been established between the hole and its nearest neighboring hole or shell. This avoids omissions during the connection establishment process.

[0189] 6. The method of establishing the connection relationship between the shell and the hole based on the final dataset and preset weight rules in this embodiment of the invention includes:

[0190] Based on the final dataset, obtain the vertex positions of all holes and their corresponding nearest intersection points;

[0191] Obtain the outline of the edge containing the nearest intersection point. If the edge is parallel, perpendicular, or forms a 45° angle with the x-coordinate or y-coordinate, the nearest intersection point is considered a qualified intersection point; otherwise, it is considered an unqualified intersection point.

[0192] The weighted relationship between adjacent holes or between a hole and the shell is obtained based on whether the nearest intersection point corresponding to the vertex of the hole is a qualified intersection point;

[0193] The connection between the shell and the hole is established based on weighted relationships and preset weighted rules. This embodiment fully considers the impact of defective points on the contours of holes or shells in the design drawing. By specifically judging the edges corresponding to the nearest intersection points and then filtering them using preset weighted rules, the use of defective points to establish connection relationships between the shell and the hole or between holes is avoided.

[0194] 7. The method of establishing the connection relationship between the shell and the hole based on weighted relationships and preset weighted rules in this embodiment of the invention includes:

[0195] Determine whether the nearest intersection point corresponding to the vertex of the hole is a valid intersection point;

[0196] If so, record it as the first weight;

[0197] If not, it is recorded as the second weight;

[0198] Connect all holes and shells within the design drawing using the method with the highest weighting to establish connection relationships between shells and holes. Avoid using substandard intersections to establish connections between shells and holes or between holes themselves. This prevents severe contour distortion in the final output design drawing.

[0199] 8. The embodiment of the present invention, which connects the outline edges of the shell and hole of the design graphic into a whole based on the connection relationship, includes:

[0200] Randomly select a vertex of the inner shell of the design graphic as the starting point;

[0201] Treat all vertices and nearest intersections on the shell and hole as connection points;

[0202] Starting from the initial point, connect all vertices and the nearest intersection point in sequence based on the connection relationship, so that the outline edges of the shell and the hole are connected as a whole.

[0203] 9. The present invention also provides a design layout internal structure processing device, which has the same beneficial effects as the above-described design layout internal structure processing method, and will not be described in detail here.

[0204] 10. Embodiments of the present invention also provide a computer device, which has the same beneficial effects as the above-described method for processing the internal structure of a design layout, and will not be described in detail here.

[0205] The foregoing has provided a detailed description of a design layout internal structure processing method, apparatus, and computer device disclosed in the embodiments of the present invention. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention. Any modifications, equivalent substitutions, and improvements made within the principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for processing the internal structure of a design layout, used to connect the outlines of the shell and holes of a design graphic within the design layout into a whole, characterized in that, Includes the following steps: Obtain the vertex position information of the shell and the hole; A rectangular search box is constructed based on the position information of all vertices of a certain hole; Extend the four sides of the search box in the horizontal or vertical direction to intersect with the outline of other holes or shells to obtain the intersection point. Filter out the position of the nearest intersection point to the vertex of the hole along the expansion direction of the search box, and save the vertex position and the position of the nearest intersection point to obtain the initial dataset; The process of iteratively building the search box is used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset; Based on the final dataset and preset weight rules, establish the connection relationship between the shell and the hole, and connect the outline edges of the shell and the hole of the design graphic into a whole based on the connection relationship; The process of establishing the connection relationship between the shell and the hole based on the final dataset and preset weight rules includes: Based on the final dataset, obtain the vertex positions of all holes and their corresponding nearest intersection points; Obtain the outline of the edge containing the nearest intersection point. If the edge is parallel, perpendicular, or forms a 45° angle with the x-coordinate or y-coordinate, the nearest intersection point is considered a qualified intersection point; otherwise, it is considered an unqualified intersection point. The weighted relationship between adjacent holes or between a hole and the shell is obtained based on whether the nearest intersection point corresponding to the vertex of the hole is a qualified intersection point; Establish the connection relationship between the shell and the hole based on the weight relationship and the preset weight rules; The establishment of the connection relationship between the shell and the hole based on the weight relationship and the preset weight rule includes: Determine whether the nearest intersection point corresponding to the vertex of the hole is a valid intersection point; If so, record it as the first weight; If not, it is recorded as the second weight; The first weighted dominant method is used to connect all holes and shells within the design drawing to establish the connection relationship between shells and holes; The step of filtering out the position of the closest intersection point to the vertex of the hole along the expansion direction of the search box includes: Obtain all vertices of the hole and the distance values ​​between the corresponding intersection points of the vertices along the expansion direction of the search box; Sort the distance values ​​by size and filter out the smallest distance value; Obtain the positions of the vertex and intersection point corresponding to the minimum distance value, in order to find the position of the nearest intersection point to the vertex of the hole; The acquisition of vertex position information of the shell and the hole includes: Establish a coordinate system for the design graphics within the layout, the coordinate system including the horizontal axis and the vertical axis; The x-coordinate and y-coordinate of the vertices of the shell and holes in the design graphic are set to integers in the coordinate system; Obtain the position information of the vertices of the shell and the hole in the coordinate system; The establishment of the search box based on the vertex position information of a certain hole includes: Based on the position information of all vertices of a certain hole, the vertices with the largest and smallest x-coordinates, as well as the vertices with the largest and smallest y-coordinates, are selected from all vertices of the hole, and the selected vertices are taken as the extreme value vertices. Find the position of the extreme vertex; A search box is constructed based on the positions of the extreme and maximum vertices, such that the search box can enclose the entire outline of the hole and the extreme and maximum vertices are located on the four sides of the search box, and the sides of the search box are perpendicular to or parallel to the horizontal coordinate.

2. The method for processing the internal structure of a design layout as described in claim 1, characterized in that: Expand the four sides of the search box along the horizontal or vertical directions, including: The search box is rectangular. The four sides of the search box are expanded along the positive or negative directions of the horizontal axis, or along the positive or negative directions of the vertical axis.

3. The method for processing the internal structure of a design layout as described in claim 1, characterized in that: Connecting the outlines of the shell and holes in the design graphic into a whole based on connectivity includes: Randomly select a vertex of the inner shell of the design graphic as the starting point; Treat all vertices and nearest intersections on the shell and hole as connection points; Starting from the initial point, connect all vertices and the nearest intersection point in sequence based on the connection relationship, so that the outline edges of the shell and the hole are connected as a whole.

4. A design layout internal structure processing apparatus, applied to the design layout internal structure processing method as described in any one of claims 1-3, characterized in that: The device includes: Recognition module: used to obtain vertex position information of the shell and holes; Search module: Used to create a rectangular search box and extend the four sides of the search box along the horizontal or vertical directions of the sides respectively; Data acquisition module: used to save the vertex positions of all holes in the layout and their corresponding nearest intersection positions to obtain the final dataset; Processing module: Used to connect the outline edges of the shell and holes of the design drawing into a whole based on the connection relationship.

5. A computer device, applied to the design layout internal structure processing method as described in any one of claims 1-3, characterized in that: It includes a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the internal structure processing method of the design layout.

Citation Information

Patent Citations

  • Grid optimization method for through silicon via (TSV) positions in automatic layout of three-dimensional (3D) integrated circuit

    CN102682163A

  • Method for extracting center line of interconnection line OPC graph

    CN112132887A