A collaborative optimization method for track assignment and pin access analysis

By collaboratively optimizing pin access analysis and track allocation, and dynamically adjusting access points and iroute positions, the routing complexity and local optima problems in existing technologies are solved, achieving more efficient routing optimization.

CN120579509BActive Publication Date: 2025-11-04SOUTHWEAT UNIV OF SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511066704.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-31
Publication Date
2025-11-04
Estimated Expiration
2045-07-31

AI Technical Summary

Technical Problem

Existing pin access analysis and track allocation algorithms cannot effectively coordinate optimization, leading to increased complexity in subsequent routing. Furthermore, traditional methods lack dynamic adjustment mechanisms, making them prone to getting trapped in local optima and affecting routing efficiency.

Method used

A collaborative optimization method combining track allocation and pin access analysis is adopted. By introducing cost constraints to adjust pin access points and iroute positions, a two-dimensional cost evaluation mechanism is established. A greedy algorithm and minimum spanning tree method are used to optimize track allocation and dynamically update the number of vias to reduce overlap and routing conflicts.

Benefits of technology

It effectively reduces the complexity of the detailed routing stage, reduces routing costs, improves routing efficiency and the accuracy of via placement, avoids local optima traps, and optimizes routing results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120579509B_ABST
    Figure CN120579509B_ABST
Patent Text Reader

Abstract

The present application belongs to the technical field of circuit wiring, and discloses a method for collaborative optimization of track allocation and pin access analysis, comprising the following steps: S10, performing pin access analysis on the wiring database data after initialization processing to generate pin access points; S20, track allocation: based on the pin access points, calculating the number of through holes in the initial allocation, updating the number of through holes, and then performing iroute allocation considering the wire length and through hole cost of the pin, to complete the wiring optimization. The present application helps the collaborative sensing algorithm of track allocation and pin access analysis to estimate the cost, adjusts the pin access points and iroute positions using the cost constraint, and reduces the subsequent wiring complexity.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of circuit wiring, and particularly relates to a collaborative optimization method for track allocation and pin access analysis. BACKGROUND

[0002] Pin access analysis and track allocation are two key steps in the detailed routing phase. Pin access analysis is used to generate pin access points needed in the subsequent phase. The purpose of track allocation is to pre-allocate abstract (long path segment) iroute of global routing to specific routing tracks to reduce the computational complexity of detailed routing. Iroute refers to the connection path between the layers inside the circuit board, which is used to realize signal transmission and electrical connection between different layers. Existing work cannot reduce the complexity of subsequent routing by dynamically changing the location of access points and iroute.

[0003] In the current research, track allocation algorithms are usually divided into two main categories, namely conflict-free track allocation (CTA) algorithm and routing-driven track allocation (RDTA) algorithm. In the former, any overlap between iroute and obstacles or other iroute is completely avoided, so there are always some iroute that cannot be finally allocated to tracks. The latter only considers the connectivity of pins and does not consider the coordination with the pin access stage. The local congestion tracking planning (TraPL) scheme of global routing comprehensively considers iroute track combination, local routing, via location and pin access, so that the result is more accurate. However, the iroute allocation of TraPL is fixed, lacking a redistribution and reallocation mechanism, which is easy to fall into local optimum. By allocating tracks that minimize all iroute allocation conflicts as much as possible, the complexity of the subsequent routing stage is reduced. Pin access analysis only considers the connectivity of pins, ignoring the relationship between pin access analysis and track allocation and the consideration of mutual constraints during the execution of the two steps, which has a significant impact on the via setting and routing efficiency of subsequent detailed routing. SUMMARY

[0004] To solve the above problems, the application provides a collaborative optimization method for track allocation and pin access analysis, which helps track allocation and pin access analysis to collaboratively perceive the cost estimation, adjust the pin access points and iroute positions using cost constraints, and reduce the complexity of subsequent routing.

[0005] To achieve the above purpose, the technical scheme adopted by the application is as follows: a collaborative optimization method for track allocation and pin access analysis, comprising the following steps:

[0006] S10, performing pin access analysis on the initialized routing database data to generate pin access points;

[0007] S20, track allocation: based on pin access point, initial allocation of via number calculation, then via number update, then consider the pin access point of the line length and via cost iroute allocation, complete the wiring optimization.

[0008] Further, in the track allocation process, the cost metric considering the pin access point is performed;

[0009] A two-dimensional cost evaluation mechanism considering pin access analysis is established, aiming to optimize the selection process of access points and iroute, including:

[0010] DRC violation cost: according to the DRC standard, the design is checked by design rule checking, the potential conflict between the access path and the existing metal layer is evaluated, and the path option leading to DRC violation is excluded; whether the access is DRC clean is obtained by DRC checking;

[0011] Distance cost: the quality of the path is evaluated by evaluating the shortest Manhattan distance from each DRC clean access point to the iroute.

[0012] Further, in the distance cost, a pinWireCost is defined to quantify the current access point distance cost of a network; it involves the distance between the access point and the iroute, and the distance from the iroute to the next target access point.

[0013] Further, in the track allocation stage, track allocation cost metric is performed, including: line length cost and network via cost based on access point position.

[0014] Further, the line length cost of the access point position includes:

[0015] The minimum spanning tree (MST) method is used to calculate the line length cost;

[0016] The line length cost of each network net is determined, and the sum of all network line length costs is obtained to obtain the total line length of the track allocation scheme;

[0017] Wherein, the line length cost of the network includes: first, construct a weighted complete graph G(net), where each vertex represents a network component, and the weight of each edge represents the shortest Manhattan distance between two corresponding network components; then, find the MST connecting all components, and use the length of the MST as the line length cost of the network, the calculation formula is

[0018] ;

[0019] Wherein, pinWireCost is the total sum of the pin access point wire length cost in the network net, e is an edge of the weighted complete graph G(net), and w(e) is the weight of the edge e.

[0020] Further, the network via cost includes:

[0021] For each iroute, the cost of its assignment to each track is calculated, and the track with the lowest cost is selected for iroute assignment;

[0022] Then a hash table is created to store the number of vias of each network affected by the current iroute assignment; this hash table is dynamically updated and refined during the initial iroute assignment process.

[0023] Further, the overlap between iroute path segments ir i requires a vertical via for connection, and the via cost is calculated as follows:

[0024] ;

[0025] ;

[0026] In the above formula, if iri overlaps in a different direction from other iroutes, or in the same direction but the iroute is on a different layer, then it is 1; otherwise, it is 0;

[0027] ;

[0028] In the above formula, if pin is in the same layer as iroute in the corresponding direction, then it is 0; if pin and iroute are on different layers or pin is not in the corresponding direction of iroute, then it is 1;

[0029] Wherein, is the cost of the overlap of the ith iroute causing a via; is the number of vias, and N is the total number of iroutes;

[0030] If pin is in the same layer as iroute in the corresponding direction, and iroute is not an iroute connecting pin and iroute or pin and pin, then is set to 0, and if pin and iroute are not on the same layer or pin is not in the corresponding direction of iroute and pin and iroute are to be connected to each other, then is set to 1;

[0031] The network total via hash structure is also set, and during the iroute assignment process, the above via calculation method is used to update When removing iroute, subtract the corresponding via, when assigning to the position that needs via connection, add the increased via number.

[0032] Further, the pin access analysis and track allocation collaborative optimization engine, by incorporating pin access analysis and track allocation into a unified framework for collaborative optimization, the engine framework includes an initial allocation phase and an overlap reduction phase considering access point cost and network via cost.

[0033] Further, in the initial allocation phase, a greedy algorithm is used to allocate a track for each iroute to obtain an initial allocation scheme.

[0034] Further, in the overlap reduction phase, a minimum cost track finding method is adopted, with cost constraints, by repeatedly removing and reallocating iroute to minimize overlap:

[0035] During the minimum cost track finding phase:

[0036] By iteratively decomposing and reallocating iroute to reduce overlap, a wire length cost pinWireCost is introduced, and a new via cost pinViaCost is added, and the minimum cost considers the changes in pin access points and iroute positions.

[0037] The beneficial effects of using the present technical solution are:

[0038] The present application aims to reduce the complexity of the detailed routing stage to reduce the routing cost, using a two-stage track allocation framework, additional fast via calculation, via number update and cost reduction stage considering pin access point wire length and via cost, to fine calculation control track selection and dynamic selection of access points. BRIEF DESCRIPTION OF DRAWINGS

[0039] Figure 1 A collaborative optimization method for track allocation and pin access analysis of the present application;

[0040] Figure 2 A wire length cost calculation diagram in an embodiment of the present application;

[0041] Figure 3 A schematic diagram of iroute overlap requiring via connection in different directions in an embodiment of the present application;

[0042] Figure 4 A comparison result chart for experimental analysis in an embodiment of the present application. DETAILED DESCRIPTION

[0043] In order to make the purposes, technical solutions and advantages of the present application clearer, the present application will be further described below with reference to the drawings.

[0044] In the embodiment, referring to Figure 1 The present application proposes a collaborative optimization method for track allocation and pin access analysis, including the steps of:

[0045] S10, pin access analysis is performed on the wiring database data (including LEF, DEF and Guide data, etc.) after initialization processing, and pin access points are generated;

[0046] S20, track allocation: based on the pin access points, the number of vias is calculated in the initial allocation, the number of vias is updated, and then the iroute allocation considering the wire length and via cost of the pin access points is performed, and the wiring optimization is completed.

[0047] As an optimization scheme of the above embodiment, in the track allocation process, the cost measurement considering the pin access points is performed;

[0048] A two-dimensional cost evaluation mechanism considering pin access analysis is established, aiming to optimize the selection process of access points and iroute, including:

[0049] DRC violation cost: according to the DRC standard, the design is checked according to the design rule, the potential conflict between the access path and the existing metal layer is evaluated, and the path option leading to DRC violation is excluded; whether the access is DRC clean is obtained through DRC checking;

[0050] Distance cost: the quality of the path is evaluated by evaluating the shortest Manhattan distance from each DRC clean access point to the iroute.

[0051] Preferably, in the distance cost, a pinWireCost is defined to quantify the current access point distance cost of a network; it involves the distance between the access point and the iroute, and the distance from the iroute to the next target access point.

[0052] As an optimization scheme of the above embodiment, in the track allocation stage, track allocation cost measurement is performed, including: wire length cost and network via cost based on access point position.

[0053] The wire length cost of the access point position includes:

[0054] Each iroute or pin is a component of the network, and all network components will be connected in the detailed wiring process. In order to minimize the total wire length of each network, the present application uses the minimum spanning tree (MST) method to calculate the wire length cost, because the length of the MST is highly related to the final wire length;

[0055] The wire length cost of each network net is determined, and the sum of all network wire length costs is the total wire length of the track allocation scheme;

[0056] Figure 2 A network with three iroutes and two pins is shown. The top horizontal panel contains iroute, pin p1 and access point pa1, while the bottom horizontal panel contains iroute, pin p2 and access point pa2. Among them, the wire length cost of the network includes: first, construct a weighted complete graph , where each vertex represents a network component, and the weight on each edge represents the shortest Manhattan distance between two corresponding network components; then find the MST connecting all components, and use the length of the MST as the wire length cost of the network, the formula is

[0057] ;

[0058] , where pinWireCost is the sum of the wire length cost considering the pin access points in the network net, e is an edge of the weighted complete graph G(net), and w(e) is the weight of edge e.

[0059] The network via hole cost includes:

[0060] For each iroute, calculate its cost of allocation to each track, and select the track with the lowest cost for iroute allocation;

[0061] Then create a hash table to store the number of via holes of each network affected by the current iroute allocation; this hash table is dynamically updated and refined during the initial iroute allocation process.

[0062] As shown in Figure 3 , the overlap between iroute path segments ir i requires a vertical via hole to connect, and the formula for calculating the via hole cost is:

[0063] ;

[0064] ;

[0065] In the above formula, if iri overlaps in a different direction from other iroutes, or in the same direction but the iroute is in a different layer, it is 1; otherwise, it is 0;

[0066] ;

[0067] In the above formula, pin is in the corresponding direction of the same layer of iroute, then it is 0; pin and iroute are in different layers or pin is not in the corresponding direction of iroute, then it is 1;

[0068] wherein, is the cost of the via caused by the overlap of the ith iroute; is the number of vias, and N is the total number of iroutes;

[0069] pin is in the corresponding direction of the same layer of iroute, then it is 0; pin and iroute are in different layers or pin is not in the corresponding direction of iroute, then it is 1; is set to 0, pin and iroute are not in the same layer or pin is not in the corresponding direction of iroute, and pin and iroute are to be connected with each other, then is set to 1;

[0070] Meanwhile, the total via hash structure of the network is set In the iroute allocation process, the above via calculation method is used to update In the process of removing iroute, the corresponding via is subtracted, and when the via is connected to the position where the via is needed, the number of added vias is added.

[0071] As an optimization scheme of the above embodiment, the collaborative optimization engine of pin access analysis and track allocation aims to solve the disconnection problem in the traditional routing of separately optimizing pin access and track allocation. By incorporating pin access analysis and track allocation into a unified framework for collaborative optimization, it reduces routing conflicts, violations and overall cost. The engine framework includes an initial allocation stage and an overlap reduction stage considering access point cost and network via cost.

[0072] Preferably, in the initial allocation stage, a greedy algorithm is used to allocate a track to each iroute to obtain an initial allocation scheme. The quality of this greedy algorithm depends on the allocation order. Experiments show that the best results can be obtained by allocating iroute in descending order of length.

[0073] Preferably, in the overlap reduction stage, the minimum cost track method is adopted with cost constraints to achieve better results in subsequent routing by repeatedly removing and reallocating iroute to minimize overlap:

[0074] In the process of finding the minimum cost track stage:

[0075] To reduce the overlap by iteratively decomposing and reallocating iroute, a pinWireCost is introduced to replace the wireCost in the original algorithm, and a new viaCost is added to consider the change of pin access point and iroute location in the minimum cost.

[0076] As Figure 4 shown in (a) and (b). In the pin access analysis phase, only the DRC cost of access point and the estimated wire length cost are considered. In Figure 4 (a), the algorithm generates access points and access patterns through pin access analysis, and finally obtains a set of DRC-clean access points (represented by black points) and blue access patterns (hereinafter referred to as "selected points"). On the other hand, the track allocation phase aims to reduce the complexity of subsequent routing by minimizing the wire length, obstacle and overlap costs, which are based on the pin location. However, due to the fact that the pin access analysis phase does not fully consider the cost constraints of subsequent track allocation and routing, the selected points of pin p1 do not align well with the requirements of track allocation and routing, thereby increasing the via and wire length costs.

[0077] In Figure 4 (c), a co-optimization algorithm is constructed to dynamically select access points and update iroute allocation in the track allocation phase. By selecting access points and tracks to minimize routing costs while ensuring pin connectivity, the pin access and track allocation costs are minimized based on the minimum pin access and track allocation costs. Figure 4 (d) shows the routing result after applying the algorithm, in which the access point pa of pin p1 is adjusted to the position shown in the figure. The algorithm introduces additional pinWireCost and pinViaCost costs in the cost function, which are used to adjust the position of the access point according to its constraints. Therefore, the access point cost constraint and via cost constraint are introduced in the iroute reallocation of track allocation, and the selected points of pins are dynamically adjusted by the cost constraints, and the current cost of selecting iroute ir for removal is defined as follows:

[0078] ;

[0079] wherein pinCost is the access point cost, overlapCost is the overlap cost, blkCost is the blockage cost, and historyCost represents the sum of the historical costs of all unit intervals covered by iroute (ir) on track t.

[0080] In the formula, the parameter a1 is set to 32 and the parameter β is set to a large number 1000 to avoid congestion as much as possible. The iroute (ir) is assigned to the track with the lowest cost, which is calculated according to the formula. The pinCost is defined as the sum of the wire length and via changes due to the modification of the pin selection point. In the present method, the parameter µ of pinWireCost is set to 0.1 and the parameter σ weight of pinViaCost is set to 5 through experiments. After the assignment is completed, the historical cost of the relevant track will be updated.

[0081] The above cost minimization formula is the mathematical basis of the collaborative optimization engine. It defines the total cost that needs to be minimized during the routing process, including the overlap cost, congestion cost, and the cost related to the corresponding pin access point.

[0082] The collaborative optimization algorithm is the key to realize cost minimization, which optimizes the routing by dynamically adjusting the pin access point and track assignment strategy based on the cost. The algorithm takes into account the access mode of each pin and the iroute in the global routing result, as well as their interaction and constraints.

[0083] The above shows and describes the basic principles and main features of the present application and the advantages of the present application. It should be understood by those skilled in the art that the present application is not limited by the above examples, and the above examples and descriptions in the specification are only to illustrate the principles of the present application. Without departing from the spirit and scope of the present application, various changes and improvements can be made to the present application, and these changes and improvements all fall within the scope of the claimed present application. The scope of protection of the present application is defined by the appended claims and their equivalents.

Claims

1. A collaborative optimization method for track allocation and pin access analysis, characterized in that, Including the following steps: S10: Perform pin access analysis on the initialized wiring database data and generate pin access points; S20, Track Allocation: Based on pin access points, the number of vias is calculated in the initial allocation, then the number of vias is updated, and then iroute allocation is performed considering the line length of the pin access points and the cost of vias to complete the routing optimization; During the track allocation process, cost metrics for pin access points are considered. A two-dimensional cost evaluation mechanism considering pin access analysis is established to optimize the selection process of access points and iroutes, including: Cost of DRC violation: Check the DRC standard according to design rules, perform design rule checks on the design, assess potential conflicts between access paths and existing metal layers, and eliminate path options that may lead to DRC violations; determine whether the access is DRC clean through DRC checks; Distance Cost: The quality of the route is evaluated by assessing the shortest Manhattan distance from each DRC clean access point to the iroute.

2. The collaborative optimization method for track allocation and pin access analysis according to claim 1, characterized in that, In distance cost, a pinWireCost is defined to quantify the distance cost of a network’s current access point; it involves the distance between the access point and the iroute, as well as the distance from the iroute to the next target access point.

3. The collaborative optimization method for track allocation and pin access analysis according to claim 1, characterized in that, During the track allocation phase, track allocation cost metrics are performed, including: line length cost and network via cost based on access point location.

4. The collaborative optimization method for track allocation and pin access analysis according to claim 3, characterized in that, The line length cost of the access point location includes: The minimum spanning tree (MST) method is used to calculate the line length cost. The cost of the line length for each network is determined, and the sum of the costs of all network line lengths yields the bus length for the track allocation scheme. The calculation of the network's line length cost includes: first, constructing a weighted complete graph G(net), where each vertex represents a network component and the weight of each edge represents the shortest Manhattan distance between two corresponding network components; then, finding the MST connecting all components and using the length of the MST as the network's line length cost, calculated using the following formula: ; Where pinWireCost is the total cost of the pin access points in the network net, e is an edge of the weighted complete graph G(net), and w(e) is the weight of edge e.

5. The collaborative optimization method for track allocation and pin access analysis according to claim 3, characterized in that, The cost of the network vias includes: For each iroute, calculate the cost of its allocation to each track, and select the track with the lowest cost for iroute allocation; Then a hash table is created to store the number of vias for each network affected by the current iroute allocation; this hash table is dynamically updated and refined during the initial iroute allocation process.

6. The collaborative optimization method for track allocation and pin access analysis according to claim 5, characterized in that, iroute path segment ir i The overlap between them requires a vertical via for connection. The via cost calculation formula is as follows: ; ; In the above formula, if ir i If it overlaps in a direction different from other iroutes, or in the same direction but the iroutes are on different layers, then it is 1; otherwise, it is 0. ; In the above formula, if the access point pin is in the same direction as iroute on the same layer, the value is 0; if pin and iroute are on different layers or pin is not in the same direction as iroute, the value is 1. in, The cost of the via is caused by the overlap of the i-th iroute; Where N is the number of through holes and N is the total number of iroutes; If the pins are in the same layer and corresponding direction as the iroute, and the iroute is not a connection between pins or pins, then... Set to 0, the pin and iroute are not on the same layer or the pin is not in the corresponding direction of the iroute and the pin and iroute need to be connected to each other. Set to 1; Simultaneously set the network port hash structure. During the iroute allocation process, the via calculation method described above is updated in real time. When removing the iroute, subtract the corresponding through holes, and when assigning it to a position that requires through hole connection, add the number of additional through holes.

7. The collaborative optimization method for track allocation and pin access analysis according to claim 1, characterized in that, The co-optimization engine for pin access analysis and track allocation integrates pin access analysis and track allocation into a unified framework for co-optimization. The engine framework includes an initial allocation phase and an overlap reduction phase that considers access point costs and network via costs.

8. The collaborative optimization method for track allocation and pin access analysis according to claim 7, characterized in that, In the initial allocation phase, a greedy algorithm is used to assign a track to each iroute to obtain the initial allocation scheme.

9. The collaborative optimization method for track allocation and pin access analysis according to claim 7, characterized in that, In the overlap reduction phase, a method for finding the minimum cost trajectory is adopted, incorporating cost constraints. Overlap is minimized by repeatedly removing and redistributing iroutes. During the process of finding the minimum cost trajectory: Overlap is reduced by iterative decomposition and redistribution of iroute, introducing line length cost pinWireCost and adding a new via cost pinViaCost, and finding the minimum cost takes into account the variation of pin access point and iroute position.

Citation Information

Patent Citations

  • Practical detailed wiring method based on track distribution

    CN112560389A

  • Rapid global wiring method based on multi-index driving

    CN120087321A