Redundant via insertion method, system and integrated circuit structure
By expanding the target area and inserting multiple through holes in the integrated circuit design, circuit failure problems caused by through hole failure are solved, and higher redundant through hole insertion and circuit reliability are achieved.
Patent Information
- Application Number
- CN202510258422.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-06
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2045-03-06
AI Technical Summary
In integrated circuit design, through-hole failure may lead to an increase in resistance between metal layers, resulting in circuit failure or even complete chip function failure, and the prior art is difficult to effectively solve this problem.
By acquiring the first set of areas in the first layout, the area of the target area is expanded, the original through holes are removed, and a plurality of through holes are inserted in the enlarged area based on design rules to achieve the insertion of redundant through holes.
This method can insert more redundant through holes into the target area after the expanded area, improve the connection reliability between metal layers, reduce circuit failures caused by through hole failure, and improve the functional integrity of the chip.
Smart Images

Figure CN119767791B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of semiconductor technology, and in particular to a redundant through hole insertion method, system and integrated circuit structure. Background Art
[0002] In the integrated circuit design process, there are usually multiple layers, and each layer has multiple devices. Usually, a via is used to connect two adjacent metal layers. A via is a hole that goes through two metal layers. In the actual production process, due to factors such as process defects, electromigration and thermal stress, vias may fail, for example, a via does not go through two metal layers.
[0003] If there is only one via between two adjacent metal layers and the via fails, it may increase the resistance between the two metal layers, cause circuit failure, and even cause a certain function of the chip to fail completely. In order to reduce the occurrence of this situation, some redundant vias are usually inserted next to a single via. When a single via fails for various reasons, the redundant vias can still play a role to ensure accurate connection between metal layers. Summary of the invention
[0004] The present disclosure provides a redundant through-hole insertion method, system and integrated circuit structure, which can insert more redundant through-holes. The technical solution at least includes the following solutions:
[0005] In a first aspect, a redundant through-hole insertion method is provided, comprising: obtaining a first area set in a first layout, the first area set including a plurality of areas, any of the areas being a stacking area of two adjacent metal layers, and any of the areas having only one through-hole for connecting the two adjacent metal layers; based on a first design rule of a first metal and a second metal, expanding an area of a target area, the target area being any area in the first area set, the first metal and the second metal being two adjacent metal layers in the target area; removing a first through-hole for connecting the first metal and the second metal in the target area; and based on a second design rule of the first through-hole, inserting a plurality of the first through-holes in the expanded target area.
[0006] Optionally, the second design rule includes a first width, a first spacing, and a second spacing of the first through hole, the first width of the first through hole being used to indicate a minimum width of the first through hole, the first spacing being used to indicate a minimum spacing between a plurality of the first through holes, and the second spacing being used to indicate a minimum spacing between the first through hole and a boundary of the target area, and the step of inserting a plurality of the first through holes into the expanded target area based on the second design rule of the first through hole includes: obtaining a maximum arrangable area within the target area, wherein any first boundary in the maximum arrangable area has a second boundary corresponding to the first boundary, so that the distance between the first boundary and the second boundary is the second spacing, and the second boundary is any boundary of the target area; based on the first width of the first through hole, inserting a plurality of the first through holes into the maximum arrangable area according to the first spacing.
[0007] Optionally, the first design rule of the first metal and the second metal includes a second width of the first metal, a third width of the second metal, a third spacing of the first metal, and a fourth spacing of the second metal, the second width is used to indicate a maximum width of the first metal, the third width is used to indicate a maximum width of the second metal, the third spacing is used to indicate a minimum spacing between the first metal and other metals except the first metal, and the fourth spacing is used to indicate a minimum spacing between the second metal and other metals except the second metal, and the step of expanding the area of the target region based on the first design rule of the first metal and the second metal includes: extending the boundary of the first metal along the first direction and the second direction respectively until the spacing between the first metal and other metals except the first metal is the third spacing. Spacing, and / or, extending the boundaries of the first metal along the first direction and the second direction respectively until the width of the first metal after the extended boundary is equal to the second width; extending the boundaries of the second metal along the first direction and the second direction respectively until the spacing between the second metal and other metals except the second metal is the fourth spacing, and / or, extending the boundaries of the second metal along the first direction and the second direction respectively until the width of the second metal after the extended boundary is equal to the second width; within the first design rule, moving the first metal after the extended boundary and the second metal after the extended boundary until the area of the target area is maximized; wherein, the first direction is perpendicular to the second direction, and the first direction and the second direction are respectively parallel to different boundaries of the first metal.
[0008] Optionally, the step of obtaining the first area set in the first layout includes: obtaining all adjacent stacking areas of two layers of metal in the first layout to obtain a stacking area set; and screening out stacking areas in the stacking area set that have only one through hole to obtain the first area set.
[0009] Optionally, the step of obtaining all stacking areas of two adjacent metal layers in the first layout to obtain a stacking area set includes: performing sliding window processing on the i-th layer of the first layout to obtain multiple windows of the i-th layer; traversing the multiple windows of the i-th layer to obtain all stacking areas in the i-th layer and the i+1-th layer of the first layout; wherein i is an integer, i is greater than 0 and i is less than n, and n is the number of layers of the first layout.
[0010] In the second aspect, a redundant through-hole insertion system is also provided, including: an acquisition module, used to acquire a first area set in a first layout, the first area set including multiple areas, any of the areas being a stacking area of two adjacent layers of metal, and any of the areas having only one through-hole for connecting the two adjacent layers of metal; an area expansion module, used to expand the area of a target area based on a first design rule of a first metal and a second metal, the target area being any area in the first area set, the first metal and the second metal being two adjacent layers of metal in the target area; a through-hole removal module, used to remove a first through-hole for connecting the first metal and the second metal in the target area; and a through-hole insertion module, used to insert a plurality of the first through-holes in the expanded target area based on a second design rule of the first through-hole.
[0011] Optionally, the second design rule includes a first width, a first spacing, and a second spacing of the first through hole, the first width of the first through hole being used to indicate a minimum width of the first through hole, the first spacing being used to indicate a minimum spacing between a plurality of the first through holes, and the second spacing being used to indicate a minimum spacing between the first through hole and a boundary of the target area, the through hole insertion module being further used to obtain a maximum arrangable area within the target area, any first boundary in the maximum arrangable area having a second boundary corresponding to the first boundary, so that a distance between the first boundary and the second boundary is the second spacing, and the second boundary is any boundary of the target area; based on the first width of the first through hole, a plurality of the first through holes are inserted in the maximum arrangable area according to the first spacing.
[0012] Optionally, the first design rule of the first metal and the second metal includes a second width of the first metal, a third width of the second metal, a third spacing of the first metal and a fourth spacing of the second metal, the second width is used to indicate a maximum width of the first metal, the third width is used to indicate a maximum width of the second metal, the third spacing is used to indicate a minimum spacing between the first metal and other metals except the first metal, and the fourth spacing is used to indicate a minimum spacing between the second metal and other metals except the second metal, the area expansion module is further used to extend the boundary of the first metal along the first direction and the second direction respectively until the spacing between the first metal and other metals except the first metal is the third spacing, and / or, the first metal The boundaries of the second metal are respectively extended along the first direction and the second direction until the width of the first metal after the extended boundary is equal to the second width; the boundaries of the second metal are respectively extended along the first direction and the second direction until the spacing between the second metal and other metals except the second metal is the fourth spacing, and / or, the boundaries of the second metal are respectively extended along the first direction and the second direction until the width of the second metal after the extended boundary is equal to the second width; within the first design rule, the first metal after the extended boundary and the second metal after the extended boundary are moved until the area of the target area is maximized; wherein the first direction is perpendicular to the second direction, and the first direction and the second direction are respectively parallel to different boundaries of the first metal.
[0013] Optionally, the acquisition module is further used to acquire all adjacent stacking areas of two layers of metal in the first layout to obtain a stacking area set; and filter out stacking areas with only one through hole in the stacking area set to obtain the first area set.
[0014] Optionally, the acquisition module is also used to perform sliding window processing on the i-th layer of the first layout to obtain multiple windows of the i-th layer; traverse the multiple windows of the i-th layer to obtain all stacking areas in the i-th layer and the i+1-th layer of the first layout; wherein i is an integer, i is greater than 0 and i is less than n, and n is the number of layers of the first layout.
[0015] In a third aspect, a computer device is also provided, comprising: a memory and a processor, wherein the memory stores at least one computer program, and the at least one computer program is loaded and executed by the processor, thereby executing the redundant through hole insertion method described in the above embodiment.
[0016] In a fourth aspect, a computer-readable storage medium is further provided, wherein at least one computer program is stored in the computer-readable storage medium, and the at least one computer program is loaded and executed by a processor, thereby executing the redundant through-hole insertion method described in the above embodiment.
[0017] In a fifth aspect, a computer program product is also provided, comprising a computer program / instruction, wherein when the computer program / instruction is executed by a processor, the method described in the first aspect is implemented.
[0018] In a sixth aspect, an integrated circuit structure is also provided, wherein the integrated circuit structure is designed using the redundant through hole insertion method described in the first aspect.
[0019] The unexpected beneficial effects brought about by the technical solution provided by the embodiments of the present disclosure include at least:
[0020] In the disclosed embodiment, after the area of the target region is expanded, the first through hole is first removed, and then multiple first through holes are inserted into the target region after the area is expanded, which is equivalent to re-planning the positions of multiple first through holes in the target region after the area is expanded. Compared with the case where the first through hole is not removed, the unexpected effect of this method is that more redundant through holes can be inserted into the target region after the area is expanded to a certain extent. In addition, since the expansion of the area of the target region is implemented based on the first design rule and the insertion of multiple first through holes is implemented based on the second design rule, all modification actions on the layout are within the scope of the design rules, so that the entire process of inserting redundant through holes will not go wrong, which can reduce the process of repeated inspection and modification in the later stage, and thus can speed up the insertion of redundant through holes. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0022] Figure 1 A flowchart of a redundant through-hole insertion method provided by an exemplary embodiment of the present disclosure is shown;
[0023] Figure 2 is a schematic diagram of a first metal and a second metal;
[0024] Figure 3 A schematic diagram of inserting redundant through holes;
[0025] Figure 4A flowchart of a redundant through-hole insertion method provided by another exemplary embodiment of the present disclosure is shown;
[0026] Figure 5 is a schematic diagram of the second width and the third spacing;
[0027] Figure 6 A schematic diagram of extending the boundary of the first metal along the first direction and the second direction respectively;
[0028] Figure 7 is a schematic diagram of a first width, a first spacing, and a second spacing;
[0029] Figure 8 A schematic diagram of inserting a plurality of first through holes in a maximum arrangable area;
[0030] Fig. 9 A schematic structural diagram of a redundant through-hole insertion system provided by an exemplary embodiment of the present disclosure is shown;
[0031] Fig.10 It is a schematic diagram of the structure of a computer device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0032] Unless otherwise defined, the technical terms or scientific terms used herein shall have the usual meanings understood by persons with ordinary skills in the field to which the present disclosure belongs. The words "first", "second", "third" and similar words used in the patent application specification and claims of the present disclosure do not indicate any order, quantity or importance, but are only used to distinguish different components. Similarly, words such as "one" or "one" do not indicate a quantity limitation, but indicate the existence of at least one. Words such as "include" or "comprise" and similar words mean that the elements or objects appearing before "include" or "comprise" include the elements or objects listed after "include" or "comprise" and their equivalents, and do not exclude other elements or objects. Words such as "connect" or "connected" and similar words are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "Up", "down", "left", "right", etc. are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly. A and / or B means that there are three situations: A, B, and A and B.
[0033] In order to make the objectives, technical solutions and advantages of the present disclosure more clear, the embodiments of the present disclosure will be further described in detail below with reference to the accompanying drawings.
[0034] Figure 1 A flowchart of a redundant through-hole insertion method provided by an exemplary embodiment of the present disclosure is shown, and the method can be executed by a computer device. Figure 1 , the method comprising:
[0035] In step 101, a first region set in a first layout is obtained.
[0036] The first region set includes a plurality of regions, any one of which is a stacking region of two adjacent metal layers, and any one of which has only one through hole for connecting two adjacent metal layers.
[0037] Optionally, step 101 includes the following steps ab.
[0038] Step a, obtaining all adjacent stacking areas of two metal layers in the first layout to obtain a stacking area set.
[0039] Here, the first layout is an electronic layout that has been designed, and the electronic layout that has been designed usually includes multiple layers. In the embodiment of the present disclosure, the first layout includes n layers, where n is a positive integer.
[0040] When executing step a, the stacking area between the current layer and the next layer is obtained layer by layer. For example, the stacking area from the 1st layer to the 2nd layer is obtained first, and then the stacking area from the 2nd layer to the 3rd layer is obtained... and so on, and finally the stacking area from the n-1th layer to the nth layer is obtained, so as to obtain the stacking area set.
[0041] In this case, for the stacking region from the i-th layer to the i+1-th layer, step a includes the following two steps:
[0042] In the first step, a sliding window process is performed on the i-th layer of the first layout to obtain multiple windows of the i-th layer.
[0043] The full name of sliding window is sliding window. The sliding window algorithm can be used for image segmentation. The principle of the sliding window algorithm is that a window of a preset size (usually a rectangular frame) slides (moves) on the image to be segmented according to the step size. Each sliding obtains a window, so multiple windows can be obtained; the image in each window is a part of the image to be segmented. Here, the step size is used to indicate how many pixels the window moves once.
[0044] The size and step length of the window can be set according to experience, and the embodiments of the present disclosure do not limit this. There are many implementation methods of the sliding window algorithm in the related art, and detailed description is omitted here.
[0045] The second step is to traverse multiple windows of the i-th layer to obtain all stacking areas in the i-th layer and the i+1-th layer of the first layout.
[0046] The first step is to divide the first layout of the i-th layer into multiple smaller windows. By traversing each window of the i-th layer in turn, the query efficiency of the stacking area can be optimized.
[0047] When executing the second step, for any window, if the window includes only a portion of the stacking area, the complete stacking area can also be selected through the partial stacking area. If the window includes the complete stacking area, the stacking area can be directly selected without additional processing.
[0048] Step b, filtering out the stacking regions having only one through hole in the stacking region set to obtain a first region set,
[0049] After the stacking regions are determined, the number of through holes in each stacking region may be detected. If the number of through holes in a stacking region is 1, it indicates that the stacking region is a region in the first region set.
[0050] Here, i is an integer, i is greater than 0 and i is less than n.
[0051] In a possible implementation, the first region set may not be obtained, but the number of through holes in each stacking region in the entire first layout may be checked step by step in a certain order. When there is only one through hole for connecting two adjacent metal layers in a stacking region, the check is stopped and steps 102-104 are performed on the stacking region, and then the number of through holes in the remaining stacking regions is checked. The above steps are repeated until each stacking region has been checked.
[0052] The embodiment of the present disclosure does not limit the order of checking each stacking area in the entire first layout.
[0053] In step 102 , the area of the target region is enlarged based on first design rules of the first metal and the second metal.
[0054] The target area is any area in the first area set.
[0055] Figure 2 Schematic diagram of the first metal and the second metal. Figure 2 Part (a) is a top view of the first metal and the second metal. Figure 2 As shown in part (a) of FIG. 1 , the shaded area is the stacking area of the first metal 201 and the second metal 202 , that is, the target area 204 . There is only one first through hole 203 in the target area. Figure 2 Part (b) is a cross-sectional view of the first metal and the second metal along the AB direction. Figure 2 As shown in part (b), the first through hole 203 penetrates the first metal 201 and the second metal 202 , that is, the first through hole 203 is used to connect the first metal 201 and the second metal 202 .
[0056] In step 103 , a first through hole in a target region for connecting a first metal and a second metal is removed.
[0057] Here, since the target area is an area in the first area set, there is only one through hole in the target area, and the through hole is also the first through hole.
[0058] In step 104 , a plurality of first through holes are inserted into the enlarged target area based on the second design rule of the first through holes.
[0059] Since the area of the target region is enlarged, multiple first through holes can be inserted into the target region (ie, the shape and size of the inserted through holes are the same as the first through holes removed in step 103 ), thereby inserting redundant through holes.
[0060] In the embodiment of the present disclosure, for other regions in the first region set except the target region, the above steps 102 - 104 are also used to insert redundant through holes, so that redundant through holes can be inserted into each region in the first region set.
[0061] In the disclosed embodiment, the above steps 101 - 104 may be performed after the layout design of the integrated circuit is completed and before tapeout, so that a single via in the designed layout can be checked and a redundant via can be inserted at the single via.
[0062] In the disclosed embodiment, after the area of the target region is expanded, the first through hole is first removed, and then multiple first through holes are inserted into the target region after the area is expanded, which is equivalent to re-planning the positions of multiple first through holes in the target region after the area is expanded. Compared with the case where the first through hole is not removed, the unexpected effect of this method is that more redundant through holes can be inserted into the target region after the area is expanded to a certain extent. In addition, since the expansion of the area of the target region is implemented based on the first design rule and the insertion of multiple first through holes is implemented based on the second design rule, all modification actions on the layout are within the scope of the design rules, so that the entire process of inserting redundant through holes will not go wrong, which can reduce the process of repeated inspection and modification in the later stage, and thus can speed up the insertion of redundant through holes.
[0063] Figure 3 Schematic diagram for inserting redundant through holes. Figure 3 Part (a) is implemented in the manner of the embodiment of the present disclosure. Figure 2 Based on the schematic diagram of inserting redundant vias, Figure 3 Part (b) is in Figure 2 Schematic diagram of directly inserting redundant through holes after expanding the target area based on the . Figure 3As shown in part (a) of FIG. 3 , in the target area 301 after the area is enlarged, the Figure 2 The original first through holes 203 are re-planned according to the second design rule, so that three through holes can be arranged in the target area 301 after the area is enlarged, which is equivalent to inserting two redundant through holes.
[0064] like Figure 3 As shown in part (b) of Figure 2 Instead of the original first through hole 203 in the target area 301, a redundant through hole 302 is directly inserted into the target area 301 after the area is enlarged, which is equivalent to having only one redundant through hole. It can be seen that even if the area of the target area is enlarged, the number of redundant through holes obtained by using different methods of inserting redundant through holes is different. Compared with directly inserting redundant through holes without removing through holes, the redundant through hole insertion method of first removing the original through holes and then re-planning the positions of the through holes according to the design rules in the embodiment of the present disclosure can insert more redundant through holes.
[0065] Figure 4 A flowchart of a redundant through-hole insertion method provided by another exemplary embodiment of the present disclosure is shown, and the method can be executed by a computer device. Figure 4 , the method comprising:
[0066] In step 401, a first region set in a first layout is obtained.
[0067] The relevant contents of step 401 refer to the aforementioned step 101, and the detailed description is omitted here.
[0068] In step 402 , the area of the target region is enlarged based on first design rules of the first metal and the second metal.
[0069] The target region is any region in the first region set, and the first metal and the second metal are two adjacent layers of metal in the target region.
[0070] Optionally, the first design rule of the first metal and the second metal includes: a second width of the first metal (which can be represented by width2), a third width of the second metal (which can be represented by width3), a third spacing of the first metal (which can be represented by space2) and a fourth spacing of the second metal (which can be represented by space3).
[0071] The second width is used to indicate the maximum width of the first metal, the third width is used to indicate the maximum width of the second metal, the third spacing is used to indicate the minimum spacing between the first metal and other metals except the first metal, and the fourth spacing is used to indicate the minimum spacing between the second metal and other metals except the second metal. Here, other metals except the first metal refer to metals located in the same layer as the first metal; other metals except the second metal refer to metals located in the same layer as the second metal.
[0072] Figure 5 is a schematic diagram of the second width and the third spacing. Figure 5 As shown, the first direction x is the row direction, and the second direction y is the column direction. Along the first direction x, there is another metal 501 located in the same layer as the first metal 201, and there is no other metal between the other metal 501 and the first metal 201 in the layer. Then, in the first design rule, the third spacing space2 of the first metal 201 is the minimum distance allowed between the other metal 501 and the first metal 201.
[0073] The same is true for other metals in other directions. For example, for other metal 502 in the second direction y, the minimum distance allowed between the other metal 502 and the first metal 201 is also the third spacing space2 of the first metal 201 .
[0074] like Figure 5 As shown, the width width of the first metal 201 represents the distance between the upper boundary and the lower boundary of the first metal in the second direction y, and the second width width2 is the maximum value that the width width of the first metal 201 can take.
[0075] The third width of the second metal and the fourth spacing of the second metal are similar to the second width of the first metal and the third spacing of the first metal, and detailed description is omitted here.
[0076] In this case, optionally, step 402 includes the following steps ce.
[0077] Step c, extending the boundaries of the first metal along the first direction and the second direction respectively until the spacing between the first metal and other metals except the first metal is a third spacing, and / or, extending the boundaries of the first metal along the first direction and the second direction respectively until the width of the first metal after the extended boundaries is equal to the second width.
[0078] The first direction is perpendicular to the second direction, and the first direction and the second direction are respectively parallel to different boundaries of the first metal.
[0079] In a possible implementation, the first direction is a row direction, and the first direction is parallel to the upper boundary and the lower boundary of the first metal; the second direction is a column direction, and the second direction is parallel to the left boundary and the right boundary of the first metal.
[0080] In a possible implementation, the first direction is a column direction, and the first direction is parallel to the left and right boundaries of the first metal; the second direction is a row direction, and the second direction is parallel to the upper and lower boundaries of the first metal.
[0081] Step c is mainly used to extend the boundary of the first metal along the first direction and the second direction respectively. When the other metals around the first metal are different, the action of extending the boundary in step c is also different, mainly including the following three situations. Figure 6 The schematic diagram of extending the boundary of the first metal along the first direction and the second direction respectively is shown below. Figure 6 Three situations of step c are described below.
[0082] The first case: the first metal is extended along the first direction and the second direction respectively until the distance between the first metal and other metals except the first metal is the third distance.
[0083] The width of the first metal in the first case may be smaller than the second width. Figure 6 Part (a) of is a schematic diagram of the first case, as shown in Figure 6 As shown in part (a), after the first metal 201 extends along the first direction x and the second direction y, the first metal 201 cannot extend along the second direction y any further because the minimum spacing between the first metal 201 and the other metal 502 has reached the third spacing space2. Similarly, the first metal 201 cannot extend in the opposite direction of the second direction y. At this time, the width of the first metal 201 has reached the maximum value, but the maximum value is less than the second width width2.
[0084] The second situation: the first metal is extended along the first direction and the second direction respectively until the width of the first metal after the extended boundary is equal to the second width.
[0085] In the second case, the distance between the first metal and other metals except the first metal may be larger than that between the other metals.
[0086] Figure 6 Part (b) of is a schematic diagram of the second case, as Figure 6As shown in part (b) of FIG. 5 , after the first metal 201 extends along the first direction x and the second direction y, the first metal 201 cannot extend along the second direction y or the opposite direction of the second direction y because the width of the first metal 201 has reached the second width width2. At this time, the spacing between the first metal 201 and the other metal 502 is greater than the third spacing space2.
[0087] The third situation: the first metal is extended along the first direction and the second direction respectively until the distance between the first metal and other metals except the first metal is the third distance, and the width of the first metal after the extended boundary is equal to the second width.
[0088] Figure 6 Part (c) of is a schematic diagram of the third case, as shown in Figure 6 As shown, in this case, the width of the first metal 201 reaches the second width width2, and the spacing between the first metal 201 and other metals 502, and between other metals 501 are all the third spacing space2.
[0089] Step d: extending the boundary of the second metal along the first direction and the second direction respectively until the spacing between the second metal and other metals except the second metal is a fourth spacing, and / or extending the boundary of the second metal along the first direction and the second direction respectively until the width of the second metal after the extended boundary is equal to the second width.
[0090] Optionally, step d can also be divided into the following three situations. The implementation principles of the three situations in step d refer to step c, and detailed description is omitted here.
[0091] The first case: the second metal is extended along the first direction and the second direction respectively until the distance between the second metal and other metals except the second metal is the fourth distance.
[0092] The second situation: the second metal is extended along the first direction and the second direction respectively until the width of the second metal after the extended boundary is equal to the second width.
[0093] The third situation: the second metal is extended along the first direction and the second direction respectively until the distance between the second metal and other metals except the second metal is the fourth distance, and the width of the second metal after the extended boundary is equal to the second width.
[0094] Step e: within the first design rule, move the first metal behind the elongated boundary and the second metal behind the elongated boundary until the area of the target region is maximized.
[0095] When moving the first metal behind the elongated boundary and the second metal behind the elongated boundary, it is necessary to ensure that the maximum stacking area is achieved while satisfying the first design rule. In implementation, optionally, the first metal behind the elongated boundary can be gradually translated according to the set pixel value while satisfying the first design rule, and then the second metal behind the elongated boundary can be gradually translated according to the set pixel value while satisfying the first design rule, and the area of the stacking area after each translation and the position of the first metal and the second metal can be recorded during the above translation process, so that the area values of multiple stacking areas can be obtained, and the area value of each stacking area corresponds to the position of a first metal and a second metal. Finally, the area values of multiple stacking areas are sorted according to size, and the position of the first metal and the second metal corresponding to the maximum area value of the stacking area is the case where the area of the target area is the largest.
[0096] In step 403 , a first through hole in a target region for connecting a first metal and a second metal is removed.
[0097] In step 404 , a plurality of first through holes are inserted into the enlarged target region based on the second design rule of the first through hole.
[0098] Optionally, the second design rule includes a first width, a first spacing, and a second spacing of the first through hole. The first width of the first through hole (which can be represented by width1) is used to indicate the minimum width of the first through hole, the first spacing (which can be represented by space1) is used to indicate the minimum spacing between multiple first through holes, and the second spacing (which can be represented by enclosure) is used to indicate the minimum spacing between the first through hole and the boundary of the target area.
[0099] When inserting multiple first through holes, in order to insert as many first through holes as possible, the width of the first through hole is usually set to the first width. The width of the first through hole mentioned later is defaulted to the first width. The width of the first through hole is used to indicate the size of the first through hole.
[0100] Figure 7 is a schematic diagram of the first width, the first spacing, and the second spacing. Figure 7 As shown, in the target area 301 after the area is enlarged, the width of the first through hole 203 is the first width width1. The minimum distance between the first through hole 203 and the boundary of the target area 301 after the area is enlarged is the second spacing, that is, the distance between the first through hole 203 and any boundary of the target area 301 cannot be less than the second spacing. The minimum distance between the first through hole 203 and other through holes in the target area 301 is the first spacing space1, that is, the distance between the first through hole 203 and other through holes in the target area 301 cannot be less than the first spacing space1.
[0101] In this case, optionally, step 404 includes the following steps fg:
[0102] Step f, obtaining the maximum arrangable area in the target area.
[0103] Among them, any first boundary in the maximum arrangable area has a second boundary corresponding to the first boundary, so that the distance between the first boundary and the second boundary is the second spacing, and the second boundary is any boundary of the target area.
[0104] Step g: inserting a plurality of first through holes in the maximum arrangeable area at a first pitch based on the first width of the first through hole.
[0105] When inserting multiple first through holes, the spacing between each arranged first through hole and the first first through hole adjacent to it in the row direction is the first spacing, and the spacing between each arranged first through hole and the first first through hole adjacent to it in the column direction is the first spacing.
[0106] Figure 8 FIG. 1 is a schematic diagram of inserting a plurality of first through holes in the maximum arrangable area. Figure 8 As shown, any first boundary in the maximum arrangable area 801 has a second boundary corresponding to the first boundary, so that the distance between the first boundary and the second boundary is the second spacing. For example, the first boundary is the upper boundary of the maximum arrangable area 801, and the second boundary corresponding to the first boundary is the upper boundary of the target area 301, and the distance between the first boundary and the corresponding second boundary is the second spacing.
[0107] When inserting the first through hole in the maximum arrangable area 801, a first through hole may be inserted in the upper left corner first, and then a first through hole may be inserted along the row direction at a position where the distance from the first through hole is the first spacing space1, and so on, so that the first through hole in the first row may be obtained. If the distance between the right boundary of a first through hole in the first row and the right boundary of the maximum arrangable area 801 is less than the first width plus the first spacing, then the first through hole is the last first through hole in the first row.
[0108] Then it can be determined whether the distance between the lower boundary of the first through hole in the first row and the lower boundary of the maximum arrangable area 801 is less than the first width plus the first spacing. If the distance is less than the first width plus the first spacing, it means that the first through hole in the second row cannot be inserted. At this time, the first through hole in the first row is all the first through holes inserted in the maximum arrangable area 801. If the distance is greater than or equal to the first width plus the first spacing, the next row of the first row, that is, the first through hole in the second row, is inserted, and so on, until the distance between the lower boundary of the first through hole in a certain row and the lower boundary of the maximum arrangable area 801 is less than the first width plus the first spacing, and the row is the last row of first through holes. In this way, it is possible to insert the most first through holes in the maximum arrangable area 801.
[0109] like Figure 8 As shown, after inserting three first through holes in the first row, the remaining space in the first row is not enough to insert one first through hole, that is, the distance between the right boundary of the first through hole 802 and the right boundary of the maximum arrangable area 801 is less than the first width plus the first spacing. In addition, the distance between the lower boundary of the first through hole in the first row and the lower boundary of the maximum arrangable area 801 is also less than the first width plus the first spacing, so the first through hole in the second row cannot be inserted at this time. That is, the target area 301 can only insert a maximum of three first through holes within the first design rule.
[0110] In the embodiment of the present disclosure, for other regions in the first region set except the target region, the above steps 402-404 are also used to insert redundant through holes, so that redundant through holes can be inserted into each region in the first region set.
[0111] In some embodiments, the order of step 402 and step 403 may be swapped, that is, the above steps are performed in the order of step 401 - step 403 - step 402 - step 404. The embodiment of the present disclosure does not limit the order of step 402 and step 403.
[0112] During implementation, the method in the embodiments of the present disclosure may be automatically executed by a computer program without manual search.
[0113] In the disclosed embodiment, after the area of the target region is expanded, the first through hole is first removed, and then multiple first through holes are inserted into the target region after the area is expanded, which is equivalent to re-planning the positions of multiple first through holes in the target region after the area is expanded. Compared with the case where the first through hole is not removed, the unexpected effect of this method is that more redundant through holes can be inserted into the target region after the area is expanded to a certain extent. In addition, since the expansion of the area of the target region is implemented based on the first design rule and the insertion of multiple first through holes is implemented based on the second design rule, all modification actions on the layout are within the scope of the design rules, so that the entire process of inserting redundant through holes will not go wrong, which can reduce the process of repeated inspection and modification in the later stage, and thus can speed up the insertion of redundant through holes.
[0114] The following is a system embodiment of the present application. For details not described in detail in the system embodiment, reference may be made to the above method embodiment.
[0115] Fig. 9 FIG. 1 shows a schematic diagram of a redundant through-hole insertion system provided by an exemplary embodiment of the present disclosure. Fig. 9 The redundant through-hole insertion system 900 includes: an acquisition module 901 , an area expansion module 902 , a through-hole removal module 903 , and a through-hole insertion module 904 .
[0116] The acquisition module 901 is used to acquire a first area set in the first layout, the first area set includes multiple areas, any area is a stacking area of two adjacent metal layers, and any area has only one through hole for connecting two adjacent metal layers.
[0117] The area expansion module 902 is used to expand the area of the target area based on the first design rule of the first metal and the second metal, where the target area is any area in the first area set, and the first metal and the second metal are two adjacent metal layers in the target area.
[0118] The through-hole removal module 903 is used to remove a first through-hole in a target area for connecting a first metal and a second metal.
[0119] The through-hole insertion module 904 is used to insert a plurality of first through-holes into the enlarged target area based on the second design rule of the first through-holes.
[0120] Optionally, the second design rule includes a first width, a first spacing, and a second spacing of the first through hole, the first width of the first through hole is used to indicate the minimum width of the first through hole, the first spacing is used to indicate the minimum spacing between multiple first through holes, and the second spacing is used to indicate the minimum spacing between the first through hole and the boundary of the target area. The through hole insertion module 904 is also used to obtain the maximum arrangable area in the target area, and any first boundary in the maximum arrangable area has a second boundary corresponding to the first boundary, so that the distance between the first boundary and the second boundary is the second spacing, and the second boundary is any boundary of the target area; based on the first width of the first through hole, multiple first through holes are inserted in the maximum arrangable area according to the first spacing.
[0121] Optionally, the first design rule of the first metal and the second metal includes a second width of the first metal, a third width of the second metal, a third spacing of the first metal, and a fourth spacing of the second metal, the second width is used to indicate a maximum width of the first metal, the third width is used to indicate a maximum width of the second metal, the third spacing is used to indicate a minimum spacing between the first metal and other metals except the first metal, and the fourth spacing is used to indicate a minimum spacing between the second metal and other metals except the second metal, and the area expansion module 902 is further used to extend the boundary of the first metal along the first direction and the second direction respectively until the spacing between the first metal and other metals except the first metal is the third spacing, and / or Or, the first metal is extended along the first direction and the second direction respectively until the width of the first metal behind the extended boundary is equal to the second width; the second metal is extended along the first direction and the second direction respectively until the spacing between the second metal and other metals except the second metal is a fourth spacing, and / or, the second metal is extended along the first direction and the second direction respectively until the width of the second metal behind the extended boundary is equal to the second width; within the first design rule, the first metal behind the extended boundary and the second metal behind the extended boundary are moved until the area of the target area is maximized; wherein the first direction is perpendicular to the second direction, and the first direction and the second direction are parallel to different boundaries of the first metal respectively.
[0122] Optionally, the acquisition module 901 is further used to acquire all adjacent stacking areas of two layers of metal in the first layout to obtain a stacking area set; and filter out stacking areas with only one through hole in the stacking area set to obtain a first area set.
[0123] Optionally, the acquisition module 901 is also used to perform sliding window processing on the i-th layer of the first layout to obtain multiple windows of the i-th layer; traverse the multiple windows of the i-th layer to obtain all stacking areas in the i-th layer and the i+1-th layer of the first layout; wherein i is an integer, i is greater than 0 and i is less than n, and n is the number of layers of the first layout.
[0124] It should be noted that: when the redundant through-hole insertion system provided in the above embodiment is used to insert a redundant through-hole, only the division of the above functional modules is used as an example. In actual applications, the above functional distribution can be completed by different functional modules as needed, that is, the internal structure of the system is divided into different functional modules to complete all or part of the functions described above. In addition, the redundant through-hole insertion system provided in the above embodiment and the redundant through-hole insertion method embodiment belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0125] The division of modules in the embodiments of the present disclosure is schematic and is only a logical function division. There may be other division methods in actual implementation. In addition, each functional module in each embodiment of the present disclosure may be integrated into a processor, or may exist physically separately, or two or more modules may be integrated into one module. The above-mentioned integrated modules may be implemented in the form of hardware or in the form of software functional modules.
[0126] If the integrated module is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present disclosure is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions to enable a terminal device (which can be a personal computer, mobile phone, or communication device, etc.) or a processor (processor) to execute all or part of the steps of the method of each embodiment of the present disclosure. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc., various media that can store program codes.
[0127] Fig.10 Schematic diagram of the structure of the computer device provided by the embodiment of the present disclosure. Fig.10 As shown, the computer device 1000 includes: a processor 1001 and a memory 1002 .
[0128] The processor 1001 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 1001 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor 1001 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 1001 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 1001 may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.
[0129] The memory 1002 may include one or more computer-readable storage media, which may be non-transitory. The memory 1002 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 1002 is used to store at least one instruction, which is used to be executed by the processor 1001 to implement the redundant through-hole insertion method provided in the embodiment of the present disclosure.
[0130] Those skilled in the art will understand that Fig.10 The structure shown in the figure does not constitute a limitation on the computer device 1000, and the computer device 1000 may include more or less components than those shown in the figure, or combine some components, or adopt a different arrangement of components.
[0131] The embodiment of the present disclosure also provides a non-transitory computer-readable storage medium. When the instructions in the storage medium are executed by a processor of a computer device, the computer device is enabled to execute the redundant through-hole insertion method provided in the embodiment of the present disclosure.
[0132] The embodiment of the present disclosure further provides a computer program product, including a computer program / instruction, which implements the redundant through-hole insertion method provided in the embodiment of the present disclosure when the computer program / instruction is executed by a processor.
[0133] The embodiments of the present disclosure also provide an integrated circuit structure, which is designed using the redundant through-hole insertion method provided in the embodiments of the present disclosure.
[0134] The above description is only an optional embodiment of the present disclosure and is not intended to limit the present disclosure. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present disclosure shall be included in the protection scope of the present disclosure.
Claims
1. A redundant through-hole insertion method, characterized in that: The method comprises: Acquire a first region set in a first layout, wherein the first region set includes a plurality of regions, any one of the regions is a stacking region of two adjacent metal layers, and any one of the regions has only one through hole for connecting the two adjacent metal layers; Based on the first design rule of the first metal and the second metal, the area of the target region is expanded, the target region is any region in the first region set, and the first metal and the second metal are two adjacent layers of metal in the target region; removing a first through hole in the target area for connecting the first metal and the second metal; Based on the second design rule of the first through holes, a plurality of the first through holes are inserted into the enlarged target area.
2. The redundant through hole insertion method according to claim 1, characterized in that: The second design rule includes a first width, a first spacing, and a second spacing of the first through hole, wherein the first width of the first through hole is used to indicate a minimum width of the first through hole, the first spacing is used to indicate a minimum spacing between a plurality of the first through holes, and the second spacing is used to indicate a minimum spacing between the first through hole and a boundary of the target area. The step of inserting a plurality of the first through holes in the enlarged target area based on the second design rule of the first through holes comprises: Acquire a maximum arrangable area in the target area, wherein any first boundary in the maximum arrangable area has a second boundary corresponding to the first boundary, so that the distance between the first boundary and the second boundary is the second spacing, and the second boundary is the boundary of the target area; Based on the first width of the first through hole, a plurality of the first through holes are inserted into the maximum arrangeable area according to the first pitch.
3. The redundant through hole insertion method according to claim 1, characterized in that: The first design rule of the first metal and the second metal includes a second width of the first metal, a third width of the second metal, a third spacing of the first metal, and a fourth spacing of the second metal, wherein the second width is used to indicate a maximum width of the first metal, the third width is used to indicate a maximum width of the second metal, the third spacing is used to indicate a minimum spacing between the first metal and other metals except the first metal, and the fourth spacing is used to indicate a minimum spacing between the second metal and other metals except the second metal. The step of expanding the area of the target region based on the first design rule of the first metal and the second metal comprises: The first metal is extended along the first direction and the second direction respectively until the distance between the first metal and other metals except the first metal is the third distance, and / or, Extending the first metal along the first direction and the second direction respectively until the width of the first metal after the extended border is equal to the second width; The second metal is extended along the first direction and the second direction respectively until the distance between the second metal and other metals except the second metal is the fourth distance, and / or, Extending the second metal along the first direction and the second direction respectively until the width of the second metal after the extended boundaries is equal to the second width; Within the first design rule, moving the first metal behind the elongated boundary and the second metal behind the elongated boundary until the area of the target region is maximized; The first direction is perpendicular to the second direction, and the first direction and the second direction are respectively parallel to different boundaries of the first metal.
4. The redundant through hole insertion method according to any one of claims 1 to 3, characterized in that: The step of obtaining the first area set in the first layout includes: Acquire all adjacent stacking regions of two metal layers in the first layout to obtain a stacking region set; The stacking regions having only one through hole in the stacking region set are screened out to obtain the first region set.
5. The redundant through hole insertion method according to claim 4, characterized in that: The step of obtaining all adjacent stacking areas of two metal layers in the first layout to obtain a stacking area set includes: Performing sliding window processing on the i-th layer of the first layout to obtain multiple windows of the i-th layer; Traversing the multiple windows of the i-th layer to obtain all stacking areas in the i-th layer and the (i+1)-th layer of the first layout; Wherein, i is an integer, i is greater than 0 and i is less than n, and n is the number of layers of the first layout.
6. A redundant through-hole insertion system, characterized in that: The system comprises: An acquisition module, configured to acquire a first region set in a first layout, wherein the first region set includes a plurality of regions, any of which is a stacking region of two adjacent metal layers, and any of which has only one through hole for connecting the two adjacent metal layers; An area expansion module, used for expanding the area of a target area based on a first design rule of a first metal and a second metal, wherein the target area is any area in the first area set, and the first metal and the second metal are two adjacent layers of metal in the target area; A through hole removal module, used for removing a first through hole in the target area for connecting the first metal and the second metal; The through-hole insertion module is used to insert a plurality of the first through-holes into the enlarged target area based on the second design rule of the first through-holes.
7. The redundant through hole insertion system according to claim 6, characterized in that: The second design rule includes a first width, a first spacing, and a second spacing of the first through hole, wherein the first width of the first through hole is used to indicate a minimum width of the first through hole, the first spacing is used to indicate a minimum spacing between a plurality of the first through holes, and the second spacing is used to indicate a minimum spacing between the first through hole and a boundary of the target area. The through-hole insertion module is further used to obtain the maximum arrangable area in the target area, and any first boundary in the maximum arrangable area has a second boundary corresponding to the first boundary, so that the distance between the first boundary and the second boundary is the second spacing, and the second boundary is the boundary of the target area; Based on the first width of the first through hole, a plurality of the first through holes are inserted into the maximum arrangeable area according to the first pitch.
8. The redundant through hole insertion system according to claim 6, characterized in that The first design rule of the first metal and the second metal includes a second width of the first metal, a third width of the second metal, a third spacing of the first metal, and a fourth spacing of the second metal, wherein the second width is used to indicate a maximum width of the first metal, the third width is used to indicate a maximum width of the second metal, the third spacing is used to indicate a minimum spacing between the first metal and other metals except the first metal, and the fourth spacing is used to indicate a minimum spacing between the second metal and other metals except the second metal. The area expansion module is further used to extend the boundary of the first metal along the first direction and the second direction respectively until the distance between the first metal and other metals except the first metal is the third distance, and / or, Extending the first metal along the first direction and the second direction respectively until the width of the first metal after the extended border is equal to the second width; The second metal is extended along the first direction and the second direction respectively until the distance between the second metal and other metals except the second metal is the fourth distance, and / or, Extending the second metal along the first direction and the second direction respectively until the width of the second metal after the extended boundaries is equal to the second width; Within the first design rule, moving the first metal behind the elongated boundary and the second metal behind the elongated boundary until the area of the target region is maximized; The first direction is perpendicular to the second direction, and the first direction and the second direction are respectively parallel to different boundaries of the first metal.
9. The redundant through hole insertion system according to any one of claims 6 to 8, characterized in that: The acquisition module is further used to acquire all adjacent stacking regions of two metal layers in the first layout to obtain a stacking region set; The stacking regions having only one through hole in the stacking region set are screened out to obtain the first region set.
10. The redundant through hole insertion system according to claim 9, characterized in that The acquisition module is further used to perform sliding window processing on the i-th layer of the first layout to obtain multiple windows of the i-th layer; Traversing the multiple windows of the i-th layer to obtain all stacking areas in the i-th layer and the (i+1)-th layer of the first layout; Wherein, i is an integer, i is greater than 0 and i is less than n, and n is the number of layers of the first layout.
11. An integrated circuit structure, characterized in that: The redundant through hole insertion method is designed by adopting any one of claims 1 to 5.
Citation Information
Patent Citations
Method for automatically appending redundant hole for chip physical layout
CN103123657A
The use of redundant routes to increase the yield and reliability of a VLSI layout
US20060265684A1