Capacitance lookup table processing method and device for pin capacitance estimation, equipment, storage medium and product
By comprehensively considering the capacitance influence of the input pin itself and the timing-related output pin connected to it, the problem of capacitance value calculation deviation in the existing technology is solved, and more accurate capacitance and power consumption estimation is achieved.
Patent Information
- Application Number
- CN202511179186.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-22
- Publication Date
- 2025-09-30
- Estimated Expiration
- 2045-08-22
AI Technical Summary
When calculating the capacitance value of an input pin, the prior art ignores the influence of the timing-related output pin connected to it, resulting in a large deviation between the calculated result and the actual capacitance value, making it difficult to accurately reflect the true equivalent capacitance level of the input pin.
By searching the first description information of the target input pin and the second description information of the timing-associated output pin in the library file, the result capacitance value of the target input pin is generated, and the capacitance influence of the input pin itself and the timing-associated output pin connected to it are comprehensively considered and jointly calculated.
The accuracy of capacitance and power consumption estimation is improved, and the influence of coupling or loading effects on capacitance in actual circuits is accurately reflected, overcoming the calculation deviation caused by traditional methods that rely solely on the capacitance value of the input pin itself.
Smart Images

Figure CN120724929A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the technical field of integrated circuit design, and in particular relates to a capacitance lookup table processing method, device, equipment, storage medium and product for pin capacitance estimation. Background Art
[0002] Electronic design automation (EDA) refers to a design method that uses computer-aided design software to complete the functional design, synthesis, verification, physical design (including layout, routing, layout, design rule checking, etc.) of very large-scale integrated circuit (VLSI) chips.
[0003] In EDA power consumption analysis, capacitance value is one of the key factors affecting power consumption. It can directly affect the dynamic power consumption analysis results of EDA software. Dynamic power consumption includes specific internal power consumption and flip power consumption. The impact of capacitance value on power consumption includes the impact on the internal power consumption of the current instance object and the impact on the input signal conversion time of the next instance object to which it is connected. Therefore, accurately obtaining capacitance value is crucial for power consumption estimation.
[0004] In the related art, when determining the capacitance value of an input pin, the static capacitance parameters (such as the capacitance value recorded in the capacitance field) in the library file (liberty file) are usually parsed, and then the queried static capacitance parameters are directly set as the capacitance value of the input pin and the basis for subsequent power consumption estimation. The above-mentioned input pin capacitance value calculation method has a certain effect in design scenarios with low power consumption accuracy requirements. However, since the capacitance value of the input pin changes with the number of instances it drives during circuit operation, generally, when an input pin drives multiple instances, the more instances it drives, the larger the capacitance value of the input pin will generally be. The capacitance value of the input pin will change dynamically. Although the result obtained by using a fixed capacitance value for calculation in application scenarios where the power consumption estimation accuracy requirements are not high is acceptable, in fact, the above-mentioned fixed capacitance value is not accurate.
[0005] In some other existing technologies, such as the dynamic power consumption optimization method disclosed in Chinese patent ZL202510863861.0, a dynamic capacitance value that is more accurate than the static capacitance parameter is calculated by querying the pin transition time lookup table. The specific steps include querying the pin receiving capacitance lookup table, and then calculating the dynamic input pin capacitance value corresponding to the output pin transition time value. The dynamic input pin capacitance value can more accurately reflect the characteristics of the pin capacitance and transition time changing with working conditions, thereby reducing the error caused by model simplification, and can improve the accuracy and reliability of key design links such as integrated circuit power consumption analysis and timing analysis.
[0006] The methods for calculating the input pin capacitance value in the above-mentioned related prior art, whether it is a method of extracting a fixed capacitance value or a method of calculating the capacitance value based on a pin receiving capacitance lookup table, only take into account the physical properties of the input pin itself. However, in actual applications, the input pin may be associated with one or more timing arc output pins with a connection relationship, and the number of pin receiving capacitance lookup tables included in the library file may be multiple. The related prior art usually only calculates the capacitance value based on the pin receiving capacitance lookup table of the input pin itself, ignoring the influence of the capacitance value introduced by the timing-related output pin connected to it. The final calculated input pin capacitance value still has a large deviation from the actual capacitance value, and it is difficult to accurately reflect the true equivalent capacitance level of the input pin. Summary of the Invention
[0007] The present invention provides a capacitance lookup table processing method, device, equipment, storage medium and product for pin capacitance estimation, aiming to solve the technical problems existing in the above-mentioned prior art and provide a capacitance lookup table processing method for pin capacitance estimation with higher accuracy.
[0008] In a first aspect, the present invention provides a capacitance lookup table processing method for pin capacitance estimation, the method comprising:
[0009] In response to a target input pin capacitance value calculation instruction triggered by a user, determining a target input pin specified by the user;
[0010] Searching for first description information corresponding to the target input pin in the library file, where the first description information uses the name of the target input pin as an identifier and includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin;
[0011] Determine the timing-associated output pin corresponding to the target input pin, and search the library file for second description information corresponding to the timing-associated output pin, where the second description information uses the name of the timing-associated output pin as an identifier and includes a pin receiving capacitance lookup table corresponding to the target input pin;
[0012] A result capacitance value of the target input pin is generated according to the first description information and the second description information.
[0013] In a second aspect, the present invention provides a capacitance lookup table processing device for pin capacitance estimation, which may include:
[0014] a query module, configured to determine a target input pin specified by the user in response to a target input pin capacitance calculation instruction triggered by the user;
[0015] A first description information search module is configured to search a library file for first description information corresponding to a target input pin, wherein the first description information uses the name of the target input pin as an identifier and includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin;
[0016] A second description information search module is used to determine the timing-associated output pin corresponding to the target input pin, and search the library file for second description information corresponding to the timing-associated output pin, wherein the second description information uses the name of the timing-associated output pin as an identifier and includes a pin receiving capacitance lookup table corresponding to the target input pin;
[0017] The result capacitance value generating module is configured to generate a result capacitance value of the target input pin according to the first description information and the second description information.
[0018] In a third aspect, the present invention provides a capacitance lookup table processing device for pin capacitance estimation, comprising: a processor and a memory storing computer program instructions; when the processor executes the computer program instructions, the steps of the capacitance lookup table processing method for pin capacitance estimation of the first aspect are implemented.
[0019] In a fourth aspect, the present invention provides a computer-readable storage medium having computer program instructions stored thereon. When the computer program instructions are executed by a processor, the steps of the capacitance lookup table processing method for pin capacitance estimation of the first aspect are implemented.
[0020] In a fifth aspect, the present invention provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the steps of the capacitance lookup table processing method for pin capacitance estimation in the first aspect.
[0021] The present invention responds to a target input pin capacitance calculation instruction triggered by a user, determines a user-specified target input pin, searches a library file for first description information corresponding to the target input pin, determines a timing-associated output pin corresponding to the target input pin, searches the library file for second description information corresponding to the timing-associated output pin, and generates a result capacitance value of the target input pin based on the first and second description information. Thus, when calculating the capacitance value of the target input pin, the capacitance value of the target input pin itself and the capacitance influence introduced by the timing-associated output pin connected to it are comprehensively considered. By obtaining the original capacitance value of the target input pin and the path-related capacitance value recorded in the timing-associated output pin, and performing a joint calculation based on the capacitance data of these two dimensions, the method not only considers the capacitance value of the target input pin itself, but also considers the capacitance value of the target input pin under the influence of the timing-associated output pin. This method can more accurately restore the influence of coupling effects or loading effects on the capacitance value in an actual circuit, effectively overcoming the calculation bias caused by traditional methods that rely solely on the capacitance value of the target input pin itself, and improving the accuracy of capacitance value and power consumption estimation. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0023] Figure 1 1 is a flow chart of a capacitance lookup table processing method for pin capacitance estimation provided by one embodiment of the present application;
[0024] Figure 2 This is a schematic diagram of the pin connection relationship between the timing-related output pins and the target input pins in the capacitance lookup table processing method for pin capacitance estimation provided by one embodiment of the present application;
[0025] Figure 3 is a structural diagram of a capacitance lookup table processing device for pin capacitance estimation provided by another embodiment of the present application;
[0026] Figure 4 3 is a structural diagram of a capacitance lookup table processing device for pin capacitance estimation provided by another embodiment of the present application. DETAILED DESCRIPTION
[0027] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is merely to provide a better understanding of the present application by illustrating the examples of the present application.
[0028] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.
[0029] Chips are tiny and widely used in computers and other electronic devices. A chip is a silicon wafer containing an integrated circuit (IC). An IC integrates a number of common electronic components, such as resistors, capacitors, and transistors, along with the interconnections, using semiconductor technology to form a circuit with a specific function.
[0030] In order to realize the design of integrated circuits, designers usually use computer-aided design (CAD) software and electronic design automation (EDA) systems to realize the design of integrated circuits.
[0031] When using EDA software to analyze chip power consumption, the capacitance value is a key factor affecting the accuracy of power consumption analysis. Specifically, the capacitance value is the main variable parameter in the calculation formula for flip power consumption. The capacitance value directly affects the calculation of flip power consumption and indirectly affects the internal power consumption by affecting the signal flip speed. Therefore, how to accurately obtain the capacitance value is crucial for power consumption analysis in EDA software.
[0032] Specifically, capacitance is the primary variable in the calculation formula for switching power consumption, directly impacting it. Switching power is a crucial component of integrated circuit design and power consumption calculations. It refers to the energy consumed when the output state of a logic gate or other digital circuit element in an integrated circuit changes. In EDA (electronic design automation) software, switching power consumption is closely related to the final power analysis results. The formula for calculating switching power consumption in digital circuits is P = α * C * V² * f, where P represents switching power, α represents the activity factor, C is the total capacitance, V is the supply voltage, and f is the activity rate on the line. EDA software typically requires obtaining relevant data from SPEF files, Liberty files, and simulation files, then substituting this data into the switching power calculation formula to calculate the circuit's switching power consumption.
[0033] When determining the capacitance value of an input pin, related technologies usually parse the static capacitance parameters (such as the capacitance value recorded in the capacitance field) in a library file (liberty file), and then directly set the queried static capacitance parameters as the capacitance value of the input pin. However, during circuit operation, the capacitance value of the input pin will dynamically change under the influence of changes in physical parameters such as the input pin temperature. Although the result obtained by calculating with a fixed capacitance value is acceptable in application scenarios where the power consumption estimation accuracy is not required to be high, the above-mentioned fixed capacitance value is actually not accurate.
[0034] In some other related existing technologies, the dynamic pin capacitance value can be obtained by obtaining a pin receiving capacitance lookup table and substituting the transition time value parameter based on the pin receiving capacitance lookup table. Since the above-mentioned dynamic pin capacitance value will take into account the factor that the pin capacitance value will change with the transition time, the calculation result obtained is more accurate than the fixed capacitance value, which can improve the power consumption calculation accuracy to a certain extent.
[0035] However, in digital circuits, the capacitance of a single input pin depends not only on the pin's own physical characteristics (such as metal routing length and capacitive loading), but also on the timing-linked output pins connected to it. For example, timing-linked output pins may introduce coupling effects or additional loading, significantly affecting the input pin's actual capacitance. Parasitic coupling capacitance refers to the parasitic capacitance formed between adjacent traces connected to timing-linked output pins. When these timing-linked output pins experience signal transitions, they introduce additional capacitance to the input pin through the coupling path, increasing the input pin's equivalent input capacitance and thus affecting its signal transmission characteristics. Equivalent load capacitance refers to the effect of the local capacitance of an input pin added to multiple timing-linked output pins (e.g., multiple output pins) when connected to a signal network. This capacitance is added to the network, forming a combined load capacitance. This ultimately manifests as the total load driven by the input pin. This equivalent load capacitance directly affects the input capacitance of the input pin, and is particularly significant in scenarios with high fan-out connections or across cell instances.
[0036] The methods for calculating the input pin capacitance value in the above-mentioned related prior art, whether it is a method of extracting a fixed capacitance value or a method of calculating the capacitance value based on a pin receiving capacitance lookup table, only take into account the physical properties of the input pin itself. However, in actual applications, the input pin may be associated with one or more timing arc output pins with a connection relationship, and the number of pin receiving capacitance lookup tables included in the library file may be multiple. The related prior art usually only calculates the capacitance value based on the pin receiving capacitance lookup table of the input pin itself, ignoring the influence of the capacitance value introduced by the timing-related output pin connected to it. The final calculated input pin capacitance value still has a large deviation from the actual capacitance value, and it is difficult to accurately reflect the true equivalent capacitance level of the input pin.
[0037] Figure 1 A flow chart of a capacitance lookup table processing method for pin capacitance estimation provided by an embodiment of the present application is shown. The method may include the following steps:
[0038] S100 , in response to a target input pin capacitance value calculation instruction triggered by a user, determining a target input pin specified by the user;
[0039] S200, searching for first description information corresponding to a target input pin in a library file, where the first description information uses the name of the target input pin as an identifier and includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin;
[0040] S300, determining a timing-associated output pin corresponding to a target input pin, searching a library file for second description information corresponding to the timing-associated output pin, wherein the second description information uses the name of the timing-associated output pin as an identifier and includes a pin receiving capacitance lookup table corresponding to the target input pin;
[0041] S400 , generating a result capacitance value of a target input pin according to the first description information and the second description information.
[0042] In an embodiment of the present application, in response to a user-triggered target input pin capacitance calculation instruction, the user-specified target input pin is determined, first description information corresponding to the target input pin is searched in a library file, the timing-associated output pin corresponding to the target input pin is determined, second description information corresponding to the timing-associated output pin is searched in the library file, and a result capacitance value of the target input pin is generated based on the first and second description information. Thus, when calculating the capacitance value of the target input pin, both the capacitance value of the target input pin itself and the capacitance influence introduced by the timing-associated output pin connected to it are comprehensively considered. By obtaining the original capacitance value of the target input pin and the path-related capacitance value recorded in the timing-associated output pin, and performing a joint calculation based on these two dimensions of capacitance data, the calculation not only considers the capacitance value of the target input pin itself, but also considers the capacitance value of the target input pin under the influence of the timing-associated output pin. This allows for more accurate reproduction of the effects of coupling effects or loading effects on capacitance in actual circuits, effectively overcoming the calculation bias caused by traditional methods that rely solely on the capacitance value of the target input pin itself, thereby improving the accuracy of capacitance and power consumption estimation.
[0043] In S100, when a user-triggered target input pin capacitance calculation instruction is obtained, the user-specified target input pin to be queried can be determined based on the instruction. The number of target input pins can be one or more. The target input pin can be an input pin in a unit device or an input pin in an instance object instantiated from the unit device.
[0044] In S200, after determining the target input pin specified by the user, the first description information corresponding to the target input pin can be searched from the library file. The first description information uses the name of the target input pin as an identifier, and the first description information includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin.
[0045] Library files are files with the suffix .lib. These files are typically written in accordance with the industry-standard "Liberty User Guides and Reference Manual." They typically have the .lib extension and are also referred to as "Liberty files." Library files describe logic unit timing characteristics, capacitance, power consumption, and other parameters in detail, supporting subsequent circuit design and analysis. These files include data such as fixed capacitance values (pin capacitance), pin transition time lookup tables, and pin receive capacitance lookup tables.
[0046] Specifically, the first description information corresponding to the target input pin in the library file refers to the description information field defined in the library file with the name of the target input pin as an identifier. The first description information is used to record static attribute information related to the target input pin, including but not limited to fixed capacitance value, pin receiving capacitance lookup table, circuit elements associated with the target input pin and other information.
[0047] The library file description defines a pin receiving capacitance lookup table corresponding to the target input pin, wherein the pin receiving capacitance lookup table corresponding to the target input pin is used to provide the capacitance value data corresponding to the target input pin under the conditions corresponding to the index parameter. In addition, the library file description also defines a fixed capacitance value field for the target input pin, which is used to represent the physical capacitance value corresponding to the pin obtained based on the estimated test, and is used to reflect the static capacitance characteristics of the pin under the process model;
[0048] As an example, the following is the first description information corresponding to the target input pin recorded in the library file, where the name of the target input pin is A. The first description information uses the name of the target input pin as an identifier, such as pin(A). The first description information includes the fixed capacitance value field capacitance: 1 of the target input pin and the pin receiving capacitance lookup table receiver_capacitance() of the target input pin.
[0049] pin (A){
[0050] direction: input;
[0051] capacitance : 1;
[0052] receiver_capacitance() { ...
[0054] receiver_capacitance1_rise (template_name){
[0055] index_1(...);
[0056] index_2(...);
[0057] values(..)
[0058] }
[0059] receiver_capacitance1_fall(...){}
[0060] receiver_capacitance2_rise(...){}
[0061] receiver_capacitance2_fall(...){}
[0062] }
[0063] }
[0064] }
[0065] In S300, the timing-related output pin corresponding to the target input pin is determined, wherein the timing-related output pin is the output pin directly connected to the target input pin. Figure 2 As shown, in a unit device, input pin A is connected to output pins Y and Z. Specifically, output pins Y and Z are output pins directly connected to input pin A. Output pins Y and Z have a connection relationship with input pin A based on a timing arc. Changes in output pins Y and Z will affect the timing behavior of input pin A through the unit logic. Therefore, the timing-associated output pins of input pin A include output pins Y and Z. Accordingly, the EDA software can query the attribute information of the unit device in the library file and search for the timing-associated output pin corresponding to the target input pin based on the timing-associated node corresponding to each port of the unit device recorded in the attribute information, thereby determining the names of all timing-associated output pins corresponding to the target input pin. Furthermore, based on the name of the timing-associated output pin corresponding to the target input pin, the software searches the library file for second description information corresponding to the timing-associated output pin, wherein the second description information uses the name of the timing-associated output pin as an identifier and includes a pin receiving capacitance lookup table corresponding to the target input pin.
[0066] Specifically, the second description information corresponding to the timing-associated output pin in the library file refers to the description information field defined in the library file with the name of the timing-associated output pin as an identifier. The second description information is used to record static attribute information related to the timing-associated output pin, including but not limited to the target input pin information corresponding to the timing-associated output pin, circuit elements associated with the target input pin, the pin receiving capacitance lookup table of the timing-associated output pin itself, and the pin receiving capacitance lookup table corresponding to the target input pin of the timing-associated output pin.
[0067] Compared with the first description information corresponding to the target input pin in the library file, this embodiment records the timing-associated output pin's own information in the second description information corresponding to the timing-associated output pin, including the type and transmission direction of the timing-associated output pin. The second description information also records the information of the input pin corresponding to the timing-associated output pin, including the pin receiving capacitance lookup table of the input pin connected to the timing-associated output pin. Specifically, the information of the input pin corresponding to the above-mentioned timing-associated output pin is recorded in the second description information in the description information segment identified by the name of the target input pin. This embodiment obtains the capacitance value information of the target input pin given by the first description information and obtains the capacitance value of the target input pin from the second description information. It comprehensively considers the capacitance value parameters of the target input pin itself and the capacitance value parameters recorded in the timing-associated output pin that has an associated impact on the capacitance value parameters of the target input pin. By using more and more comprehensive data, a more accurate capacitance value estimation result is calculated.
[0068] It can be understood that the pin receiving capacitance lookup table of the timing-associated output pin itself in this embodiment is a pin receiving capacitance lookup table established with the timing-associated output pin as the target input pin, which records the change of the capacitance value of the timing-associated output pin itself under different index conditions. In addition, the second descriptive information corresponding to the timing-associated output pin in the library file also includes a pin receiving capacitance lookup table corresponding to the target input pin. The pin receiving capacitance lookup table of the timing-associated output pin corresponding to the target input pin is used to describe the change trend of the capacitance value of the target input pin under different working conditions under the influence of the drive or load of a specific timing-associated output pin, thereby reflecting the timing dependence characteristics of the target input pin.
[0069] As an example, the following is the second description information of the timing-associated output pin Y corresponding to the target input pin A recorded in the library file, wherein the timing-associated output pin Y is an output pin that has a connection relationship with the target input pin A. The second description information uses the name of the timing-associated output pin as the identifier pin(Y), and includes description information corresponding to the target input pin A in the second description information. The above description information corresponding to the target input pin A is stored in the description field of related_pin: A. The second description information includes the pin receiving capacitance lookup table receiver_capacitance() corresponding to the target input pin A.
[0070] pin(Y){
[0071] direction: output; ....
[0073] timing(){
[0074] related_pin: A
[0075] receiver_capacitance() {
[0076] receiver_capacitance1_rise(template_name){
[0077] index_1(...);
[0078] index_2(...);
[0079] values(..)
[0080] }
[0081] receiver_capacitance1_fall(...){}
[0082] receiver_capacitance2_rise(...){}
[0083] receiver_capacitance2_fall(...){}
[0084] }
[0085] As an optional embodiment, the pin receiving capacitance lookup table of the target input pin in the first description information and the second description information includes an index variable and a capacitance value corresponding to the index variable, wherein the pin receiving capacitance lookup table of the target input pin includes a one-dimensional table or a two-dimensional table, the index variable of the one-dimensional table is the input transition time value of the target input pin, and the index variable of the two-dimensional table is a combination of the input transition time value of the target input pin and the output total load value.
[0086] As an example, the pin receiving capacitance lookup table of the target input pin is a one-dimensional table, wherein the index variable of the one-dimensional table is the input transition time value index of the target input pin, and the output value of the one-dimensional table is the capacitance value values corresponding to the input transition time value index of the target input pin.
[0087] receiver_capacitance() {
[0088] receiver_capacitance1_rise (lu_template_name) {
[0089] index ("float, ..., float");
[0090] values("float, ..., float");
[0091] }
[0092] As an example, the pin receiving capacitance lookup table of the target input pin is a two-dimensional table, wherein the index variable of the two-dimensional table is a combination of the input transition time value index_1 and the output total load value index_2 of the target input pin, and the output value of the two-dimensional table is the capacitance value values corresponding to the combination of the input transition time value index_1 and the output total load value index_2 of the target input pin.
[0093] receiver_capacitance() {
[0094] receiver_capacitance1_rise (lu_template_name) {
[0095] index_1("float, ..., float");
[0096] index_2("float, ..., float");
[0097] values("float, ..., float");
[0098] }
[0099] In some optional embodiments, the above S400 may include:
[0100] S410, calculating and generating a first capacitance value based on a pin receiving capacitance lookup table of the target input pin included in the first description information, an input transition time value of the target input pin, or a combination of the input transition time value of the target input pin and an output total load value;
[0101] S420, calculating and generating a second capacitance value based on a pin receiving capacitance lookup table corresponding to the target input pin, an input transition time value of the target input pin, or a combination of the input transition time value of the target input pin and an output total load value, included in the second description information;
[0102] S430 , generating a result capacitance value of the target input pin according to the first capacitance value and the second capacitance value.
[0103] In this embodiment, the corresponding first capacitance value or second capacitance value is obtained by substituting an index parameter into a pin receiving capacitance lookup table corresponding to the target input pin in the first description information or the second description information, and then generating a result capacitance value of the target input pin based on the first capacitance value and the second capacitance value. Specifically, during the query process of the first capacitance value or the second capacitance value, if the pin receiving capacitance lookup table corresponding to the first capacitance value or the second capacitance value is a one-dimensional table, the first capacitance value or the second capacitance value can be queried and generated by substituting the input transition time value of the target input pin into the pin receiving capacitance lookup table; if the pin receiving capacitance lookup table corresponding to the first capacitance value or the second capacitance value is a two-dimensional table, the corresponding first capacitance value or the second capacitance value can be queried and generated by substituting a combination of the input transition time value and the output total load value of the target input pin into the pin receiving capacitance lookup table.
[0104] As an example, the process of calculating and generating the first capacitance value is as follows: first, find all pin receiving capacitance lookup tables corresponding to the target input pins from the library file. Specifically, the corresponding receiver_capacitance field can be found under the description field of the target input pin, and then the pin receiving capacitance lookup table of the target input pin recorded under the receiver_capactiance field is found. The required index variable is substituted into the pin receiving capacitance lookup table of the target input pin, such as the input pin transition time value or a combination of the input transition time value and the output total load value, to obtain the first capacitance value.
[0105] Accordingly, the process of calculating and generating the second capacitance value is as follows: first, the timing-related output pin corresponding to the target input pin is determined, where the timing-related output pin includes an output pin connected to the target input pin. Then, a pin receiving capacitance lookup table corresponding to the target input pin is retrieved from the description information of the timing-related output pin in the library file. Specifically, the pin receiving capacitance lookup table recording the second capacitance value is typically stored in the timing modeling information block timing field in the library file. The timing modeling information block in the library file also includes the name of the corresponding input pin. For example, the description information corresponding to the target input pin A is stored in the description field of related_pin: A. Then, the pin receiving capacitance lookup table corresponding to the target input pin is found by searching the corresponding receiver_capacitance field in the description information corresponding to the target input pin A in the description information of the timing-related output pin. Subsequently, after finding the pin receiving capacitance lookup table, the index variable required by the pin receiving capacitance lookup table is substituted into the index variable. The index variable can be the input pin transition time value, or a combination of the input transition time value and the output total load value, to obtain the second capacitance value.
[0106] As an optional implementation, the pin receiving capacitance lookup table of the target input pin included in the first description information includes at least two items of a rising edge pin receiving capacitance lookup table, a falling edge pin receiving capacitance lookup table, and a segmented pin lookup table, and the first capacitance value includes a rising edge receiving capacitance value calculated and generated according to the rising edge pin receiving capacitance lookup table, a falling edge receiving capacitance value calculated and generated according to the falling edge pin receiving capacitance lookup table, and a segmented capacitance value calculated and generated according to the segmented pin lookup table;
[0107] The pin receiving capacitance lookup table corresponding to the target input pin contained in the second descriptive information includes at least two items of a rising edge pin receiving capacitance lookup table, a falling edge pin receiving capacitance lookup table, and a segmented pin lookup table. The second capacitance value includes a rising edge receiving capacitance value calculated based on the rising edge pin receiving capacitance lookup table, a falling edge receiving capacitance value calculated based on the falling edge pin receiving capacitance lookup table, and a segmented capacitance value calculated based on the segmented pin lookup table.
[0108] As an example, the pin receiving capacitance lookup table of the target input pin in the first description information and the second description information includes a rising edge pin receiving capacitance lookup table receiver_capacitance1_rise and receiver_capacitance2_rise, a falling edge pin receiving lookup table receiver_capacitance1_fall and receiver_capacitance2_fall, and a segmented pin lookup table segment: 1, segment: 6, where receiver_capacitance1_rise and receiver_capacitance2_rise are lookup identifiers of the rising edge pin receiving capacitance lookup table, receiver_capacitance1_fall and receiver_capacitance2_fall are lookup identifiers of the falling edge pin receiving lookup table, and segment is the lookup identifier of the segmented pin lookup table. An example of the second description information is as follows:
[0109] pin (Y) {
[0110] direction : output;
[0111] function : "IQ"; ...
[0113] timing () {
[0114] related_pin : "A";
[0115] when : "E&!TE";timing_sense : positive_unate;
[0116] receiver_capacitance() {
[0117] receiver_capacitance1_rise ("template_8x1") {
[0118] values("0.11111, 0.22222, 0.33333, 0.44444, 0.55555, \
[0119] 0.66666, 0.77777, 0.88888");
[0120] }
[0121] receiver_capacitance2_rise ("template_8x1") {
[0122] values("0.11111, 0.22222, 0.33333, 0.44444, 0.55555, \
[0123] 0.66666, 0.77777, 0.88888");
[0124] }
[0125] receiver_capacitance1_fall ("template_8x1") {
[0126] values("0.11111, 0.22222, 0.33333, 0.44444, 0.55555, \
[0127] 0.66666, 0.77777, 0.88888");
[0128] }
[0129] receiver_capacitance2_fall ("template_8x1") {
[0130] values("0.11111, 0.22222, 0.33333, 0.44444, 0.55555, \
[0131] 0.66666, 0.77777, 0.88888");
[0132] }
[0133] }
[0134] receiver_capacitance_rise ("delay_template_8x8") {
[0135] segment : 1;
[0136] values("0.11111, 0.22222, 0.33333, 0.44444, \
[0137] 0.55555, 0.66666, 0.77777, 0.88888, ...");
[0138] } ...
[0140] receiver_capacitance_rise ("delay_template_8x8") {
[0141] values("0.11111, 0.22222, 0.33333, 0.44444, \
[0142] 0.55555, 0.66666, 0.77777, 0.88888, ...");
[0143] }
[0144] receiver_capacitance_fall ("delay_template_8x8") {
[0145] segment : 1;
[0146] values("0.11111, 0.22222, 0.33333, 0.44444, \
[0147] 0.55555, 0.66666, 0.77777, 0.88888,...");
[0148] } ...
[0150] receiver_capacitance_fall ("delay_template_8x8") {
[0151] segment : 6;
[0152] values("0.11111, 0.22222, 0.33333, 0.44444, \
[0153] 0.55555, 0.66666, 0.77777, 0.88888, ...");
[0154] }
[0155] }
[0156] }
[0157] The specific process of searching the first capacitance value or the second capacitance value according to the rising edge pin receiving capacitance lookup table, the falling edge pin receiving lookup table and the segmented pin lookup table is as follows: First, by traversing the search identifier of the rising edge pin receiving capacitance lookup table, the search identifier of the falling edge pin receiving lookup table and the search identifier of the segmented pin lookup table in the first description information or the second description information, the corresponding rising edge pin receiving capacitance lookup table, the falling edge pin receiving lookup table and the segmented pin lookup table are found, wherein, in each rising edge pin receiving capacitance lookup table, the falling edge pin receiving lookup table and the segmented pin lookup table, the corresponding rising edge pin receiving capacitance lookup table, the falling edge pin receiving lookup table and the segmented pin lookup table are found. The table records the corresponding rising edge receiving capacitance value, falling edge receiving capacitance value and segmented capacitance value, and then substitutes the corresponding index variable into the rising edge pin receiving capacitance lookup table, the falling edge pin receiving lookup table and the segmented pin lookup table to calculate the candidate first capacitance value or the candidate second capacitance value. The above-mentioned candidate first capacitance value or candidate second capacitance value includes one or all of the rising edge receiving capacitance value, the falling edge receiving capacitance value and the segmented capacitance value. Finally, according to the value selection rule input by the user, the final first capacitance value or second capacitance value is determined from the candidate first capacitance value or the candidate second capacitance value.
[0158] As an optional implementation, the above S400 may further include:
[0159] Receive the value selection rules input by the user, the value selection rules include selecting the maximum value, selecting the minimum value or averaging;
[0160] When the value selection rule input by the user is to select the maximum value, the maximum value is selected from the rising edge receiving capacitance value, the falling edge receiving capacitance value, and the segmented capacitance value as the first capacitance value or the second capacitance value;
[0161] When the value selection rule input by the user is to select a minimum value, the minimum value is selected from the rising edge receiving capacitance value, the falling edge receiving capacitance value, and the segmented capacitance value as the first capacitance value or the second capacitance value;
[0162] When the value selection rule input by the user is average calculation, the rising edge receiving capacitance value, the falling edge receiving capacitance value and the segmented capacitance value are averaged, and the calculated average value is used as the first capacitance value or the second capacitance value.
[0163] After finding multiple candidate first capacitance values or candidate second capacitance values such as the rising edge receiving capacitance value, the falling edge receiving capacitance value, and the segmented capacitance value in the rising edge pin receiving capacitance lookup table, the falling edge pin receiving capacitance lookup table, and the segmented pin lookup table, this embodiment further receives a value selection rule input by the user, and then determines the resulting capacitance value of the target input pin from the candidate first capacitance values or second capacitance values according to the priority order specified by the user.
[0164] In some other embodiments, a rising edge capacitance value can be determined as a result capacitance value based on multiple candidate first capacitance values or candidate second capacitance values found in a capacitance lookup table received from a rising edge pin and a value-taking rule input by a user; or, a falling edge capacitance value can be determined as a result capacitance value based on multiple candidate first capacitance values or candidate second capacitance values found in a capacitance lookup table received from a falling edge pin and a value-taking rule input by a user, thereby distinguishing the capacitance difference of the target input pin in the two timing states of the rising edge and the falling edge, and improving the estimation accuracy.
[0165] This embodiment addresses the situation where there are multiple pin receiving capacitance lookup tables for target input pins in a library file, and effectively identifies and selects them based on preset screening rules. This solves the problem that the related existing technology cannot effectively identify and select the appropriate lookup table when there are multiple pin receiving capacitance lookup tables in a library file, thereby avoiding estimation errors due to data conflicts or redundancy, and improving the accuracy of dynamic capacitance estimation.
[0166] As an optional implementation, the above S400 may further include:
[0167] The first capacitance value and the second capacitance value are compared, and the larger capacitance value between the first capacitance value and the second capacitance value is determined as the result capacitance value of the target input pin.
[0168] In this embodiment, after the first capacitance value and the second capacitance value are obtained through searching, all the first capacitance values and second capacitance values obtained through searching can be compared, and a larger one can be determined to generate a result capacitance value of the target input pin.
[0169] As an optional implementation, the above S400 may further include:
[0170] Creating a candidate capacitance value set, and adding the first capacitance value, the second capacitance value, or the fixed capacitance value recorded in the first description information found in the library file to the candidate capacitance value set;
[0171] Traversing the candidate capacitance value set;
[0172] If the first capacitance value exists in the candidate capacitance value set, determining the first capacitance value as the result capacitance value of the target input pin;
[0173] If the first capacitance value does not exist in the candidate capacitance values, further determining whether a second capacitance value exists in the candidate capacitance values, and if so, determining the second capacitance value as the result capacitance value of the target input pin;
[0174] If the first capacitance value and the second capacitance value do not exist in the candidate capacitance values, the fixed capacitance value is determined as the result capacitance value of the target input pin.
[0175] This embodiment determines the result capacitance value according to the priority order set by the user, and returns immediately after obtaining the matching data without running all the data, which has the beneficial effects of fast calculation speed and high efficiency.
[0176] As an optional implementation manner, after the above S400, the following steps may be further included:
[0177] Obtaining a rising edge Miller capacitance value and a falling edge Miller capacitance value from the first description information or the second description information;
[0178] Obtaining a Miller capacitance influence factor, and calculating a Miller capacitance value based on the product of the sum of the rising edge Miller capacitance value and the falling edge Miller capacitance value and the Miller capacitance influence factor;
[0179] The Miller capacitance value is added to the result capacitance value of the target input pin to obtain a corrected capacitance value, and the corrected capacitance value is used to update the result capacitance value of the target input pin.
[0180] In some specific implementations, the Miller capacitance value of the target input pin during the rising and falling edge switching process can be parsed from the first description information or the second description information. Specifically, first search for the first description information or the second description information in the timing field of each timing modeling information block in the description information of each pin in the library file, and then extract the capacitance values recorded in the rising edge Miller capacitance value field miller_cap_rise and the falling edge Miller capacitance value field miller_cap_fall from the first description information or the second description information, as the rising edge Miller capacitance value and the falling edge Miller capacitance value, respectively. In some implementations, the rising edge Miller capacitance value field miller_cap_rise and the falling edge Miller capacitance value field mille r_cap_fall is recorded in the first-stage building block ccsn_first_stage. For example, in the following exemplary description information, the capacitance value recorded in the rising edge Miller capacitance value field miller_cap_rise is 0.00136423, indicating that the Miller capacitance value of the target input pin at the rising edge is 0.00136423. Similarly, the capacitance value recorded in the falling edge Miller capacitance value field miller_cap_fall is 0.00134675, indicating that the Miller capacitance value of the pin at the falling edge is 0.00134675.
[0181] pin (Y) {
[0182] direction : output;
[0183] function : "IQ";
[0184] timing () {
[0185] related_pin : "A";
[0186] ccsn_first_stage () {
[0187] is_inverting : true;
[0188] is_needed : true;
[0189] miller_cap_fall : 0.00134675;
[0190] miller_cap_rise : 0.00136423;
[0191] stage_type : both;
[0192] }
[0193] }
[0194] }
[0195] After obtaining the rising edge Miller capacitance value and the falling edge Miller capacitance value, the Miller capacitance value is calculated based on the product of the sum of the rising edge Miller capacitance value and the falling edge Miller capacitance value and the Miller capacitance influence factor. Specifically, the Miller capacitance influence factor set by the user is first obtained. If the user has not set it, the default value of 0.5 is used. Then, the Miller capacitance value corresponding to the target input pin is calculated according to the following calculation formula: MillerCap = factor × (miller_cap_rise + miller_cap_fall) / 2. Finally, the calculated Miller capacitance value is added to the existing result capacitance value of the target input pin to obtain the corrected pin capacitance value. Finally, the corrected capacitance value is used to update the result capacitance value of the target input pin to more accurately characterize the capacitance change during the circuit switching process, thereby improving the accuracy of the input pin capacitance estimation.
[0196] Based on the same inventive concept, the present invention also provides a capacitance lookup table processing device for pin capacitance estimation. Figure 3 Provide detailed explanation.
[0197] like Figure 3 As shown, the capacitance lookup table processing device for pin capacitance estimation may include:
[0198] A query module 301 is configured to determine a target input pin specified by a user in response to a target input pin capacitance calculation instruction triggered by a user;
[0199] A first description information search module 302 is configured to search a library file for first description information corresponding to a target input pin, wherein the first description information uses the name of the target input pin as an identifier and includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin;
[0200] A second description information search module 303 is configured to determine the timing-associated output pin corresponding to the target input pin, and search the library file for second description information corresponding to the timing-associated output pin. The second description information uses the name of the timing-associated output pin as an identifier and includes a pin receiving capacitance lookup table corresponding to the target input pin.
[0201] The result capacitance value generating module 304 is configured to generate a result capacitance value of the target input pin according to the first description information and the second description information.
[0202] The following is a detailed description of the capacitance lookup table processing device for estimating the pin capacitance, as shown below:
[0203] In some embodiments, the capacitance lookup table processing device for estimating pin capacitance may further include:
[0204] A first capacitance value calculation module is configured to calculate and generate a first capacitance value based on a pin receiving capacitance lookup table of the target input pin included in the first description information, an input transition time value of the target input pin, or a combination of the input transition time value of the target input pin and an output total load value;
[0205] A second capacitance value calculation module is configured to calculate and generate a second capacitance value based on a pin receiving capacitance lookup table corresponding to the target input pin, an input transition time value of the target input pin, or a combination of the input transition time value of the target input pin and an output total load value contained in the second description information;
[0206] The result capacitance value generating module is configured to generate a result capacitance value of the target input pin according to the first capacitance value and the second capacitance value.
[0207] In some embodiments, the capacitance lookup table processing device for estimating pin capacitance may further include:
[0208] A value rule receiving module is used to receive the value rules input by the user, the value rules including selecting the maximum value, selecting the minimum value or averaging;
[0209] a maximum value calculation module, configured to select a maximum value from the rising edge received capacitance value, the falling edge received capacitance value, and the segmented capacitance value as the first capacitance value or the second capacitance value when the value selection rule input by the user is to select the maximum value;
[0210] a minimum value calculation module, configured to select a minimum value from the rising edge received capacitance value, the falling edge received capacitance value, and the segmented capacitance value as the first capacitance value or the second capacitance value when the value selection rule input by the user is to select a minimum value;
[0211] The average calculation module is used to perform average calculation on the rising edge receiving capacitance value, the falling edge receiving capacitance value and the segmented capacitance value when the value selection rule input by the user is average calculation, and use the calculated average value as the first capacitance value or the second capacitance value.
[0212] In some embodiments, the capacitance lookup table processing device for estimating pin capacitance may further include:
[0213] The comparison module is configured to compare the first capacitance value with the second capacitance value, and determine the larger capacitance value between the first capacitance value and the second capacitance value as the result capacitance value of the target input pin.
[0214] In some embodiments, the capacitance lookup table processing device for estimating pin capacitance may further include:
[0215] a candidate capacitance value set creation module, configured to create a candidate capacitance value set, and add the first capacitance value, the second capacitance value, or the fixed capacitance value recorded in the first description information found in the library file to the candidate capacitance value set;
[0216] A traversal module, used to traverse a set of candidate capacitance values;
[0217] a first capacitance value determining module, configured to determine the first capacitance value as the result capacitance value of the target input pin if the first capacitance value exists in the candidate capacitance value set;
[0218] a second capacitance value determining module, which further determines whether there is a second capacitance value among the candidate capacitance values if the first capacitance value does not exist among the candidate capacitance values, and if so, determines the second capacitance value as the result capacitance value of the target input pin;
[0219] The fixed capacitance value determining module determines the fixed capacitance value as the result capacitance value of the target input pin if the first capacitance value and the second capacitance value do not exist in the candidate capacitance values.
[0220] In some embodiments, the capacitance lookup table processing device for estimating pin capacitance may further include:
[0221] A Miller capacitance value acquisition module, configured to acquire a rising edge Miller capacitance value and a falling edge Miller capacitance value from the first description information or the second description information;
[0222] A Miller capacitance influence factor acquisition module is used to obtain the Miller capacitance influence factor and calculate the Miller capacitance value based on the product of the sum of the rising edge Miller capacitance value and the falling edge Miller capacitance value and the Miller capacitance influence factor;
[0223] The corrected capacitance value calculation module is used to add the Miller capacitance value and the result capacitance value of the target input pin to obtain a corrected capacitance value, and use the corrected capacitance value to update the result capacitance value of the target input pin.
[0224] Figure 4 A schematic diagram of the hardware structure of a capacitance lookup table processing device for pin capacitance estimation provided in an embodiment of the present application is shown. The capacitance lookup table processing device for pin capacitance estimation includes a processor 401 and a memory 402 storing computer program instructions. Specifically, the processor 401 may include a central processing unit (CPU) or an application-specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.
[0225] Memory 402 may include a large capacity memory for data or instructions. By way of example and not limitation, memory 402 may include a hard disk drive (HDD), a floppy disk drive, flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 402 may include removable or non-removable (or fixed) media. Where appropriate, memory 402 may be internal or external to a device processing a capacitance lookup table for pin capacitance estimation. In certain embodiments, memory 402 is a non-volatile solid-state memory.
[0226] The memory 402 may include read-only memory (ROM), flash memory devices, random access memory (RAM), magnetic disk storage media devices, optical storage media devices, electrical, optical, or other physical / tangible memory storage devices. Thus, typically, the memory 402 includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software, which may include computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods according to the above aspects of the present disclosure.
[0227] The processor 401 reads and executes computer program instructions stored in the memory 402 to implement any one of the capacitance lookup table processing methods for pin capacitance estimation in the above embodiments.
[0228] In one example, the capacitance lookup table processing device for pin capacitance estimation may further include a communication interface 403 and a bus 410. Figure 4 As shown, the processor 401 , the memory 402 , and the communication interface 403 are connected via a bus 410 and communicate with each other.
[0229] The communication interface 403 is mainly used to implement communication between various modules, devices, units and / or equipment in the embodiments of the present application.
[0230] Bus 410 includes hardware, software, or both, coupling components of a capacitance lookup table processing device for pin capacitance estimation to one another. By way of example, and not limitation, a bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industrial Standard Architecture (EISA) bus, a Front Side Bus (FSB), a HyperTransport (HT) interconnect, an Industrial Standard Architecture (ISA) bus, an InfiniBand interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Area Network (VLB) bus, or other suitable busses, or combinations of two or more of these. Where appropriate, bus 410 may include one or more buses. Although the embodiments of the present application describe and illustrate specific buses, the present application contemplates any suitable bus or interconnect.
[0231] The capacitance lookup table processing device for pin capacitance estimation can be based on the capacitance lookup table processing method for pin capacitance estimation, thereby realizing the combination Figures 1 to 3 A capacitance lookup table processing method and apparatus for pin capacitance estimation are described.
[0232] In addition, in conjunction with the capacitance lookup table processing method for pin capacitance estimation in the above embodiments, embodiments of the present application may provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when the computer program instructions are executed by a processor, any of the capacitance lookup table processing methods for pin capacitance estimation in the above embodiments is implemented.
[0233] In addition, an embodiment of the present application further provides a computer program product, including a computer program, which can implement the steps and corresponding contents of the aforementioned method embodiment when executed by a processor.
[0234] In this document, the term "and / or" simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. Furthermore, the character " / " in this document generally indicates that the related objects are in an "or" relationship.
[0235] It should be understood that in the embodiments of the present application, "B corresponding to A" means that B is associated with A and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B based solely on A, but B can also be determined based on A and / or other information.
[0236] The above are only specific embodiments of the present application, but the scope of protection of the present application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and such modifications or substitutions should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A capacitance lookup table processing method for pin capacitance estimation, characterized in that: The following steps are involved: In response to a target input pin capacitance value calculation instruction triggered by a user, determining a target input pin specified by the user; Searching for first description information corresponding to the target input pin in a library file, where the first description information uses the name of the target input pin as an identifier and includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin; Determine a timing-associated output pin corresponding to the target input pin, and search the library file for second description information corresponding to the timing-associated output pin, where the second description information uses the name of the timing-associated output pin as an identifier, and the second description information includes a pin receiving capacitance lookup table corresponding to the target input pin; A resulting capacitance value of the target input pin is generated according to the first description information and the second description information.
2. The capacitance lookup table processing method for pin capacitance estimation according to claim 1, characterized in that: The pin receiving capacitance lookup table of the target input pin in the first description information and the second description information includes an index variable and a capacitance value corresponding to the index variable, wherein the pin receiving capacitance lookup table of the target input pin includes a one-dimensional table or a two-dimensional table, the index variable of the one-dimensional table is the input transition time value of the target input pin, and the index variable of the two-dimensional table is a combination of the input transition time value of the target input pin and the output total load value.
3. The capacitance lookup table processing method for pin capacitance estimation according to claim 2, characterized in that: Generating a result capacitance value of the target input pin according to the first description information and the second description information includes: Calculate and generate a first capacitance value based on a pin receiving capacitance lookup table of the target input pin included in the first description information, an input transition time value of the target input pin, or a combination of the input transition time value of the target input pin and an output total load value; Calculate and generate a second capacitance value based on the pin receiving capacitance lookup table corresponding to the target input pin, the input transition time value of the target input pin, or a combination of the input transition time value of the target input pin and the output total load value, included in the second description information; A resulting capacitance value of the target input pin is generated based on the first capacitance value and the second capacitance value.
4. The capacitance lookup table processing method for pin capacitance estimation according to claim 3, characterized in that: The pin receiving capacitance lookup table of the target input pin included in the first description information includes at least two items of a rising edge pin receiving capacitance lookup table, a falling edge pin receiving capacitance lookup table, and a segmented pin lookup table; the first capacitance value includes a rising edge receiving capacitance value calculated and generated according to the rising edge pin receiving capacitance lookup table, a falling edge receiving capacitance value calculated and generated according to the falling edge pin receiving capacitance lookup table, and a segmented capacitance value calculated and generated according to the segmented pin lookup table; The pin receiving capacitance lookup table corresponding to the target input pin contained in the second descriptive information includes at least two items of a rising edge pin receiving capacitance lookup table, a falling edge pin receiving capacitance lookup table, and a segmented pin lookup table, and the second capacitance value includes the rising edge receiving capacitance value calculated and generated according to the rising edge pin receiving capacitance lookup table, the falling edge receiving capacitance value calculated and generated according to the falling edge pin receiving capacitance lookup table, and the segmented capacitance value calculated and generated according to the segmented pin lookup table.
5. The capacitance lookup table processing method for pin capacitance estimation according to claim 4, characterized in that: Generating a result capacitance value of the target input pin according to the first description information and the second description information includes: Receive a value selection rule input by a user, wherein the value selection rule includes selecting a maximum value, selecting a minimum value, or averaging; When the value selection rule input by the user is to select a maximum value, a maximum value is selected from the rising edge receiving capacitance value, the falling edge receiving capacitance value, and the segmented capacitance value as the first capacitance value or the second capacitance value; When the value selection rule input by the user is to select a minimum value, selecting a minimum value from the rising edge receiving capacitance value, the falling edge receiving capacitance value, and the segmented capacitance value as the first capacitance value or the second capacitance value; When the value selection rule input by the user is average calculation, the rising edge receiving capacitance value, the falling edge receiving capacitance value and the segmented capacitance value are averaged, and the calculated average value is used as the first capacitance value or the second capacitance value.
6. The capacitance lookup table processing method for pin capacitance estimation according to claim 3, characterized in that: Generating the result capacitance value of the target input pin according to the first description information and the second description information includes: comparing the first capacitance value with the second capacitance value, and determining the larger capacitance value between the first capacitance value and the second capacitance value as the result capacitance value of the target input pin.
7. The capacitance lookup table processing method for pin capacitance estimation according to claim 4, characterized in that: Generating a result capacitance value of the target input pin according to the first description information and the second description information includes: Creating a candidate capacitance value set, and adding the first capacitance value, the second capacitance value, or the fixed capacitance value recorded in the first description information found in the library file to the candidate capacitance value set; Traversing the candidate capacitance value set; If a first capacitance value exists in the candidate capacitance value set, determining the first capacitance value as the result capacitance value of the target input pin; If the first capacitance value does not exist in the candidate capacitance values, further determining whether the second capacitance value exists in the candidate capacitance values, and if so, determining the second capacitance value as the result capacitance value of the target input pin; If the first capacitance value and the second capacitance value do not exist in the candidate capacitance values, the fixed capacitance value is determined as the result capacitance value of the target input pin.
8. The capacitance lookup table processing method for pin capacitance estimation according to claim 1, characterized in that: After generating the result capacitance value of the target input pin according to the first description information and the second description information, the method further includes: Acquire a rising-edge Miller capacitance value and a falling-edge Miller capacitance value from the first description information or the second description information; Obtaining a Miller capacitance influence factor, and calculating a Miller capacitance value according to the product of the sum of the rising edge Miller capacitance value and the falling edge Miller capacitance value and the Miller capacitance influence factor; The Miller capacitance value is added to the result capacitance value of the target input pin to obtain a corrected capacitance value, and the corrected capacitance value is used to update the result capacitance value of the target input pin.
9. A capacitance lookup table processing device for pin capacitance estimation, characterized in that: include: a query module, configured to determine a target input pin specified by the user in response to a target input pin capacitance calculation instruction triggered by the user; a first description information search module, configured to search a library file for first description information corresponding to the target input pin, wherein the first description information uses the name of the target input pin as an identifier and includes a fixed capacitance value field of the target input pin or a pin receiving capacitance lookup table of the target input pin; a second description information search module, configured to determine a timing-associated output pin corresponding to the target input pin, and search the library file for second description information corresponding to the timing-associated output pin, wherein the second description information uses the name of the timing-associated output pin as an identifier, and the second description information includes a pin receiving capacitance lookup table corresponding to the target input pin; A result capacitance value generating module is configured to generate a result capacitance value of the target input pin according to the first description information and the second description information.
10. A capacitance lookup table processing device for pin capacitance estimation, characterized in that: include: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, the processor implements the steps of the capacitance lookup table processing method for pin capacitance estimation according to any one of claims 1 to 8.
11. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the steps of the capacitance lookup table processing method for pin capacitance estimation according to any one of claims 1 to 8.
12. A computer program product, characterized in that When the instructions in the computer program product are executed by a processor, the steps of the capacitance lookup table processing method for pin capacitance estimation according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Timing sequence association node acquisition method and device, equipment, storage medium and product
CN119294324A
Pin capacitance dynamic estimation method and device of power consumption analysis tool, equipment and storage medium
CN119830841A
Integrated learning-based parasitic capacitance estimation method in pre-layout stage
CN120012702A
Method of modeling and employing the CMOS gate slew and output load dependent pin capacitance during timing analysis
US20090228850A1
System and method for accurate modeling of back-miller effect in timing analysis of digital circuits
US9928324B1