Metal wire filling method and related equipment
By using the metal wire filling method in the FinFET process, the filling requirements are judged based on the vertical coordinates of the logical points, and the filling shape is generated according to the design rules, the problem of complex constraints of metal wires in the FinFET process is solved, and the wiring quality and design reliability are improved.
Patent Information
- Application Number
- CN202510390182.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-31
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2045-03-31
AI Technical Summary
In the FinFET process, the minimum area DRC constraint of metal wires becomes complicated, and additional conditions of multiple mask technology and FinTrack technology need to be met, resulting in the quality of wiring results being affected, and the calculation overhead of existing algorithms is large.
A metal wire filling method is proposed. By obtaining the vertical coordinates of the logical points, it determines whether metal wire filling needs to be performed, and checks the filling shape according to the design rules, and gradually adds it to the wiring results to ensure that the metal wire meets the manufacturing process requirements.
This method can accurately identify the connection requirements between different metal layers, reduce circuit performance problems and manufacturing failures caused by violation of rules, and improve design reliability and manufacturability.
Smart Images

Figure CN119886038A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and more specifically, to a metal wire filling method and related equipment. Background Art
[0002] With the continuous development of FinFET (Fin Field Effect Transistor) technology, the complexity of wiring in integrated circuit design has increased significantly. FinFET is a new transistor structure, and its emergence has changed the manufacturing process and design method of integrated circuits. In the FinFET process, due to the use of multiple mask technology and FinTrack technology, the DRC constraint of the minimum area of metal lines has become more complicated. In addition to meeting the single area value required by the planar process, it is also necessary to meet additional conditions such as the length of all edges of the metal line, the minimum edge length, and the minimum continuous edge length. If these newly added additional conditions are ignored in the design and only a single area constraint is simply met, the quality of the wiring results will be seriously affected. On the other hand, if all constraints are judged one by one, although the accuracy of the design can be guaranteed, the calculation overhead of the algorithm will be greatly increased. Therefore, it is urgent to propose a metal line filling method that balances the requirements of performance and accuracy. Summary of the invention
[0003] A series of simplified concepts are introduced in the Summary of the Invention section, which will be further described in detail in the Detailed Description of the Invention section. The Summary of the Invention section of this application does not mean to attempt to define the key features and essential technical features of the claimed technical solution, nor does it mean to attempt to determine the scope of protection of the claimed technical solution.
[0004] In a first aspect, the present application provides a metal line filling method, comprising: Obtain the vertical coordinate of the logic point currently being processed and the vertical coordinate of the next logic point to be processed on the wiring path; If the vertical coordinates of the two are different, it is determined that metal wire filling is required, and a first metal wire filling shape is generated according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the first metal wire filling shape is added to the wiring result; If the vertical coordinates of the two are the same, the metal area of the layer where the logic point currently being processed is located is calculated, and the calculated metal area is added to the current area to obtain an updated current area, where the current area is the cumulative metal area up to the current processing stage; If there is a violation in the updated current area, and it is determined based on the updated current area that metal wire filling is required, a second metal wire filling shape is generated based on a second evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the second metal wire filling shape is added to the routing result.
[0005] In a feasible implementation, a first metal wire filling shape is generated based on a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, including: obtaining a minimum metal area requirement or a minimum metal wire length requirement for the level at which the currently processed logic point is located; using the minimum metal area requirement as the area of the pre-filled metal wire, or determining the area of the pre-filled metal wire according to the minimum metal wire length requirement, and determining the direction of the pre-filled metal wire according to the starting point and end point of the pre-filled metal wire; performing a design rule check on the area of the pre-filled metal wire and the direction of the pre-filled metal wire, and selecting a method that minimizes the first evaluation value to generate the first metal wire filling shape.
[0006] In a feasible embodiment, after adding the first metal wire filling shape to the routing result, the method further includes: if the routing direction is determined to be upward according to the currently processed logic point, then updating the current area according to the lower enclosure area of the through-hole metal of the next logic point to be processed; if the routing direction is determined to be downward according to the currently processed logic point, then updating the current area according to the upper enclosure area of the through-hole metal of the next logic point to be processed.
[0007] In a feasible implementation, the method further includes: obtaining the minimum metal area requirement or the minimum metal wire length requirement of the level at which the logic point currently being processed is located; calculating the current technical wire length based on the updated current area, and if the updated current area is less than the minimum metal area requirement, or the current technical wire length is less than the minimum metal wire length requirement, then determining that the updated current area is in violation.
[0008] In a feasible implementation, the method further includes: comparing the updated current area with the area enclosed under the through-hole metal of the logic point currently being processed, and taking the larger value of the two as the new current area; calculating a new current technical line length based on the new current area, and if the new current area is less than the minimum metal area requirement, or the new current technical line length is less than the minimum metal line length requirement, determining that metal line filling is required.
[0009] In a feasible implementation, a second metal wire filling shape is generated based on a second evaluation value obtained by performing a design rule check on the pre-filled metal wire, including: calculating the difference between the minimum metal area requirement and the new current area, using the calculated difference as the area of the pre-filled metal wire, and determining the direction of the pre-filled metal wire based on the starting point and end point of the pre-filled metal wire; performing a design rule check on the area of the pre-filled metal wire and the direction of the pre-filled metal wire, and selecting a method that minimizes the second evaluation value to generate the second metal wire filling shape.
[0010] In a feasible embodiment, the method also includes: after adding the second metal wire filling shape to the routing result, merging the upper metal enclosing area of the through-hole corresponding to the currently processed logic point with the lower metal enclosing area of the previous through-hole, and selecting the maximum enclosing range of the two areas as the merged metal shape; or merging the upper metal enclosing area of the through-hole corresponding to the currently processed logic point with the upper metal enclosing area of the next through-hole, and selecting the maximum enclosing range of the two areas as the merged metal shape; or merging the lower metal enclosing area of the through-hole corresponding to the currently processed logic point with the lower metal enclosing area of the previous through-hole, and selecting the maximum enclosing range of the two areas as the merged metal shape; or merging the lower metal enclosing area of the through-hole corresponding to the currently processed logic point with the upper metal enclosing area of the next through-hole, and selecting the maximum enclosing range of the two areas as the merged metal shape.
[0011] In a feasible implementation manner, obtaining the minimum metal area requirement or the minimum metal wire length requirement of the level where the logic point currently being processed is located includes: obtaining the metal wire minimum area rule of the level where the logic point currently being processed is located from a technical rule database; if the metal wire minimum area rule is a single rule, taking the minimum area in the metal wire minimum area rule as the minimum metal area requirement; if the metal wire minimum area rule is a complex rule, calculating the quotient of the minimum area in the metal wire minimum area rule and the metal wire width; comparing the maximum side length in the metal wire minimum area rule with the quotient or comparing the minimum side length in the metal wire minimum area rule with the quotient, taking the maximum value of the two as the minimum metal wire length requirement or taking the minimum value of the two as the minimum metal wire length requirement, and determining the minimum metal area requirement based on the minimum metal wire length requirement.
[0012] In a feasible embodiment, the direction of the pre-filled metal wire is determined according to the starting point and the end point of the pre-filled metal wire, including: determining the starting point direction of the pre-filled metal wire according to the coordinate difference in the horizontal axis direction and the coordinate difference in the vertical axis direction between the previous logic point of the currently processed logic point and the predecessor logic point of the previous logic point, and determining the direction of the pre-filled metal wire on one side of the starting point to be outside the starting point direction according to the starting point direction of the pre-filled metal wire; determining the end point direction of the pre-filled metal wire according to the coordinate difference in the horizontal axis direction and the coordinate difference in the vertical axis direction between the currently processed logic point and the previous logic point of the currently processed logic point, and determining the direction of the pre-filled metal wire on one side of the end point to be outside the end point direction according to the end point direction of the pre-filled metal wire.
[0013] In a second aspect, the present application provides a metal wire filling device, comprising: An acquisition unit configured to acquire the vertical coordinate of the logic point currently being processed and the vertical coordinate of the next logic point to be processed on the wiring path; A first filling unit is configured to determine that metal wire filling is required if the vertical coordinates of the two are different, generate a first metal wire filling shape according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and add the first metal wire filling shape to the routing result; A calculation unit is configured to calculate the metal area of the layer where the logic point currently being processed is located if the vertical coordinates of the two are the same, and add the calculated metal area to the current area to obtain an updated current area, wherein the current area is the cumulative metal area up to the current processing stage; The second filling unit is configured to generate a second metal wire filling shape according to a second evaluation value obtained by performing a design rule check on the pre-filled metal wire if there is a violation in the updated current area and it is determined that metal wire filling is required based on the updated current area, and add the second metal wire filling shape to the wiring result.
[0014] In a third aspect, an electronic device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor is configured to implement the steps of the metal wire filling method of any one of the first aspects described above when executing the computer program stored in the memory.
[0015] In a fourth aspect, the present application further proposes a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the metal line filling method of any one of the first aspects is implemented.
[0016] In summary, the metal wire filling method proposed in the present application can accurately identify the connection requirements between different metal layers by comparing the vertical coordinates of the current and next logic points, and fill the metal wires in time, effectively ensuring the integrity of the circuit connection and ensuring normal signal transmission; when filling, the pre-filled metal wires are strictly checked according to the design rules and the filling shapes are generated according to the evaluation values, so that all aspects of the metal wires are highly consistent with the manufacturing process requirements, greatly reducing the circuit performance problems and manufacturing failure probability caused by violations of the rules, and improving the reliability and manufacturability of the design; when the vertical coordinates are the same, the metal area of the layer where the current logic point is located is accurately calculated and updated, and the distribution and area of the metal wires are effectively controlled, providing accurate data for subsequent optimization, and preventing area anomalies from affecting circuit performance; during the operation, the generated filling shapes are gradually added to the wiring results, and the rationality of the connections at different levels and the metal area of the same layer are fully considered to improve the wiring design so that the results perfectly meet the functions and performance requirements of the integrated circuit. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present specification. Also, the same reference symbols are used throughout the accompanying drawings to represent the same components. In the accompanying drawings: Figure 1 A schematic flow chart of a metal wire filling method provided in an embodiment of the present application.
[0018] Figure 2 A schematic flow chart of a metal wire filling method provided in an embodiment of the present application.
[0019] Figure 3 A schematic flow chart of a metal wire filling method provided in an embodiment of the present application.
[0020] Figure 4 A schematic structural diagram of a metal wire filling device provided in an embodiment of the present application.
[0021] Figure 5 A schematic diagram of the structure of a metal wire-filled electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0022] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices. The technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments.
[0023] Figure 1 FIG. 1 is a flow chart showing a metal line filling method according to an embodiment of the present application. Figure 1 As shown, the metal line filling method includes: Step S110, obtaining the vertical coordinate of the logic point currently being processed and the vertical coordinate of the next logic point to be processed on the wiring path; Step S120: if the vertical coordinates of the two are different, it is determined that metal wire filling is required, a first metal wire filling shape is generated according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the first metal wire filling shape is added to the routing result; Step S130, if the vertical coordinates of the two are the same, the metal area of the layer where the logic point currently being processed is located is calculated, and the calculated metal area is added to the current area to obtain an updated current area, which is the cumulative metal area up to the current processing stage; Step S140: If there is a violation in the updated current area, and it is determined based on the updated current area that metal wire filling is required, a second metal wire filling shape is generated based on a second evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the second metal wire filling shape is added to the routing result.
[0024] These steps are described in detail below.
[0025] In step S110, the vertical coordinate of the logic point currently being processed and the vertical coordinate of the next logic point to be processed on the wiring path are obtained.
[0026] In the design process of integrated circuits, after a sequential or combinational logic path is routed, the metal wire filling operation for this routing path will be started immediately. The routing path is like a "route" for circuit signal transmission. It is connected by a series of logic points, starting from the logical starting point coordinate, passing through multiple logical points in the middle, and finally reaching the logical end point coordinate. After traversing the entire path of logical points, the entire identification and filling process is completed.
[0027] In the logic point iteration loop of the metal wire filling operation, the currently processed logic point refers to the logic point being analyzed and processed during the iteration loop, which is a node on the entire wiring path. The next logic point to be processed is the logic point to be processed next in the order of the wiring path after the current logic point is processed. These two logic points appear in sequence according to the order of the wiring path, and the metal wire filling operation is gradually promoted by processing them.
[0028] The vertical coordinate, or Z coordinate, represents the vertical position of the logic point in the integrated circuit structure with multi-layer wiring, and is used to determine the metal layer where the logic point is located. To obtain the Z coordinates of the currently processed logic point and the next logic point to be processed, the Z coordinate values corresponding to the two logic points are usually read from the relevant data structure or storage location through pre-set logic and algorithms. By obtaining the Z coordinates of the two logic points, the next operation can be determined based on the relationship between them, such as whether they are on the same metal layer, thereby ensuring that the metal filling operation can be carried out according to the correct process and rules to meet the design and manufacturing requirements of the integrated circuit.
[0029] In step S120, if the vertical coordinates of the two are different, it is determined that metal wire filling is required, and a first metal wire filling shape is generated according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the first metal wire filling shape is added to the wiring result.
[0030] When it is found that the vertical coordinates of the currently processed logic point and the next logic point to be processed are different, this indicates that the two logic points are in different metal layers. In the multi-layer wiring system of integrated circuits, different metal layers usually need to be connected by metal wires to achieve the complete function of the circuit. Therefore, when the vertical coordinates are different, it is determined that a metal wire filling operation is required to establish a connection between different metal layers.
[0031] Before filling the metal line, the pre-filled metal line needs to be subjected to a design rule check (DRC). Design rule checking is an important step to ensure that the integrated circuit design meets the manufacturing process requirements. It will check the various parameters of the pre-filled metal line (such as line width, line length, area, etc.) according to a series of pre-set rules. The result obtained through the design rule check will be presented in the form of an evaluation value (i.e., the first evaluation value), which reflects the situation of the pre-filled metal line in meeting the design rules.
[0032] Based on the first evaluation value, the system generates a first metal line filling shape. The generation process comprehensively considers the design rules and the information reflected by the evaluation value to ensure that the generated metal line filling shape can meet the requirements of the manufacturing process and realize effective connection between different metal layers.
[0033] Finally, the generated first metal line fill shape will be added to the routing result. The routing result is the final presentation of the entire integrated circuit routing design, which contains all the determined metal line layouts and connections. Adding the first metal line fill shape to the routing result means that the metal filling operation of this part has been completed and has become part of the entire routing design, providing a physical basis for the subsequent circuit function implementation.
[0034] In step S130, if the vertical coordinates of the two are the same, the metal area of the layer where the logic point currently being processed is located is calculated, and the calculated metal area is added to the current area to obtain the updated current area, which is the cumulative metal area up to the current processing stage.
[0035] When it is determined that the vertical coordinates of the currently processed logic point and the next logic point to be processed are the same, this indicates that the two logic points are in the same metal layer. In the case of the same metal layer, although it is not necessary to consider the metal wire filling of the interlayer connection as in different metal layers, it is still necessary to calculate the metal area of the layer where the current logic point is located. Because in the wiring design of integrated circuits, accurate calculation of metal area is very important for meeting design rules and evaluating circuit performance.
[0036] The calculation of the metal area of the level where the logic point currently being processed is located will be carried out according to certain rules and algorithms. The calculation of this area may involve parameters such as the length and width of the metal line, and the area value of the metal line is obtained by comprehensive calculation of these parameters. In this embodiment, the metal area may include three parts, namely, the area corresponding to the actual wiring length, the metal upper enclosure or metal lower enclosure area of the starting through hole, and the metal upper enclosure or metal lower enclosure area of the terminal through hole. The actual wiring length refers to the actual extension length of the metal line on the plane. When calculating, the actual wiring length is usually multiplied by the width of the metal line to obtain its corresponding area. The metal upper enclosure and lower enclosure of the starting through hole correspond to the metal area covered by the through hole in the upper metal layer and the lower metal layer at the starting position of the metal line. Although this part of the area is relatively small, it has an influence on the electrical properties of the metal line that cannot be ignored, for example, it will affect the capacitive coupling between the metal line and other layers of metal. The metal upper enclosure and lower enclosure of the terminal through hole are also important components of the metal area. They are directly related to the reception and processing of the signal at the transmission end. Accurate calculation of this part of the area helps to more accurately evaluate the performance and reliability of the entire metal line connection.
[0037] After the calculated metal area is obtained, it will be added to the current area. The current area here refers to the total metal area that has been calculated cumulatively on the routing path up to the current processing stage.
[0038] After adding the newly calculated metal area, the updated current area is obtained. The updated current area will serve as the basic data for subsequent operations and continue to participate in the processing and analysis of the routing path, such as determining whether the minimum metal area requirements are met. It accurately reflects the metal area of the processed part of the entire routing path at the current processing stage, providing a reliable basis for subsequent decision-making and calculations.
[0039] In step S140, if there is a violation in the updated current area and it is determined based on the updated current area that metal wire filling is required, a second metal wire filling shape is generated based on a second evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the second metal wire filling shape is added to the routing result.
[0040] After completing the relevant operations on the current logic point and updating the current area, it is necessary to check the updated current area to determine whether it complies with the relevant design rules. The violation here usually means that the updated current area does not meet the minimum metal area requirements or other regulations, or after comprehensive consideration with other design rules (such as the length and width of the metal line), it is found that there is a situation that does not meet the requirements.
[0041] If it is determined that there is a violation in the updated current area, and based on the updated current area it is determined that a metal wire filling operation is required (for example, the current area is smaller than the specified minimum area, and filling is required to meet the requirement), then the specific operation steps of metal wire filling will be entered next.
[0042] First, the pre-filled metal line needs to be subjected to a design rule check (DRC). This step is to compare various parameters of the pre-filled metal line (such as line width, line length, area, etc.) with the pre-set design rules to obtain an evaluation value, namely the second evaluation value. This evaluation value reflects the degree to which the pre-filled metal line meets the design rules.
[0043] Based on the obtained second evaluation value, the system will generate a second metal line fill shape. The generation process will comprehensively consider the information reflected by the evaluation value and the requirements of the design rules to ensure that the generated metal line fill shape can make the final routing result meet all design rules. For example, if the evaluation value shows that the pre-filled metal line does not meet the rules in some aspects, the generated fill shape will be adjusted and corrected for these problems.
[0044] Finally, the generated second metal wire fill shape will be added to the routing result. The routing result is the final presentation of the entire integrated circuit routing design, which contains all the determined metal wire layouts and connections. Adding the second metal wire fill shape to the routing result means that the metal filling operation of this part has been completed and has become part of the entire routing design, further improving the physical structure of the integrated circuit so that it can meet the requirements of circuit functions and manufacturing processes.
[0045] Based on the technical solution of the above embodiment, by comparing the vertical coordinates of the current and next logic points, the connection requirements between different metal layers can be accurately identified, and the metal wires can be filled in time to effectively ensure the integrity of the circuit connection and ensure normal signal transmission; when filling, the pre-filled metal wires are strictly checked according to the design rules and the filling shapes are generated according to the evaluation values, so that all aspects of the metal wires are highly consistent with the manufacturing process requirements, greatly reducing the circuit performance problems and manufacturing failure probability caused by violations of the rules, and improving the reliability and manufacturability of the design; when the vertical coordinates are the same, the metal area of the layer where the current logic point is located is accurately calculated and updated, and the distribution and area of the metal wires are effectively controlled to provide accurate data for subsequent optimization and prevent area anomalies from affecting circuit performance; during the operation, the generated filling shapes are gradually added to the wiring results, and the rationality of the connections at different levels and the metal area of the same layer are fully considered to improve the wiring design so that the results perfectly meet the functions and performance requirements of the integrated circuit.
[0046] In some embodiments of the present application, Figure 2As shown, in step S120, according to the first evaluation value obtained by performing a design rule check on the pre-filled metal line, a first metal line filling shape is generated, which may specifically include steps S210 to S230, which are described in detail as follows: Step S210: Obtain the minimum metal area requirement or the minimum metal line length requirement of the layer where the logic point currently being processed is located.
[0047] In integrated circuit design, logic points are the basic units that constitute the logic functions of the entire circuit, and they are distributed on different levels. Each level has its own specific functions and physical characteristics, and has strict regulations on the use of metal lines.
[0048] The minimum metal area requirement refers to the minimum area value that the metal line must reach at the specific level where the logic point currently being processed is located in order to ensure that the metal line can normally transmit signals, carry current, and meet the reliability requirements of process manufacturing. If the metal area is less than this minimum value, the metal line resistance may be too large, causing serious signal attenuation and increased delay. It may even cause problems such as metal line melting due to excessive current density during chip manufacturing, affecting the performance and stability of the entire circuit.
[0049] The minimum metal wire length requirement is a lower limit of length specified by factors such as the integrity of the metal wire during signal transmission and its connection with other circuit components. If the metal wire is too short, the expected circuit connection function may not be achieved, or the connection with other components may be unreliable due to insufficient length, resulting in signal transmission interruption and other problems. At the same time, from the perspective of manufacturing process, metal wires that are too short may be difficult to accurately manufacture in process steps such as photolithography, increasing the difficulty and error of manufacturing.
[0050] Obtaining the minimum metal area requirement or minimum metal wire length requirement for the level of the currently processed logic point can determine the basic constraints for the subsequent metal wire design and layout. Only on the basis of clarifying these requirements can we further reasonably design the area, direction and other parameters of the pre-filled metal wire to ensure that the final generated metal wire filling shape can meet both the functional requirements of the circuit and the process specifications of integrated circuit manufacturing.
[0051] In some embodiments of the present application, the method of obtaining the minimum metal area requirement or the minimum metal line length requirement of the level where the logic point currently being processed is located may specifically include the following steps: First, the minimum area rule of the metal line at the level where the logic point currently being processed is located is obtained from the technical rule database. The technical rule database is a collection of various technical specifications and requirements accumulated during the integrated circuit design process, which contains various rules for metal lines at different levels. The minimum area rule of the metal line at the level where the logic point currently being processed is an important basis for determining the minimum area of the metal line at that level, which is crucial for subsequent design and manufacturing.
[0052] Next, you need to determine the type of the obtained metal wire minimum area rule. If the metal wire minimum area rule is a single rule, it means that the rule is relatively simple and direct, and the value of the minimum area is clearly given. In this case, the minimum area in the metal wire minimum area rule can be directly used as the minimum metal area requirement. This minimum metal area requirement is one of the basic conditions to ensure that the metal wire can work normally. For example, sufficient area can ensure that the metal wire has a suitable resistance to stably transmit current and signals, and avoid problems such as signal attenuation and heat caused by too small an area.
[0053] If the minimum area rule of the metal wire is a complex rule, the situation is relatively complicated. At this time, we must first calculate the quotient of the minimum area in the minimum area rule of the metal wire and the metal wire width. The calculation of this quotient is to further analyze and derive other parameters related to the metal wire. Then, compare the maximum side length (or minimum side length) and the quotient in the minimum area rule of the metal wire. By comparison, the maximum value (or minimum value, depending on the specific rule) of the two is used as the minimum metal wire length requirement. This step is because under complex rules, there is a correlation between the length and area of the metal wire. Through this comparison and calculation, a suitable minimum metal wire length requirement can be determined. Finally, based on the determined minimum metal wire length requirement, the minimum metal area requirement is further determined. This is because there is an inherent connection between the minimum metal wire length requirement and the minimum metal area requirement. Through the known length requirement, other related factors can be combined to calculate the minimum metal area requirement that meets the design and manufacturing requirements, thereby providing an accurate basis for subsequent metal wire design and filling.
[0054] Step S220 , taking the minimum metal area requirement as the area of the pre-filled metal line, or determining the area of the pre-filled metal line according to the minimum metal line length requirement, and determining the direction of the pre-filled metal line according to the starting point and the end point of the pre-filled metal line.
[0055] In the metal line filling stage of integrated circuit design, it is necessary to determine the key parameters of the pre-filled metal line according to different conditions, among which area and direction are two important aspects.
[0056] First of all, there are two ways to determine the pre-filled metal area. One way is to directly use the minimum metal area requirement as the area of the pre-filled metal wire. This is because the minimum metal area requirement is one of the basic conditions to ensure that the metal wire can work normally in the circuit. It is determined after comprehensively considering many factors such as current carrying capacity, signal transmission quality, compatibility with peripheral circuit components, and the feasibility of the manufacturing process. Using it as the area of the pre-filled metal wire can ensure that the metal wire has enough physical space to transmit current and signals in the subsequent circuit operation, avoiding various problems caused by too small an area, such as signal attenuation and heat caused by excessive resistance.
[0057] Another way to determine the pre-filled metal area is to do it based on the minimum metal wire length requirement. In integrated circuits, there is a certain correlation between metal wire length and area. Sometimes, only considering the length of the metal wire cannot fully meet the design requirements, and it is necessary to use certain calculations or conversion methods to determine the appropriate metal area based on the minimum metal wire length requirement. For example, according to specific circuit structure and functional requirements, the minimum metal wire length is known, and combined with other factors such as the width limit of the metal wire, the corresponding formula or rule of thumb is used to calculate the metal area that can meet the length requirement and meet the overall design specifications. In this way, the area of the metal wire can be reasonably planned on the basis of meeting the length requirements to achieve the best circuit performance.
[0058] After determining the area of the pre-filled metal wire, its direction also needs to be determined. The direction of the pre-filled metal wire is also crucial to the performance and layout of the circuit. Here, its direction is determined based on the starting and ending points of the pre-filled metal wire. In the layout design of the integrated circuit, each metal wire has its specific starting and ending points, which determine the direction of the metal wire on the plane. By clarifying the starting and ending points, it can be determined whether the metal wire is laid out in a horizontal, vertical or inclined direction. Reasonable metal wire direction can optimize the wiring structure of the circuit, reduce the intersection and overlap between metal wires, reduce interference between signals, and improve the integration and performance of the circuit. At the same time, it also helps the subsequent manufacturing process, so that processes such as lithography and etching can more accurately realize the patterning of metal wires, and improve the efficiency and yield of manufacturing.
[0059] In some embodiments of the present application, the method of determining the direction of the pre-filled metal line according to the starting point and the end point of the pre-filled metal line may specifically include: First, we can use the coordinate difference between the previous logic point of the currently processed logic point and the previous logic point of the previous logic point in the horizontal direction (usually understood as the horizontal direction) and the vertical direction (usually the vertical direction). These coordinate differences reflect the relative position relationship between the logic points. By analyzing the position changes of the two logic points in the horizontal and vertical directions, a directional trend can be obtained, and this directional trend is determined as the starting point direction of the pre-filled metal wire. For example, if the previous logic point moves a certain distance to the right in the horizontal direction and a certain distance upward in the vertical direction relative to its previous logic point, then a specific starting point direction can be determined by combining the changes in these two directions.
[0060] Next, after determining the starting direction of the pre-filled metal wire, the direction of the pre-filled metal wire on the starting side can be further clarified. According to the definition, the direction of the pre-filled metal wire on the starting side is the outside of the starting direction. The "outside" here is defined based on the starting direction. Its purpose is to more accurately plan the direction of the metal wire near the starting point, ensure the reasonable layout of the metal wire, avoid unnecessary conflicts with other circuit elements or metal wires, and also help smooth signal transmission.
[0061] Then, the end point direction can be determined based on the coordinate difference between the currently processed logic point and the previous logic point of the currently processed logic point in the horizontal and vertical directions. By analyzing the position changes between the two logic points in the horizontal and vertical directions, a direction trend is obtained, and this trend is the end point direction of the pre-filled metal wire. For example, if the current logic point moves to the left in the horizontal direction and moves downward in the vertical direction relative to the previous logic point, then the corresponding end point direction can be determined.
[0062] Finally, after determining the end point direction of the pre-filled metal wire, the direction of the pre-filled metal wire on the end point side must also be determined. According to regulations, the direction of the pre-filled metal wire on the end point side is the outside of the end point direction. Determining the direction of the end point side in this way can make the layout of the metal wire at the end point more reasonable, ensure that the direction of the entire pre-filled metal wire meets the requirements of the circuit design, improve the performance and reliability of the circuit, and lay a good foundation for subsequent circuit manufacturing and operation.
[0063] Step S230 : performing a design rule check on the area and direction of the pre-filled metal wires, selecting a method that minimizes the first evaluation value, and generating a first metal wire filling shape.
[0064] First of all, design rule checking is a key step in the integrated circuit design process. There are many complex and strict specifications in the integrated circuit manufacturing process, which cover all aspects of the metal lines, including but not limited to line width, line spacing, area and direction. For the area of the pre-filled metal line, it is necessary to ensure that it meets the minimum metal area requirements to avoid problems such as excessive resistance and unstable signal transmission due to too small an area, and it cannot exceed the maximum allowable area range to avoid wasting resources or causing spatial conflicts with other circuit elements. The direction of the pre-filled metal line is also subject to corresponding rules and constraints. For example, in some processes, the layout of metal lines in a specific direction helps to reduce signal interference and improve the overall performance of the circuit, so its direction must comply with the best practices or specific restrictions specified by the process.
[0065] After completing the design rule check for the pre-filled metal area and direction, a quantitative evaluation result, namely the first evaluation value, will be obtained. This evaluation value comprehensively reflects the degree to which the pre-filled metal line meets the design rules. The smaller the value, the more the pre-filled solution conforms to the design rules, and the lower the possibility of manufacturing defects or performance problems. For example, if a pre-filled metal line solution strictly follows the design rules in terms of area and direction, its first evaluation value may be lower; conversely, if the solution has problems such as the area is slightly smaller than the minimum value or the direction deviates greatly from the recommended direction, the evaluation value will be higher.
[0066] Finally, among the many possible pre-filled metal wire schemes, the method that minimizes the first evaluation value is selected to generate the first metal wire filling shape. This is because the filling shape generated with the minimum evaluation value as the guide meets the design rule requirements of the integrated circuit to the greatest extent, can effectively reduce the risk in the manufacturing process, improve the yield rate of the chip, and ensure that the chip reaches the optimal state in terms of performance, power consumption, etc. The first metal wire filling shape generated in this way will become an important part of the metal wire layout in the integrated circuit layout, laying a solid foundation for the subsequent circuit function realization.
[0067] In some embodiments of the present application, the wiring direction is a key factor in integrated circuit wiring. When processing logic points, the wiring direction can be determined based on the logic point currently being processed. If it is determined that the wiring direction is upward, this means that the circuit signal transmission path is developing towards a higher-level metal layer. At this time, the area under the through-hole metal enclosure of the next logic point to be processed becomes particularly important. The through-hole metal enclosure area refers to the metal area occupied by the through-hole in the lower metal layer adjacent to the metal layer where the current logic point is located. The reason for updating the current area based on this area is that in the process of upward wiring, this lower enclosure area will affect the overall area statistics of the current metal layer wiring. Including it in the update of the current area can more accurately reflect the metal distribution of the entire wiring area in this direction, ensuring that subsequent wiring design and analysis can be based on accurate data, thereby ensuring the performance of the circuit and the feasibility of the manufacturing process.
[0068] On the contrary, if the wiring direction is determined to be downward based on the logic point currently being processed, that is, the circuit signal transmission path is towards the lower-level metal layer. In this case, the upper enclosure area of the through-hole metal of the next logic point to be processed becomes a key factor. The upper enclosure area of the through-hole metal refers to the metal area occupied by the through-hole in the upper metal layer adjacent to the metal layer where the current logic point is located. When wiring downward, this upper enclosure area is closely related to the wiring of the current metal layer, and it affects the calculation of the current area. By updating the current area based on this area, the metal usage of the current metal layer in the downward wiring direction can be fully and accurately counted, providing reliable data support for subsequent wiring operations, so that the entire wiring process can meet the various requirements of integrated circuit design, including but not limited to electrical performance, spatial layout and other aspects.
[0069] In some embodiments of the present application, the judgment of whether the updated current area in the aforementioned step S140 is in violation may specifically include the following steps: first, the minimum metal area requirement or the minimum metal wire length requirement of the level where the logic point currently being processed is located may be obtained; then, the current technical wire length may be calculated based on the updated current area, and the updated current area may be compared with the minimum metal area requirement, and the current technical wire length may be compared with the minimum metal wire length requirement. Once the updated current area is less than the minimum metal area requirement, or the current technical wire length is less than the minimum metal wire length requirement, it may be determined that the updated current area is in violation. Because this situation means that the current metal wire layout fails to meet the basic requirements of the manufacturing process in terms of area or length, it is very likely to affect the performance and reliability of the circuit, and even lead to chip manufacturing failure.
[0070] In this embodiment, the method of obtaining the minimum metal area requirement or the minimum metal line length requirement of the layer where the logic point currently being processed is located can be specifically referred to the description in step S210, which will not be repeated here.
[0071] In some embodiments of the present application, the determination of whether to perform metal line filling according to the updated current area in the aforementioned step S140 may specifically include the following steps: First, the updated current area can be compared with the area under the through-hole metal enclosure of the currently processed logic point. The area under the through-hole metal enclosure refers to the area covered by the metal layer below the through-hole corresponding to the current logic point. The comparison of these two areas is to ensure that the statistics of the current area can more accurately reflect the actual metal distribution. The larger value of the two is taken as the new current area because in wiring design, a more comprehensive metal occupancy situation needs to be considered to ensure subsequent wiring and circuit performance. If the area under the through-hole metal enclosure is larger, it means that the through-hole has a larger influence range in the metal layer below. Using it as the new current area can more truly reflect the actual needs of wiring; conversely, if the updated current area is larger, it is maintained as the new current area.
[0072] Next, the new current technology line length can be calculated based on the newly determined current area. The current technology line length is an indicator related to the length of the metal line. It has a certain correlation with the area of the metal line and is derived from the new current area through a specific calculation method. This indicator is very important for evaluating whether the wiring meets the requirements, because in integrated circuit design, the length of the metal line also has certain limitations, which will affect the performance parameters such as delay and resistance of signal transmission.
[0073] After that, the new current area can be compared with the minimum metal area requirement, and the new current technical line length can be compared with the minimum metal line length requirement. The minimum metal area requirement and the minimum metal line length requirement are basic standards specified by the integrated circuit manufacturing process. They are to ensure that the metal lines can work properly, such as carrying enough current, stably transmitting signals, etc. If the new current area is less than the minimum metal area requirement, or the new current technical line length is less than the minimum metal line length requirement, it means that the current wiring situation fails to meet the basic requirements of the manufacturing process. At this time, it is determined that a metal line filling operation is required to increase the area and length of the metal line to meet the design rules and ensure the performance and reliability of the circuit.
[0074] In some embodiments of the present application, Figure 3 As shown, in step S140, generating a second metal line filling shape according to a second evaluation value obtained by performing a design rule check on the pre-filled metal line may specifically include steps S310 to S320, which are described in detail as follows: Step S310 , calculating the difference between the minimum metal area requirement and the new current area, using the calculated difference as the area of the pre-filled metal line, and determining the direction of the pre-filled metal line according to the starting point and the end point of the pre-filled metal line.
[0075] After taking the maximum value between the updated current area and the area under the through-hole metal enclosure of the currently processed logic point as the new current area, it is necessary to further plan the metal line filling scheme. This may include calculating the difference between the minimum metal area requirement and the new current area, using the calculated difference as the area of the pre-filled metal line, and determining the direction of the pre-filled metal line according to the starting point and end point of the pre-filled metal line.
[0076] By calculating the difference between the minimum metal area requirement and the new current area, we can accurately understand how much area the current wiring area lacks to meet the minimum metal area requirement. This difference becomes the area for subsequent metal wire filling, providing a clear quantitative basis for subsequent operations. Determining the difference as the area of the pre-filled metal wire is an accurate and reasonable approach that can ensure that the minimum metal area standard is met while avoiding problems such as waste of resources caused by overfilling and possible signal interference.
[0077] At the same time, the direction of the pre-filled metal wire is determined according to the starting point and end point of the pre-filled metal wire. In the integrated circuit layout, each pre-filled metal wire has a specific starting point and end point, which are determined by the logical connection relationship of the circuit. The position of the starting point and the end point determines the direction of the metal wire on the chip plane. Reasonable direction selection can optimize the wiring layout, reduce the intersection and overlap between metal wires, reduce interference and delay during signal transmission, and improve the performance and reliability of the circuit. At the same time, a clear direction also helps to accurately implement steps such as lithography and etching in subsequent manufacturing processes, and improve the yield rate of chip manufacturing.
[0078] In some embodiments of the present application, the method of determining the direction of the pre-filled metal line according to the starting point and the end point of the pre-filled metal line can be specifically referred to the relevant description in the above step S220, which will not be repeated here.
[0079] Step S320 , performing a design rule check on the area of the pre-filled metal wire and the direction of the pre-filled metal wire, and selecting a method that minimizes the second evaluation value to generate a second metal wire filling shape.
[0080] After the area and direction of the pre-filled metal line are determined, a design rule check can be further performed on the area and direction of the pre-filled metal line to ensure that they fully comply with strict manufacturing process specifications.
[0081] After the inspection is completed, a quantitative evaluation result will be obtained, namely the second evaluation value. This evaluation value comprehensively reflects the degree to which the pre-filled metal line meets the design rules. It is not a simple single-dimensional measurement, but a comprehensive reflection of the area, direction and other relevant design rules. The smaller the evaluation value, the more the pre-filling solution conforms to the design rules, and the lower the possibility of defects or performance problems in the subsequent manufacturing process. For example, if a pre-filled metal line solution strictly follows the design rules in terms of area and direction, its second evaluation value will be relatively low; conversely, if the area of the solution is slightly smaller than the minimum value, or the direction deviates greatly from the recommended direction, the evaluation value will be high.
[0082] Finally, among the many possible pre-filled metal wire schemes, a method that minimizes the second evaluation value is selected to generate the second metal wire filling shape. This is because the filling shape generated with the minimum evaluation value as the guide can meet the design rule requirements of the integrated circuit to the greatest extent. The second metal wire filling shape generated in this way can effectively reduce the risk in the manufacturing process, improve the yield rate of the chip, and ensure that the chip reaches the optimal state in key aspects such as performance and power consumption. The metal wire filling shape generated in this way will become an important part of the metal wire layout in the integrated circuit layout, laying a solid foundation for the subsequent circuit function realization.
[0083] In some embodiments of the present application, after the second metal line filling shape is added to the routing result, after the operation of adding the second metal line filling shape to the routing result is completed, the metal area related to the through hole will be processed next. The specific processing method includes the following cases, which are explained in detail as follows: First of all, we need to clarify the concepts of the upper and lower metal enclosures of vias. In the multi-layer structure of integrated circuits, vias are key components that connect different metal layers. The upper metal enclosure of a via refers to the metal covering area above the metal layer where the via is located, while the lower metal enclosure refers to the metal covering area below the metal layer where the via is located.
[0084] The first case is to merge the upper metal enclosed area of the through-hole corresponding to the currently processed logic point with the lower metal enclosed area of the through-hole in the previous layer. The reason for this operation is that in the multi-layer wiring of the integrated circuit, there is a certain correlation and mutual influence between the through-holes and metal areas between adjacent layers. By merging these two areas and selecting the largest enclosed range in the two areas as the merged metal shape, it can more accurately reflect the actual metal distribution of the area, ensure that the connection between the metal layers is more reasonable and stable, and also help optimize the overall layout of the wiring and reduce potential electrical performance issues.
[0085] The second case is to merge the metal enclosure area on the through-hole corresponding to the currently processed logic point with the metal enclosure area on the next layer of through-holes. Similarly, in a multi-layer wiring structure, the metal enclosure areas on the through-holes of adjacent layers in the same direction may overlap or interact with each other. By merging these two areas and selecting the maximum enclosure range as the merged metal shape, the metal resources of these areas can be better integrated, avoiding signal interference, resistance anomalies and other problems caused by unreasonable metal distribution, and improving the performance and reliability of the circuit.
[0086] The third case is to merge the metal surrounding area under the through hole corresponding to the currently processed logic point with the metal surrounding area under the through hole of the previous layer. This operation is also based on the connection and relationship between metal layers in multi-layer wiring. Merging these two areas and determining the maximum surrounding range as the merged metal shape helps to build a more continuous and stable metal connection path, enhance the electrical connection performance between different metal layers, and thus ensure the normal operation of the entire integrated circuit.
[0087] The fourth case is to merge the metal lower enclosure area of the through hole corresponding to the currently processed logic point with the metal upper enclosure area of the through hole of the next layer. This merging method is also to optimize the layout of the metal area and ensure that the through hole connection between different metal layers can achieve the best physical and electrical performance. Selecting the largest enclosure range of the two areas as the merged metal shape can fully consider the actual influence range of each area, so that the final metal shape is more in line with the design and manufacturing requirements of the integrated circuit, and provide a solid foundation for the subsequent circuit function realization.
[0088] In a second aspect, the present application also proposes a metal wire filling device, such as Figure 4 As shown, the metal wire filling device includes: an acquisition unit 401 , a first filling unit 402 , a calculation unit 403 and a second filling unit 404 .
[0089] Among them, the acquisition unit 401 is configured to acquire the vertical coordinates of the logic point currently being processed and the vertical coordinates of the next logic point to be processed on the wiring path; the first filling unit 402 is configured to determine that metal wire filling is required if the vertical coordinates of the two are different, generate a first metal wire filling shape according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and add the first metal wire filling shape to the wiring result; the calculation unit 403 is configured to calculate the metal area of the layer where the logic point currently being processed is located if the vertical coordinates of the two are the same, and add the calculated metal area to the current area to obtain an updated current area, and the current area is the cumulative metal area up to the current processing stage; the second filling unit 404 is configured to generate a second metal wire filling shape according to a second evaluation value obtained by performing a design rule check on the pre-filled metal wire if there is a violation in the updated current area, and it is determined that metal wire filling is required according to the updated current area, and add the second metal wire filling shape to the wiring result.
[0090] In some embodiments of the present application, the acquisition unit 401 is also configured to obtain the minimum metal area requirement or the minimum metal wire length requirement of the level at which the logic point currently being processed is located; use the minimum metal area requirement as the area of the pre-filled metal wire, or determine the area of the pre-filled metal wire according to the minimum metal wire length requirement, and determine the direction of the pre-filled metal wire according to the starting point and end point of the pre-filled metal wire; perform design rule checks on the area of the pre-filled metal wire and the direction of the pre-filled metal wire, select a method that minimizes the first evaluation value, and generate the first metal wire filling shape.
[0091] In some embodiments of the present application, after the first filling unit 402 adds the first metal wire filling shape to the wiring result, the metal wire filling device also includes an updating unit, and the updating unit is configured to update the current area according to the lower enclosure area of the through-hole metal of the next logic point to be processed if the wiring direction is determined to be upward according to the currently processed logic point; and update the current area according to the upper enclosure area of the through-hole metal of the next logic point to be processed if the wiring direction is determined to be downward according to the currently processed logic point.
[0092] In some embodiments of the present application, the acquisition unit 401 is also configured to obtain the minimum metal area requirement or the minimum metal wire length requirement of the layer where the logic point currently being processed is located; the current technical wire length is calculated based on the updated current area, and if the updated current area is less than the minimum metal area requirement, or the current technical wire length is less than the minimum metal wire length requirement, it is determined that the updated current area is in violation.
[0093] In some embodiments of the present application, the metal wire filling device also includes a comparison unit, configured to compare the updated current area with the area under the through-hole metal enclosure of the logic point currently being processed, and take the larger value of the two as the new current area; a determination unit, configured to calculate the new current technical line length based on the new current area, if the new current area is less than the minimum metal area requirement, or the new current technical line length is less than the minimum metal wire length requirement, it is determined that metal wire filling is required.
[0094] In some embodiments of the present application, the acquisition unit 401 is also configured to calculate the difference between the minimum metal area requirement and the new current area, use the calculated difference as the area of the pre-filled metal line, and determine the direction of the pre-filled metal line based on the starting point and end point of the pre-filled metal line; perform design rule checking on the area of the pre-filled metal line and the direction of the pre-filled metal line, and select a method that minimizes the second evaluation value to generate the second metal wire filling shape.
[0095] In some embodiments of the present application, the metal wire filling device also includes a merging unit, which is configured to merge the upper metal enclosing area of the through-hole metal corresponding to the currently processed logic point with the lower metal enclosing area of the previous through-hole after adding the second metal wire filling shape to the routing result, and select the maximum enclosing range of the two areas as the merged metal shape; or merge the upper metal enclosing area of the through-hole metal corresponding to the currently processed logic point with the upper metal enclosing area of the next through-hole, and select the maximum enclosing range of the two areas as the merged metal shape; or merge the lower metal enclosing area of the through-hole metal corresponding to the currently processed logic point with the lower metal enclosing area of the previous through-hole, and select the maximum enclosing range of the two areas as the merged metal shape; or merge the lower metal enclosing area of the through-hole metal corresponding to the currently processed logic point with the upper metal enclosing area of the next through-hole, and select the maximum enclosing range of the two areas as the merged metal shape.
[0096] In some embodiments of the present application, the acquisition unit 401 is also configured to acquire the metal wire minimum area rule of the level where the logic point currently being processed is located from the technical rule database; if the metal wire minimum area rule is a single rule, the minimum area in the metal wire minimum area rule is used as the minimum metal area requirement; if the metal wire minimum area rule is a complex rule, the quotient of the minimum area in the metal wire minimum area rule and the metal wire width is calculated, the maximum side length in the metal wire minimum area rule is compared with the quotient or the minimum side length in the metal wire minimum area rule is compared with the quotient, the maximum value of the two is used as the minimum metal wire length requirement or the minimum value of the two is used as the minimum metal wire length requirement, and the minimum metal area requirement is determined based on the minimum metal wire length requirement.
[0097] In some embodiments of the present application, the acquisition unit 401 is further configured to determine the starting direction of the pre-filled metal wire based on the coordinate difference in the horizontal axis direction and the coordinate difference in the vertical axis direction between the previous logic point of the currently processed logic point and the predecessor logic point of the previous logic point, and determine the direction of the pre-filled metal wire on one side of the starting point to be outside the starting direction based on the starting direction of the pre-filled metal wire; determine the end point direction of the pre-filled metal wire based on the coordinate difference in the horizontal axis direction and the coordinate difference in the vertical axis direction between the currently processed logic point and the previous logic point of the currently processed logic point, and determine the direction of the pre-filled metal wire on one side of the end point to be outside the end point direction based on the end point direction of the pre-filled metal wire.
[0098] like Figure 5 As shown, an embodiment of the present application also provides an electronic device 500, including a memory 510, a processor 520, and a computer program 511 stored in the memory 510 and executable on the processor, and when the processor 520 executes the computer program 511, the steps of any of the above-mentioned metal line filling methods are implemented.
[0099] Since the electronic device introduced in this embodiment is a device used to implement a metal wire filling device in the embodiment of the present application, based on the method introduced in the embodiment of the present application, the technical personnel in this field can understand the specific implementation mode of the electronic device of this embodiment and its various variations. Therefore, how the electronic device implements the method in the embodiment of the present application is not introduced in detail here. As long as the equipment used by the technical personnel in this field to implement the method in the embodiment of the present application is within the scope of protection of this application.
[0100] During the specific implementation process, when the computer program 511 is executed by the processor 520, any implementation method in the corresponding embodiment can be implemented.
[0101] It should be noted that in the above embodiments, the description of each embodiment has its own emphasis, and for parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0102] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to memory, disk, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0103] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded computer, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0104] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0105] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0106] An embodiment of the present application further provides a computer program product, which includes computer software instructions. When the computer software instructions are executed on a processing device, the processing device executes the process of processing wiring shape data in the corresponding embodiment.
[0107] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a server or data center that includes one or more available media integrated. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state disk (SSD)), etc.
[0108] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0109] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0110] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0111] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0112] If the integrated unit is implemented in the form of a software functional unit 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 application 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 a number of instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program codes.
[0113] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A metal wire filling method, characterized in that: include: Obtain the vertical coordinate of the logic point currently being processed and the vertical coordinate of the next logic point to be processed on the wiring path; If the vertical coordinates of the two are different, it is determined that metal wire filling is required, and a first metal wire filling shape is generated according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the first metal wire filling shape is added to the wiring result; If the vertical coordinates of the two are the same, the metal area of the layer where the logic point currently being processed is located is calculated, and the calculated metal area is added to the current area to obtain an updated current area, where the current area is the cumulative metal area up to the current processing stage; If there is a violation in the updated current area, and it is determined based on the updated current area that metal wire filling is required, a second metal wire filling shape is generated based on a second evaluation value obtained by performing a design rule check on the pre-filled metal wire, and the second metal wire filling shape is added to the routing result.
2. The method according to claim 1, characterized in that Generating a first metal line filling shape according to a first evaluation value obtained by performing a design rule check on the pre-filled metal line includes: Obtaining the minimum metal area requirement or the minimum metal line length requirement of the level where the logic point currently being processed is located; Using the minimum metal area requirement as the area of the pre-filled metal line, or determining the area of the pre-filled metal line according to the minimum metal line length requirement, and determining the direction of the pre-filled metal line according to the starting point and the end point of the pre-filled metal line; A design rule check is performed on the area of the pre-filled metal line and the direction of the pre-filled metal line, and a method that minimizes the first evaluation value is selected to generate the first metal line filling shape.
3. The method according to claim 1, characterized in that After adding the first metal line filling shape to the routing result, the method further includes: If it is determined that the wiring direction is upward according to the currently processed logic point, then the current area is updated according to the area of the through-hole metal bottom enclosure of the next logic point to be processed; If it is determined according to the logic point currently being processed that the wiring direction is downward, the current area is updated according to the upper enclosed area of the through-hole metal of the next logic point to be processed.
4. The method according to claim 1, characterized in that: The method further comprises: Obtaining the minimum metal area requirement or the minimum metal line length requirement of the level where the logic point currently being processed is located; The current technical line length is calculated based on the updated current area. If the updated current area is less than the minimum metal area requirement, or the current technical line length is less than the minimum metal line length requirement, it is determined that the updated current area has a violation.
5. The method according to claim 4, characterized in that The method further comprises: Compare the updated current area with the area of the through-hole metal bottom enclosure of the logic point currently being processed, and use the larger value of the two as the new current area; A new current technical line length is calculated based on the new current area. If the new current area is smaller than the minimum metal area requirement, or the new current technical line length is smaller than the minimum metal line length requirement, it is determined that metal line filling is required.
6. The method according to claim 5, characterized in that Generating a second metal line filling shape according to a second evaluation value obtained by performing a design rule check on the pre-filled metal line, including: Calculating a difference between the minimum metal area requirement and the new current area, using the calculated difference as the area of the pre-filled metal line, and determining a direction of the pre-filled metal line according to a starting point and an end point of the pre-filled metal line; A design rule check is performed on the area of the pre-filled metal line and the direction of the pre-filled metal line, and a method that minimizes the second evaluation value is selected to generate the second metal line filling shape.
7. The method according to claim 1, characterized in that The method further comprises: After adding the second metal wire filling shape to the routing result, merging the upper metal enclosing area of the through hole corresponding to the currently processed logic point with the lower metal enclosing area of the through hole of the previous layer, and selecting the maximum enclosing range of the two areas as the merged metal shape; or Merge the metal upper enclosing area of the through hole corresponding to the currently processed logic point with the metal upper enclosing area of the through hole of the next layer, and select the largest enclosing range of the two areas as the merged metal shape; or Merge the metal lower enclosing area of the through hole corresponding to the currently processed logic point with the metal lower enclosing area of the through hole in the previous layer, and select the largest enclosing range of the two areas as the merged metal shape; or The metal lower enclosing area of the through hole corresponding to the currently processed logic point is merged with the metal upper enclosing area of the next layer of through holes, and the maximum enclosing range of the two areas is selected as the merged metal shape.
8. The method according to claim 2 or 4, characterized in that: Obtaining the minimum metal area requirement or minimum metal line length requirement of the level where the currently processed logic point is located, including: Acquire the minimum area rule of the metal line at the level where the logic point currently being processed is located from the technical rule database; If the metal line minimum area rule is a single rule, the minimum area in the metal line minimum area rule is used as the minimum metal area requirement; If the metal wire minimum area rule is a complex rule, then calculate the quotient of the minimum area in the metal wire minimum area rule and the metal wire width, compare the maximum side length in the metal wire minimum area rule with the quotient, or compare the minimum side length in the metal wire minimum area rule with the quotient, take the maximum value of the two as the minimum metal wire length requirement, or take the minimum value of the two as the minimum metal wire length requirement, and determine the minimum metal area requirement based on the minimum metal wire length requirement.
9. The method according to claim 2 or 6, characterized in that: According to the starting point and the end point of the pre-filled metal wire, the direction of the pre-filled metal wire is determined, including: Determine the starting point direction of the pre-filled metal wire according to the coordinate difference in the horizontal axis direction and the coordinate difference in the vertical axis direction between the previous logic point of the currently processed logic point and the preceding logic point of the previous logic point, and determine the direction of the pre-filled metal wire on one side of the starting point as the outside of the starting point direction according to the starting point direction of the pre-filled metal wire; The end point direction of the pre-filled metal wire is determined based on the coordinate difference in the horizontal axis direction and the coordinate difference in the vertical axis direction between the currently processed logic point and the previous logic point of the currently processed logic point, and based on the end point direction of the pre-filled metal wire, the direction of the pre-filled metal wire on one side of the end point is determined to be outside the end point direction.
10. A metal wire filling device, characterized in that: include: An acquisition unit configured to acquire the vertical coordinate of the logic point currently being processed and the vertical coordinate of the next logic point to be processed on the wiring path; A first filling unit is configured to determine that metal wire filling is required if the vertical coordinates of the two are different, generate a first metal wire filling shape according to a first evaluation value obtained by performing a design rule check on the pre-filled metal wire, and add the first metal wire filling shape to the routing result; A calculation unit is configured to calculate the metal area of the layer where the logic point currently being processed is located if the vertical coordinates of the two are the same, and add the calculated metal area to the current area to obtain an updated current area, wherein the current area is the cumulative metal area up to the current processing stage; The second filling unit is configured to generate a second metal wire filling shape according to a second evaluation value obtained by performing a design rule check on the pre-filled metal wire if there is a violation in the updated current area and it is determined that metal wire filling is required based on the updated current area, and add the second metal wire filling shape to the wiring result.
11. An electronic device, comprising: A memory and a processor, wherein the processor is used to implement the steps of the metal wire filling method according to any one of claims 1 to 9 when executing a computer program stored in the memory.
12. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the metal line filling method according to any one of claims 1 to 9 are implemented.
Citation Information
Patent Citations
Method for optimizing integrated circuit layout heat distribution
CN102314526A
Matrix extraction method for rapidly acquiring electromagnetic scattering characteristics of metal bodies of revolution
CN103425816A
Method for performing dummy metal fill insertion on line interactively and quickly
CN107861785A
Redundant metal filling method, device and equipment and computer readable storage medium
CN110717309A
Redundancy filling method and device, storage medium and electronic equipment
CN119358501A