Leakage current acquisition method and device, electronic equipment, medium and product

By obtaining the internal node voltage status of the anchor module and the netlist of the base unit, the leakage current is simulated to solve the problem of insufficient leakage current accuracy and improve the certainty of static power consumption.

CN120468720APending Publication Date: 2025-08-12CHENGDU HAIGUANG INTEGRATED CIRCUIT DESIGN CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510733613.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-03
Publication Date
2025-08-12

AI Technical Summary

Technical Problem

The accuracy of leakage current in the prior art is insufficient, which affects the certainty of static power consumption.

Method used

By obtaining the internal node voltage status of the anchor module and the netlist of the base unit, the leakage current is obtained in a simulated manner, and the leakage current of the target module is calculated using the leakage current of the base unit with high accuracy in the database.

Benefits of technology

Improves the accuracy of leakage current and enhances the certainty of static power consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120468720A_ABST
    Figure CN120468720A_ABST
Patent Text Reader

Abstract

The invention provides a leakage current obtaining method and device, electronic equipment, a medium and a product, and relates to the field of leakage current detection.The method comprises the steps that the voltage state of an internal node of each anchor point module in N anchor point modules is obtained, the anchor point modules are used for executing specific circuit functions in an integrated circuit, and N is a positive integer; obtaining a netlist of each type of base layer unit included in each anchor point module, wherein the netlist of each type of base layer unit comprises the type of base layer unit and a hierarchical structure of the anchor point module where the type of base layer unit is located; and for each type of base layer unit, obtaining the leakage current of the type of base layer unit according to the netlist of the type of base layer unit and the voltage state of the internal node of the anchor module where the type of base layer unit is located. In this way, the leakage current of each type of base unit can be obtained in a simulation environment closer to the actual situation, and therefore the accuracy of the obtained leakage current can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of leakage current detection, and specifically to a leakage current acquisition method, device, equipment, medium and product. Background Art

[0002] Low-power design is a crucial topic in integrated circuit design, and it's closely related to circuit power consumption. Circuit power consumption refers to the amount of energy consumed by a circuit during operation, and includes both dynamic and static power consumption. Dynamic power consumption refers to the power drawn from the power supply when the circuit is plugged in and performing its functions; static power consumption refers to the power drawn from the power supply when the circuit is plugged in and not performing any functions.

[0003] Static power consumption is typically determined based on the circuit's leakage current. This means that the accuracy of the leakage current can affect the accuracy of the static power consumption determined based on the leakage current. Therefore, improving the accuracy of the leakage current is an urgent issue to be addressed. Summary of the Invention

[0004] In view of this, the purpose of this application is to provide a leakage current acquisition method, device, electronic device, medium and product, so as to improve the accuracy of the acquired leakage current.

[0005] The embodiment of the present application is implemented as follows: In a first aspect, an embodiment of the present application provides a leakage current acquisition method, the method comprising: acquiring the voltage state of the internal nodes of each of N anchor point modules, wherein the anchor point module is used to perform a specific circuit function in an integrated circuit, and N is a positive integer; acquiring the netlist of each type of base unit included in each of the anchor point modules, wherein the netlist of each type of base unit includes the hierarchical structure of the base unit of that type and the anchor module in which the base unit of that type is located; for each type of base unit, acquiring the leakage current of the base unit of that type according to the netlist of the base unit of that type and the voltage state of the internal nodes of the anchor module in which the base unit of that type is located.

[0006] Based on the method of the first aspect, it can be seen that the aforementioned voltage states include the voltage states of the nodes surrounding each type of base-level unit. Therefore, simulating each type of base-level unit using the voltage states of the internal nodes of the anchor module in which that type of base-level unit resides can ensure that the leakage current of that type of base-level unit is consistent with the leakage current of that type of base-level unit when located in its anchor module. In this way, the leakage current of each type of base-level unit can be obtained in a simulation environment that is closer to actual conditions, thereby improving the accuracy of the leakage current obtained for each type of base-level unit.

[0007] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, the type of base-unit indicates a base-unit of that type. If the base-unit of that type exists in one of the N anchor modules, and the anchor module includes a base-unit of that type, the leakage current of the base-unit of that type is the leakage current of the single base-unit of that type. That is, if only one of the N anchor modules includes a base-unit of that type, and the anchor module includes a base-unit of that type, the leakage current of the base-unit of that type obtained is the leakage current of the base-unit of that type.

[0008] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, a base unit of this type indicates multiple base units of this type. When a base unit of this type exists in one of the N anchor modules, the method of the first aspect further includes: obtaining the leakage current of a single base unit of this type based on the leakage current of the base unit of this type and the number of base units indicated by the base unit of this type. It will be understood that in this case, the leakage current of the single base unit of this type can be obtained by dividing the leakage current of the base unit of this type by the number of base units indicated by the base unit of this type. In this way, the leakage current of the single base unit of this type can be obtained, which facilitates the subsequent use of the leakage current of the single base unit of this type, such as using this leakage current to obtain the leakage current of a target module containing the base unit of this type.

[0009] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, when the N anchor point modules include a plurality of base-level units of the same type, the method of the first aspect further includes: obtaining the leakage current of a single base-level unit of the same type based on the sum of the leakage currents of the base-level units of the same type in the N anchor point modules and the number of single base-level units of the same type included in the N anchor point modules, wherein the sum of the leakage currents is determined based on the leakage currents of the base-level units of the same type. In this way, the leakage current of the single base-level unit of the same type can be obtained, thereby facilitating subsequent use of the leakage current of the single base-level unit of the same type, such as using the leakage current to obtain the leakage current of a target module including the base-level unit of the same type.

[0010] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, the N anchor modules are determined based on characteristic attributes, and the characteristic attributes are used to indicate the characteristics of the integrated circuit. In this way, the loss of precision caused by artificially dividing the modules can be avoided, thereby further improving the accuracy of the leakage current obtained for each type of base unit. It will be understood that the characteristic attributes can be predefined or preset, and the characteristic attributes can be one or more; when the characteristic attribute is one, all the anchor modules corresponding to this characteristic attribute are N anchor modules; when the characteristic attribute is multiple, all the anchor modules corresponding to these multiple characteristic attributes are N anchor modules.

[0011] In combination with the technical solution provided in the first aspect above, in some possible implementations, the integrated circuit includes a memory, and the characteristic attribute is at least one of the following characteristics of the memory: the number of address bits, the number of column selects, a self-repair function switch, a redundant array switch, a low-power switch, or a scan chain switch, which can be flexibly set according to actual conditions without restriction.

[0012] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, obtaining the voltage status of the internal nodes of each of the N anchor modules includes: for each of the N anchor modules, obtaining the voltage status of the internal nodes of the anchor module based on a pre-simulation netlist for the anchor module. That is, the pre-simulation netlist can be used to perform power-on simulation on the N anchor modules to obtain the voltage status. This reduces the simulation time for the N anchor modules, thereby quickly obtaining the voltage status.

[0013] In combination with the technical solution provided in the first aspect above, in some possible implementations, the method described in the first aspect further includes: obtaining an operating mode, the operating mode being used to indicate the operating state of the integrated circuit under specific conditions; determining an input stimulus for simulating a base unit of the type according to the operating mode; and obtaining the leakage current of the base unit of the type according to the netlist of the base unit of the type and the voltage state of the internal node of the anchor module in which the base unit of the type is located, including: obtaining the leakage current of the base unit of the type according to the netlist of the base unit of the type, the voltage state of the internal node of the anchor module in which the base unit of the type is located, and the input stimulus. In this way, the obtained leakage current can be made more consistent with the actual situation, and the leakage current of base units with various characteristics under different operating modes can be determined, thereby facilitating subsequent use, such as obtaining the leakage current of the target module under different operating modes based on the leakage current.

[0014] In combination with the technical solution provided in the first aspect above, in some possible implementations, the integrated circuit includes a memory, and the operating mode is any one of the following modes of the memory: read mode, write mode, read-write mode, low power mode, scan mode, or pass-through mode, which can be flexibly set according to actual conditions without restriction.

[0015] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, obtaining a netlist for each type of base-level unit included in each anchor module includes: for each type of base-level unit, deleting information irrelevant to that type of base-level unit from the netlists of the N anchor modules, while retaining the hierarchical structure of that type of base-level unit and its anchor module, to obtain a netlist for that type of base-level unit. In this way, the netlist of each base-level unit can be accurately obtained.

[0016] In conjunction with the technical solution provided in the first aspect above, in some possible implementations, the base-layer units included in the N anchor modules can cover various types of base-layer units in the integrated circuit. This avoids obtaining leakage current of various types of base-layer units in the integrated circuit that are not obtained through other anchor modules, thereby reducing device power consumption.

[0017] In a second aspect, an embodiment of the present application provides a leakage current acquisition method, the method comprising: acquiring a target module in an integrated circuit whose leakage current is to be determined; acquiring the leakage current of the grassroots units contained in the target module from a database, wherein the database stores leakage currents of various types of grassroots units, and the leakage currents of the grassroots units in the database are determined according to the above-mentioned first aspect embodiment and / or in combination with some possible implementation methods of the above-mentioned first aspect embodiment; acquiring the leakage current of the target module according to the number of grassroots units contained in the target module and the leakage current of the grassroots units contained in the target module.

[0018] Based on the method of the second aspect, it can be seen that the leakage current of the base-level unit in the database is obtained based on the voltage state of the internal node of the anchor module in which the base-level unit is located. In other words, the leakage current of the base-level unit in the database is obtained in a simulation environment that is closer to actual conditions. That is, the leakage current of the base-level unit in the database is more accurate. By using the leakage current of the base-level unit with higher accuracy to obtain the leakage current of the target module, the obtained leakage current of the target module can be made more accurate.

[0019] In conjunction with the technical solution provided in the second aspect above, in some possible implementations, obtaining a target module for determining leakage current in an integrated circuit includes: obtaining a characteristic attribute, the characteristic attribute being used to indicate a characteristic of the integrated circuit; and determining the target module based on the characteristic attribute. It will be appreciated that the leakage current of various types of base units in a database can be obtained based on the anchor modules corresponding to the characteristic attributes. In this way, the leakage current of the target module determined based on the characteristic attributes can be obtained based on the leakage current of various types of base units already in the database.

[0020] In a third aspect, an embodiment of the present application provides a leakage current acquisition device, which includes: an acquisition module for acquiring the voltage state of the internal nodes of each anchor module in N anchor modules, wherein the anchor module is used to perform a specific circuit function in an integrated circuit, and N is a positive integer; the acquisition module is also used to acquire the netlist of each type of base unit included in each of the anchor modules, wherein the netlist of each type of base unit includes the hierarchical structure of the base unit of that type and the anchor module where the base unit of that type is located; a processing module for acquiring the leakage current of the base unit of that type according to the netlist of the base unit of that type and the voltage state of the internal nodes of the anchor module where the base unit of that type is located.

[0021] In a fourth aspect, an embodiment of the present application provides a leakage current acquisition device, which includes: an acquisition module for acquiring a target module in an integrated circuit whose leakage current is to be determined; the acquisition module is also used to acquire the leakage current of the grassroots units contained in the target module from a database, wherein the database stores leakage currents of various types of grassroots units, and the leakage currents of the grassroots units in the database are determined according to the above-mentioned first aspect embodiment and / or in combination with some possible implementation methods of the above-mentioned first aspect embodiment; a processing module for acquiring the leakage current of the target module based on the number of grassroots units contained in the target module and the leakage current of the grassroots units contained in the target module.

[0022] In a fifth aspect, an embodiment of the present application provides an electronic device, comprising: a processor and a memory, the processor and the memory being connected; wherein the memory is used to store programs, and the processor is used to call the programs stored in the memory, and execute the method provided in the above-mentioned first aspect embodiment and / or in combination with some possible implementations of the above-mentioned first aspect embodiment, or, execute the method provided in the above-mentioned second aspect embodiment and / or in combination with some possible implementations of the above-mentioned second aspect embodiment.

[0023] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when run by a processor, executes the method provided in the embodiment of the first aspect above and / or in combination with some possible implementations of the embodiment of the first aspect above, or, when run by a processor, executes the method provided in the embodiment of the second aspect above and / or in combination with some possible implementations of the embodiment of the second aspect above.

[0024] In a seventh aspect, an embodiment of the present application provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the above-mentioned first aspect embodiment and / or the method provided in combination with some possible implementation methods of the above-mentioned first aspect embodiment, or when the computer program is executed by a processor, it implements the above-mentioned second aspect embodiment and / or the method provided in combination with some possible implementation methods of the above-mentioned second aspect embodiment. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] To more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application, and those skilled in the art can also obtain other drawings based on these drawings. The above and other purposes, features, and advantages of the present application will be more clearly illustrated through the drawings.

[0026] Figure 1 Schematic diagram of the leakage current acquisition method provided in the embodiment of the present application Figure 1 ; Figure 2 A schematic diagram of the voltage states of the internal nodes of multiple anchor point modules provided in an embodiment of the present application; Figure 3 A schematic diagram of power-on simulation of N anchor modules provided in an embodiment of the present application; Figure 4 A schematic diagram of various types of base units included in multiple anchor point modules provided in an embodiment of the present application; Figure 5 A schematic diagram of netlist processing provided in an embodiment of the present application; Figure 6 A schematic diagram of the full power supply provided in the embodiment of the present application; Figure 7 Schematic diagram of the leakage current acquisition method provided in the embodiment of the present application Figure 2 ; Figure 8 A schematic diagram of a module of a leakage current acquisition device provided in an embodiment of the present application; Figure 9A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] For ease of understanding, the technical terms involved in the embodiments of this application are first introduced below.

[0028] Leakage current refers to the current that the entire circuit needs to draw from the power supply when the integrated circuit is in a non-operating state, or when there are no active nodes inside.

[0029] Leakage current calculation refers to the total leakage current of a circuit. This calculation can be performed by summing the values across modules or accumulating the values across different operating modes. In chip-level power consumption calculations, leakage current calculations typically require different methods based on different operating modes, operating frequencies, process voltage temperature (PVT), and circuit partitioning methods. The source data for leakage current calculations comes from datasets recorded in various submodule designs, such as leakage work from standard cell timing libraries and leakage power from memory compiler timing libraries.

[0030] It is understood that the static power consumption of a circuit can be calculated based on the leakage current of the circuit. In other words, the accuracy of the leakage current will affect the accuracy of the static power consumption determined based on the leakage current. Therefore, how to improve the accuracy of the obtained leakage current is an urgent problem to be solved.

[0031] In response to the above technical problems, the embodiments of the present application propose the following technical solutions to improve the accuracy of the acquired leakage current.

[0032] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0033] Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. The following embodiments can be used as examples to more clearly illustrate the technical solutions of the present application, and are not intended to limit the scope of protection of the present application. It will be understood by those skilled in the art that the features in the following embodiments and embodiments can be combined with each other in the absence of conflict.

[0034] It should be noted that similar numbers and letters represent similar items in the following figures, so once an item is defined in one figure, it does not need to be further defined or explained in subsequent figures. At the same time, in the description of this application, relational terms such as "first", "second", etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device that includes a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device.

[0035] Furthermore, the term "and / or" in this application is merely a description of the association relationship between associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.

[0036] In the description of the embodiments of the present application, unless otherwise clearly specified or limited, the technical term "connection" may refer to a direct connection or an indirect connection through an intermediate medium.

[0037] See also Figure 1 , the embodiment of the present application provides a leakage current acquisition method, which can be applied to various electronic devices, such as computers, tablet computers, etc. Figure 1 As shown, the process of the above leakage current acquisition method is as follows: S101: Obtain a voltage state of an internal node of each of N anchor point modules.

[0038] The anchor module is used to perform specific circuit functions in the integrated circuit. For example, the anchor module can be used to perform the circuit function of word line decoding in the memory integrated circuit. For example, the anchor module can be used to perform the circuit function of read and write selection in the memory integrated circuit.

[0039] The N anchor modules can be understood as one or more anchor modules, where N is a positive integer. The N anchor modules are determined based on the characteristic attributes. In other words, after obtaining the characteristic attributes, the N anchor modules that can implement the characteristic attributes can be determined based on the characteristic attributes. For example, if the characteristic attributes include Feature #1, the anchor modules determined based on the characteristic attributes include at least one base unit (described below) that can implement Feature #1.

[0040] The characteristic attributes are used to indicate the characteristics of the integrated circuit. In other words, different characteristic attributes refer to different integrated circuits. The integrated circuit may include a memory. For example, when the integrated circuit includes a memory, the N anchor modules may include a wordline decoding module, a memory array module, a primary input / output module, a secondary input / output module, and other modules.

[0041] When the integrated circuit includes a memory, the characteristic attribute may be at least one of the following characteristics of the memory: number of address bits, number of column selects, self-repair function switch, redundant array switch, low power switch, or scan chain switch.

[0042] These characteristic attributes are introduced below.

[0043] The number of address bits refers to the number of bits on the memory address bus that is used to specify the address of the memory cell to be accessed. For example, if a memory has 10 address lines, the number of address bits can address 1024 different addresses; and if the memory has 8 data write and read ports, the number of memory cells that can be used to store data is 1024. 8 (i.e. 8192).

[0044] The number of column selects refers to the number of signal lines used to select columns in a memory, which determines the memory's addressing capability in the column direction. As you can understand, in the physical structure of a memory, data is stored in a matrix consisting of rows and columns; to access a specific memory cell, row and column selects are required to locate that cell.

[0045] The self-repair function is a mechanism within memory that automatically detects and repairs memory cell defects. With this function enabled, the memory can automatically repair certain types of errors during operation, improving system reliability and stability.

[0046] A redundant array switch is a mechanism used in storage to improve reliability and fault tolerance. With a redundant array switch, the storage system reserves extra redundant cells and, when some storage cells fail, switches to the redundant cells, allowing normal operation to continue.

[0047] A low-power switch is a mechanism used in memory to reduce power consumption. This allows the memory to dynamically adjust its operating state and power supply, such as shutting down or reducing the operating voltage when not in use, thereby reducing energy consumption in different operating modes.

[0048] Scan chain switching is a mechanism used in memory testing and debugging. It allows the internal state of the memory to be externalized in test mode, facilitating fault diagnosis and testing.

[0049] It can be understood that the characteristic attributes including the self-repair function switch, redundant array switch, low-power switch, or scan chain switch can be understood as turning on the self-repair function switch, redundant array switch, low-power switch, or scan chain switch. In other words, the characteristic attributes including the self-repair function switch, redundant array switch, low-power switch, or scan chain switch can be understood as the integrated circuit having the function of turning on the self-repair function switch, redundant array switch, low-power switch, or scan chain switch. The above-mentioned self-repair function switch, redundant array switch, low-power switch, and scan chain switch can also be referred to as self-repair function characteristics, redundant array characteristics, low-power characteristics, and scan chain characteristics without limitation. In addition, the specific principles of the above-mentioned address bit number, column selection number, self-repair function switch, redundant array switch, low-power switch, or scan chain switch can also refer to the existing technology and will not be repeated here.

[0050] Different categories or combinations of categories of characteristic attributes utilize (or correspond to) different base units. For example, if a characteristic attribute does not include a scan chain feature, the anchor module determined based on that characteristic attribute does not include a scan chain feature, and the control base unit and write / read base unit included in that anchor module do not contain scan chain logic devices. Conversely, the control base unit and write / read base unit included in that anchor module do contain scan chain logic devices. The impact of other characteristic attributes (such as self-repair, redundancy, and low power consumption) on base units is similar to the impact of the aforementioned scan features on base units. This information can be understood by referring to the above content and will not be elaborated here.

[0051] The impact of feature attributes on leakage current measurement is that it's necessary to comprehensively cover the feature combinations of the required functionality in the product proposal, identify the base-level units in the anchor module that correspond to these feature combinations, and measure the unit current. The impact of feature attributes on obtaining the target module's leakage current (described below) is that the base-level units used to calculate the target module's leakage current should use the same feature combinations as the target module to ensure accuracy.

[0052] It can also be understood that the above-mentioned characteristic attributes can also be other characteristics of the integrated circuit, which can be flexibly set according to actual conditions without limitation.

[0053] The voltage state of the internal node of the anchor module can be understood as the voltage state around the base unit (described below) included in the anchor module.

[0054] For example, Figure 2As shown, there are six anchor modules, namely anchor module 1 to anchor module 6. The "0" and "1" states represent the voltage level values (i.e., voltage states) of the internal nodes of the six anchor modules. At the same time, the "0" and "1" also represent the states of the nodes around the base unit. For example, the voltage level value of the internal node of anchor module 1 is 0 0 1, which also represents the voltage level value of the nodes around the base unit used for master control in anchor module 1 is 0 0 1; for another example, the voltage level value of the internal node of anchor module 3 is 0 1 0, which also represents the voltage level value of the nodes around the base unit used for word line decoding in anchor module 3 is 0 1 0.

[0055] In the embodiment of the present application, N anchor modules can be powered on and simulated separately, and after the power-on is completed, the voltage status of all internal nodes of the anchor module can be obtained. Figure 3 The voltage status of all internal nodes of the anchor module can be obtained after the anchor module is powered on. Specifically, the voltage status of all internal nodes of the anchor module can be obtained after power-on. This allows for more accurate voltage status. Furthermore, after obtaining the voltage status of the internal nodes of each of the N anchor modules, the obtained voltage status can be stored as a voltage status file (referred to as file ic1) for subsequent use.

[0056] In one possible implementation, obtaining the voltage status of the internal nodes of each of the N anchor modules may specifically include: for each of the N anchor modules, obtaining the voltage status of the internal nodes of the anchor module based on a pre-simulation netlist of the anchor module. In other words, the N anchor modules may be powered on and simulated using the pre-simulation netlist to obtain the voltage status. This improves the simulation speed of the N anchor modules, thereby enabling faster acquisition of the voltage status.

[0057] In another possible implementation, obtaining the voltage state of the internal nodes of each of the N anchor modules may specifically include: for each of the N anchor modules, obtaining the voltage state of the internal nodes of the anchor module based on the post-simulation netlist of the anchor module. In other words, the post-simulation netlist may be used to perform power-on simulation on the N anchor modules to obtain the voltage state. This improves the simulation accuracy of the N anchor modules, making the simulation results more consistent with actual conditions.

[0058] S102: Obtain a netlist of each type of base unit included in each anchor module.

[0059] Each anchor module refers to a respective anchor module among the N anchor modules. Each anchor module may include one type of base unit or multiple types of base units. The base unit can be understood as a basic building block in an integrated circuit, having a specific function and structure. An anchor module may be composed of at least one base unit.

[0060] For example, N anchor modules include a wordline decoding module, a memory array module, a primary input / output module, and a secondary input / output module. The types of base units corresponding to these N anchor modules may include wordline decoding, memory cells, read / write selection, and data ports. Specifically, the wordline decoding module may include two wordline decoding base units, the memory array module may include two memory cell base units, the primary input / output module may include three data port base units, and the secondary input / output module may include three read / write selection base units.

[0061] For ease of understanding, one anchor module (denoted as anchor module #1) among the N anchor modules is taken as an example to introduce a type of base unit included in the anchor module #1.

[0062] Anchor point module #1 may include one type of base unit or multiple types of base units.

[0063] A base unit of a type included in anchor module #1 may indicate a base unit of that type. That is, a base unit may be understood as a base unit of a type. For example, if anchor module #1 includes three base units #a1, then in anchor module #1, a base unit #a1 is a base unit of a type #a1.

[0064] Alternatively, a base-level unit of a type included in anchor module #1 may indicate multiple base-level units of the same type. That is, multiple base-level units of the same type in anchor module #1 may be considered as base-level units of a single type; or, in other words, all identical base-level units in anchor module #1 may be considered as base-level units of a single type. For example, if anchor module #1 includes three base-level units #a2, then the three base-level units #a2 in anchor module #1 are considered as base-level units of a single type, such as base-level units of type #a2.

[0065] It can be understood that when the anchor module #1 includes multiple types of base units, each type of base unit in these multiple types of base units can indicate a base unit belonging to that type; or, each type of base unit in these multiple types of base units can indicate multiple base units belonging to that type; or, among these multiple types of base units, some types of base units can indicate a base unit belonging to that type, and another type of base unit can indicate multiple base units belonging to that type. The specific settings can be flexibly made according to actual conditions without limitation.

[0066] For example, anchor module #1 includes three base units #a1, one base unit #a2, and two base units #a3. If each type of base unit indicates a base unit of that type, then anchor module #1 includes three types of base units: one base unit #a1, one base unit #a2, and one base unit #a3.

[0067] For another example, anchor module #1 includes four base units #b1 and two base units #b2. If each type of base unit indicates multiple base units of that type, then anchor module #1 includes two types of base units: four base units #b1 and two base units #b2.

[0068] For another example, anchor module #1 includes three base units #c1, one base unit #c2, and one base unit #c3. If, among multiple types of base units, some types of base units indicate one base unit of that type, and another type of base unit indicates multiple base units of that type, then anchor module #1 includes a total of three types of base units: three base units #c1, one base unit #c2, and one base unit #c3.

[0069] The above content introduces each type of base unit from the perspective of a single anchor module. For easier understanding, the following describes each type of base unit from the perspective of multiple anchor modules (i.e., N anchor modules when N is greater than 2).

[0070] Multiple anchor point modules may include a single type of base unit or multiple types of base units. In other words, each of the multiple anchor point modules may include a single type of base unit; alternatively, each of the multiple anchor point modules may include different types of base units, such that the multiple anchor point modules include multiple types of base units. The following description uses a single type of base unit included in multiple anchor point modules as an example.

[0071] The aforementioned type of base unit may indicate a base unit of that type. That is, a base unit may be considered as a type of base unit. For example, if five anchor modules among a plurality of anchor modules all include base unit #d1, then base unit #d1 may be considered as a type of base unit, such as a base unit of type #d1.

[0072] Alternatively, the aforementioned type of base unit may indicate multiple base units of the same type. That is, multiple base units of the same type in an anchor module may be considered as a type of base unit, and these multiple base units are all base units of the same type in the anchor module; or, in other words, all identical base units in the same anchor module may be considered as a type of base unit. For example, multiple anchor modules include anchor module #e1, and this anchor module #e1 includes three base units #e1. Then, these three base units #e1 are considered as a type of base unit, such as a base unit of type #e1. It is understood that in this case, at least one of the N anchor modules may include a base unit of this type.

[0073] Alternatively, the aforementioned one type of base unit may indicate multiple different numbers of base units belonging to the same type. For example, the aforementioned one type of base unit may indicate one base unit belonging to the same type and two base units belonging to the same type; or, the aforementioned one type of base unit may indicate one base unit belonging to the same type, two base units belonging to the same type, and three base units belonging to the same type.

[0074] For example, a base unit of type #f1 indicates one base unit of type #f1, two base units of type #f1, and three base units of type #f1. That is, one base unit of type #f1, two base units of type #f1, and three base units of type #f1 have a mapping relationship with the base unit of type #f1, respectively.

[0075] For another example, the base unit of type #f2 indicates one base unit of type #f2 and four base units of type #f2. That is, the one base unit of type #f2 and the four base units of type #f2 are respectively mapped to the base unit of type #f2.

[0076] It will be appreciated that in the embodiments of the present application, each type of base-level unit included in the multiple anchor point modules can indicate a base-level unit of that type. Furthermore, to reduce computational complexity, all identical base-level units included in each of the multiple anchor point modules can be set as a single type of base-level unit. That is, based on the base-level units included in each of the multiple anchor point modules, multiple base-level units of that type corresponding to a single type of base-level unit can be determined, or multiple different numbers of base-level units of that type corresponding to a single type of base-level unit can be determined.

[0077] For example, Figure 4 As shown, multiple anchor modules include anchor module #g1, anchor module #g2, and anchor module #g3. Anchor module #g1 includes one base unit #g1 and two base units #g2, anchor module #g2 includes one base unit #g3 and two base units #g2, and anchor module #g3 includes two base units #g1. It can be seen that multiple anchor modules include base units of type #g1, base units of type #g2, and base units of type #g3. If each type of base unit indicates a base unit of that type (denoted as case 4.1), then a base unit of type #g1 can indicate one base unit #g1, a base unit of type #g2 can indicate one base unit #g2, and a base unit of type #g3 can indicate one base unit #g3. If the number of base units of various types included in each anchor module in multiple anchor modules is determined (recorded as case 4.2), then the base unit of type #g1 can indicate 1 base unit #g1 and 2 base units #g1, the base unit of type #g2 can indicate 2 base units #g2, and the base unit of type #g3 can indicate 1 base unit #g3.

[0078] The netlist of each type of base unit included in each anchor module can be determined by the netlist of the anchor module where the base unit of that type is located. The netlist of each type of base unit includes the hierarchical structure of the base unit of that type and the anchor module where the base unit of that type is located.

[0079] Exemplarily, obtaining the netlist of each type of base unit included in each anchor module can specifically include: for each type of base unit, deleting or annotating information irrelevant to that type of base unit in the netlists of the N anchor modules, while retaining the hierarchical structure of that type of base unit and the anchor module in which it resides, to obtain the netlist of that type of base unit. In other words, the netlist of each type of base unit can be separated from the netlist of the N anchor modules, and the netlist of each type of base unit includes the base unit of that type, as well as the hierarchical structure of that type of base unit and the anchor module in which it resides. In this way, the netlist of each type of base unit can be accurately obtained, thereby ensuring the accuracy of the leakage current obtained based on the netlist.

[0080] For example, see Figure 5 The N anchor modules include anchor modules 1 through 6. Anchor module 3 includes two base units for wordline decoding, and the netlists for these two base units need to be obtained. Therefore, the contents of anchor modules 1, 2, 4, 6, and 3 need to be commented out or deleted from the netlist of the N anchor modules. In this case, after processing the netlist, only the contents related to anchor module 3 remain; the contents corresponding to the other shaded anchor modules no longer exist in the netlist.

[0081] It is understood that the netlists of the N anchor modules described above can be replaced with the netlists of the anchor modules of the same type of base unit. The specific configuration can be flexibly adjusted based on actual circumstances and is not limited thereto. Furthermore, the aforementioned processing methods for the netlists of the N anchor modules are not limited to annotation or deletion, and other methods can also be used to process the netlists without limitation.

[0082] It can also be understood that, for a type of base unit included in N anchor modules, when a type of base unit is located in multiple anchor modules, the netlist of that type of base unit includes the hierarchical structure of that type of base unit and each of the multiple anchor modules. Alternatively, when a type of base unit is located in multiple anchor modules, there are multiple netlists for that type of base unit, that is, the type of base unit corresponds to multiple netlists, and each netlist corresponding to that type of base unit includes the hierarchical structure of that type of base unit and each of the multiple anchor modules.

[0083] For example, a base unit of type #h1 is located in anchor module #h1, anchor module #h2, and anchor module #h3. In this case, the netlist of the base unit of type #h1 can include a hierarchical structure of the base unit of type #h1 and anchor module #h1, a hierarchical structure of the base unit of type #h1 and anchor module #h2, and a hierarchical structure of the base unit of type #h1 and anchor module #h3. Alternatively, the three corresponding netlists of the base unit of type #h1 are: netlist #h1, netlist #h2, and netlist #h3, where netlist #1 includes a hierarchical structure of the base unit of type #h1 and anchor module #h1, netlist #2 includes a hierarchical structure of the base unit of type #h1 and anchor module #h2, and netlist #3 includes a hierarchical structure of the base unit of type #h1 and anchor module #h3.

[0084] In addition, when a type of grassroots unit indicates multiple different numbers of grassroots units belonging to this type, there are multiple netlists for this type of grassroots unit, that is, this type of grassroots unit corresponds to multiple netlists, and different numbers of grassroots units belonging to this type can correspond to one or more netlists.

[0085] For example, the base unit of type #i1 indicates 1 base unit belonging to type #i1 and 2 base units belonging to type #i1, and 1 base unit belonging to type #i1 is located in anchor module #i1 and anchor module #i4, and 2 base units belonging to type #i1 are located in anchor module #i2 and anchor module #i3.

[0086] In this case, the netlist of the base unit of type #i1 includes a netlist #i1 of one base unit of type #i1 and a netlist #i2 of two base units of type #i1. Netlist #i1 includes a hierarchical structure of one base unit of type #i1 and anchor module #i1, and a hierarchical structure of one base unit of type #i1 and anchor module #i4; netlist #i2 includes a hierarchical structure of two base units of type #i1 and anchor module #i2, and a hierarchical structure of two base units of type #i1 and anchor module #i4.

[0087] Alternatively, the netlist of a base unit of type #i1 includes netlist #i11 and netlist #i12 corresponding to one base unit of type #i1, and netlist #i21 and netlist #i22 corresponding to two base units of type #i1. Netlist #i11 includes a hierarchical structure of one base unit of type #i1 and anchor module #i1; netlist #i12 includes a hierarchical structure of one base unit of type #i1 and anchor module #i4; netlist #i21 includes a hierarchical structure of two base units of type #i1 and anchor module #i2; and netlist #i22 includes a hierarchical structure of two base units of type #i1 and anchor module #i4.

[0088] It can be understood that the above S201 and S101 can be performed simultaneously or in a certain order, such as performing S101 first and then S102, or performing S102 first and then S101. The specific setting can be flexibly made according to the actual situation without limitation.

[0089] S103 , for each type of base unit, obtaining the leakage current of the base unit of this type according to the netlist of the base unit of this type and the voltage state of the internal node of the anchor module where the base unit of this type is located.

[0090] That is, for each type of base unit, a simulation can be performed using the netlist of the type of base unit and the voltage state of the internal node of the anchor module where the type of base unit is located (such as the above-mentioned file ic1) to obtain the leakage current of the type of base unit based on the simulation.

[0091] It is understandable that the leakage current of the base unit of the type obtained above may be the leakage current of one base unit of the type, or the leakage current of multiple base units of the type, or the leakage current corresponding to multiple base units of the type. The following describes different situations.

[0092] Case 1: The base unit of this type indicates a base unit belonging to this type. When the base unit of this type exists in an anchor module among N anchor modules and the anchor module includes a base unit belonging to this type, the leakage current of the base unit of this type is the leakage current of a single base unit belonging to this type.

[0093] For example, if N is 3 and the three anchor modules are anchor module #j1, anchor module #j2, and anchor module #j3, a base unit of type #j1 indicates a base unit of type #j1 (i.e., base unit #j1). Base unit #j1 is located only in anchor module #j1, and anchor module #j1 includes only one base unit #j1. In this case, the leakage current obtained for the base unit of type #j1 is the leakage current of a base unit of type #j1, i.e., the leakage current of base unit #j1.

[0094] It can be understood that in case 1, after the leakage current of a single grassroots unit of this type is obtained, the leakage current of the single grassroots unit of this type can be stored in a database to facilitate subsequent calculation of the leakage current of a target module (described below).

[0095] Case 2: The base unit of this type indicates multiple base units belonging to this type. When the base unit of this type exists in one of the N anchor point modules, the above method may further include: obtaining the leakage current of a single base unit belonging to this type based on the leakage current of the base unit of this type and the number of base units indicated by the base unit of this type.

[0096] The number of base units indicated by the base unit of this type can be understood as the number of multiple base units belonging to this type. For example, if the base unit of this type indicates three base units belonging to this type, the number of base units indicated by the base unit of this type is 3. For another example, if the base unit of this type indicates five base units belonging to this type, the number of base units indicated by the base unit of this type is 5.

[0097] Exemplarily, the leakage current of the base unit of this type can be divided by the number of base units indicated by the base unit of this type to obtain the leakage current of a single base unit of this type, that is, the leakage current of a single base unit of this type is the quotient of the leakage current of the base unit of this type and the number of base units indicated by the base unit of this type.

[0098] Continuing with the above example, the base unit of type #j2 indicates three base units of type #j2. That is, three base units #j2 are base units of type #j2, and these three base units #j2 are located only in anchor module #j2. In this case, the leakage current I1 obtained for type #j2 is the leakage current of the three base units of type #j2. The leakage current I1 can be divided by 3 to obtain the leakage current of a single base unit of type #j2, that is, I1 / 3.

[0099] It can be understood that in case 2, the leakage current of the base unit of this type is the leakage current of multiple base units of this type. In the embodiment of the present application, the leakage current of the base unit of this type and the leakage current of a single base unit of this type can be stored in a database to facilitate the subsequent calculation of the leakage current of the target module (described below).

[0100] Case 3: In this case, when the number of base units of this type included in the N anchor point modules is multiple, the above method may further include: obtaining the leakage current of a single base unit of this type based on the sum of the leakage currents of the base units of this type in the N anchor point modules and the number of single base units of this type included in the N anchor point modules, where the sum of the leakage currents is determined based on the leakage currents of the base units of this type.

[0101] The number of such base units included in the N anchor point modules is multiple, which can be understood as: there are multiple base units of such type in the N anchor point modules. The following describes various situations corresponding to the number of such base units included in the N anchor point modules being multiple.

[0102] Situation 3.1: The base unit of this type indicates a base unit belonging to this type. In this case, the N anchor point modules include multiple single base units of this type.

[0103] Exemplarily, a base unit of this type is located in only one of the N anchor modules, and the anchor module includes multiple base units of this type. For example, if N is 2, and the N anchor modules are anchor module #k1 and anchor module #k2, a base unit of type #k1 indicates a base unit of type #k1, namely, base unit #k1. Anchor module #k1 includes three base units #k1. In this case, the two anchor modules include three base units of type #k1.

[0104] As another example, this type of base unit is located in multiple anchor modules among the N anchor modules. Continuing with the above example, a base unit of type #k2 indicates a base unit of type #k2, namely, base unit #k2. Anchor module #k1 and anchor module #k2 each include at least one base unit #k2. In this case, the two anchor modules include at least two base units of type #k2.

[0105] Case 3.2: The base unit of this type indicates multiple base units of this type. In this case, the N anchor modules include multiple single base units of this type. In other words, the base unit of this type is located in multiple anchor modules in the N anchor modules.

[0106] Continuing with the above example, the base unit of type #k3 indicates three base units of type #k3, i.e., three base units #k3. Anchor module #k1 and anchor module #k2 both include three base units #k3. In this case, two anchor modules include two base units of type #k3.

[0107] Case 3.3: The type of base unit indicates multiple different numbers of base units belonging to the type. In this case, the base unit of the type is located in multiple anchor modules of the N anchor modules. It is understood that the multiple different numbers of base units belonging to the type can be respectively located in at least one anchor module of the N anchor modules.

[0108] For example, if N is 4, the N anchor modules are anchor module #l1, anchor module #l2, anchor module #l3, and anchor module #l4. A base unit of type #l1 indicates one base unit of type #l1 (i.e., base unit #l1), two base units of type #l1 (i.e., two base units #l1), and three base units of type #l1 (i.e., three base units #l1). Anchor module #l1 includes one base unit #l1, anchor module #l4 includes three base units #l1, and anchor modules #l2 and #l3 each include two base units #l1. In this case, the four anchor modules include four base units of type #l1.

[0109] In the embodiment of the present application, in each of the above cases, the leakage currents of multiple base units of this type can be added together to obtain the sum of the leakage currents, and then the sum of the leakage currents can be divided by the total number of single base units of this type in the N anchor point modules to obtain the leakage current of the single base unit of this type.

[0110] Continuing with the example in the above case 3.1, the leakage current of the base unit of type #k1 is the leakage current of a base unit of type #k1, that is, the leakage current of base unit #k1. The anchor module #k1 includes three base units #k1, and the leakage currents are I k11 , I k12 and I k13 , then the leakage current of a single base unit of type #k1 is (I k11 + I k12 + I k13 ) / 3.

[0111] Continuing with the example in the above case 3.2, the leakage current of the base unit of type #k3 is the leakage current of the three base units of type #k3, that is, the leakage current of the three base units #k3. The leakage current of the three base units included in the anchor module #k1 is I31 , the leakage current of the three base units included in the anchor module #k2 is I 32 , then the leakage current of a single base unit of type #k3 is (I 31 + I 32 ) / 3.

[0112] Continuing with the example in the above case 3.3, the leakage current of the base unit of type #l1 includes a leakage current I belonging to a base unit of type #l1. l1 , the leakage current I of the two base units of type #l1 l21 and I l22 , and a three-base unit I belonging to the type #l1 l3 It can be seen that the four anchor modules include eight base units #l1, so the leakage current of a single base unit of type #l1 is (I l1 + I l21 + I l22 + I l3 ) / 8.

[0113] It can be understood that in case 3, after the leakage current of a single grassroots unit of this type is obtained, the leakage current of the single grassroots unit of this type can be stored in a database to facilitate subsequent calculation of the leakage current of a target module (described below).

[0114] In summary, in the embodiments of the present application, the voltage state of the internal nodes of the anchor module in which each type of base unit is located is used when simulating each type of base unit. This ensures that the leakage current of each type of base unit is consistent with the leakage current state of each type of base unit when located in the anchor module in which it is located. This allows the leakage current of each type of base unit to be obtained in a simulation environment that is closer to reality, thereby improving the accuracy of the obtained leakage current.

[0115] Optionally, in combination with the above embodiment, the above leakage current acquisition method may further include: acquiring an operating mode, the operating mode being used to indicate the operating state of the above integrated circuit under specific conditions; determining an input stimulus for simulating the type of base unit according to the operating mode; the above-mentioned acquisition of the leakage current of the type of base unit according to the netlist of the type of base unit and the voltage state of the internal node of the anchor module where the type of base unit is located may specifically include: acquiring the leakage current of the type of base unit according to the netlist of the type of base unit, the voltage state of the internal node of the anchor module where the type of base unit is located, and the above-mentioned input stimulus. That is, the input stimulus for simulating each characteristic base unit can be determined according to the operating mode. In this way, the leakage current of various types of base units under different operating modes can be determined, so that the leakage current of various types of base units obtained is more consistent with the actual situation and can be applied to leakage current calculation under multiple operating models.

[0116] It can be understood that the input excitation of each type of base unit is the same. And the input excitation for each type of base unit is given from the port of the anchor module. Figure 6 As shown, the input excitation in the embodiment of the present application is full power supply starting from time 0. In addition, the above input excitation can also be called simulation excitation, or other possible names, without limitation.

[0117] Furthermore, the integrated circuit includes a memory, and the operating mode is any one of the following modes of the memory: read mode, write mode, read-write mode, low power mode, scan mode, or punch-through mode.

[0118] Among them, read mode refers to the operating mode in which the memory reads data from the storage unit and outputs it to the external bus or register. Write mode refers to the operating mode in which the memory receives data from the external bus or register and writes it to the storage unit. Read-write mode refers to the operating mode in which the memory can both read data from the storage unit and write data to the storage unit. Low power mode refers to the operating mode in which the memory reduces power consumption by reducing the operating voltage, reducing the clock frequency, etc. while maintaining basic functions. Scan mode refers to the operating mode in which the memory outputs the value of the internal status register to the outside in sequence through the scan chain during the testing and debugging process. Through mode refers to the operating mode in which the memory allows data to be transmitted directly from the input end to the output end under certain conditions without passing through the internal storage unit.

[0119] It is understood that different operating modes correspond to different input stimuli. For example, when the memory is reading, the read enable port is 1 and the write enable port is 0; when the memory is in write mode, the write enable port is 1 and the read enable port is 0; when the memory is in scan chain mode, the scan enable is 1, and in other modes, the scan enable is 0; when the memory is in punch-through mode, the punch-through enable is 1 and the scan enable is 0, etc. Furthermore, the above operating modes may vary for different integrated circuits. These operating modes can be set based on actual circumstances and are not limited.

[0120] Optionally, in combination with the above embodiment, the base units included in the N anchor point modules can cover various types of base units in the above integrated circuit. This can avoid obtaining leakage current of various types of base units in the above integrated circuit through other anchor point modules, thereby reducing device power consumption.

[0121] It is understandable that the N anchor modules are determined based on characteristic attributes. Therefore, when selecting characteristic attributes, it is possible to select characteristic attributes that can cover various types of base units in the above integrated circuit.

[0122] It can also be understood that the above content describes how to obtain the leakage current of each type of base unit included in the N anchor point modules. The following describes a specific method for obtaining the leakage current of each type of base unit included in the N anchor point modules through a specific example.

[0123] N is 4, and the four anchor modules are anchor module #m1, anchor module #m2, anchor module #m3 and anchor module #m4; anchor module #m1 includes 1 base unit #n1 and 1 base unit #n2, anchor module #m2 includes 2 base units #n3, anchor module #m3 includes 2 base units #n2 and 2 base units #n3, and anchor module #m4 includes 3 base units #n4. Please refer to Table 1 for details.

[0124] Table 1

[0125] The various types of base units corresponding to the above four anchor modules are: base unit of type #n1, base unit of type #n2, base unit of type #n3, and base unit of type #n4.

[0126] Mode 1: Each type of base unit indicates a base unit belonging to the type.

[0127] At this time, the base unit of type #n1 indicates a base unit belonging to type #n1 (i.e., a base unit #n1); the base unit of type #n2 indicates a base unit belonging to type #n2 (i.e., a base unit #n2); the base unit of type #n3 indicates a base unit belonging to type #n3 (i.e., a base unit #n3); and the base unit of type #n4 indicates a base unit belonging to type #n4 (i.e., a base unit #n4).

[0128] The netlist of a base unit of type #n1 includes a hierarchical structure of base unit #n1 and anchor module #m1. The netlist of a base unit of type #n2 includes a hierarchical structure of base unit #n2 and anchor module #m1, and a hierarchical structure of base unit #n2 and anchor module #m3. The netlist of a base unit of type #n3 includes a hierarchical structure of base unit #n3 and anchor module #m2, and a hierarchical structure of base unit #n3 and anchor module #m3. The netlist of a base unit of type #n4 includes a hierarchical structure of base unit #n4 and anchor module #m4.

[0129] The above netlists and the voltage states of the internal nodes of the four anchor modules are used to simulate and obtain the leakage current of each type of base unit, which are: the leakage current I of one base unit #n1 in the anchor module #m1 n1 , the leakage current I of one base unit #n2 in the anchor module #m1 n2 , the leakage current corresponding to each of the two base units #n3 in the anchor module #m2, i.e., I n31 and I n32 , the leakage current corresponding to each of the two base units #n2 in the anchor module #m3, i.e., I n21 and I n22 , the leakage current corresponding to each of the two base units #n3 in the anchor module #m3, i.e., I n33 and I n34 , and the leakage current corresponding to each of the three base units #n4 in the anchor module #m4, that is, I n41 , I n42 and I n43 , as shown in Table 2 below.

[0130] Table 2

[0131] After obtaining the leakage current of each type of base unit, the leakage current of a single base unit of the type can be obtained based on the leakage current of each type of base unit. Specifically, the leakage current of a single base unit of type #n1 is I n1 , that is, the leakage current of a base unit #n1 is I n1; The leakage of a single base unit of type #n2 is (I n2 + I n21 + I n22 ) / 3, that is, the leakage current of a base unit #n2 is (I n2 + I n21 + I n22 ) / 3; the leakage of a single base unit of type #n3 is (I n31 + I n32 + I n33 + I n34 ) / 4, that is, the leakage current of a base unit #n3 is (I n31 + I n32 + I n33 + I n34 ) / 4; the leakage of a single base unit of type #n4 is (I n41 + I n42 + I n43 ) / 3, that is, the leakage current of a base unit #n4 is (I n41 + I n42 + I n43 ) / 3.

[0132] Method 2: Determine each type of base unit according to the number of the same base units included in each anchor module.

[0133] At this time, the base unit of type #n1 indicates one base unit belonging to type #n1 (i.e., one base unit #n1); the base unit of type #n2 indicates one base unit belonging to type #n2 (i.e., one base unit #n2), and two base units belonging to type #n2 (i.e., two base units #n2); the base unit of type #n3 indicates two base units belonging to type #n3 (i.e., two base units #n3); and the base unit of type #n4 indicates three base units belonging to type #n4 (i.e., three base units #n4).

[0134] The netlist of a base unit of type #n1 includes a hierarchical structure of base unit #n1 and anchor module #m1. There are two netlists for a base unit of type #n2: one netlist includes a hierarchical structure of base unit #n2 and anchor module #m1, and the other netlist includes a hierarchical structure of two base units #n2 and anchor module #m3. The netlist of a base unit of type #n3 includes a hierarchical structure of two base units #n3 and anchor module #m2, and a hierarchical structure of two base units #n3 and anchor module #m3. The netlist of a base unit of type #n4 includes a hierarchical structure of three base units #n4 and anchor module #m4.

[0135] The above netlists and the voltage states of the internal nodes of the four anchor modules are used to simulate and obtain the leakage current of each type of base unit, which are: the leakage current I of one base unit #n1 in the anchor module #m1 n1 , the leakage current I of one base unit #n2 in the anchor module #m1 n2 , the leakage current I of the two base units #n3 in the anchor module #m2 n3 , the leakage current I of the two base units #n2 in the anchor module #m3 n4 , the leakage current I of the two base units #n3 in the anchor module #m3 n5 , the leakage current I of the three base units #n4 in the anchor module #m4 n6 , as shown in Table 3 below.

[0136] Table 3

[0137] After obtaining the leakage current of each type of base unit, the leakage current of a single base unit of the type can be obtained based on the leakage current of each type of base unit. Specifically, the leakage current of a single base unit of type #n1 is I n1 , that is, the leakage current of a base unit #n1 is I n1 ; The leakage of a single base unit of type #n2 is (I n2 + I n4 ) / 3, that is, the leakage current of a base unit #n2 is (I n2 + I n4 ) / 3; the leakage of a single base unit of type #n3 is (I n3 + I n5 ) / 4, that is, the leakage current of a base unit #n3 is (I n3 + I n5 ) / 4; the leakage of a single base unit of type #n4 is I n6 / 3, that is, the leakage current of a base unit #n4 is I n6 / 3.

[0138] It will be appreciated that, for Methods 1 and 2 above, after obtaining the leakage current of each type of base unit, the leakage current of each type of base unit can be stored in a database for subsequent calculation of the leakage current of a target module (described below). Furthermore, the leakage currents of multiple identical base units (e.g., two base units #n2) can also be stored in the database for subsequent calculation of the leakage current of the target module.

[0139] The above embodiment introduces a method for obtaining the leakage current of each type of base unit included in N anchor modules. After obtaining the leakage current of the base unit of this type, the base unit of this type can be stored in a database. When the leakage current of the target module needs to be obtained, the leakage current of the base unit of the relevant type involved in the target module can be used to calculate the leakage current of the target module. Figure 7 Introduce the content.

[0140] See also Figure 7 , the embodiment of the present application provides a leakage current acquisition method, which can be applied to various electronic devices, such as computers, tablet computers, etc. Figure 7 As shown, the process of the above leakage current acquisition method is as follows: S701 , obtaining a target module of an integrated circuit whose leakage current is to be determined.

[0141] The target module is composed of at least one base unit. For example, the target module is composed of one base unit #o1; or, the target module is composed of one base unit #o1 and two base units #o2. In addition, the target module can be understood as one or more modules.

[0142] It can be understood that in the embodiment of the present application, the target module can be a target module selected by the user.

[0143] Optionally, obtaining a target module for the leakage current to be determined in the integrated circuit may specifically include: obtaining a characteristic attribute, the characteristic attribute being used to indicate a characteristic of the integrated circuit; and determining the target module based on the characteristic attribute. Specifically, at least one module capable of implementing the characteristic of the integrated circuit, i.e., the target module, may be determined based on the obtained characteristic attribute.

[0144] It can be understood that the above-mentioned characteristic attributes can be referred to the relevant introduction in the aforementioned embodiments and will not be repeated here.

[0145] S702: Obtain leakage current of the base unit included in the target module from the database.

[0146] The database stores leakage currents of various types of grass-roots units. The leakage currents of the grass-roots units in the database are the aforementioned Figure 1 The embodiment shown is determined.

[0147] The database may be a database of a memory compiler, which is a software tool for automatically generating memory designs, and may be used to design integrated circuits, such as read-only memories, dynamic random access memories, and the like.

[0148] It can be understood that the leakage current of the various types of base units mentioned above may be the leakage current of a single base unit of the type, and / or the leakage current of multiple base units of the type.

[0149] For example, the database includes leakage currents of base units of type #p1. The leakage current of the base unit of type #p1 is the leakage current of a single base unit of type #p1, that is, the leakage current of one base unit #p1. Alternatively, the leakage current of the base unit of type #p1 is the leakage current of a single base unit of type #p1, or the leakage current of multiple base units of type #p1, that is, the leakage current of multiple base units #p1. Alternatively, the leakage current of the base unit of type #p1 is the leakage current of a single base unit of type #p1, and the leakage current of multiple base units of type #p1.

[0150] When the database includes leakage currents of multiple grassroots units of this type, the number of grassroots units corresponding to each leakage current data may be recorded for subsequent use.

[0151] S703 : Obtain the leakage current of the target module according to the number of base units included in the target module and the leakage current of the base units included in the target module.

[0152] That is, the leakage current of the target module can be obtained according to the type and quantity of the base units included in the target module.

[0153] For example, the target module includes 2 base units #q1, 1 base unit #q2 and 4 base units #q3, and the database stores the leakage current I of 1 base unit #q1. q1 , the leakage current I of a base unit #q2 q2 , and the leakage current of 1 base unit #q3 I q3 At this time, the leakage current of the target module is: 2I q1 + I q2 +4 I q3 .

[0154] For another example, the target module includes 1 base unit #r1, 1 base unit #r2, 2 base units #r3 and 3 base units #r4, and the database stores the leakage current I of 1 base unit #r1. r1 , the leakage current I of a base unit #r2 r2 , the leakage current I of the 2nd base unit #r3 r3 , and the leakage current I of the three base unit #r4 r4 At this time, the leakage current of the target module is: I r1 + I r2 + I r3 + Ir4 .

[0155] In summary, in the embodiments of the present application, the leakage current of the base-level unit in the database is obtained based on the voltage state of the internal node of the anchor module in which the base-level unit is located. In other words, the leakage current of the base-level unit in the database is obtained in a simulation environment that is closer to actual conditions. That is, the leakage current of the base-level unit in the database is more accurate. By using the leakage current of the more accurate base-level unit to obtain the leakage current of the target module, the obtained leakage current of the target module can be made more accurate.

[0156] Based on the same inventive concept, the present embodiment also provides a leakage current acquisition device 800. Figure 8 , Figure 8 Schematic diagram of a leakage current acquisition device 800 provided in an embodiment of the present application. The leakage current acquisition device 800 includes: an acquisition module 810 and a processing module 820.

[0157] In some embodiments, the acquisition module 810 is configured to acquire the voltage state of an internal node of each of N anchor modules, where the anchor module is configured to perform a specific circuit function in an integrated circuit, and N is a positive integer. The acquisition module 810 is further configured to acquire a netlist of each type of base-level unit included in each anchor module, wherein the netlist of each type of base-level unit includes a hierarchical structure of the base-level unit of that type and the anchor module in which the base-level unit of that type resides. The processing module 820 is configured to acquire, for each type of base-level unit, the leakage current of that type of base-level unit based on the netlist of that type of base-level unit and the voltage state of the internal node of the anchor module in which the base-level unit of that type resides.

[0158] In some possible implementations, the base unit of this type indicates a base unit belonging to this type. When the base unit of this type exists in an anchor module among N anchor modules and the anchor module includes a base unit belonging to this type, the leakage current of the base unit of this type is the leakage current of a single base unit belonging to this type.

[0159] In some possible implementations, the type of base unit indicates multiple base units belonging to the type. When the type of base unit exists in one of the N anchor point modules, the processing module 820 is further used to obtain the leakage current of a single base unit of the type based on the leakage current of the base unit of the type and the number of base units indicated by the base unit of the type.

[0160] In some possible implementations, when the number of base units of this type included in the N anchor point modules is multiple, the processing module 820 is further used to obtain the leakage current of a single base unit of this type based on the sum of the leakage currents of the base units of this type in the N anchor point modules and the number of single base units of this type included in the N anchor point modules, where the sum of the leakage currents is determined based on the leakage currents of the base units of this type.

[0161] In some possible implementations, the N anchor modules are determined based on characteristic attributes, where the characteristic attributes are used to indicate characteristics of the integrated circuit.

[0162] In some possible implementations, the integrated circuit includes a memory, and the characteristic attribute is at least one of the following characteristics of the memory: number of address bits, number of column selects, self-repair function switch, redundant array switch, low power switch, or scan chain switch.

[0163] In some possible implementations, the acquisition module 810 is specifically configured to acquire, for each of the N anchor modules, a voltage state of an internal node of the anchor module according to a pre-simulation netlist of the anchor module.

[0164] In some possible implementations, the acquisition module 810 is also used to obtain an operating mode, which is used to indicate the operating status of an integrated circuit under specific conditions; based on the operating mode, the input stimulus for simulating this type of base unit is determined; the processing module 820 is specifically used to obtain the leakage current of this type of base unit based on the netlist of this type of base unit, the voltage state of the internal node of the anchor module where this type of base unit is located, and the input stimulus.

[0165] In some possible implementations, the integrated circuit includes a memory, and the operating mode is any one of the following modes of the memory: read mode, write mode, read-write mode, low power mode, scan mode, or punch-through mode.

[0166] In some possible implementations, the acquisition module 810 is specifically used to delete, for each type of base unit, information in the netlist of N anchor modules that is not related to that type of base unit, and retain the hierarchical structure of that type of base unit and the anchor module in which it is located, so as to obtain the netlist of that type of base unit.

[0167] In some possible implementations, the base units included in the N anchor modules can cover various types of base units in an integrated circuit.

[0168] In some other embodiments, the acquisition module 810 is configured to acquire a target module in an integrated circuit for which leakage current is to be determined. The acquisition module 810 is further configured to acquire the leakage current of a base unit contained in the target module from a database, wherein the database stores leakage currents of various types of base units, and the leakage currents of the base units in the database are determined according to the above-described method. The processing module 820 is configured to acquire the leakage current of the target module based on the number of base units contained in the target module and the leakage currents of the base units contained in the target module.

[0169] In some possible implementations, the acquisition module 810 is specifically configured to acquire characteristic attributes, where the characteristic attributes are used to indicate characteristics of an integrated circuit; and determine a target module based on the characteristic attributes.

[0170] The leakage current acquisition device 800 provided in the embodiment of the present application has the same implementation principle and technical effects as those of the aforementioned method embodiment. For the sake of brief description, for matters not mentioned in the device embodiment, reference can be made to the corresponding content in the aforementioned method embodiment. like Figure 9 As shown, Figure 9 FIG. 1 is a block diagram of an electronic device 900 according to an embodiment of the present application. The electronic device 900 includes a transceiver 910 , a memory 920 , a communication bus 930 , and a processor 940 . The transceiver 910, the memory 920, and the processor 940 are electrically connected to each other directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other via one or more communication buses 930 or signal lines. The transceiver 910 is used to send and receive data. The memory 920 is used to store computer programs, such as Figure 8 The software functional module shown in FIG. 1 is the leakage current acquisition device 800. The leakage current acquisition device 800 includes at least one software functional module that can be stored in the memory 920 in the form of software or firmware or embedded in the operating system (OS) of the electronic device 900. The processor 940 is configured to execute the executable module stored in the memory 920, such as the software functional module or computer program included in the leakage current acquisition device 800.

[0171] The memory 920 may be, but is not limited to, a random access memory (RAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc.

[0172] The processor 940 may be an integrated circuit chip with signal processing capabilities. The above-mentioned processor may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), a graphics processing unit (GPU), an accelerated processing unit (Accelerated Processing Unit), a multimedia application processor (MAP), a microprocessor, etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The various methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. Alternatively, the processor 940 may be any conventional processor, etc. The above-mentioned electronic device 900 includes but is not limited to a computer, a router, etc.

[0173] An embodiment of the present application further provides a non-volatile computer-readable storage medium (hereinafter referred to as storage medium), on which a computer program is stored. When the computer program is run by a computer such as the above-mentioned electronic device 900, the leakage current acquisition method shown above is executed.

[0174] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the leakage current acquisition method as described above is executed.

[0175] It should be noted that the various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can be referenced to each other.

[0176] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architectures, functions and operations of the devices, methods and computer program products according to the multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, program segment or a part of the code contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or can be implemented using a combination of dedicated hardware and computer instructions.

[0177] In addition, the functional modules in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0178] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a computer-readable storage medium and includes several instructions for enabling a computer device (which can be a personal computer, laptop, server, or electronic device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned computer-readable storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard drives, read-only memories (ROM), random access memories (RAM), magnetic disks or optical disks.

[0179] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.

Claims

1. A method for obtaining leakage current, characterized in that: The method comprises: Obtaining a voltage state of an internal node of each of N anchor point modules, wherein the anchor point module is used to perform a specific circuit function in the integrated circuit, where N is a positive integer; Obtaining a netlist of each type of base unit included in each anchor module, wherein the netlist of each type of base unit includes a hierarchical structure of the base unit of that type and the anchor module in which the base unit of that type is located; For each type of base unit, the leakage current of the base unit of this type is obtained according to the netlist of the base unit of this type and the voltage state of the internal node of the anchor module where the base unit of this type is located.

2. The method according to claim 1, characterized in that The base unit of this type indicates a base unit belonging to this type. When the base unit of this type exists in an anchor point module among the N anchor point modules and the anchor point module includes a base unit belonging to this type, the leakage current of the base unit of this type is the leakage current of a single base unit belonging to this type.

3. The method according to claim 1, characterized in that The type of base unit indicates a plurality of base units belonging to the type. When the base unit of the type exists in one of the N anchor modules, the method further includes: The leakage current of a single base unit of this type is acquired according to the leakage current of the base unit of this type and the number of base units indicated by the base unit of this type.

4. The method according to claim 1, wherein In a case where the N anchor point modules include a plurality of base units of the same type, the method further includes: The leakage current of the single base unit of the type is obtained based on the sum of the leakage currents of the base units of the type in the N anchor point modules and the number of single base units of the type included in the N anchor point modules, where the sum of the leakage currents is determined based on the leakage currents of the base units of the type.

5. The method according to any one of claims 1 to 4, characterized in that The N anchor point modules are determined according to characteristic attributes, where the characteristic attributes are used to indicate characteristics of the integrated circuit.

6. The method according to claim 5, characterized in that The integrated circuit includes a memory, and the characteristic attribute is at least one of the following characteristics of the memory: the number of address bits, the number of column selections, a self-repair function switch, a redundant array switch, a low power switch, or a scan chain switch.

7. The method according to any one of claims 1 to 6, characterized in that The obtaining of the voltage state of the internal node of each of the N anchor point modules includes: For each of the N anchor point modules, a voltage state of an internal node of the anchor point module is obtained according to a pre-simulation netlist of the anchor point module.

8. The method according to any one of claims 1 to 7, characterized in that The method further comprises: Acquiring an operating mode, where the operating mode is used to indicate an operating state of the integrated circuit under specific conditions; According to the working mode, the input stimulus for simulating the base unit of this type is determined; The obtaining of the leakage current of the base unit of the type according to the netlist of the base unit of the type and the voltage state of the internal node of the anchor module where the base unit of the type is located includes: The leakage current of the type of base unit is obtained according to the netlist of the type of base unit, the voltage state of the internal node of the anchor module where the type of base unit is located, and the input stimulus.

9. The method according to claim 8, characterized in that The integrated circuit includes a memory, and the operating mode is any one of the following modes of the memory: read mode, write mode, read-write mode, low power mode, scan mode, or punch-through mode.

10. The method according to any one of claims 1 to 9, characterized in that The obtaining of a netlist of each type of base unit included in each anchor point module includes: For each type of base unit, information irrelevant to the type of base unit is deleted from the netlists of the N anchor modules, and the hierarchical structure of the type of base unit and its anchor module is retained to obtain the netlist of the type of base unit.

11. The method according to any one of claims 1 to 10, characterized in that The base units included in the N anchor point modules can cover various types of base units in the integrated circuit.

12. A method for obtaining leakage current, characterized in that: The method comprises: Obtaining a target module in the integrated circuit for which leakage current is to be determined; Acquire a leakage current of a grassroots unit included in the target module from a database, wherein the database stores leakage currents of various types of grassroots units, and the leakage currents of the grassroots units in the database are determined according to the method according to any one of claims 1 to 11; The leakage current of the target module is acquired according to the number of base units included in the target module and the leakage current of the base units included in the target module.

13. The method according to claim 12, characterized in that The step of obtaining a target module of a leakage current to be determined in an integrated circuit includes: Acquiring a characteristic attribute, where the characteristic attribute is used to indicate a characteristic of the integrated circuit; The target module is determined according to the characteristic attributes.

14. A leakage current acquisition device, characterized in that: The device comprises: an acquisition module, configured to acquire a voltage state of an internal node of each of N anchor point modules, wherein the anchor point module is configured to perform a specific circuit function in an integrated circuit, where N is a positive integer; The acquisition module is further configured to acquire a netlist of each type of base unit included in each anchor module, wherein the netlist of each type of base unit includes a hierarchical structure of the base unit of the type and the anchor module in which the base unit of the type is located; The processing module is configured to obtain, for each type of base unit, a leakage current of the base unit of the type according to a netlist of the base unit of the type and a voltage state of an internal node of an anchor module where the base unit of the type is located.

15. A leakage current acquisition device, characterized in that: The device comprises: An acquisition module, configured to acquire a target module in the integrated circuit for which leakage current is to be determined; The acquisition module is further configured to acquire leakage currents of base units included in the target module from a database, wherein the database stores leakage currents of various types of base units, and the leakage currents of the base units in the database are determined according to the method according to any one of claims 1 to 11; The processing module is configured to obtain the leakage current of the target module according to the number of the base units included in the target module and the leakage current of the base units included in the target module.

16. An electronic device, characterized in that: include: a memory and a processor, wherein the processor is connected to the memory; The memory is used to store programs; The processor is configured to call a program stored in the memory to execute the method according to any one of claims 1 to 13.

17. A computer-readable storage medium, characterized in that A computer program is stored thereon, and when the computer program is executed by a processor, the method according to any one of claims 1 to 13 is executed.

18. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 13 is implemented.