A pre-wired RC automatic calibration method and system based on time sequence driving

By adjusting the pre-routing RC model using a timing-driven three-stage calibration algorithm, the problem of timing values ​​not converging in the prior art is solved. This enables automatic calibration of the pre-routing RC model and the timing values ​​after routing, improving the accuracy of RC prediction and the efficiency of chip design process.

CN121279241BActive Publication Date: 2026-05-19SHENZHEN HONGXIN MICRO NANO TECH CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN HONGXIN MICRO NANO TECH CO LTD
Filing Date
2025-12-08
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

In the pre-routing RC model of chip design, existing technologies cannot effectively adjust to ensure the convergence of timing values, leading to an increase in the number of design iterations and incorrect timing optimization directions.

Method used

A timing-driven three-stage calibration algorithm is adopted. By monitoring the RC automatic calibration command, initializing the configuration parameters, obtaining the reference timing, and applying the three-stage timing-driven calibration algorithm to dynamically calibrate the pre-routing database, the calibration parameters are output to adjust the RC model.

Benefits of technology

It achieves automatic calibration of pre-routing RC model and post-routing timing values, improves RC prediction accuracy, reduces design iterations and timing violation risks, and improves chip design process efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121279241B_ABST
    Figure CN121279241B_ABST
Patent Text Reader

Abstract

The application discloses a pre-wiring RC automatic calibration method and system based on timing driving, which comprises the following steps: firstly, initializing configuration parameters for RC estimation based on user input or automatically executed RC automatic calibration instruction; then, acquiring reference timing which is preset or calculated according to a reference database; then, performing timing analysis on a pre-wiring database to be calibrated according to the initialized configuration parameters and the reference timing; finally, applying a three-stage timing driving calibration algorithm to dynamically calibrate the configuration parameters of the pre-wiring database based on the reference timing, so as to acquire and output calibration parameters. Since the pre-wiring RC model is optimized by means of automatic adjustment, the pre-wiring timing value is automatically calibrated to be as close as possible to the wired timing value, a plurality of different inputs can be preset as reference targets for calibration, and a plurality of customized calibration characteristics can be selected to achieve more refined timing value control.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of integrated circuit design automation (EDA) technology, specifically to a timing-driven pre-routing RC automatic calibration method and system. Background Technology

[0002] Back-end design of a chip is the physical implementation process of the chip. First, the gate-level netlist provided by the front-end designer is processed by the back-end design to form a layout file that can be used by the process manufacturer for tape-out. The back-end design flow is broadly divided into layout planning, placement, clock tree synthesis (CTS), and routing, all implemented by place and route (P&R) tools. It also includes timing signature, completed by signoff tools. In the chip design flow of advanced process nodes, resistor and capacitor (RC) parameter prediction during the preroute stage is a critical step in modern chip design. The accuracy of RC prediction has a decisive impact on the entire design flow, affecting placement, clock tree synthesis, and routing. For example, inaccurate RC predictions can lead to errors in interconnect delay estimation during the placement phase, affecting the placement optimization strategy and causing subsequent timing optimization to go in the wrong direction, thus increasing the number of iterations. Inaccurate RC predictions can also cause clock tree structure imbalance during the clock tree synthesis phase due to errors in clock skew estimation and clock delay prediction, increasing the risk of timing violations. Inaccurate RC predictions can also cause congestion and DRC violations during the routing phase due to discrepancies between the actual routing RC and the prediction, thereby extending the routing time.

[0003] As mentioned above, pre-routing RC directly affects the entire chip design process. The difference between pre-routing RC and post-routing RC is usually quite large, and a lot of time in the design iteration is consumed in RC-related timing convergence. Moreover, the more advanced the process node, the greater the impact of RC prediction error on timing. Therefore, improving the accuracy of pre-routing RC is crucial. Summary of the Invention

[0004] The main technical problem solved by this invention is that the adjustment process of using the timing values ​​after routing to guide the pre-routing RC model is too complicated and cannot guarantee convergence.

[0005] According to the first aspect, one embodiment provides a timing-driven pre-routing RC automatic calibration method, comprising:

[0006] Monitor RC automatic calibration commands input by the user or executed automatically by a pre-set update system;

[0007] The automatic RC calibration command initializes at least one set of configuration parameters for RC prediction; the configuration parameters include the Cap parameter for clock network capacitance adjustment, the Res parameter for clock network resistance adjustment, and the Signal parameter for clock network RC adjustment.

[0008] Obtain reference timing; the reference timing is obtained by pre-setting or by calculating based on a preset reference database; the reference database is a design database with completed actual wiring.

[0009] Timing analysis is performed on the pre-routing database to be calibrated based on the initialized configuration parameters and the reference timing.

[0010] A three-stage timing-driven calibration algorithm is applied to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing to obtain calibration parameters; the calibration parameters are used to identify the adjustment values ​​of the configuration parameters after initialization.

[0011] The calibration parameters are output as a parameter configuration file.

[0012] In one embodiment, the pre-wiring RC automatic calibration method further includes:

[0013] When performing new prerouting based on the prerouting database, the parameter configuration file is loaded into the layout phase, clock tree synthesis phase, and / or routing phase.

[0014] In one embodiment, the application of a three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing includes:

[0015] Different types of RC data are calibrated sequentially, and the calibration parameters are continuously updated during the calibration process; wherein, the RC data includes clock capacitance, clock resistance, and signal line resistance and capacitance.

[0016] In one embodiment, the step of sequentially calibrating different categories of RC data, and continuously updating the calibration parameters during the calibration process, includes:

[0017] The clock capacitor, clock resistor, and signal line resistance and capacitance are calibrated sequentially by calculating the unit delay, the interconnect delay after routing, and RRTNS in sequence.

[0018] Wherein, cell delay represents the time consumed by the gate circuit itself, connection delay represents the time it takes for electrons to travel on the metal wire, RRTNS represents the sum of all negative slacks in the register-to-register path, and slack represents the difference between the preset arrival time and the actual arrival time.

[0019] In one embodiment, the application of the three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing further includes:

[0020] Dynamic calibration ends when the timing value of the calibrated RC data converges to a preset timing value or the reference timing value calculated in the reference database is within the allowable error range.

[0021] In one embodiment, the application of the three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing further includes:

[0022] The verification process terminates when the relative error of the RC data is less than a preset value or when the number of verification iterations exceeds a preset upper limit.

[0023] In one embodiment, the pre-wiring RC automatic calibration method further includes:

[0024] The RC automatic calibration command, the reference database, the pre-routing database, and the parameter configuration file are obtained through the Tcl interface in the EDA tool environment.

[0025] According to a second aspect, one embodiment provides a computer-readable storage medium storing a computer program that can be executed by a processor to implement the pre-wiring RC automatic calibration method as described in the first aspect.

[0026] According to a third aspect, one embodiment provides a computer program product including a computer program and / or instructions that, when executed by a processor, implement the pre-wiring RC automatic calibration method as described in the first aspect.

[0027] According to a fourth aspect, one embodiment provides a timing-driven pre-wiring RC automatic calibration system for applying the pre-wiring RC automatic calibration method as described in the first aspect, the pre-wiring RC automatic calibration system comprising:

[0028] The command monitoring unit is used to monitor RC automatic calibration commands input by the user or executed automatically due to the fulfillment of preset judgment conditions;

[0029] The parameter initialization unit is used to initialize at least one set of configuration parameters for RC estimation based on the RC automatic calibration command; the configuration parameters include the Cap parameter for clock network capacitance adjustment, the Res parameter for clock network resistance adjustment, and the Signal parameter for clock network RC adjustment.

[0030] A timing acquisition unit is used to acquire a reference timing sequence; the reference timing sequence is acquired by pre-setting or by calculating based on a preset reference database; the reference database is a design database with completed actual wiring.

[0031] The timing analysis unit is used to perform timing analysis on the pre-routing database to be calibrated based on the initialized configuration parameters and the reference timing.

[0032] The calibration unit is used to apply a three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing to obtain calibration parameters; the calibration parameters are used to identify the adjustment values ​​of the configuration parameters after initialization.

[0033] A parameter output unit is used to output the calibration parameters in the form of a parameter configuration file;

[0034] The pre-wired RC automatic calibration system is integrated into a preset EDA tool environment and interacts with the EDA tool via a Tcl interface.

[0035] According to the pre-routing RC automatic calibration method in the above embodiments, the pre-routing RC model is optimized by automatic adjustment, so that the pre-routing timing value is automatically calibrated to be as close as possible to the timing value of the already routed model. It can also pre-determine a variety of different inputs as reference targets for calibration, and also supports the selection of a variety of customized calibration features to achieve more refined timing value control. Attached Figure Description

[0036] Figure 1 This is a flowchart illustrating the functional implementation of an RC automatic calibration system in one embodiment;

[0037] Figure 2 This is a functional block diagram of a pre-wired RC automatic calibration system in one embodiment;

[0038] Figure 3 This is a flowchart illustrating a pre-wiring RC automatic calibration method in one embodiment;

[0039] Figure 4 This is a schematic diagram of the working mode of a pre-wiring RC automatic calibration method in one embodiment. Detailed Implementation

[0040] The present invention will now be described in further detail with reference to specific embodiments and accompanying drawings. Similar elements in different embodiments are referred to by associated similar element reference numerals. In the following embodiments, many details are described to facilitate a better understanding of this application. However, those skilled in the art will readily recognize that some features may be omitted in different situations, or may be replaced by other elements, materials, or methods. In some cases, certain operations related to this application are not shown or described in the specification. This is to avoid obscuring the core parts of this application with excessive description. For those skilled in the art, detailed description of these related operations is not necessary; they can fully understand the related operations based on the description in the specification and general technical knowledge in the art.

[0041] Furthermore, the features, operations, or characteristics described in the specification can be combined in any suitable manner to form various embodiments. At the same time, the steps or actions in the method description can be rearranged or adjusted in a manner obvious to those skilled in the art. Therefore, the various orders in the specification and drawings are only for the clear description of a particular embodiment and do not imply a necessary order, unless otherwise stated that a particular order must be followed.

[0042] The serial numbers assigned to components in this document, such as "first" and "second," are used only to distinguish the described objects and have no sequential or technical meaning. The terms "connection" and "linkage" used in this application, unless otherwise specified, include both direct and indirect connections (linkages).

[0043] Please refer to Figure 1The diagram shows a flowchart of the functional implementation of an RC automatic calibration system in one embodiment. The "Route database" in the diagram refers to the chip database that has been "wired" (referred to as the reference database in this embodiment of the application), which is generally known in the industry as post-route DB or post-layout DB. It stores the final coordinates of all standard cells and macro cells, the actual routing shape (metal shape, via) of each net, and also includes the precise RC (resistance, capacitance) parasitic parameters extracted from the shape and the sign-off level timing based on the precise parasitic parameters. Since there is no actual routing in the pre-routing stage, the RC (Rating Capability) can only be estimated using an imprecise model, and thus the timing can be estimated. In order to make the pre-routing design timing closer to the actual timing after routing, the actual timing in the previous round of complete routing process is used as a reference value to guide the pre-routing RC model, that is, the database after Route is extracted; then, the pre-routing RC is adjusted to make the pre-routing timing converge to the actual timing after routing, and the updated parameter file is output. Then, the optimized pre-routing model is used to iterate the design again to optimize the routing process in the next round, that is, to improve the RC prediction accuracy of the placement, clock tree synthesis and routing stages.

[0044] However, in practical applications, the extraction mechanisms of pre-routing RC engines and post-routing RC engines differ, and their models differ significantly. If the pre-routing RC engine is to be adjusted based on post-routing timing values ​​to achieve a similar timing level, one approach is to use RC scaling (a coarse-grained, global RC parameter calibration method that uses one or a set of uniform scaling factors to make the total RC or delay in the pre-routing stage approximate the measured total RC or delay after routing, ultimately achieving the goal of pre-routing timing results closely matching the post-routing timing level) for uniform scaling adjustment. However, this adjustment method is not fine enough; all RC values ​​are adjusted up or down together, making it difficult to guarantee that the timing will converge to the specified value. Another approach is to directly modify the pre-routing RC engine. This method is more complex, requiring multiple tests and modifications, and similarly cannot guarantee that the newly modified model's timing will converge smoothly to the specified value. Both of these methods essentially adjust timing by adjusting RC, which not only lacks intuitive adjustment processes and trends but also fails to guarantee convergence and often incurs significant time costs.

[0045] In this embodiment, the pre-routing RC model is adjusted automatically so that the pre-routing timing values ​​are automatically calibrated to a level that is as close as possible to the timing values ​​after routing. Furthermore, multiple different inputs can be specified as reference targets for calibration, and multiple customized calibration feature selections are supported to achieve more refined control.

[0046] Example 1:

[0047] Please refer to Figure 2 This is a functional block diagram of a pre-routing RC automatic calibration system in one embodiment. The pre-routing RC automatic calibration system aims to address the core pain point that manual adjustments during the pre-routing RC modeling process using post-routing timing values ​​are overly complex and cannot guarantee convergence. The system includes an instruction monitoring unit 10, a parameter initialization unit 20, a timing acquisition unit 30, a timing analysis unit 40, a calibration unit 50, and a parameter output unit 60. The instruction monitoring unit 10 monitors user-inputted RC automatic calibration instructions or instructions automatically executed due to pre-set judgment conditions. The parameter initialization unit 20 initializes at least one set of configuration parameters for RC estimation based on the RC automatic calibration instructions. These parameters include Cap parameters for clock network capacitance adjustment, Res parameters for clock network resistance adjustment, and Signal parameters for clock network RC adjustment. The timing acquisition unit 30 acquires reference timing, which is obtained through pre-setting or calculation based on a preset reference database, which is a design database with completed actual routing. The timing analysis unit 40 performs timing analysis on the pre-routing database to be calibrated based on the initialized configuration parameters and reference timing. The calibration unit 50 applies a three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing to obtain calibration parameters, which identify the adjustment values ​​of the configuration parameters after initialization. The parameter output unit 60 outputs the calibration parameters in the form of a parameter configuration file. In one embodiment, the pre-routing RC automatic calibration system is integrated into a preset EDA tool environment and interacts with the EDA tool via a Tcl interface.

[0048] Please refer to Figure 3 The diagram below illustrates a pre-wiring RC automatic calibration method in one embodiment. In another embodiment, a pre-wiring RC automatic calibration method is also disclosed, applied to the pre-wiring RC automatic calibration system described above. This pre-wiring RC automatic calibration method includes:

[0049] Step 101, monitoring instructions.

[0050] The system monitors user-inputted RC automatic calibration commands or commands executed automatically due to the fulfillment of pre-defined criteria. In one embodiment, the RC automatic calibration command is generated based on user input through a human-machine interface. In another embodiment, the pre-defined criteria include the completion of automatic updates by the EDA system and confirmation that no RC automatic calibration has been performed within a preset time period.

[0051] Step 102: Initialize configuration parameters.

[0052] The automatic RC calibration command initializes at least one set of configuration parameters for RC prediction, including the Cap parameter for clock network capacitance adjustment, the Res parameter for clock network resistance adjustment, and the Signal parameter for clock network RC adjustment.

[0053] Step 103: Obtain the reference timing.

[0054] Reference timing is obtained through pre-setting or calculation based on a pre-defined reference database, where the reference database is a design database with actual routing completed. Reference timing can be understood as a "standard answer" to RC prediction, that is, the set of "register-to-register" path delays (including setup / hold slack) obtained by static timing analysis (STA) after the chip has been actually routed and the actual RC has been extracted. It is usually quantified into a single metric, RRTNS (Register-to-Register Total Negative Slack), which is the sum of all negative slack paths.

[0055] Step 104, timing analysis.

[0056] Timing analysis is performed on the pre-routing database to be calibrated based on the initialized configuration parameters and reference timing.

[0057] Step 105: Perform dynamic calibration.

[0058] A three-stage timing-driven calibration algorithm is applied to dynamically calibrate the configuration parameters of the pre-routing database based on reference timing to obtain calibration parameters. These calibration parameters identify the adjusted values ​​of the configuration parameters after initialization. In one embodiment, different categories of RC data are calibrated sequentially, with the calibration parameters continuously updated during the calibration process. The RC data includes clock capacitance, clock resistance, and signal line resistance and capacitance. Specifically, this includes:

[0059] The clock capacitor, clock resistor, and signal line resistance and capacitance are calibrated sequentially using the calculated cell delay, wiring delay, and RRTNS. Cell delay represents the time consumed by the gate circuit itself, wiring delay represents the time electrons spend traveling on the metal wire, and RRTNS represents the sum of all negative slacks in the register-to-register path. Slack represents the difference between the preset arrival time and the actual arrival time. In one embodiment, dynamic calibration ends when the timing value of the calibrated RC data converges to a preset timing value or a reference timing value calculated from the reference database within the allowable error range. In another embodiment, calibration terminates when the relative error of the RC data is less than a preset value or the number of calibration iterations exceeds a preset upper limit.

[0060] Step 106: Output calibration parameters.

[0061] Output calibration parameters as a parameter configuration file.

[0062] In one embodiment, the pre-wiring RC automatic calibration method further includes:

[0063] When performing new prerouting based on the prerouting database, parameter profiles are loaded into the placement, clock tree synthesis, and / or routing stages for RC prediction.

[0064] The pre-routing RC automatic calibration method disclosed in this application is applied in an EDA tool environment, and obtains RC automatic calibration instructions, reference database, pre-routing database and output parameter configuration file through the Tcl interface working in the EDA tool environment.

[0065] To facilitate understanding of the implementation of the pre-wiring RC automatic calibration method disclosed in the embodiments of this application, the following specific embodiments are described, including:

[0066] Please refer to Figure 4 This diagram illustrates the working mode of a pre-routing RC automatic calibration method in one embodiment. The pre-routing RC automatic calibration system runs in an EDA tool environment and interacts with the EDA tool via a Tcl interface. The main inputs to the pre-routing RC automatic calibration system are the unrouted design database (typically using the cts_opt database) and the routed reference database (used to calculate target timing values). Within the EDA tool, the system uses Tcl scripts to implement calibration functions and interact with the pre-routing RC engine. By calling Tcl commands, it performs functions such as inputting the reference data source, inputting the calibration target, interacting with the EDA tool, automatic calibration, and outputting calibrated parameters to a specified file. In one embodiment, the pre-routing RC automatic calibration system calls the design database, reference database, and / or timing calibration target through a Tcl interface. Then, through the process of RC extraction—dynamic RC calibration—and calibrated timing values, it calculates the corresponding timing values ​​based on RC changes. By comparing these timing values ​​with the target timing values, it decides whether to adjust the RC calibration coefficients for different categories, thereby achieving the purpose of adjusting the timing values. These adjustments affect the pre-routing RC engine through a set of configuration parameters, thus making corresponding adjustments to the RC in the next calibration round and obtaining the calibrated timing values. This cycle repeats until calibration is complete. The output of the pre-routing RC automatic calibration system is one or a set of files with parameterized configurations, which are used to guide the pre-routing RC engine in subsequent iterative designs. In one embodiment, the pre-routing RC automatic calibration system obtains user-input commands (e.g., RC automatic calibration commands) through a Tcl interface.

[0067] The pre-routing RC automatic calibration method is a timing-driven calibration mode. It uses user-specified reference timing values ​​(Register-to-Register Total Negative Slack, RRTNS) or timing values ​​calculated from a reference database as references. A three-stage timing-driven calibration algorithm (first calibrating clock capacitance using calculated Cell Delay, then calibrating clock resistance using Wire Delay, and finally calibrating signal line resistance and capacitance using RRTNS) calibrates different types of RC data, continuously updating calibration parameters during the process. Calibration ends when the calibrated timing values ​​converge to within the allowable error range of the user-specified reference timing values ​​or the timing values ​​calculated from the reference database, and a calibration parameter file is output.

[0068] In one embodiment, the three-stage timing adjustment algorithm sequentially includes clock capacitance calibration, clock resistance calibration, and signal network RC calibration. First, clock capacitance calibration is performed. Since cell delay is primarily affected by the output load capacitance in terms of RC, in one embodiment, the pre-routing clock capacitance is adjusted using the post-routing cell delay as a reference, so that the pre-routing cell delay converges as close as possible to the post-routing cell delay. Next, clock resistance calibration is performed, using the post-routing wire delay as a reference to adjust the pre-routing clock resistance, so that the pre-routing wire delay converges as close as possible to the post-routing wire delay. Then, signal network RC calibration is performed. After clock RC calibration, the signal network RC is calibrated based on the RRTNS value specified by the user or calculated from a reference database, so that the pre-routing RRTNS value converges as close as possible to the post-routing RRTNS value. For timing-driven calibration, RC cannot be directly specified as the target value; the system automatically calibrates different types of RC according to the target timing value to meet timing requirements. In one embodiment, the final calibration output file is placed in a user-specified folder, distinguished by different process corners.

[0069] In the pre-wiring RC automatic calibration method in the above embodiments, the calibration process and steps are further optimized, specifically including:

[0070] 1) The dynamic step size algorithm is not necessarily used in the dynamic calibration process. Other algorithms, such as various regression models or machine learning models, can also be used for calibration.

[0071] 2) The iterative design process (i.e., the interaction with the pre-routing RC engine, including, etc.) Figure 4The methods for loading reference configuration files in the layout, clock tree synthesis, and routing stages (as shown) include reading reference configuration files from files, as well as other interactive methods such as direct memory access and network caching.

[0072] 3) When the pre-wired RC automatic calibration system uses files as output, it is not limited to the parameterized format, as long as it can interface with the pre-wired RC engine.

[0073] 4) In addition to using Tcl scripts, the calibration system interface can also be implemented using other design languages ​​such as Python and C++.

[0074] In one embodiment, the pre-wired RC automatic calibration system can use reference parasitic parameters as input during the calibration process. The file format is not limited to DSPF or SPEF, nor is it limited to text files, as long as parasitic parameter information can be provided. In another embodiment, the pre-wired RC automatic calibration system does not necessarily use a dynamic step-size algorithm during calibration; other algorithms such as various regression models or machine learning models can also be used. In another embodiment, the interaction with the pre-wired RC engine can use other methods besides file reading (such as direct memory reading, network caching, etc.), as long as interaction is possible. In another embodiment, when the pre-wired RC automatic calibration system uses files as output, it is not limited to a parameterized format, as long as it can interface with the pre-wired RC engine. In another embodiment, the pre-wired RC automatic calibration system does not necessarily have to be implemented using Tcl scripts; other design languages ​​such as Python or C++ can also be used.

[0075] The pre-routing RC automatic calibration system in this embodiment establishes a timing-driven pre-routing RC calibration mechanism. Through innovative RC classification fine-tuning, a three-stage timing-driven algorithm, and parameterized process integration, it solves the problem of overly complex iterative convergence of timing values ​​to post-routing actual timing values ​​by manually adjusting the pre-routing RC model. Using this system, users can quickly guide the pre-routing RC engine based on post-routing timing values, clearly and precisely controlling the desired timing effects, thus facilitating convenient and rapid subsequent iterative design. Figure 4As shown, the pre-routing RC automatic calibration system only requires input of a reference parasitic parameter file or reference database and the calibration target to achieve fully automatic RC calibration and parameterization process integration. The calibration results can be directly connected to the pre-routing RC engine for convenient subsequent iterative design. In one embodiment, due to the application of a dynamic step-size calibration algorithm, the final RC converges to the target RC quickly and accurately. In addition, by classifying and finely adjusting the RC, the pre-routing RC has better consistency and a lower standard deviation compared to the routed RC. Simultaneously, it supports simultaneous or separate calibration of clock networks and signal networks, simultaneous or separate calibration of resistors R or capacitors C, calibration of all or selected timing analysis scenarios, progressive calibration (continuing calibration based on the previous calibration result), locking a specified category of resistors R or capacitors C to remain unchanged during calibration, and specifying the number of calibration attempts to prevent the system from entering an infinite loop due to continuous calibration failure.

[0076] The pre-routing RC automatic calibration method disclosed in this application first initializes the configuration parameters used for RC estimation based on user input or automatically executed RC automatic calibration instructions; then, it obtains a pre-set reference timing or a reference timing calculated from a reference database; next, it performs timing analysis on the pre-routing database to be calibrated based on the initialized configuration parameters and the reference timing; finally, it applies a three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing, thereby obtaining and outputting calibration parameters. Because it uses an automated adjustment method to optimize the pre-routing RC model, the pre-routing timing values ​​are automatically calibrated to be as close as possible to the timing values ​​of the already routed data. It can also pre-define various inputs as reference targets for calibration and simultaneously supports multiple customized calibration feature selections to achieve more refined timing value control. Furthermore, the pre-routing RC automatic calibration method can perform fully automatic calibration, and its output can be integrated into a standard EDA process. Alternatively, a timing value can be specified as the reference source input, or the timing value can be directly calculated from the database as the reference source. During dynamic calibration, an appropriate calibration algorithm can be selected to perform fine-tuning of RC by classification. Furthermore, the three-stage timing-driven calibration algorithm employed in the pre-routing RC automatic calibration method can accelerate timing convergence. One embodiment uses a dynamic step-size calibration algorithm that can achieve rapid and accurate convergence to the target timing value. Furthermore, the pre-routing RC automatic calibration system can finely control the adjustable states of clock and signal / resistor and capacitor, supports progressive calibration, and can continuously perform calibration based on the previous calibration results.

[0077] Those skilled in the art will understand that all or part of the functions of the various methods in the above embodiments can be implemented by hardware or by computer programs. When all or part of the functions in the above embodiments are implemented by computer programs, the program can be stored in a computer-readable storage medium, which may include: read-only memory, random access memory, disk, optical disk, hard disk, etc., and the program is executed by a computer to achieve the above functions. For example, the program can be stored in the memory of a device, and when the program in the memory is executed by the processor, all or part of the above functions can be achieved. In addition, when all or part of the functions in the above embodiments are implemented by computer programs, the program can also be stored in a server, another computer, disk, optical disk, flash drive, or external hard drive, etc., and can be downloaded or copied to the memory of a local device, or the system of the local device can be updated. When the program in the memory is executed by the processor, all or part of the functions in the above embodiments can be achieved.

[0078] The above examples illustrate the present invention only to aid in understanding it and are not intended to limit the scope of the invention. Those skilled in the art can make various simple deductions, modifications, or substitutions based on the principles of this invention.

Claims

1. A timing-driven pre-routing RC automatic calibration method, characterized in that, include: Monitor user-inputted RC automatic calibration commands or commands executed automatically when pre-set judgment conditions are met; The automatic RC calibration command initializes at least one set of configuration parameters for RC prediction; the configuration parameters include the Cap parameter for clock network capacitance adjustment, the Res parameter for clock network resistance adjustment, and the Signal parameter for clock network RC adjustment. Obtain reference timing; the reference timing is obtained by pre-setting or by calculating based on a preset reference database; the reference database is a design database with completed actual wiring. Timing analysis is performed on the pre-routing database to be calibrated based on the initialized configuration parameters and the reference timing. A three-stage timing-driven calibration algorithm is applied to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing to obtain calibration parameters; the calibration parameters are used to identify the adjustment values ​​of the configuration parameters after initialization. The calibration parameters are output in the form of a parameter configuration file; The application of the three-stage timing-driven calibration algorithm dynamically calibrates the configuration parameters of the pre-routing database based on the reference timing, including: Different types of RC data are calibrated sequentially, and the calibration parameters are continuously updated during the calibration process; wherein, the RC data includes clock capacitance, clock resistance, and signal line resistance and capacitance; The step of sequentially calibrating different categories of RC data, and continuously updating the calibration parameters during the calibration process, includes: The clock capacitor, clock resistor, and signal line resistor and capacitor are calibrated sequentially by calculating the cell delay, the wiring delay after routing, and RRTNS in sequence. Among them, the cell delay represents the time consumed by the gate circuit itself, the wiring delay represents the time for electrons to travel on the metal wire, RRTNS represents the sum of all negative slacks in the register-to-register path, and slack represents the difference between the preset arrival time and the actual arrival time. The dynamic calibration ends when the timing value of the calibrated RC data converges to a preset timing value or the reference timing value calculated in the reference database is within the allowable error range. The verification process terminates when the relative error of the RC data is less than a preset value or when the number of verification iterations exceeds a preset upper limit.

2. The method as described in claim 1, characterized in that, Also includes: When performing new prerouting based on the prerouting database, the parameter configuration file is loaded into the layout phase, clock tree synthesis phase, and / or routing phase.

3. The method as described in claim 1, characterized in that, Also includes: The RC automatic calibration command, the reference database, the pre-routing database, and the parameter configuration file are obtained through the Tcl interface in the EDA tool environment.

4. A computer-readable storage medium, characterized in that, The medium stores a computer program that can be executed by a processor to implement the method as described in any one of claims 1-3.

5. A computer program product, comprising a computer program and / or instructions, characterized in that, When the computer program and / or instructions are executed by the processor, they implement the method as described in any one of claims 1-3.

6. A timing-driven pre-wiring RC automatic calibration system, characterized in that, For applying the pre-wiring RC automatic calibration method as described in any one of claims 1 to 3, the pre-wiring RC automatic calibration system comprises: The command monitoring unit is used to monitor RC automatic calibration commands input by the user or executed automatically by the pre-set update system; The parameter initialization unit is used to initialize at least one set of configuration parameters for RC estimation based on the RC automatic calibration command; the configuration parameters include the Cap parameter for clock network capacitance adjustment, the Res parameter for clock network resistance adjustment, and the Signal parameter for clock network RC adjustment. A timing acquisition unit is used to acquire a reference timing sequence; the reference timing sequence is acquired by pre-setting or by calculating based on a preset reference database; the reference database is a design database with completed actual wiring. The timing analysis unit is used to perform timing analysis on the pre-routing database to be calibrated based on the initialized configuration parameters and the reference timing. The calibration unit is used to apply a three-stage timing-driven calibration algorithm to dynamically calibrate the configuration parameters of the pre-routing database based on the reference timing to obtain calibration parameters; the calibration parameters are used to identify the adjustment values ​​of the configuration parameters after initialization. A parameter output unit is used to output the calibration parameters in the form of a parameter configuration file; The pre-wired RC automatic calibration system is integrated into a preset EDA tool environment and interacts with the EDA tool via a Tcl interface.