Efficient area and wirelength optimization macro placement method for large-scale design

By optimizing the key links of the simulated annealing algorithm through the SAWAL algorithm, the collaborative optimization problem of area and line length in large-scale integrated circuit design is solved, achieving more efficient global search and faster convergence speed, which is suitable for actual industrial environments.

CN119886035BActive Publication Date: 2025-10-14GUANGDONG UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510036949.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-09
Publication Date
2025-10-14
Estimated Expiration
2045-01-09

AI Technical Summary

Technical Problem

Existing technologies have difficulty in simultaneously and efficiently optimizing both area and line length when dealing with large-scale integrated circuit design. Furthermore, existing methods are inefficient and difficult to apply under the complex demands of actual industrial environments.

Method used

The SAWAL algorithm is adopted to optimize multiple key links of the simulated annealing algorithm by introducing a new objective function, an adaptive temperature adjustment mechanism and a preset acceptance criterion, thus achieving the coordinated optimization of area and line length.

Benefits of technology

The algorithm's global search capability and efficiency have been improved, enabling faster exploration of complex solution spaces, adapting to different problem scenarios, shortening line lengths and reducing area, making it suitable for large-scale designs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119886035B_ABST
    Figure CN119886035B_ABST
Patent Text Reader

Abstract

The application provides a macro layout method for efficient area and line length optimization for large-scale design, comprising: importing macro layout stage data set; configuring preset parameters, generating a random initial solution by adopting a sequence pair method, obtaining line length and area of the initial solution, and taking the initial solution as a starting point of the best solution; disturbing to generate a new candidate solution, and obtaining new candidate line length and new candidate area of the new candidate solution; obtaining a weighted ratio of the new candidate solution and the initial solution by a target function; determining whether the new candidate solution meets an acceptance condition according to the weighted ratio and a preset acceptance criterion; and continuously judging whether the new candidate solution is better than the best solution according to an updating strategy. The method can accelerate the convergence speed, can more effectively explore the optimal solution in a complex design space, can balance the two targets of area minimization and line length shortening, and is suitable for large-scale design in an actual industrial environment.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of digital integrated circuit electronic design automation (EDA), and particularly relates to a high-efficiency area and wire length optimization macro layout method for large-scale design. BACKGROUND

[0002] The physical design of very large scale integrated circuits (VLSI) covers multiple key steps, including netlist partitioning, chip floorplanning, placement, clock tree synthesis, routing and timing closure. As an indispensable part of the integrated circuit design process, physical design has a profound impact on chip performance, as it determines important indicators such as area, gain, delay and reliability. Therefore, considering physical design elements early in the design phase can more effectively optimize the overall architecture and performance.

[0003] As a key starting stage of IC physical design, floorplanning aims to assign the most suitable position and direction for each module to optimize key indicators including chip area and wire length. This process is also known as macro cell layout, and the quality of macro layout directly affects not only the optimization effect of subsequent placement and routing steps, but also the overall performance of the final chip. Since there is a mutually restrictive relationship between these optimization objectives, the macro placement problem is essentially an NP-Hard problem, which means that finding a globally optimal solution may require extremely high computational resources.

[0004] However, in the prior art, although there are many improvements aimed at reducing resource requirements and improving efficiency, these improvements are often focused on a single, specific aspect, and their effectiveness is limited for widespread industrial applications. Especially when dealing with large-scale designs, existing methods have the problem of insufficient time efficiency, and are difficult to adapt to complex requirements in actual industrial environments.

[0005] In view of this, a macro area and wire length layout method for large-scale design that can adapt to actual industrial environments is urgently needed. SUMMARY

[0006] The purpose of the present application is to provide a high-efficiency area and wire length optimization macro layout method for large-scale design, which at least solves one of the technical problems in the prior art.

[0007] The technical solution of the present application is:

[0008] A high-efficiency area and wire length optimization macro layout method for large-scale design, comprising:

[0009] Importing the MCNC dataset and the GSRC dataset, analyzing the modules and netlist information in the MCNC dataset and the GSRC dataset;

[0010] configuring preset parameters, generating a random initial solution by using a sequence pair method, calculating an initial line length and an initial area of the initial solution, and saving the initial solution as a current solution and a starting point of a best solution;

[0011] the new candidate solution is generated by perturbation, and a new candidate line length and a new candidate area of the new candidate solution are obtained; a weighted ratio value Delta of the new candidate solution and the initial solution is obtained by using a target function;

[0012] whether the new candidate solution meets a preset acceptance criterion is determined according to the weighted ratio value Delta and the acceptance criterion;

[0013] when the new candidate solution is accepted as the current solution, whether the new candidate solution is better than the best solution is continuously judged according to an updating strategy.

[0014] the determination of whether the new candidate solution meets the preset acceptance criterion according to the weighted ratio value Delta and the acceptance criterion comprises:

[0015] if Delta is less than 1 or the new candidate solution meets the preset acceptance criterion, the new candidate solution meets the preset acceptance criterion, and the new candidate solution is accepted as the current solution, and the number of acceptances is increased by one;

[0016] otherwise, the number of rejections is increased by one, and when the number of rejections reaches a rejection threshold, an adaptive temperature adjustment mechanism is triggered.

[0017] the adaptive temperature adjustment mechanism comprises:

[0018] a high-temperature stage: no temperature adjustment is performed:

[0019] T new =T;

[0020] a moderate-temperature stage: the temperature is multiplied by a temperature adjustment factor to avoid falling into an infinite loop:

[0021] T new =T×temperature_increase_factor;

[0022] a low-temperature stage: if none of the above conditions is met, it means that the current temperature is already very low, and most attempts are rejected, at this time, early_stop=True is set, indicating that the algorithm should be terminated in advance:

[0023]

[0024] wherein, T newTnew = Told + temperature_increase_factor * (Tcurrent - Told) ; Tcurrent = Tnew mid Tcurrent is in the medium temperature phase; r is the number of rejections; rejection_threshold is the rejection threshold.

[0025] The method further comprises:

[0026] If the new candidate solution is better than the best solution, updating the best solution and the current solution, and changing the temperature and the number of local searches.

[0027] If not, updating the new candidate solution as the current solution, and changing the temperature and the number of local searches.

[0028] The target function is based on a weighted ratio between the new candidate solution and the current solution, as follows:

[0029]

[0030] Wherein a is a weight factor; new_wl and cur_wl are the line length of the new candidate solution and the line length of the current solution, respectively; new_area and cur_area are the area of the new candidate solution and the area of the current solution, respectively.

[0031] The preset acceptance criterion comprises:

[0032]

[0033] Wherein Delta is a weighted ratio between the new candidate solution and the initial solution; k is a configuration parameter.

[0034] The method further comprises:

[0035] if((new_area<area_tolerance×best_area)and(new_wl<wl_tolerance×best_wl));

[0036] Wherein new_area is the area of the new candidate solution; new_wl is the line length of the new candidate solution.

[0037] area_tolerance and wl_tolerance are the area tolerance and the line length tolerance, respectively; best_area is the best area; best_wl is the best line length.

[0038] The present application has at least the following advantages:

[0039] The method described in the present invention optimizes the classic simulated annealing algorithm in many aspects, not just one aspect. Specifically, it optimizes multiple key links of the algorithm at the same time, such as acceptance criteria and termination conditions. Optimizing the simulated annealing algorithm in multiple links has multiple advantages. By introducing a new cost difference formula and a probability-based selection mechanism, the decision-making accuracy and the ability to escape the local optimum are improved; the strategy of dynamically updating the best solution ensures that the latest high-quality solution can be recorded even in the case of minor improvements; the intelligent early stopping mechanism is flexibly adjusted according to the current temperature conditions, which improves the efficiency of the algorithm and saves computing resources. This comprehensive optimization strategy can promote the synergy between different improvement links, enhance the global search capability, is suitable for large-scale design challenges, and can effectively explore complex solution spaces. In addition, the method described in the present invention can also accelerate the convergence speed and improve the flexibility and adaptability of the algorithm to deal with different problem scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 A framework diagram of the method of the present invention;

[0041] Figure 2 The results of SAWAL simultaneous optimization of area and line length in test circuit ami49 are shown;

[0042] Figure 3 The results of SAWAL simultaneous optimization of area and line length in test circuit n100 are shown in the figure.

[0043] Figure 4 The results of SAWAL simultaneous optimization of area and line length in test circuit n200 are shown in the figure.

[0044] Figure 5 The results of SAWAL simultaneous optimization of area and line length in test circuit n300. DETAILED DESCRIPTION

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

[0046] Throughout the research on macro layout, those skilled in the art have proposed a variety of algorithms. These methods can be broadly categorized into the following types based on their principles and application: heuristic methods, analytical methods, and machine learning methods.

[0047] Heuristic methods can flexibly deal with various complex situations, including NP-Hard problems, and can explore a wider range of potential solution spaces to find better solutions. However, they cannot guarantee the finding of the global optimal solution and are prone to falling into the local optimal solution.

[0048] Analytical methods can directly solve problems through mathematical modeling and obtain theoretically optimal or near-optimal solutions. However, as the scale of the problem increases, the difficulty of solving the problem and the amount of calculation increase exponentially. The actual situation is often more complicated than the model assumptions, resulting in a reduction in effectiveness in practical applications.

[0049] Machine learning methods can automatically learn patterns from data, reducing manual intervention and adapting to new environments based on historical data. However, machine learning models are typically trained for specific application scenarios, so their performance can significantly degrade when faced with new environments or unseen data types. Furthermore, machine learning methods typically require large amounts of high-quality data for effective training. However, obtaining such data is often challenging in the integrated circuit industry. Therefore, each method has its strengths and weaknesses, and addressing these shortcomings is crucial. Extensive research is underway on various approaches.

[0050] For example, an improved simulated annealing method uses two cooling strategies to update the temperature. In the early optimization stage, the temperature is slowly lowered to enhance the global search, and in the later stage, the traditional formula is used to quickly lower the temperature to focus on the local search. However, since it only optimizes a single point, the overall efficiency improvement is limited.

[0051] For example, a method that introduces dual-path search increases the probability of finding a better local optimal solution. Compared with a single-path search, this method can better explore areas far away from the current solution space, thereby improving the quality of the final solution. However, because its experimental process focuses on optimizing a single objective—area—this method has obvious limitations for macro-layout problems involving multiple complex objectives.

[0052] For example, the new lion group heuristic algorithm is used to solve the multi-objective optimization problem in VLSI layout planning, but the multi-objective optimization effect is only reflected in small-scale data and cannot achieve line length and area coordinated optimization in large-scale data.

[0053] For example, a method that introduces a parallel computing mechanism effectively addresses the problem of classic particle swarm optimization (PSO) algorithms easily falling into local optimality. However, this method, like the one proposed by Vatansever M, also focuses on optimizing only the single objective of area. This single-objective optimization approach has obvious limitations for macro layout problems involving multiple complex objectives.

[0054] For example, DPAHMA redefines the complex crossover operations and diversity-limiting mutation operations found in AHMA, helping to explore a wider range of solution spaces. However, this method takes a long time to compute for very large or complex circuit designs, and its effectiveness in jointly optimizing wirelength and area is limited.

[0055] Existing approaches reveal that improvements in existing technologies often focus on a single, specific aspect. For example, some research may optimize a single performance metric, while others may focus on small-scale design improvements. However, while such improvements may be effective in specific scenarios, they are limited for widespread industrial application. In particular, these approaches can be time-consuming and difficult to apply to the complex demands of real-world industrial environments when dealing with large-scale designs.

[0056] Therefore, the core purpose of the area and line length layout method for large-scale design provided in this embodiment is to provide a more efficient, flexible and more global search-capable optimization method by simultaneously optimizing multiple key links of the simulated annealing algorithm to better serve the needs of actual industrial applications.

[0057] In order to explain the present invention in detail, the following examples are provided: Specific embodiment 1:

[0059] The present invention provides an embodiment:

[0060] The method proposed in this embodiment is named SAWAL (Simulated Annealing with Advanced Wire and Area Optimization for Large-scale Macro Placement). The overall system flow is as follows: Figure 1 Please note that all the methods described below in the present invention are replaced by SAWAL.

[0061] The process begins by importing and parsing the MCNC and GSRC datasets. The SAWAL method then enters the initialization phase, which involves configuring the necessary parameters and generating a random initial solution using a sequence pair method. The line length and area of ​​the solution are then calculated and saved as both the current solution and the starting point for the optimal solution. Next, the algorithm generates a new candidate solution through a perturbation mechanism. The quality of the new solution is evaluated based on a preset acceptance criterion. If the new solution is not accepted, the temperature is adjusted and the perturbation continues to generate a new solution. If the new solution is accepted, it is further determined whether it is better than the existing optimal solution. If so, both the current solution and the optimal solution are updated simultaneously. Otherwise, only the current solution is updated. The specific details and innovations will be described in detail below.

[0062] Calculation of the objective function

[0063] In macro placement optimization, objective functions are usually used to guide the optimization of module positions and their aspect ratios to achieve satisfactory placement results. Traditionally, these objective functions include total line length, area, or a weighted sum of the two.

[0064] Cost=area (1)

[0065] Cost=wl (2)

[0066] Cost=α×area+β×wl (3)

[0067] This paper proposes a new objective function, which is based on the weighted ratio between the new solution and the previously saved current solution. The specific formula is as follows:

[0068]

[0069] Where a is a weight factor used to balance the impact of line length and area on the overall cost; new_wl and cur_wl are the line lengths of the new and old solutions, respectively; new_area and cur_area are the areas of the new and old solutions, respectively.

[0070] This objective function is designed to comprehensively consider the two key factors of line length and area, ensuring that the optimization process does not overly favor one aspect while ignoring the importance of the other. Traditional weighted sums rely on absolute values. When the data ranges of different dimensions vary greatly, one dimension may dominate the optimization process and weaken the influence of other dimensions. At the same time, the existing objective function is as follows:

[0071]

[0072] In contrast, the objective function proposed in this paper provides a more dynamic and locally sensitive method to evaluate the improvement of a new solution relative to the current solution. It helps to better capture small changes in each iteration, maintain the flexibility of the algorithm, and simplify the computation.

[0073] Preset acceptance criteria and solution update strategy

[0074] Because the objective function is different from the traditional method, its preset acceptance criteria have also been adjusted. When evaluating newly generated candidate solutions, SAWAL uses an acceptance probability based on the improved Metropolis criterion. The traditional preset acceptance criteria are as follows:

[0075] Delta = Cost_new - Cost_old (6)

[0076]

[0077] The default acceptance criteria proposed in this paper are as follows:

[0078]

[0079] Here, if the new solution is better, that is, Delta < 1, or passes certain probability conditions (depending on the temperature and cost differences, as well as the parameter k we pass in), then the new solution is accepted. This allows the algorithm to explore a larger solution space in the early stages and gradually shrink to a local optimal solution.

[0080] Once a new solution is accepted, it is next checked to see if it is better than the existing best solution:

[0081] if((new_area<area_tolerance×best_area)and(new_wl<wl_tolerance×best_wl)) (9)

[0083] The area_tolerance and wl_tolerance values ​​are the area and line length tolerances, respectively, and are set slightly above 1. The optimal solution is updated only when both the area and line length of the new solution are slightly better than or nearly equal to the currently recorded best solution. The tolerances are set slightly above 1 to avoid prematurely stopping the search due to overly restrictive conditions. Traditional methods typically determine whether to accept a new solution by comparing the new and old objective functions. This approach makes it difficult to ensure that both area and line length are optimized simultaneously.

[0084] In contrast, the method proposed in this paper effectively solves this problem by introducing a tolerance mechanism, ensuring that the two objectives (area and line length) can be optimized simultaneously, avoiding the trap of single-objective optimization.

[0085] Among them, the adaptive temperature regulation mechanism includes:

[0086] To improve search efficiency and avoid wasting computational resources in low-temperature conditions, SAWAL introduces an adaptive temperature control mechanism. This mechanism dynamically adjusts the temperature based on the acceptance of solutions during the current iteration, ensuring that the algorithm fully explores the solution space while terminating unnecessary computations at the appropriate time.

[0087] In each iteration, the algorithm counts the proportion of new solutions that are accepted. If a candidate solution with a rejection threshold of rejection_threshold (e.g., 90%) is rejected, the temperature adjustment mechanism is triggered. The operation of the mechanism at each temperature is as follows.

[0088] High temperature phase: No temperature adjustment is performed. This indicates that the current temperature is still high. Higher temperatures allow for more exploration, and the algorithm should continue to explore the solution space.

[0089] T new = T (10)

[0090] Moderate temperature stage: In this temperature stage, the temperature adjustment mechanism is triggered, most likely because it has fallen into a local optimal solution. At this time, the temperature is multiplied by a temperature adjustment factor temperature_increase_factor. This helps to moderately increase the temperature, increase the exploratory nature, and avoid falling into a local optimal solution. The number of times of temperature increase is set in advance, which is usually a small integer, so as to avoid falling into an infinite loop.

[0091] T new = T x temperature_increase_factor (11)

[0092] Low temperature stage: If none of the above conditions are met, it means that the current temperature is already very low, and most attempts have been rejected. At this time, early_stop = True is set, indicating that the algorithm should be terminated in advance. This can avoid meaningless repeated calculations when approaching the optimal solution.

[0093]

[0094] The flow of the area and wire length layout method for large-scale design, SAWAL, described in this embodiment includes the following steps:

[0095] Step one: import MCNC and GSRC or other data sets, analyze their module, netlist and other information.

[0096] Step two: initialization stage, configure the preset parameters of SAWAL, generate a random initial solution using the sequence pair method, calculate the wire length and area of the initial solution. Save this initial solution as both the current solution and the starting point of the best solution.

[0097] Step three: judge whether the stop condition is reached. If the stop condition is reached, output the best solution, otherwise continue to the next step.

[0098] Step four: perturbation generates a new candidate solution, apply the perturbation mechanism of SAWAL to generate a new candidate solution, and calculate the wire length and area of the new solution.

[0099] Step five: calculate the objective function, that is, the weighted ratio Delta of the new solution and the old solution.

[0100] Step 6: If Delta is less than 1, the new solution is accepted as the current solution and the number of acceptances (AcceptCount) is increased by one. Conversely, if the new solution meets the Metropolis-based acceptance criteria, the new solution is also accepted as the current solution and the number of acceptances (AcceptCount) is increased by one. Otherwise, the number of rejections (RejectCount) is increased by one, triggering the adaptive temperature adjustment mechanism, and then the process proceeds to step 3 to continue.

[0101] Step 7: After accepting the new solution, the update strategy configured by SAWAL is used to determine whether the new solution is better than the optimal solution. If so, the optimal solution and the current solution are updated, while the temperature and number of local searches are changed. If not, only the current solution is updated, while the temperature and number of local searches are changed. Then, the process continues in Step 3.

[0102] Verification process:

[0103] The area and wirelength layout method for large-scale designs described in this embodiment, SAWAL, has been validated on two authoritative open-source benchmarks. In academia, the classic test data used to validate layout algorithms comes from circuit design examples published by the Microelectronic Centre for North Carolina and the Gigascale System Research Centre. These datasets are referred to as the MCNC test set and the GSRC test set, respectively. These two datasets differ in circuit scale, as detailed below:

[0104] Table 1 Characteristics of MCNC circuit

[0105]

[0106] Table 2 Characteristics of GSRC circuit

[0107]

[0108] MCNC and GSRC datasets primarily consist of three specific file formats: .blocks, .nets, and .pl. The .blocks file details the type, dimensions, and I / O port configuration of all the blocks in the design. The .nets file specifies the number of pins and nets in the design, and also details the basic information and connections of the elements within each net.

[0109] All experiments in this example rely on a hardware environment configured as a platform running the Ubuntu 20.04.6 desktop operating system; the processor core is an Intel(R) Core(TM) i5-10600KF CPU @ 4.10GHz, and programming is done in Python.

[0110] The hyperparameter settings of the area and line length layout method for large-scale design, namely SAWAL, described in this embodiment are shown in Table 3:

[0111] Table 3 Hyperparameter settings of SAWAL

[0112]

[0113] This experiment compares the SAWAL method proposed in this embodiment with the DPAHMA proposed in the literature (Jiang L, Ouyang D, Zhou H, et al. DPAHMA: a novel dual-population adaptive hybrid memetic algorithm for non-slicing VLSI floorplans [J]. The Journal of Supercomputing, 2023, 79 (14): 15496-15534.), and the baseline of the paper, the AHMA proposed in the literature (Chen J, Liu Y, Zhu Z, et al. Anadaptive hybrid memetic algorithm for thermal-aware non-slicing VLSI floorplanning [J]. Integration, 2017, 58: 245-252.). Optimize area and line length at the same time. Since AHMA and DPAHMA did not use n10, n30, and n100 for experiments, their results are not compared. The remaining comparative experimental results are shown in Tables 4 and 5.

[0114] Table 4 Experimental results on MCNC

[0115]

[0116] Table 5 Experimental results on GSRC

[0117]

[0118] From the comparison of the experimental results of the three algorithms on the MCNC and GSRC datasets, SAWAL algorithm shows significant advantages, especially when dealing with large-scale datasets. The following is a specific analysis of the performance of the algorithm on these two datasets.

[0119] On the MCNC dataset, for the apte and hp test circuits, SAWAL has the optimal area and wire length, and for the ami33 and ami49 test circuits, although AHMA and DPAHMA each achieve smaller wire length on one test circuit, SAWAL maintains the advantage of the smallest area on these two circuits. Overall, on the MCNC dataset, SAWAL shortens the wire length by 9.71% and reduces the area by 0.67% compared to DPAHMA. Compared with AHMA, the wire length is shortened by 9.92% and the area is reduced by 0.94%. Figure 2 The visualization of the optimization scheme of the SAWAL algorithm on the ami49 test circuit is shown.

[0120] On the more complex and larger-scale GSRC dataset, SAWAL performs particularly well. Although AHMA has a slight advantage in area on the n100 test circuit, its wire length is much larger than SAWAL, and on the n200 and n300 test circuits, SAWAL shows obvious advantages over the other two algorithms. Overall, on the GSRC dataset, SAWAL shortens the wire length by 24.16% and reduces the area by 2.09% compared to DPAHMA, and shortens the wire length by 25.58% and reduces the area by 1.47% compared to AHMA. It is particularly noteworthy that while maintaining the advantage in area, SAWAL has a particularly obvious advantage in wire length optimization. Figure 3 、 Figure 4 、 Figure 5 The visualization of the optimization scheme of the SAWAL algorithm on the GSRC dataset is shown.

[0121] In summary, in the field of multi-objective optimization, SAWAL algorithm shows significant advantages compared to AHMA and DPAHMA, especially when dealing with large-scale designs, which may be due to the target function and update strategy adopted by SAWAL. These characteristics of SAWAL enable it to more effectively explore the optimal solution in a complex design space while balancing multiple optimization objectives such as minimizing area and shortening wire length. This excellent multi-objective optimization capability is particularly important for modern complex integrated circuit design.

[0122] It is necessary to make it clear that: in the area and line length layout method for large-scale design described in this embodiment, the layout representation method used is sequence pair, and BSG, O-tree, B*-tree, MP-tree, CP-tree, polish expression, angle block column and the like can also be used as the layout method, so they can replace the sequence pair of this embodiment; for the acceptance probability improved based on the Metropolis criterion, the purpose is to accept the solution when Delta is less than 1 and gradually approach 0 when it is greater than 1, and one alternative is to use the Sigmoid function to calculate. It can also approach 1 when Delta is less than 1 and quickly approach 0 when it is greater than 1, and the like, such as linear decay function, exponential decay function and the like, which do not deviate from the core technology of the method, and this article will not be described again.

[0123] The above disclosed is only a few specific implementation scenarios of the present application, but the present application is not limited to this, any changes that any person skilled in the art can think of should fall within the protection scope of the present application. The above application number is only for description, not representing the pros and cons of the implementation scenario.

Claims

1. An efficient area and line length optimized macro layout method for large-scale designs, characterized by: include: Import MCNC Dataset, GSRC Dataset, analysis described MCNC Datasets, GSRC Module and netlist information in the dataset; Configuring preset parameters, generating a random initial solution using a sequence pair method, calculating the initial line length and initial area of ​​the initial solution, and saving the initial solution as both the current solution and the starting point of the optimal solution; Perturb to generate new candidate solutions, and obtain the new candidate line length and new candidate area of ​​the new candidate solutions; obtain the weighted ratio of the new candidate solutions to the initial solution through the objective function Delta ; According to the weighted ratio Delta Determining whether the new candidate solution meets the preset acceptance criteria; When the new candidate solution is accepted as the current solution, continue to determine whether the new candidate solution is better than the optimal solution according to the update strategy; The weighted ratio Delta Determining whether the new candidate solution meets the preset acceptance criteria includes: like Delta If the value is less than 1 or the new candidate solution meets the preset acceptance criteria, then the new candidate solution meets the preset acceptance criteria and is accepted as the current solution, and the number of acceptances is increased by one; Otherwise, the number of rejections increases by one, and when the number of rejections reaches the rejection threshold, the adaptive temperature adjustment mechanism is triggered; The step of continuing to judge whether the new candidate solution is better than the optimal solution according to the update strategy includes: If the new candidate solution is better than the best solution, then updating the best solution and the current solution, while changing the temperature and the number of local searches; If not, the new candidate solution is updated as the current solution, while changing the temperature and the number of local searches; The step of continuing to judge whether the new candidate solution is better than the optimal solution according to the update strategy includes: ; in, new _ area is the area of ​​the new candidate solution; new _ wl is the line length of the new candidate solution; area _ tolerance and wl _ tolerance They are area tolerance and line length tolerance respectively; best _ area is the optimal area; best _ wl is the optimal line length.

2. The efficient area and line length optimized macro layout method for large-scale design according to claim 1, characterized in that: The adaptive temperature regulation mechanism includes: High temperature stage: no temperature adjustment is performed: ; Moderate temperature stage: Multiply the temperature by a temperature adjustment factor to avoid falling into an infinite loop: ; Low temperature stage: If neither the high temperature stage nor the moderate temperature stage mentioned above is met, it means that the current temperature is already very low and most attempts are rejected. early _ stop = True , indicating that the algorithm should be terminated early: ; in, T new is the new temperature after the adaptive temperature adjustment mechanism; T is temperature; temperature_increase_ factor is the temperature adjustment factor; T mid The current temperature is in the medium temperature stage; r is the number of rejections; is the rejection threshold; early _ stop It is a Boolean variable used to mark whether the algorithm needs to terminate early.

3. The efficient area and line length optimized macro layout method for large-scale design according to claim 1, characterized in that: The objective function, based on the weighted ratio between the new candidate solution and the current solution, is as follows: ; in, a is the weight factor; new _ wl and cur _ wl are the line length of the new candidate solution and the line length of the current solution respectively; new _ area and cur _ area are the area of ​​the new candidate solution and the area of ​​the current solution respectively.

4. The efficient area and line length optimized macro layout method for large-scale design according to claim 1, characterized in that: The preset acceptance criteria include: ; in, Delta is the weighted ratio of the new candidate solution to the initial solution; k is the configuration parameter; T is temperature; e is a natural constant; random.random () is used to generate a random floating point number in the range [0.0, 1.0).

Citation Information

Patent Citations

  • Layout method for quickly optimizing area and line length

    CN117408221A

  • Current collection circuit optimization method and system, program product and readable storage medium

    CN119067051A