A connection method and device for connecting cross metals in an analog layout

By obtaining the metal line name set in the simulated layout design and classifying it into vertical and horizontal line sets, finding the metal line pairs and determining the intersection connection points, the problem of inefficiency of existing tools is solved, and an efficient and accurate layout design is achieved.

CN120068777BActive Publication Date: 2025-09-02HEFEI RUITUO MICROELECTRONICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510131099.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-06
Publication Date
2025-09-02
Estimated Expiration
2045-02-06

AI Technical Summary

Technical Problem

In simulated layout design, existing tools such as the Cadence Vi rtuoso platform are inefficient when dealing with small amounts of metal wire interconnections, requiring frequent operation of interfaces, resulting in inefficient designs.

Method used

By obtaining the metal line name set, classifying it into vertical and horizontal line sets, finding metal line pairs based on the target name, and determining the cross connection points through a preset algorithm to avoid repeated processing and improve efficiency.

Benefits of technology

Improves the efficiency and accuracy of layout design, reduces redundant operations, and ensures comprehensiveness and accuracy of results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120068777B_ABST
    Figure CN120068777B_ABST
Patent Text Reader

Abstract

The present invention discloses a connection method and device for connecting cross metals in a simulated layout, relating to the technical field of layout design. The method comprises traversing all metal line names to obtain a metal line name set, classifying the obtained metal line name set to obtain an initial vertical line set and an initial horizontal line set, searching the metal lines in the initial vertical line set and the initial horizontal line set according to target names to obtain metal line pairs, and obtaining a vertical line set and a horizontal line set based on all metal line pairs. The vertical line set and the horizontal line set are pre-sorted, and then a pre-set algorithm is used to determine the cross-connection points of the metal lines in the target vertical line set and the target horizontal line set. By obtaining the metal line name set and ensuring that its names are non-repeated, repeated processing of the same metal line is avoided. Then, by searching the metal lines in the initial line set according to the target name, the target vertical line set and the target horizontal line set are traversed and cross-connection points are determined, thereby ensuring the comprehensiveness and accuracy of the results and improving the efficiency of layout design.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of layout design, and in particular relates to a connection method and device for connecting cross metals in a simulation layout. Background Art

[0002] In integrated circuit design, analog layout design is an extremely important step that directly affects the performance and reliability of the circuit. Layout engineers need to use electronic design automation tools to layout various devices in the circuit and implement circuit functions through metal interconnects. In analog layout design, cross-connections of metal layers are a common requirement, especially when designing high-density and complex circuits. Engineers often need to deal with the cross-connections of vertical and horizontal metal lines.

[0003] Currently, the industry widely uses Cadence's Virtuoso platform for layout design. This platform provides a wealth of tools and features to help engineers complete the design process, from device layout to metal interconnection. However, because Virtuoso's wiring tools require configuration within the user interface, frequent operations are required when only a small number of wires need to be interconnected, resulting in inefficient layout design. Summary of the Invention

[0004] The purpose of the present invention is to solve the above problems and to provide a connection method and device for connecting cross metals in an analog layout.

[0005] In the implementation of the present invention, a connection method for connecting cross metals in a simulation layout is first proposed, the method comprising:

[0006] Obtaining metal wires to be connected by executing instructions, traversing all the names of the metal wires to be connected to obtain a metal wire name set; the metal wire names in the metal wire name set are non-repetitive;

[0007] Classify all metal wires that need to be connected to obtain an initial vertical line set and an initial horizontal line set;

[0008] Searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, and obtaining a vertical line set and a horizontal line set according to all the metal line pairs; the target name is any one of the metal line name sets; the metal line pairs include at least one vertical metal line and one horizontal metal line;

[0009] The vertical line set and the horizontal line set are sorted in a preset manner to obtain a target vertical line set and a target horizontal line set, and metal line cross-connection points in the target vertical line set and the target horizontal line set are determined by a preset algorithm.

[0010] Optionally, searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, and obtaining the vertical line set and the horizontal line set according to all metal line pairs includes:

[0011] Searching for metal lines with corresponding names in the initial vertical line set and the initial horizontal line set according to the target name;

[0012] If the metal line corresponding to the target name is found in both the initial vertical line set and the initial horizontal line set, the vertical metal line and the horizontal metal line corresponding to the target name are extracted to obtain a metal line pair;

[0013] updating the initial vertical line set and the initial horizontal line set after removing the metal line pair to obtain a temporary vertical line set and a temporary horizontal line set;

[0014] Traverse all metal line pairs, update the temporary vertical line set and the temporary horizontal line set to obtain the vertical line set and the horizontal line set.

[0015] Optionally, after searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, the method further includes:

[0016] For each metal line matching group, all vertical metal lines corresponding to the metal line matching group are obtained to obtain a vertical matching line set, and all horizontal metal lines corresponding to the metal line matching group are obtained to obtain a horizontal matching line set;

[0017] Performing the preset sorting on the vertical matching line set and the horizontal matching line set respectively to obtain a target vertical matching line set and a target horizontal matching line set;

[0018] For the target vertical matching line set and the target horizontal matching line set, metal line cross connection points are determined according to the preset algorithm.

[0019] Optionally, performing a preset sorting on the vertical line set and the horizontal line set to obtain a target vertical line set and a target horizontal line set includes:

[0020] For each vertical metal line in the vertical line set, obtaining a left edge value corresponding to the vertical metal line, and sorting all vertical metal lines from left to right according to the left edge values ​​to obtain a target vertical line set;

[0021] For each horizontal metal line in the horizontal line set, obtaining an upper edge value corresponding to the horizontal metal line, and sorting all horizontal metal lines from top to bottom according to the upper edge values ​​to obtain an initial sorted set;

[0022] For each metal line in the target vertical line set and the initial sorted set, the changed point and fixed point of the metal line are determined. If the fixed point of the metal line in the initial sorted set is below the right or above the left of the fixed point of the metal line in the target vertical line set, the initial sorted set is reversed to obtain the target horizontal line set.

[0023] Optionally, determining the metal line intersection connection points in the target vertical line set and the target horizontal line set by using a preset algorithm includes:

[0024] For each metal line in the target vertical line set and the target horizontal line set, determining a target metal line pair according to a sorting order; the sorting sequence number of the vertical metal line and the sorting sequence number of the horizontal metal line in the target metal line pair are the same;

[0025] The Y value of the changed point of the vertical metal line is modified to be equal to the Y value of the fixed point of the horizontal metal line, and the X value of the changed point of the horizontal metal line is modified to be equal to the X value of the fixed point of the vertical metal line. The overlapping coordinates of the vertical and horizontal lines are obtained and marked as the metal line intersection connection point.

[0026] In a second aspect of the present invention, a connection device for connecting cross metals in a simulation layout is provided, comprising:

[0027] a metal wire name extraction module, configured to obtain metal wires to be connected by executing instructions, and traverse all the names of the metal wires to be connected to obtain a metal wire name set; wherein the metal wire names in the metal wire name set are non-repetitive;

[0028] A classification module, used to classify all metal wires that need to be connected to obtain an initial vertical line set and an initial horizontal line set;

[0029] a metal line pair determination module, configured to search the metal lines in the initial vertical line set and the initial horizontal line set according to a target name to obtain metal line pairs, and obtain a vertical line set and a horizontal line set based on all the metal line pairs; the target name is any one of the metal line name sets; and the metal line pairs include at least one vertical metal line and one horizontal metal line;

[0030] The metal line cross connection point determination module is used to perform preset sorting on the vertical line set and the horizontal line set to obtain a target vertical line set and a target horizontal line set, and determine the metal line cross connection points in the target vertical line set and the target horizontal line set by a preset algorithm.

[0031] Optionally, the metal wire pair determination module includes:

[0032] A metal line search module, configured to search for metal lines with corresponding names in the initial vertical line set and the initial horizontal line set according to the target name;

[0033] a metal line pair generation module, configured to extract the vertical metal lines and the horizontal metal lines corresponding to the target name to obtain a metal line pair if the metal lines corresponding to the target name are found in both the initial vertical line set and the initial horizontal line set;

[0034] A first updating module is configured to update the initial vertical line set and the initial horizontal line set after removing the metal line pair to obtain a temporary vertical line set and a temporary horizontal line set;

[0035] The second updating module is used to traverse all metal line pairs and update the temporary vertical line set and the temporary horizontal line set to obtain a vertical line set and a horizontal line set.

[0036] Optionally, the device further includes:

[0037] a matching line set determination module, configured to obtain, for each metal line matching group, all vertical metal lines corresponding to the metal line matching group to obtain a vertical matching line set, and obtain all horizontal metal lines corresponding to the metal line matching group to obtain a horizontal matching line set;

[0038] a sorting module, configured to perform the preset sorting on the vertical matching line set and the horizontal matching line set respectively to obtain a target vertical matching line set and a target horizontal matching line set;

[0039] The connection point determination module is used to determine the metal line cross connection points according to the preset algorithm for the target vertical matching line set and the target horizontal matching line set.

[0040] Optionally, the metal wire cross-connection point determination module includes:

[0041] a vertical metal line sorting module, configured to obtain, for each vertical metal line in the vertical line set, a left edge value corresponding to the vertical metal line, and sort all the vertical metal lines from left to right according to the left edge values ​​to obtain a target vertical line set;

[0042] a horizontal metal line sorting module, configured to obtain, for each horizontal metal line in the horizontal line set, an upper edge value corresponding to the horizontal metal line, and sort all the horizontal metal lines from top to bottom according to the upper edge values ​​to obtain an initial sorting set;

[0043] The reverse processing module is used to determine the changed point and fixed point of each metal line in the target vertical line set and the initial sorted set. If the fixed point of the metal line in the initial sorted set is below the right or above the left of the fixed point of the metal line in the target vertical line set, the initial sorted set is reversed to obtain the target horizontal line set.

[0044] Optionally, the metal wire cross-connection point determination module further includes:

[0045] a target metal line pair determination module, configured to determine a target metal line pair for each metal line in the target vertical line set and the target horizontal line set according to a sorting order; wherein the sorting sequence number of the vertical metal line in the target metal line pair is the same as the sorting sequence number of the horizontal metal line;

[0046] The overlapping coordinate determination module is used to modify the Y value of the vertical metal line's modified point to be equal to the Y value of the horizontal metal line's fixed point, and modify the X value of the horizontal metal line's modified point to be equal to the X value of the vertical metal line's fixed point, thereby obtaining the overlapping coordinates of the vertical and horizontal lines and marking the overlapping coordinates as the metal line cross connection points.

[0047] Beneficial effects of the present invention:

[0048] The present invention proposes a connection method for connecting cross metal in a simulation layout. The method obtains metal lines to be connected by executing instructions, traverses all metal line names to be connected to obtain a metal line name set; the metal line names in the metal line name set are not repeated; all metal lines to be connected are classified to obtain an initial vertical line set and an initial horizontal line set; metal lines in the initial vertical line set and the initial horizontal line set are searched according to target names to obtain metal line pairs, and vertical line sets and horizontal line sets are obtained according to all metal line pairs; the target name is any one in the metal line name set; the metal line pair includes at least one vertical metal line and one horizontal metal line; the vertical line set and the horizontal line set are preset and sorted to obtain a target vertical line set and a target horizontal line set, and the metal line cross connection points in the target vertical line set and the target horizontal line set are determined by a preset algorithm. By obtaining the metal line name set and ensuring that its names are not repeated, repeated processing of the same metal line is avoided, and the overall efficiency of the algorithm is improved. Then, according to the target name, the metal lines in the initial line set are flexibly searched and metal line pairs are generated. Then, by traversing and determining the cross-connection points of the target vertical line set and the target horizontal line set, the comprehensiveness and accuracy of the results are guaranteed, and the efficiency of layout design is improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] The present invention will be further described below with reference to the accompanying drawings.

[0050] Figure 1 A flowchart of a connection method for connecting cross metals in a simulation layout is provided for an embodiment of the present invention;

[0051] Figure 2 A schematic structural diagram of a connecting device for connecting cross metals in a simulation layout is provided for an embodiment of the present invention. DETAILED DESCRIPTION

[0052] The following will be combined with the accompanying drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the embodiments described are only some of the embodiments of the present invention, not all of them. The term "and / or" herein simply describes the association relationship between related objects, indicating that three relationships can exist. For example, A and B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, descriptions such as "second" in the present invention are for descriptive purposes only and should not be understood to indicate or imply their relative importance or implicitly specify the number of technical features indicated. Therefore, features specified as "second" may explicitly or implicitly include at least one such feature. In addition, the technical solutions of various embodiments may be combined, but this must be based on the premise that they can be implemented by a person of ordinary skill in the art. If the solutions of the technical solutions are mutually inconsistent or cannot be implemented, the solution of the technical solution shall be deemed to be non-existent and not within the scope of protection claimed by the present invention.

[0053] Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making any creative work shall fall within the scope of protection of the present invention.

[0054] The embodiment of the present invention provides a connection method for connecting cross metal in analog layout. Figure 1 , Figure 1 A flowchart of a method for connecting cross metals in a simulation layout is provided in an embodiment of the present invention. The method includes the following steps:

[0055] S101, obtaining metal wires to be connected by executing instructions, and traversing all the names of the metal wires to be connected to obtain a metal wire name set;

[0056] S102, classifying all metal wires to be connected to obtain an initial vertical line set and an initial horizontal line set;

[0057] S103, searching for metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, and obtaining a vertical line set and a horizontal line set based on all the metal line pairs;

[0058] S104 , performing a preset sorting on the vertical line set and the horizontal line set to obtain a target vertical line set and a target horizontal line set, and determining metal line cross connection points in the target vertical line set and the target horizontal line set by a preset algorithm.

[0059] The metal line names in the metal line name set are not repeated; the target name is any one in the metal line name set; and the metal line pair includes at least one vertical metal line and one horizontal metal line.

[0060] A connection method for connecting cross metals in a simulation layout provided by an embodiment of the present invention avoids repeated processing of the same metal wires by obtaining a set of metal wire names and ensuring that the names are not repeated, thereby improving the overall efficiency of the algorithm. The metal wires in the initial line set are flexibly searched according to the target names and metal wire pairs are generated. The target vertical line set and the target horizontal line set are traversed and the cross connection points are determined, thereby ensuring the comprehensiveness and accuracy of the results and improving the efficiency of layout design.

[0061] In one implementation, by obtaining a set of metal wire names and ensuring that their names are not repeated, repeated processing of the same metal wire is avoided, thereby improving the overall efficiency of the algorithm. Then, by preliminarily classifying them into vertical line sets and horizontal line sets, the search range during subsequent processing is reduced, and the calculation speed of the connection points is accelerated.

[0062] In one implementation, by traversing and determining the cross-connection points of the target vertical line set and the target horizontal line set, the comprehensiveness and accuracy of the result are ensured.

[0063] In one implementation, each metal wire selects a changing point and a fixed point at its endpoint. When connecting the metal wires, the changing points and fixed points of the metal wires in the same direction are ensured to have the same corresponding directions. For example, in the horizontal direction, if the changing point is on the left, then all the fixed points are on the right. The changing points and fixed points are determined by technical personnel.

[0064] In one implementation, the execution instruction is determined by user selection; all metal wires that need to be connected are classified to obtain an initial vertical line set and an initial horizontal line set. Specifically, for each metal wire that needs to be connected, the two ends of the metal wire are obtained and recorded as the starting point and the ending point; if the X coordinate values ​​of the starting point and the ending point are the same, the metal wire is added to the initial horizontal line set; if the Y coordinate values ​​of the starting point and the ending point are the same, the metal wire is added to the initial vertical line set.

[0065] In one implementation, after determining the metal line intersection connection point, the horizontal metal lines and vertical metal lines that need to be connected are adjusted to ensure that the change points of the horizontal metal lines and vertical metal lines are all at the metal line intersection connection point. If the metal line length is insufficient, the metal line is extended. If the metal line length exceeds the metal line intersection connection point, the excess metal line portion is removed. The metal layer of the line that needs to be connected is identified, and the parameter data of the hole between the two metal layers (the width of the through hole, the left and right margins of the metal surrounding the through hole, the upper and lower margins of the metal surrounding the through hole, and the name) are determined. The target minimum width and length of the two holes are determined based on the through hole width, the left and right margins of the metal surrounding the through hole, and the upper and lower margins in the current hole parameters. It is determined which is larger, the target minimum width or the metal line width. If the metal line width is greater than the target minimum width, the hole width becomes the metal line width. The relative position of the line is determined, and the technician determines the lower left corner coordinates and the upper right corner coordinates of the upper metal and lower metal of the hole. A target rectangle is created based on the lower left corner coordinates and the upper right corner coordinates, and holes are punched in the two metal layers according to the target rectangle.

[0066] In one embodiment, searching for metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, and obtaining the vertical line set and the horizontal line set according to all metal line pairs includes:

[0067] Searching for metal wires with corresponding names in the initial vertical line set and the initial horizontal line set according to the target name;

[0068] If the metal line corresponding to the target name is found in both the initial vertical line set and the initial horizontal line set, the vertical metal line and the horizontal metal line corresponding to the target name are extracted to obtain a metal line pair;

[0069] updating the initial vertical line set and the initial horizontal line set after removing the metal line pairs to obtain a temporary vertical line set and a temporary horizontal line set;

[0070] Traverse all metal line pairs, update the temporary vertical line set and the temporary horizontal line set to obtain the vertical line set and the horizontal line set.

[0071] In one implementation method, the metal wires in the initial vertical line set and the initial horizontal line set are accurately searched according to the target name. This ensures that each metal wire pair is selected for a specific target, reducing unnecessary misconnections or omissions. Only when the metal wire with the corresponding target name can be found in the initial vertical line set and the initial horizontal line set, it is extracted as a metal wire pair, which effectively avoids incorrect metal wire pair combinations.

[0072] In one implementation, each time a metal wire pair is processed, the metal wire pair is updated and removed, so that the temporary vertical wire set and the temporary horizontal wire set only contain metal wires that have not been processed, thereby ensuring the gradual refinement of the metal wire pairs and reducing the possibility of repeated processing. All metal wire pairs are traversed and the temporary wire set is updated, so that the vertical wire set and the horizontal wire set are gradually optimized, and finally a more accurate metal wire set is obtained, which can better match the target connection requirements; after each update, the system will only focus on the metal wire pairs that have not been processed, reducing redundant operations, and gradually eliminating unnecessary metal wire pairs during the traversal process, thereby improving the efficiency of the overall process.

[0073] In one implementation, by ensuring that the matching of vertical and horizontal lines is extracted only when corresponding metal lines can be found for both, this effectively avoids incorrect connections caused by inaccurate matching and ensures the correctness of the metal line pairs.

[0074] In one embodiment, after searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain the metal line pairs, the method further includes:

[0075] For each metal line matching group, all vertical metal lines corresponding to the metal line matching group are obtained to obtain a vertical matching line set, and all horizontal metal lines corresponding to the metal line matching group are obtained to obtain a horizontal matching line set;

[0076] Preset sorting is performed on the vertical matching line set and the horizontal matching line set to obtain a target vertical matching line set and a target horizontal matching line set;

[0077] For the target vertical matching line set and the target horizontal matching line set, metal line cross connection points are determined according to a preset algorithm.

[0078] In one implementation, by pre-setting the sorting of vertical matching line sets and horizontal matching line sets, the arrangement order of the line sets can be optimized according to certain rules to facilitate subsequent operations; the processing of each matching group can be dynamically adjusted according to the specific vertical line sets and horizontal line sets, so that the system can flexibly adapt to different connection requirements or design changes, enhancing the ability to handle complex connections.

[0079] In one embodiment, performing a preset sorting on the vertical line set and the horizontal line set to obtain the target vertical line set and the target horizontal line set includes:

[0080] For each vertical metal line in the vertical line set, obtain the left edge value corresponding to the vertical metal line, and sort all the vertical metal lines from left to right according to the left edge values ​​to obtain a target vertical line set;

[0081] For each horizontal metal line in the horizontal line set, obtain the upper edge value corresponding to the horizontal metal line, and sort all the horizontal metal lines from top to bottom according to the upper edge value to obtain an initial sorted set;

[0082] For each metal line in the target vertical line set and the initial sorted set, the changed point and fixed point of the metal line are determined. If the fixed point of the metal line in the initial sorted set is below the right or above the left of the fixed point of the metal line in the target vertical line set, the initial sorted set is reversed to obtain the target horizontal line set.

[0083] In one implementation, the left edge value is the X value of the left edge of the line in the coordinate system. Sorting all vertical metal lines from left to right according to the left edge value to obtain the target vertical line set is to sort the vertical metal lines along the positive direction of the X axis according to the left edge value. Similarly, the upper edge value is the Y value of the upper edge of the line in the coordinate system, and the horizontal metal lines are sorted from top to bottom along the Y axis according to the upper edge value.

[0084] In one implementation, vertical metal lines are sorted from left to right according to their left edge values, and horizontal metal lines are sorted from top to bottom according to their upper edge values, ensuring the consistency of the arrangement order of the metal lines and the spatial layout; the sorted target vertical line set and the initial sorted set facilitate subsequent intersection point calculations and reduce erroneous operations caused by chaotic arrangement.

[0085] In one implementation, when the fixed point position of the horizontal line forms a lower right or upper left relationship with the fixed point of the vertical line, the arrangement of the metal wires is ensured to be more in line with the design rules of the connection through reverse adjustment, thereby improving the rationality of the layout. For example, the original order of the horizontal lines from top to bottom is A1, A2, A3, which is changed to A3, A2, A1 through reverse adjustment.

[0086] In one embodiment, determining the metal line intersection connection points in the target vertical line set and the target horizontal line set by a preset algorithm includes:

[0087] For each metal line in the target vertical line set and the target horizontal line set, determining a target metal line pair according to the sorting order; the sorting sequence number of the vertical metal line and the sorting sequence number of the horizontal metal line in the target metal line pair are the same;

[0088] The Y value of the changed point of the vertical metal line is modified to be equal to the Y value of the fixed point of the horizontal metal line, and the X value of the changed point of the horizontal metal line is modified to be equal to the X value of the fixed point of the vertical metal line. The overlapping coordinates of the vertical and horizontal lines are obtained and marked as the metal line intersection connection point.

[0089] In one implementation, vertical and horizontal lines are matched in sorted order to ensure that the correspondence between target metal wire pairs is clear, without omissions or duplications, thereby improving the accuracy of intersection determination; metal wires with the same sorting sequence are directly matched, avoiding complex comparison logic and unnecessary interference.

[0090] In one implementation, after the metal line cross connection point is determined, the horizontal metal line is extended by half the metal line width, and the extension direction is the change point of the horizontal metal line.

[0091] In one implementation, the Y value of the vertical line's changing point is the same as the horizontal line's fixed point, and the X value of the horizontal line's changing point is the same as the vertical line's fixed point. This ensures that the intersection truly reflects the physical connection between the vertical and horizontal lines. Coordinate adjustment is completed automatically based on rules, without the need for manual intervention, saving time and effort.

[0092] Based on the same inventive concept, the present invention also provides a connection device for connecting cross metals in a simulation layout. Figure 2 , Figure 2 A schematic structural diagram of a connection device for connecting cross metals in a simulation layout provided by an embodiment of the present invention includes:

[0093] A metal wire name extraction module is used to obtain the metal wires to be connected by executing instructions, and traverse the names of all the metal wires to be connected to obtain a metal wire name set; the metal wire names in the metal wire name set are not repeated;

[0094] A classification module, used to classify all metal wires that need to be connected to obtain an initial vertical line set and an initial horizontal line set;

[0095] a metal line pair determination module, configured to search the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain a metal line pair, and obtain a vertical line set and a horizontal line set according to all the metal line pairs; the target name is any one of the metal line name sets; and the metal line pair includes at least one vertical metal line and one horizontal metal line;

[0096] The metal line cross connection point determination module is used to perform preset sorting on the vertical line set and the horizontal line set to obtain the target vertical line set and the target horizontal line set, and determine the metal line cross connection points in the target vertical line set and the target horizontal line set through a preset algorithm.

[0097] Based on an embodiment of the present invention, a connection device for connecting cross metals in a simulation layout is provided. By obtaining a set of metal line names and ensuring that the names are not repeated, repeated processing of the same metal lines is avoided, thereby improving the overall efficiency of the algorithm. Then, according to the target name, the metal lines in the initial line set are flexibly searched and metal line pairs are generated. Then, by traversing and determining the cross connection points of the target vertical line set and the target horizontal line set, the comprehensiveness and accuracy of the results are guaranteed, thereby improving the efficiency of layout design.

[0098] In one embodiment, the metal line pair determination module includes:

[0099] A metal line search module, used for searching metal lines with corresponding names in the initial vertical line set and the initial horizontal line set according to the target name;

[0100] a metal line pair generation module, configured to extract the vertical metal lines and the horizontal metal lines corresponding to the target name to obtain metal line pairs if the metal lines corresponding to the target name are found in both the initial vertical line set and the initial horizontal line set;

[0101] A first updating module is used to update the initial vertical line set and the initial horizontal line set after removing the metal line pairs to obtain a temporary vertical line set and a temporary horizontal line set;

[0102] The second updating module is used to traverse all metal line pairs and update the temporary vertical line set and the temporary horizontal line set to obtain a vertical line set and a horizontal line set.

[0103] In one embodiment, the apparatus further comprises:

[0104] a matching line set determination module, configured to obtain, for each metal line matching group, all vertical metal lines corresponding to the metal line matching group to obtain a vertical matching line set, and obtain all horizontal metal lines corresponding to the metal line matching group to obtain a horizontal matching line set;

[0105] A sorting module is used to perform preset sorting on the vertical matching line set and the horizontal matching line set to obtain a target vertical matching line set and a target horizontal matching line set;

[0106] The connection point determination module is used to determine the metal wire cross connection points according to a preset algorithm for the target vertical matching line set and the target horizontal matching line set.

[0107] In one embodiment, the metal line cross connection point determination module includes:

[0108] a vertical metal line sorting module, configured to obtain, for each vertical metal line in the vertical line set, a left edge value corresponding to the vertical metal line, and sort all the vertical metal lines from left to right according to the left edge values ​​to obtain a target vertical line set;

[0109] a horizontal metal line sorting module, configured to obtain, for each horizontal metal line in the horizontal line set, an upper edge value corresponding to the horizontal metal line, and sort all the horizontal metal lines from top to bottom according to the upper edge values ​​to obtain an initial sorting set;

[0110] The reverse processing module is used to determine the changed point and fixed point of each metal line in the target vertical line set and the initial sorted set. If the fixed point of the metal line in the initial sorted set is below the right or above the left of the fixed point of the metal line in the target vertical line set, the initial sorted set is reversed to obtain the target horizontal line set.

[0111] In one embodiment, the metal line cross connection point determination module further includes:

[0112] a target metal line pair determination module, configured to determine a target metal line pair for each metal line in the target vertical line set and the target horizontal line set according to a sorting order; the sorting numbers of the vertical metal lines in the target metal line pair are the same as the sorting numbers of the horizontal metal lines;

[0113] The overlapping coordinate determination module is used to modify the Y value of the vertical metal line's modified point to be equal to the Y value of the horizontal metal line's fixed point, and modify the X value of the horizontal metal line's modified point to be equal to the X value of the vertical metal line's fixed point, thereby obtaining the overlapping coordinates of the vertical and horizontal lines and marking the overlapping coordinates as the metal line cross connection points.

[0114] The above is a detailed description of an embodiment of the present invention, but the content is only a preferred embodiment of the present invention and should not be considered to limit the scope of the present invention. All equivalent changes and improvements made within the scope of the present invention should still fall within the scope of the patent coverage of the present invention.

Claims

1. A connection method for connecting cross metals in an analog layout, characterized in that: The method comprises: Obtaining metal wires to be connected by executing instructions, traversing all the names of the metal wires to be connected to obtain a metal wire name set; the metal wire names in the metal wire name set are non-repetitive; Classify all metal wires that need to be connected to obtain an initial vertical line set and an initial horizontal line set; Searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, and obtaining a vertical line set and a horizontal line set according to all the metal line pairs; the target name is any one of the metal line name sets; the metal line pairs include at least one vertical metal line and one horizontal metal line; Performing a preset sorting on the vertical line set and the horizontal line set to obtain a target vertical line set and a target horizontal line set, and determining metal line cross-connection points in the target vertical line set and the target horizontal line set by a preset algorithm; Searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, and obtaining the vertical line set and the horizontal line set according to all the metal line pairs includes: Searching for metal lines with corresponding names in the initial vertical line set and the initial horizontal line set according to the target name; If the metal line corresponding to the target name is found in both the initial vertical line set and the initial horizontal line set, the vertical metal line and the horizontal metal line corresponding to the target name are extracted to obtain a metal line pair; updating the initial vertical line set and the initial horizontal line set after removing the metal line pair to obtain a temporary vertical line set and a temporary horizontal line set; Traverse all metal line pairs, update the temporary vertical line set and the temporary horizontal line set to obtain the vertical line set and the horizontal line set; Performing a preset sorting on the vertical line set and the horizontal line set to obtain a target vertical line set and a target horizontal line set includes: For each vertical metal line in the vertical line set, obtaining a left edge value corresponding to the vertical metal line, and sorting all vertical metal lines from left to right according to the left edge values ​​to obtain a target vertical line set; For each horizontal metal line in the horizontal line set, obtaining an upper edge value corresponding to the horizontal metal line, and sorting all horizontal metal lines from top to bottom according to the upper edge values ​​to obtain an initial sorted set; For each metal line in the target vertical line set and the initial sorted set, determining the modified point and fixed point of the metal line. If the fixed point of a metal line in the initial sorted set is to the lower right or upper left of the fixed point of a metal line in the target vertical line set, reversing the initial sorted set to obtain the target horizontal line set. Determining the metal line intersection connection points of the target vertical line set and the target horizontal line set by a preset algorithm includes: For each metal line in the target vertical line set and the target horizontal line set, determining a target metal line pair according to a sorting order; the sorting sequence number of the vertical metal line and the sorting sequence number of the horizontal metal line in the target metal line pair are the same; The Y value of the changed point of the vertical metal line is modified to be equal to the Y value of the fixed point of the horizontal metal line, and the X value of the changed point of the horizontal metal line is modified to be equal to the X value of the fixed point of the vertical metal line. The overlapping coordinates of the vertical and horizontal lines are obtained and marked as the metal line intersection connection point.

2. The method for connecting cross metals in a simulation layout according to claim 1, characterized in that: After searching the metal lines in the initial vertical line set and the initial horizontal line set according to the target name to obtain metal line pairs, the following further comprises: For each metal line matching group, all vertical metal lines corresponding to the metal line matching group are obtained to obtain a vertical matching line set, and all horizontal metal lines corresponding to the metal line matching group are obtained to obtain a horizontal matching line set; Performing the preset sorting on the vertical matching line set and the horizontal matching line set respectively to obtain a target vertical matching line set and a target horizontal matching line set; For the target vertical matching line set and the target horizontal matching line set, metal line cross connection points are determined according to the preset algorithm.

3. A connecting device for connecting cross metals in a simulation layout, characterized in that: The device comprises: a metal wire name extraction module, configured to obtain metal wires to be connected by executing instructions, and traverse all the names of the metal wires to be connected to obtain a metal wire name set; wherein the metal wire names in the metal wire name set are non-repetitive; A classification module, used for classifying all metal wires to be connected to obtain an initial vertical line set and an initial horizontal line set; a metal line pair determination module, configured to search the metal lines in the initial vertical line set and the initial horizontal line set according to a target name to obtain metal line pairs, and obtain a vertical line set and a horizontal line set based on all the metal line pairs; the target name is any one of the metal line name sets; and the metal line pairs include at least one vertical metal line and one horizontal metal line; a metal line cross connection point determination module, configured to perform a preset sorting on the vertical line set and the horizontal line set to obtain a target vertical line set and a target horizontal line set, and determine the metal line cross connection points in the target vertical line set and the target horizontal line set using a preset algorithm; The metal wire pair determination module includes: A metal line search module, configured to search for metal lines with corresponding names in the initial vertical line set and the initial horizontal line set according to the target name; a metal line pair generation module, configured to extract the vertical metal lines and the horizontal metal lines corresponding to the target name to obtain a metal line pair if the metal lines corresponding to the target name are found in both the initial vertical line set and the initial horizontal line set; A first updating module is configured to update the initial vertical line set and the initial horizontal line set after removing the metal line pair to obtain a temporary vertical line set and a temporary horizontal line set; A second updating module is used to traverse all metal line pairs and update the temporary vertical line set and the temporary horizontal line set to obtain a vertical line set and a horizontal line set; The metal wire cross connection point determination module includes: a vertical metal line sorting module, configured to obtain, for each vertical metal line in the vertical line set, a left edge value corresponding to the vertical metal line, and sort all the vertical metal lines from left to right according to the left edge values ​​to obtain a target vertical line set; a horizontal metal line sorting module, configured to obtain, for each horizontal metal line in the horizontal line set, an upper edge value corresponding to the horizontal metal line, and sort all the horizontal metal lines from top to bottom according to the upper edge values ​​to obtain an initial sorting set; a reverse processing module, configured to determine, for each metal line in the target vertical line set and the initial sorted set, a modified point and a fixed point of the metal line; and if the fixed point of a metal line in the initial sorted set is to the lower right or upper left of the fixed point of a metal line in the target vertical line set, performing reverse processing on the initial sorted set to obtain a target horizontal line set; The metal wire cross connection point determination module further includes: a target metal line pair determination module, configured to determine a target metal line pair for each metal line in the target vertical line set and the target horizontal line set according to a sorting order; wherein the sorting sequence number of the vertical metal line in the target metal line pair is the same as the sorting sequence number of the horizontal metal line; The overlapping coordinate determination module is used to modify the Y value of the vertical metal line's modified point to be equal to the Y value of the horizontal metal line's fixed point, and modify the X value of the horizontal metal line's modified point to be equal to the X value of the vertical metal line's fixed point, thereby obtaining the overlapping coordinates of the vertical and horizontal lines and marking the overlapping coordinates as the metal line cross connection points.

4. The connecting device for connecting cross metals in a simulation layout according to claim 3, characterized in that: The device further comprises: a matching line set determination module, configured to obtain, for each metal line matching group, all vertical metal lines corresponding to the metal line matching group to obtain a vertical matching line set, and obtain all horizontal metal lines corresponding to the metal line matching group to obtain a horizontal matching line set; a sorting module, configured to perform the preset sorting on the vertical matching line set and the horizontal matching line set respectively to obtain a target vertical matching line set and a target horizontal matching line set; The connection point determination module is used to determine the metal line cross connection points according to the preset algorithm for the target vertical matching line set and the target horizontal matching line set.

Citation Information

Patent Citations

  • Metal wiring method, device and equipment for simulation layout and storage medium

    CN116306469A

  • Sequence-pair creating apparatus and sequence-pair creating method

    US20080244490A1