CN115719052A - Method and device for designing integrated circuit, electronic device and storage medium - Google Patents

Method and device for designing integrated circuit, electronic device and storage medium Download PDF

Info

Publication number
CN115719052A
CN115719052A CN202211453923.3A CN202211453923A CN115719052A CN 115719052 A CN115719052 A CN 115719052A CN 202211453923 A CN202211453923 A CN 202211453923A CN 115719052 A CN115719052 A CN 115719052A
Authority
CN
China
Prior art keywords
power
voltage
power supply
domain
physical function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211453923.3A
Other languages
Chinese (zh)
Inventor
陶昱良
代开勇
潘于
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202211453923.3A priority Critical patent/CN115719052A/en
Publication of CN115719052A publication Critical patent/CN115719052A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

A method and apparatus for designing an integrated circuit, an electronic device, and a storage medium. The design method of the integrated circuit comprises the following steps: acquiring a power supply configuration file and a register transmission level description file of an integrated circuit; responding to the existence of cross-voltage domain communication between the first physical function module and the second physical function module, and inserting a cross-voltage bridge module between the first physical function module and the second physical function module according to the power supply configuration file and the register transmission level description file to obtain an updated register transmission level description file; the voltage-crossing bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are single-power-domain functional modules, and the voltage-crossing bridge module is used for providing level conversion and/or power-down isolation protection for voltage-crossing domain communication of the first physical functional module and the second physical functional module. The design method of the integrated circuit can reduce the time of integration, physical realization and low power consumption verification, and shorten the iteration period in chip research and development.

Description

Method and device for designing integrated circuit, electronic device and storage medium
Technical Field
Embodiments of the present disclosure relate to a method of designing an integrated circuit, an apparatus for designing an integrated circuit, an electronic device, and a non-transitory computer-readable storage medium.
Background
The design process of the integrated circuit comprises a front-end design and a back-end design, wherein the front-end design mainly comprises design stages of algorithm or hardware architecture design and analysis, RTL (Register Transfer Level) implementation, functional verification, logic synthesis and the like, and the back-end design comprises design stages of layout and wiring, time sequence convergence, physical verification and the like. In the design flow of an integrated circuit, each design phase involves a complex design process, and each design phase may require weeks or even months of development time.
Disclosure of Invention
At least one embodiment of the present disclosure provides a method for designing an integrated circuit, where the integrated circuit includes a plurality of physical function modules, and the plurality of physical function modules include a first physical function module and a second physical function module, the method including: acquiring a power supply configuration file and a register transmission level description file of the integrated circuit; in response to the first physical function module and the second physical function module having cross-voltage domain communication, inserting a cross-voltage bridge module between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file to obtain an updated register transfer level description file; in the updated register transfer level description file, the cross-voltage bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are both single-power-domain functional modules, and the cross-voltage bridge module is used for providing level conversion and/or power-down isolation protection for cross-voltage-domain communication between the first physical functional module and the second physical functional module.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, inserting a voltage-spanning bridge module between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file to obtain an updated register transfer level description file includes: creating a voltage bridge module according to the power supply configuration file; according to the power supply configuration file, establishing a voltage-crossing signal channel for a port for performing voltage-crossing domain signal transmission between the first physical function module and the second physical function module in the voltage-crossing bridge module; and adding the voltage-spanning bridge module at a corresponding position in the register transmission level description file to obtain the updated register transmission level description file.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the power supply configuration file includes power supply information of a first power supply that supplies power to a first power domain in which the first physical function module is located, and power supply information of a second power supply that supplies power to a second power domain in which the second physical function module is located, and according to the power supply configuration file, the creating the cross-voltage bridge module includes: according to the power configuration file, creating a first buffer array and a second buffer array, wherein the first buffer array is located in the first power domain, the second buffer array is located in the second power domain, and the first buffer array and the second buffer array are used for providing buffer units; determining whether a cross-voltage domain processing unit between the first physical function module and the second physical function module needs an enable signal and an enable signal source according to the power supply information of the first power supply and the power supply information of the second power supply, wherein the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for a port performing cross-voltage domain communication between the first physical function module and the second physical function module; in response to the enable signal source indicating that the enable signal is from the voltage-spanning bridge module, an enable unit is created in a respective power domain to provide the enable signal.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, establishing a cross-voltage signal channel in the cross-voltage bridge module for a port for cross-voltage domain signal transmission between the first physical function module and the second physical function module according to the power supply configuration file includes: determining at least one pair of voltage domain crossing ports for signal transmission between the first physical function module and the second physical function module, wherein each pair of voltage domain crossing ports comprises a first port located in the first physical function module and a second port located in the second physical function module, the first port and the second port are connected and in data communication, and the first port and the second port are located in the same layer in the integrated circuit; according to the power supply configuration file, in the voltage-spanning bridge module, establishing a voltage-spanning signal channel between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the voltage-crossing signal path includes a first buffer unit located in a first buffer array, a second buffer unit located in a second buffer array, and a voltage-crossing domain processing unit located between the first buffer unit and the second buffer unit, where the voltage-crossing domain processing unit is configured to provide level shifting and/or power down isolation protection for the first port and the second port.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the configuration file includes power configuration information of the first physical function module and power configuration information of the second physical function module, where the power configuration information of the first physical function module includes a name of a first power supply that supplies power to the first physical function module and a power-down holding value that the first power supply is expected to output when the first power supply is in a power-down state, the power information of the first power supply includes a voltage value configuration and a power state of the first power supply, and the power information of the second power supply includes a voltage value configuration and a power state of the second power supply, and according to the power configuration file, a cross-voltage signal channel is established in the cross-voltage bridge module between each pair of cross-voltage domain ports for connecting the first port and the second port in each pair of cross-voltage domain ports, including: acquiring the first buffer unit positioned in the first buffer array and the second buffer unit positioned in the second buffer array; connecting the first buffer unit with the first port, and connecting the second buffer unit with the second port; determining the voltage-crossing domain processing unit between the first buffer unit and the second buffer unit according to the voltage value configuration, the power state and the power-down holding value of the first power supply and the second power supply; electrically connecting the cross-voltage domain processing unit with the first power supply and the second power supply; connecting the enable port of the cross-voltage domain processing unit with a corresponding enable unit in the cross-voltage bridge module in response to the enable signal of the cross-voltage domain processing unit coming from the cross-voltage bridge module.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the determining, by the power supply configuration file, the type of the cross-voltage domain processing unit and a name of a cross-voltage domain processing standard unit under each type, the cross-voltage domain processing unit located between the first buffer unit and the second buffer unit according to the voltage value configuration, the power supply state, and the power-down holding value of the first power supply and the second power supply includes: determining the type of the voltage-crossing domain processing unit according to the voltage value configuration and the power state of the first power supply and the second power supply; and selecting a corresponding cross-voltage domain processing standard unit under the type of the cross-voltage domain processing unit to be inserted between the first buffer unit and the second buffer unit according to the power-down maintaining values of the first power supply and the second power supply.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the buffer unit is in the form of a buffer, a register, or a FIFO queue.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the types of the cross-voltage domain processing unit include a level shifter, a power-down isolator, and a level shifting isolator, where the level shifter is configured to perform level shifting; the power-down isolator is configured to perform power-down isolation protection; the level shift isolator is configured to perform level shift and power down isolation protection.
For example, the design method of the integrated circuit provided in at least one embodiment of the present disclosure further includes: determining whether cross-voltage domain communication exists between the first physical function module and the second physical function module according to the power supply configuration file.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the determining, according to the power configuration file, whether there is cross-voltage domain communication between the first physical function module and the second physical function module includes: determining a first power domain where the first physical function module is located and a second power domain where the second physical function module is located according to the power configuration information of the first physical function module and the power configuration information of the second physical function module; and determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power supply and the power information of the second power supply.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power supply and the power information of the second power supply includes: determining that the first physical function module and the second physical function module do not belong to the same power domain in response to at least one of a difference in voltage value configuration and power state of the first power supply and the second power supply; and determining that the first physical function module and the second physical function module belong to the same power domain in response to the fact that the voltage value configuration and the power state of the first power supply and the second power supply are the same.
For example, the method for designing an integrated circuit according to at least one embodiment of the present disclosure further includes: and generating a power supply intention description file of the integrated circuit according to the power supply configuration file and the updated register transmission level description file.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the updated register transfer level description file includes the first physical function module, the second physical function module, and the cross-voltage bridge module, the power configuration file includes power information of a first power source that supplies power to a first power domain where the first physical function module is located and power information of a second power source that supplies power to a second power domain where the second physical function module is located, the power configuration file further includes power configuration information of the first physical function module and power configuration information of the second physical function module, and the generating of the power intention description file of the integrated circuit according to the power configuration file and the updated register transfer level description file includes: generating a first power intention description subfile corresponding to the first physical function module according to the power configuration file, wherein the first power intention description subfile comprises a power network definition of the first power domain, a power domain definition of the first power domain and a power state table describing power state combinations of the first power domain; generating a second power intention description subfile corresponding to the second physical function module according to the power configuration file, wherein the second power intention description subfile comprises a power network definition of the second power domain, a power domain definition of the second power domain and a power state table describing power state combinations of the second power domain; generating a third power source intention description subfile corresponding to the cross-voltage bridge module according to the power source configuration file, wherein the third power source intention description subfile comprises power source network definitions of the first power source and the second power source, power source domain definitions of the first power source domain and the second power source domain, a power source state table describing power source state combinations of the first power source domain and the second power source domain, and a cross-voltage domain policy of the cross-voltage bridge module; generating a power intent description file for the integrated circuit from the first, second, and third power intent description subfiles.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, in the post-update register transfer level description file, the designation of the cross-voltage bridge module indicates that the cross-voltage bridge module connects the first power domain and the second power domain; generating a third power intention description subfile corresponding to the voltage-spanning bridge module according to the power configuration file, wherein the third power intention description subfile comprises: determining that the cross-voltage bridge module connects the first voltage domain and the second voltage domain according to the name of the cross-voltage bridge module; and generating the third power supply intention description subfile according to the power supply information of the first power supply and the power supply information of the second power supply in the power supply configuration file.
For example, the method for designing an integrated circuit according to at least one embodiment of the present disclosure further includes: and synthesizing the updated register transmission level description file according to the power supply intention description file and the updated register transmission level description file, wherein in the synthesizing process, in response to that no voltage domain processing unit is inserted into at least one voltage-spanning signal channel in the voltage-spanning bridge module, the voltage domain processing units are respectively inserted into the at least one voltage-spanning signal channel according to the power supply intention description file.
For example, in a design method of an integrated circuit provided in at least one embodiment of the present disclosure, the power configuration file includes power information of a first power supply that supplies power to a first power domain in which the first physical function module is located, and power information of a second power supply that supplies power to a second power domain in which the second physical function module is located, where the power information includes a power name, a voltage value configuration, a power state, an enable signal source, and an enable signal valid level, and the power state includes a power-down capable state or a power-down incapable state; the power configuration file further comprises power configuration information of the first physical function module and power configuration information of the second physical function module, the power configuration information of the first physical function module comprises a name of the first power supply and a power-down holding value expected to be output when the first power supply is in a power-down state, and the power configuration information of the second physical function module comprises a name of the second power supply and a power-down holding value expected to be output when the second power supply is in the power-down state; the power supply configuration file also comprises types of the cross-voltage domain processing units and names of the cross-voltage domain processing standard units under each type.
At least one embodiment of the present disclosure provides a design apparatus of an integrated circuit, wherein the integrated circuit includes a plurality of physical function modules, and the plurality of physical function modules include a first physical function module and a second physical function module, the design apparatus including: an acquisition unit configured to acquire a power supply configuration file and a register transfer level description file of the integrated circuit; the inserting unit is configured to insert a cross-voltage bridge module between the first physical function module and the second physical function module according to the power supply configuration file and the register transmission level description file so as to obtain an updated register transmission level description file in response to the existence of cross-voltage domain communication between the first physical function module and the second physical function module; in the updated register transfer level description file, the cross-voltage bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are both single-power-domain functional modules, and the cross-voltage bridge module is used for providing level conversion and/or power-down isolation protection for cross-voltage-domain communication between the first physical functional module and the second physical functional module.
For example, in a design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure, when the inserting unit inserts a bridge module across voltage between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file to obtain an updated register transfer level description file, the inserting unit performs the following operations: creating a voltage bridge module according to the power supply configuration file; according to the power supply configuration file, establishing a voltage-crossing signal channel for a port for performing voltage-crossing domain signal transmission between the first physical function module and the second physical function module in the voltage-crossing bridge module; and adding the voltage-spanning bridge module at a corresponding position in the register transmission level description file to obtain the updated register transmission level description file.
For example, in a design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure, the power configuration file includes power information of a first power source that supplies power to a first power domain in which the first physical function module is located and power information of a second power source that supplies power to a second power domain in which the second physical function module is located, and the inserting unit executes creating the cross-voltage bridge module according to the power configuration file, including performing the following operations: according to the power configuration file, creating a first buffer array and a second buffer array, wherein the first buffer array is located in the first power domain, the second buffer array is located in the second power domain, and the first buffer array and the second buffer array are used for providing buffer units; determining whether a cross-voltage domain processing unit between the first physical function module and the second physical function module needs an enable signal and an enable signal source according to the power supply information of the first power supply and the power supply information of the second power supply, wherein the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for a port performing cross-voltage domain communication between the first physical function module and the second physical function module; in response to the enable signal source indicating that the enable signal is from the voltage-spanning bridge module, an enable unit is created in a respective power domain to provide the enable signal.
For example, in a design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure, when the inserting unit executes establishment of a cross-voltage signal channel for a port for cross-voltage domain signal transmission between the first physical function module and the second physical function module in the cross-voltage bridge module according to the power supply configuration file, the method includes the following operations: determining at least one pair of voltage domain crossing ports for signal transmission between the first physical function module and the second physical function module in a voltage domain crossing manner, wherein each pair of voltage domain crossing ports comprises a first port located in the first physical function module and a second port located in the second physical function module, the first port and the second port are connected and in data communication, and the first port and the second port are located on the same level in the integrated circuit; according to the power supply configuration file, in the voltage-spanning bridge module, establishing a voltage-spanning signal channel between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports.
For example, in a design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure, the voltage-crossing signal path includes a first buffer unit located in a first buffer array, a second buffer unit located in a second buffer array, and a voltage-crossing domain processing unit located between the first buffer unit and the second buffer unit, where the voltage-crossing domain processing unit is configured to provide level shifting and/or power-down isolation protection for the first port and the second port.
For example, in a design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure, the configuration file includes power configuration information of the first physical function module and power configuration information of the second physical function module, where the power configuration information of the first physical function module includes a name of a first power source supplying power to the first physical function module and a power-down holding value expected to be output when the first power source is in a power-down state, the power information of the first power source includes a voltage value configuration and a power state of the first power source, the power information of the second power source includes a voltage value configuration and a power state of the second power source, the inserting unit executes, according to the power configuration file, when a cross-voltage signal channel is established between each pair of cross-voltage domain ports in the cross-voltage bridge module for connecting the first port and the second port in each pair of cross-voltage domain ports, the inserting unit executes the following operations: acquiring the first buffer unit positioned in the first buffer array and the second buffer unit positioned in the second buffer array; connecting the first buffer unit with the first port, and connecting the second buffer unit with the second port; determining the voltage-crossing domain processing unit between the first buffer unit and the second buffer unit according to the voltage value configuration, the power state and the power-down holding value of the first power supply and the second power supply; electrically connecting the cross-voltage domain processing unit with the first power supply and the second power supply; connecting the enable port of the cross-voltage domain processing unit with a corresponding enable unit in the cross-voltage bridge module in response to the enable signal of the cross-voltage domain processing unit coming from the cross-voltage bridge module.
For example, in the design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure, the power configuration file further includes types of the cross-voltage domain processing units, and names of cross-voltage domain processing standard units of each type, and the determining, by the inserting unit, the cross-voltage domain processing unit located between the first buffering unit and the second buffering unit according to the voltage value configuration, the power state, and the power-down holding value of the first power supply and the second power supply includes: determining the type of the voltage-crossing domain processing unit according to the voltage value configuration and the power state of the first power supply and the second power supply; and selecting a corresponding cross-voltage domain processing standard unit under the type of the cross-voltage domain processing unit to be inserted between the first buffer unit and the second buffer unit according to the power-down maintaining values of the first power supply and the second power supply.
For example, the apparatus for designing an integrated circuit according to at least one embodiment of the present disclosure further includes a determining unit, and the generating unit is configured to generate a power intention description file of the integrated circuit according to the power configuration file and the updated register transfer level description file.
For example, the design apparatus of an integrated circuit provided in at least one embodiment of the present disclosure further includes a generation unit, where the synthesis unit is configured to synthesize the updated register transfer level description file according to the power supply intention description file and the updated register transfer level description file, and in the synthesis process, in response to that no cross-voltage domain processing unit is inserted into at least one cross-voltage signal channel in the cross-voltage bridge module, according to the power supply intention description file, a cross-voltage domain processing unit is inserted into the at least one cross-voltage signal channel, respectively.
At least one embodiment of the present disclosure provides an electronic device, including: a memory non-transiently storing computer executable instructions; a processor configured to execute the computer-executable instructions, wherein the computer-executable instructions, when executed by the processor, implement a design method for an integrated circuit according to any of the embodiments of the present disclosure.
At least one embodiment of the present disclosure provides a non-transitory computer-readable storage medium having stored thereon computer-executable instructions that, when executed by a processor, implement a method of designing an integrated circuit according to any one of the embodiments of the present disclosure.
Drawings
To more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings of the embodiments will be briefly introduced below, and it is apparent that the drawings in the following description relate only to some embodiments of the present disclosure and are not limiting to the present disclosure.
FIG. 1 shows a schematic design diagram of an integrated circuit;
fig. 2 is a schematic flow chart of a method for designing an integrated circuit according to at least one embodiment of the disclosure;
fig. 3 is a schematic flowchart of step S20 in a method for designing an integrated circuit according to at least one embodiment of the disclosure;
FIG. 4 is a schematic diagram of a bridge module according to at least one embodiment of the present disclosure;
FIG. 5 is an improved integrated circuit design flow provided by at least one embodiment of the present disclosure;
fig. 6 is a flowchart illustrating an implementation of a method for designing an integrated circuit according to at least one embodiment of the disclosure;
fig. 7A-7D are schematic circuit structures of an integrated circuit according to at least one embodiment of the present disclosure;
8A-8C are schematic diagrams of power intent description subfiles provided by at least one embodiment of the present disclosure;
fig. 9 is a schematic block diagram of a design apparatus of an integrated circuit according to at least one embodiment of the disclosure;
fig. 10 is a schematic diagram of an electronic device provided in at least one embodiment of the present disclosure;
fig. 11 is a schematic diagram of a non-transitory computer-readable storage medium according to at least one embodiment of the disclosure.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present disclosure more clear, the technical solutions of the embodiments of the present disclosure will be described below clearly and completely with reference to the accompanying drawings of the embodiments of the present disclosure. It is to be understood that the described embodiments are only a few embodiments of the present disclosure, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the described embodiments of the disclosure without any inventive step, are within the scope of protection of the disclosure.
Unless otherwise defined, technical or scientific terms used herein shall have the ordinary meaning as understood by one of ordinary skill in the art to which this disclosure belongs. The use of "first," "second," and the like in this disclosure is not intended to indicate any order, quantity, or importance, but rather is used to distinguish one element from another. The word "comprising" or "comprises", and the like, means that the element or item listed before the word covers the element or item listed after the word and its equivalents, but does not exclude other elements or items. The terms "connected" or "coupled" and the like are not restricted to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "upper", "lower", "left", "right", and the like are used merely to indicate relative positional relationships, and when the absolute position of the object being described is changed, the relative positional relationships may also be changed accordingly. To maintain the following description of the embodiments of the present disclosure clear and concise, a detailed description of some known functions and components have been omitted from the present disclosure.
With the increasing computational demands, the size of the integrated circuit is larger and larger, and the power consumption of the integrated circuit is higher and higher. For example, a System-on-a-Chip (SOC) is an integrated circuit with a special purpose, which includes a complete System and all contents of embedded software, and along with the development of embedded systems, the SOC also has more powerful functions and larger scale.
A lsi is generally divided into a plurality of physical function modules (tiles) according to a function and layout plan, the physical function modules are general names for physically implementing the modules in the lsi, and the physical function modules are connected to the physical function modules through data signal lines for communication. For example, an integrated circuit is usually designed based on an IP core (intellectual property core) in a front-end logic design, and in a back-end physical implementation, one physical function module may correspond to one IP core, or when the IP core is large, a plurality of physical function modules may correspond to one IP core.
Currently, integrated circuit designs generally employ a variety of low power consumption techniques to reduce power consumption of the integrated circuit. The multi-voltage design technology is an effective low-power consumption technology, and uses power supplies with different voltage values for different physical function modules in an integrated circuit according to needs so as to achieve the purpose of power consumption performance balance and realize the optimal performance power consumption ratio of a chip.
Multi-voltage technology has been widely used in current integrated circuit designs as an effective means of low power consumption. The DVFS (dynamic voltage frequency scaling) technology and the power shutdown technology expanded from the multi-voltage technology are also widely applied to high-performance, large-scale integrated circuits such as CPU (central processing unit)/GPU (graphics processing unit).
DVFS techniques refer to dynamically changing the voltage and frequency values of a power supply in response to changes in the workload to balance integrated circuit performance and power consumption. For example, when high performance is required, the voltage and frequency supplied to the chip are adjusted high, and when high performance is not required, the voltage and frequency supplied to the chip are adjusted low to reduce power consumption.
The power-off technology is used for selectively turning off power supplies of some power supply domains according to the working load condition of an integrated circuit when a plurality of power supply domains exist in a chip, so that the power consumption is reduced. For example, two CPU cores of different sizes in a chip respectively use different power supplies, and when the chip is idle, only the small-core CPU needs to maintain the lowest operating state, so that the power supply of the large-core CPU can be turned off.
In order to meet the requirements of performance and Power consumption, an integrated circuit applying a multi-voltage technology may have multiple Power domains (also called voltage domains), where a Power Domain is a logically divided Domain, an independent Power supply region is a Power Domain, each Power Domain may include one or more physical function modules, the physical function modules in each Power Domain are powered by the same Power supply, and different Power domains use different Power supplies to supply Power. Here, the different power supply sources may be: the voltage values of the power supplies are different, or the power states of the power supplies are different, the power states of the power supplies comprise a power-down state and a power-off unavailable state, the power-down available state indicates that the power supplies can be turned off under the condition that some working loads do not exist, and the power-off unavailable state indicates that the power supplies are always kept in a power-on state.
Fig. 1 shows a schematic design of an integrated circuit.
As shown in fig. 1, the integrated circuit includes 9 physical functional modules, where the physical functional module a, the physical functional module B, the physical functional module C, and the physical functional module D are all powered by a power supply VDD _ W (power supply W for short), and these four physical functional modules constitute a power domain W. The physical function module E and the physical function module F are powered by a power supply VDD _ X (power supply X for short) to form a power domain X. Similarly, the physical function block G and the physical function block H constitute a power domain Y, and the physical function block K alone constitutes the power domain Z using the independent power supply VDD _ Z.
The voltage values of different power supplies may be different according to the requirements of the functions and power consumption performance of different physical functional modules. For example, the voltage and frequency of the physical function module a, the physical function module B, the physical function module C, and the physical function module D need to be dynamically adjusted according to the workload to implement the DVFS low power consumption technology, so that the voltage value of the power supply VDD _ W can be dynamically adjusted from 0.6V to 0.9V. The physical function module G and the physical function module H have low performance requirements, and only need to work at a low voltage, so that the voltage value of the power supply VDD _ Y can be fixed at 0.6V. Similarly, the physical function module E and the physical function module F work at a fixed voltage of 0.8V, that is, the voltage value of the power supply VDD _ X is fixed at 0.8V, and the physical function module K works at a fixed voltage of 0.9V, that is, the voltage value of the power supply VDD _ Z is fixed at 0.9V.
In addition, according to application requirements, the integrated circuit only needs the physical function module E and the physical function module F to work under the condition of no working load for a long time, and other physical function modules do not need to work at all. Therefore, the power domain W, the power domain Y and the power domain Z belong to power-down power domains, the power states of the power supply VDD _ W, the power supply VDD _ Y and the power supply VDD _ Z are power-down states, and the power supplies can be turned off; and the power domain X belongs to a normally open power domain, and the power state of the power supply VDD _ X is a non-power-down state and needs to be kept in a power-on state all the time.
If data communication exists between physical functional modules in different power domains, voltage value conversion and power-down isolation protection must be provided for the communicated data signals due to different voltage states (such as voltage value and power state) of the different power domains, otherwise data transmission errors may be caused, and even the integrated circuit may be damaged.
For example, in fig. 1, the voltage values of the power domains where the physical function module H and the physical function module K are located are 0.6V and 0.9V, respectively, and a high level signal is sent from the physical function module H to the physical function module K, because the high level signal of the physical function module H is 0.6V and the high level of the physical function module K is 0.9V, the high level signal from the physical function module H may not be recognized as a high level signal at the physical function module K, which causes a data transmission error.
In addition, the power domain Y and the power domain Z where the physical function module H and the physical function module K are located may both be turned off, and assuming that the power domain Y is in an off state but the power domain Z is in an on state, a data signal line from the physical function module H to the physical function module K is in an unknown state at this time, which may cause a large leakage, and even cause permanent damage to the integrated circuit when severe.
Therefore, it is often necessary to add additional processing circuitry across the voltage domain for data signal transmission between two different power domains. Common cross-voltage domain processing units include a Level Shifter (LS), an Isolation (Isolation) and an ELS (ELS).
The level shifter is used for performing level shifting between two different power domains and converting the voltage value of the signal output by the source physical module into the voltage value of the destination physical function module. The power-down isolator is used for providing power-down isolation protection, and when the power supply of the source functional module is turned off, the signal output by the source functional module can be kept at a determined value (such as a fixed low level or a fixed high level) by the power-down isolator, so that the signal with an unknown value is prevented from being output when the power supply is turned off. The level conversion isolator combines the functions of a level converter and a power-down isolator and is used for level conversion and power-down isolation protection.
Layout planning and power domain definition of the physical function modules are completed in an architecture definition stage of the integrated circuit, for example, which physical function modules are divided according to chip functions, what power supply supplies each physical function module, a voltage value of each power supply, whether the power supply can be turned off, and the like are all primarily completed in the architecture definition stage. During chip development, due to the improvement of requirements and the discovery of problems, the architecture may be changed, and therefore, the rearrangement and planning of the physical functional modules and the change of the power domain are involved.
Due to different combinations of power domains, different voltage domain crossing processing circuits need to be added to different signals, if the circuits are added manually, the workload is huge, errors are prone to occurring, and once the power domain definition or the layout of the physical functional module is changed, the workload is large after the change.
Currently, a synthesis tool can be inserted into the processing unit crossing the voltage domain, but the synthesis tool can only be inserted in the synthesis stage, and information of the power domain, such as the voltage value, whether the power can be turned off or not, and the like, needs to be known, and the information is transmitted to the synthesis tool through a power intention description file.
Common power intention description files include two formats, namely a UPF (unified power supply format) format and a CPF (common power supply format), which can be used for describing all information related to the power supply of the integrated circuit, including power supply information, power supply domain information, a cross-voltage domain strategy (such as a power failure isolation strategy and a level conversion strategy) and the like. The power intent description file typically contains the following main four parts:
(1) Power network definition: defining a power network of a designed physical function module, wherein the power network comprises a power port, a power line and a connection relation thereof, a power pack and the like;
(2) Power domain definition: defining a power domain to which a designed physical function module belongs, including the relation between a sub-module in the physical function module and a power line and the like;
(3) Power state table: and defining the power state, the power domain state, the combination and the like in the designed physical function module.
(4) A voltage domain crossing strategy: when the physical function module is a multi-power-domain function module, a strategy of inserting a cross-voltage processing circuit when a plurality of power domains in the designed physical function module are interacted is defined. This part is optional and is only present when the physical functional module is a multi-power domain functional module and the power domains are different (voltage value, power state are different).
A typical integrated circuit design flow includes: firstly, in the framework definition stage, according to the requirement of an integrated circuit (such as a chip), the layout plan of a function module, a power domain module and a physical function module is defined, and the definitions are output in the form of a specification document to guide the flow of each subsequent stage.
Then, after the architecture definition is completed, the RTL of each IP is developed according to the functions of the chip, then SoC integration is performed, that is, all IPs are integrated together, and the physical function modules are divided according to the layout plan.
Then, according to the power domain specification and low power consumption design requirements of the chip, a power intention description file (such as a UPF or a CPF) of all the physical functional modules and the chip top layer is written. And then, using the power supply intention description file to perform logic synthesis and physical realization of the physical function module on the RTL file of the integrated circuit divided with the physical function module, and simultaneously performing function verification on all the physical function modules and performing low-power-consumption verification on the multi-power-domain physical function module. The low-power-consumption design verification is to verify whether the low-power-consumption design in the physical functional module meets the specification (such as multi-voltage design), and the RTL code, the comprehensive netlist and the physical implementation netlist are required to be subjected to the one-step operation.
Then, for the problems found in the functional/low power verification and the logic synthesis, physical implementation, the chip architecture (such as power domain definition or physical function module layout), the RTL design of the IP, and the power intention description file may be locally modified.
The iterative process is repeated until the chip requirements are met and no design issues exist, and the flow is sent to the factory.
From the above, it can be seen that the power supply intention description file is indispensable for logic synthesis, physical implementation, functional verification and low power consumption verification of the integrated circuit, and the power supply intention description file is required during the logic synthesis, physical implementation, functional verification and low power consumption verification. Moreover, multiple iterations may exist in the whole integrated circuit development process, each iteration may involve manual modification of a power intention description file of one or more physical functional modules, logic synthesis, physical implementation and functional/low-power-consumption verification of the physical functional modules must be performed again after the power intention description file is modified, and these several steps are the most time-consuming stages in the chip design flow.
The power supply intention description file of the multi-power supply domain functional module is more complicated than that of the single-power supply domain, and the logic synthesis, physical realization and verification of the multi-power supply domain functional module are more complicated than that of the single-power supply domain functional module, especially when the physical functional module is large in scale. For example, it takes about 20 hours to logically synthesize a medium-scale multi-power domain functional module, it takes 2 to 3 weeks to physically implement the module again, and it takes about 1 week to verify the low power consumption. How to reduce the iteration times and the time for synthesizing the physical function module, physically realizing and verifying the physical function module is reduced, thereby reducing the time for developing the chip and being very important for rapidly pushing out products and entering the market.
Currently, the insertion of a cross-voltage domain processing circuit into a data signal line between different power domains generally adopts the following two ways.
In one approach, a power intent description file is written for the entire integrated circuit, and then all of the physical functional blocks of the integrated circuit are synthesized together in the synthesis phase, ensuring that the synthesis tool can be accurately inserted into the cross-voltage domain processing unit on the top level of the chip. The type of unit structure of the inserted cross-voltage domain processing unit is determined by the information of two interactive power domains. For example, as shown in fig. 1, a physical function module B and a physical function module D in a power domain W have data interaction with a physical function module E and a physical function module F in a power domain X, respectively, because the power domain W can be turned off, but the power domain X cannot be turned off, a level shifter isolator needs to be inserted into a data signal line from the physical function module B to the physical function module E, and a level shifter only needs to be inserted into a data signal line from the physical function module E to the physical function module B. In this way, low power verification of the entire integrated circuit also needs to be performed at the entire chip level, which is time consuming.
In this way, integration, physical implementation and low power verification of the entire chip top layer are required, which is very time consuming for large scale integrated circuits. When a certain physical function module needs to be modified, even if other physical function modules do not need to be modified, the whole chip needs to be synthesized again, and unnecessary time and labor waste is caused. Moreover, the method needs to manually write the power supply intention description file of the whole chip, and is high in workload and prone to errors. In summary, this approach is not suitable for large-scale integrated circuit design, and can only be used for smaller chip design.
In another approach, the cross-voltage domain processing unit may be placed inside one of the two interacting physical functional modules.
For example, in this manner, with reference to fig. 1, the physical function module B and the physical function module D in the power domain W have data interaction with the physical function module E and the physical function module F in the power domain X, respectively, and the cross-voltage domain processing unit can be selectively placed in the physical function module E and the physical function module F in the power domain X. Similarly, the physical function module K interacts with both the physical function module F and the physical function module H, and the cross-voltage domain processing unit can be placed in the physical function module K. The type of processing unit inserted across the voltage domain is determined by the information of the two interacting power domains.
The physical function module inserted into the cross-voltage domain processing unit needs two power supplies to supply power, so that the physical function module is called a multi-power domain function module, such as a physical function module E, a physical function module F, a physical function module G, a physical function module H and a physical function module K. And the physical function module a, the physical function module B, the physical function module C, and the physical function module D are referred to as a single power domain function module.
By adopting the method, the top layer of the chip is not required to be integrated, and only the integration, the physical realization and the low-power-consumption verification are required to be independently carried out on each physical function module. However, with the increase of the chip scale and the increase of the number of power domains, a large number of multi-power domain functional modules exist in the large-scale integrated circuit, and after each iteration, logical synthesis, physical implementation and low-power-consumption verification need to be performed on modified physical functional modules, which consumes much time. For example, the integration of the multi-power domain functional modules is at least more than 30% longer than that of the single-power domain functional modules; the physical implementation of the multi-power domain functional module also requires consideration and implementation of multiple power networks, which also greatly increases complexity and time; the low power consumption verification of the multi-power-domain functional module is also the same, the low power consumption design verification needs to be carried out on the RTL design, the comprehensive netlist and the physical netlist, the low power consumption verification time and complexity of the multi-power-domain functional module are multiple times of those of the single-power-domain functional module, and the time difference is larger along with the increase of the complexity of the physical functional module. Moreover, the method also needs to manually write the power supply intention description file of the whole chip, and has large workload and is easy to make mistakes.
In view of the above, current multi-voltage designs in large scale integrated circuits face two major challenges:
firstly, after the chip scale and complexity increase, data communication of a plurality of power domains exists in one chip, a cross-voltage domain processing circuit for conversion protection must be provided for the data signals, and the cross-voltage domain processing circuit is generally inserted by a logic synthesis tool according to a power intention description file in a synthesis stage, so a large number of power intention description files need to be written, and the current design flow is generally manually written by experienced engineers, but the workload is large, and errors are prone to occur. And when the modification occurs, the top layer of the chip needs to be synthesized again, which is time-consuming and labor-consuming.
Secondly, in the chip development process, due to the problems caused in the requirement change (architecture change) or the correction design, the modification of the power supply intention description file is brought, and due to the existence of a large number of large-scale multi-power-domain functional modules, the time and the labor are consumed for the re-logic synthesis, the physical implementation, the low-power-consumption verification and the like of the physical functional modules.
At least one embodiment of the present disclosure provides a method of designing an integrated circuit, an apparatus for designing an integrated circuit, an electronic device, and a non-transitory computer-readable storage medium. The design method of the integrated circuit comprises the following steps: acquiring a power supply configuration file and a register transmission level description file of an integrated circuit; responding to the existence of cross-voltage domain communication between the first physical function module and the second physical function module, and inserting a cross-voltage bridge module between the first physical function module and the second physical function module according to the power supply configuration file and the register transmission level description file to obtain an updated register transmission level description file; in the updated register transmission level description file, the voltage-crossing bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are single-power-domain functional modules, and the voltage-crossing bridge module is used for providing level conversion and/or power-down isolation protection for voltage-crossing domain communication between the first physical functional module and the second physical functional module.
According to the design method of the integrated circuit, in a logic design stage, according to a power supply configuration file, a trans-voltage bridge module is directly and automatically inserted into a register transmission level description file (RTL file) of the integrated circuit, and the trans-voltage bridge module is used for providing level conversion and/or power failure isolation protection for two physical function modules with trans-voltage domain communication to obtain an updated register transmission level description file, so that in the updated register transmission level description file, the trans-voltage bridge module is a multi-power domain function module, and the physical function module is a single-power domain function module. Therefore, the top layer of the chip does not need to be integrated, and only the integration, physical implementation and low-power-consumption verification need to be independently performed on each physical function module, so that the time for the integration, physical implementation and low-power-consumption verification is shortened; the number and the scale of the multi-power-supply-domain functional modules are reduced, the original complex multi-power-supply-domain functional modules are simplified into a single-power-supply-domain design, the multi-voltage design can be efficiently and accurately carried out, the flows of logic synthesis, physical realization and low-power-consumption verification in the multi-voltage design are greatly simplified, the iteration times are reduced, the time for chip development is reduced, the iteration period in chip research and development is shortened, and the rapid release of products to enter the market is facilitated.
Embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings, but the present disclosure is not limited to these specific embodiments.
Fig. 2 is a schematic flow chart of a design method of an integrated circuit according to at least one embodiment of the disclosure.
For example, the integrated circuit includes a plurality of physical functional modules including a first physical functional module and a second physical functional module. For the definition of the physical functional module, reference may be made to the foregoing description, and details are not repeated here.
For example, the first physical function module and the second physical function module may be two physical function modules of the plurality of physical function modules that perform the design method of the integrated circuit provided by at least one embodiment of the present disclosure.
For example, the first physical function module and the second physical function module may be any two physical function modules in a plurality of physical function modules, the plurality of physical function modules may further include a third physical function module, a fourth physical function module, and the like, and the third physical function module, the fourth physical function module, and the like may all apply the design method of the integrated circuit provided in at least one embodiment of the present disclosure, and the present disclosure does not specifically limit this.
As shown in fig. 2, a method for designing an integrated circuit according to at least one embodiment of the present disclosure includes steps S10 to S20.
In step S10, a power supply configuration file and a register transfer level description file of the integrated circuit are obtained.
For example, in a front-end design process, a register transfer level description file (RTL file) of the integrated circuit may be obtained.
In the architecture definition phase, a power domain definition specification is specified, in which all information related to the power supply is defined. And obtaining a power supply configuration file according to the power supply domain definition specification.
For example, the power profile may include power information of a first power supply that supplies power to a first power domain in which the first physical function module is located, and power information of a second power supply that supplies power to a second power domain in which the second physical function module is located. For example, a power profile may include power information for all power supplies in an integrated circuit.
For example, the power information may include a power name, a voltage value configuration, a power state, an enable signal source, and an enable signal active level.
For example, the voltage value configuration may include an on voltage value and an off voltage value. For example, the start-up voltage value is a voltage value when the power supply supplies power, and the start-up voltage value may be a fixed voltage value or a dynamic voltage value. For example, a shutdown voltage value may indicate a power state, e.g., a shutdown voltage value of null may indicate that the power supply does not support power down, and a power state of the power supply is a non-power-down state, e.g., a shutdown voltage value of 0 may indicate that the power supply supports power down, and a power state of the power supply is a power-down state. Of course, other ways of representing the power state may be used, and the present disclosure is not limited thereto.
For example, the enable signal source and the enable signal active level provide information about the enable signal for the processing unit operating across the voltage domain when the power supply is powered down. For example, for a power-down isolator and a level shift isolator, an enable signal is required to control whether to start power-down isolation protection. For example, the drop isolator and the level shift isolator have an enable port and are connected to an enable signal source, and when an enable signal provided by the enable signal source is an active level of the enable signal, the drop isolator and the level shift isolator start to output a preset fixed level signal to fix a signal level output by the power-off domain at a certain value.
For example, the enable signal active level may be a high level (H) or a low level (L).
For example, the source of the enable signal may be from a voltage bridge module, for example, an enable unit may be created in the voltage bridge module for generating the enable signal, and the specific process may refer to the following. For example, the enable signal source may be from the outside, such as other physical functional blocks or chip external inputs. For example, the source of the enable signal may also be null, which indicates that the power supply does not need the enable signal, for example, the power state of the power supply is a non-power-down state and is always in a power-up state.
For example, the power configuration file may also include power configuration information of the first physical function module, and power configuration information of the second physical function module. For example, the power configuration information of the first physical function module includes a name of the first power supply, and a power-down hold value expected to be output when the first power supply is in a power-down state; the power configuration information of the second physical function module comprises the name of the second power supply and a power-down holding value expected to be output when the second power supply is in a power-down state. For example, a power profile may include power configuration information for all physical functional blocks in an integrated circuit.
The power-down retention value is a fixed value which is required to be retained by the voltage-crossing domain processing unit when a power supply of a power domain where a physical function module is located is turned off. The power-down holding value is determined by a value of the integrated circuit where the output signal is located when the integrated circuit is reset, or by a state of the power domain where the physical function module is located when the power domain is idle (for example, a state before the power supply is turned off). For example, the power-down retention value may use a signal output by a driver port to which the integrated circuit is connected across the voltage domain processing unit at reset as the power-down retention value, e.g. the reset value is retained by a register in the circuit, obtainable from a register transfer level description file of the integrated circuit. For example, the power down hold value may specify a list of ports, e.g., specifying that the power down hold value for some ports is high (e.g., 1) and the power down hold value for the remaining ports is low (e.g., 0). For example, the power down hold value may be null, indicating that the power domain in which the physical function module is located is not powered down.
For example, the power supply profile also includes the type of the cross-voltage domain processing unit, and the name of the cross-voltage domain processing standard unit under each type.
For example, there are three types of processing units across the voltage domain, including level shifters, power down isolators, and level shift isolators. The level shifter is configured to perform level shifting; the power-down isolator is configured to perform power-down isolation protection; the level shifting isolator is configured to perform level shifting and power down isolation protection.
The name of the cross-voltage domain processing standard unit is the name of the circuit unit in the standard unit library, and can be directly used when the cross-voltage domain processing unit is inserted, for example, the cross-voltage domain processing unit is inserted when a cross-voltage signal channel is constructed, or the name is inserted by an integration tool in an integration stage.
The power-off isolator and the level conversion isolator are respectively provided with two kinds of voltage-domain-crossing processing standard units, one kind of voltage-domain-crossing processing standard unit outputs a signal with a power-off holding value of low level (corresponding to 0), the other kind of voltage-domain-crossing processing standard unit outputs a signal with a power-off holding value of high level (corresponding to 1), and when the voltage-domain-crossing processing standard unit is inserted, the corresponding voltage-domain processing standard unit can be selected according to the power-off holding value.
Table 1 provides a power profile for at least one embodiment of the present disclosure, which can be obtained according to the power domain definition specification of the chip in the example shown in fig. 1.
As shown in table 1, the power configuration file mainly includes three pieces of information, a power information table recording power information of all power supplies in the integrated circuit, a physical function module power table recording power configuration information of all physical function modules in the integrated circuit, and a cross-voltage domain processing unit table recording related information of the cross-voltage domain processing unit.
TABLE 1 Power Profile
Figure BDA0003952544570000201
As shown in table 1, the power information table records the power information of all power supplies in the chip shown in fig. 1.
For example, for power domain W, the turn-on voltage value of power supply W (i.e., VDD _ W) is dynamically adjustable, and may be 0.6V, 0.8V, and 0.9V. The off voltage value is 0, which indicates that the power state of the power supply W is a power-down capable state. The source of the enable signal is "# AUTO #", which means that the enable signal comes from an enable unit in the cross-voltage bridge module, and the enable unit needs to be created in the cross-voltage bridge module. The enable signal active level is "L" indicating that the low level is active.
For example, for power domain Y, the turn-on voltage value of power Y (i.e., VDD _ Y) is a fixed voltage value of 0.6V. The off voltage value is 0, which indicates that the power state of the power supply Y is a power-down capable state. The enable signal source is "VDD _ Y _ ISOn", which means that the enable signal is from an external input signal, such as from the chip top signal "VDD _ Y _ ISOn". The enable signal active level is "L" indicating that the low level is active.
For example, for power domain X, the power supply X (i.e., VDD _ X) has a turn-on voltage of 0.8V. The closing voltage value is null, which indicates that the power supply state of the power supply X is a non-power-down state, and the power supply X is in a power-on state all the time, so that power-down isolation protection is not needed, and the enabling signal source and the enabling signal effective level are null.
As shown in table 1, the physical function module power table records power configuration information of all physical function modules of the integrated circuit.
For example, for "DEFAULT" in the name of a physical function module, the power configuration information indicating that all unspecified physical function modules fall under this class, such as for physical function module E and physical function module F in FIG. 1, the power configuration information is specified by the "DEFAULT" line, i.e., power is supplied by power supply X, and the power-down hold value is null.
For example, for the physical function module a, the physical function module B, the physical function module C, and the physical function module D, the power supply is a power supply W, and the power down hold value is "# AUTO #" which indicates that a signal output by a drive port connected across the voltage domain processing unit during reset of the integrated circuit is used as the power down hold value. Actually, although the physical functional module a is powered down, since there is no data communication with other power domains, the processing unit across the voltage domain is not inserted, so that the power-down maintaining value "# AUTO #" of the physical functional module a has no actual meaning, and can be expressed in other forms.
For example, for the physical function block K, the power supply of which is Z, the port K _ out0 and the port K _ out1 are specified in the power-down holding value, which means that the power-down holding values of the port K _ out0 and the port K _ out1 are 1, and the power-down holding values of the other ports except for the port K _ out0 and the port K _ out1 in the physical function block K are 0. Of course, the power down holding value of a port may also be designated as 0 in the power supply table of the physical function module, and the power down holding values of other ports are designated as 1, which is not specifically limited by the present disclosure.
As shown in table 1, the types of the cross-voltage domain processing units and the names of the cross-voltage domain processing standard units under each type are recorded in the cross-voltage domain processing unit table.
For example, "LS" indicates a type as a level shifter, "ISO" indicates a type as a galvanic isolator, and "ELS" indicates a type as a level shifting isolator.
For a level shifter, its corresponding cross-voltage domain process standard cell in the standard cell library is named "LVLDBUF"; for the power-off isolator, the name of the voltage-domain-crossing processing standard unit which outputs a corresponding low-level signal (for example, the corresponding power-down retention value is 0) in the standard unit library is "ISODBUF0", and the name of the voltage-domain-crossing processing standard unit which outputs a corresponding high-level signal (for example, the corresponding power-down retention value is 1) in the standard unit library is "ISODBUF1"; for the level shift isolator, the name of the cross-voltage domain processing standard cell outputting a corresponding low-level signal (for example, corresponding to a power-down retention value of 0) in the standard cell library is "lvdbufe 0", and the name of the cross-voltage domain processing standard cell outputting a corresponding high-level signal (for example, corresponding to a power-down retention value of 1) in the standard cell library is "lvdbufe 1". Of course, the types of the across-voltage-domain processing units shown in table 1 and the names of the across-voltage-domain processing standard units under each type are one example, and the present disclosure is not limited thereto.
In addition, it should be noted that table 1 shows a representation manner of an exemplary power supply configuration file, and the information in the power supply configuration file may also be provided in other forms and formats as needed, which is not limited in this disclosure.
After the power configuration file and the register transfer level description file are obtained, a Voltage-spanning Bridge (VCB) module may be inserted between the physical function modules that need to perform cross-power domain communication according to the power information provided in the power configuration file, so that interaction of the power domain is transferred from the physical function modules to the VCB module, and the updated register transfer level description file is obtained.
In step S20, in response to the existence of the cross-voltage domain communication between the first physical function module and the second physical function module, a cross-voltage bridge module is inserted between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file, so as to obtain an updated register transfer level description file.
For example, in the updated register transfer level description file, the voltage-spanning bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are both single-power-domain functional modules, and the voltage-spanning bridge module is used for providing level conversion and/or power-down isolation protection for voltage-spanning domain communication between the first physical functional module and the second physical functional module.
For example, after step S20, the physical function module in the updated register transfer level description file may still be a single power domain function module, that is, only one power supply supplies power, while only the cross-voltage bridge module is a multi-power domain function module and is supplied with power by multiple power supplies. Because the scale of the voltage-across bridge module is far smaller than that of a common physical functional module, the time for integration, physical realization and low-power consumption verification brought by multi-voltage design can be greatly reduced; and when the power domain changes (such as the framework changes), only the voltage-spanning bridge modules need to be synthesized again, so that the iteration time is reduced.
The following describes a specific process of inserting the bridge block across voltage by taking the first physical function module and the second physical function module as examples.
Of course, the design method provided by at least one embodiment of the present disclosure may also be applied to other physical functional modules in the plurality of physical functional modules, and are not described one by one.
For example, before step S20, a method for designing an integrated circuit provided in at least one embodiment of the present disclosure further includes: determining whether cross-voltage domain communication exists between the first physical function module and the second physical function module according to the power supply configuration file.
For example, determining whether there is communication between the first physical function module and the second physical function module across the voltage domain according to the power supply profile may include: determining a first power domain where the first physical function module is located and a second power domain where the second physical function module is located according to the power configuration information of the first physical function module and the power configuration information of the second physical function module; and determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power supply and the power information of the second power supply.
As described in step S10, the power configuration file includes power information of a first power source that supplies power to a first power domain in which the first physical function module is located, and power information of a second power source that supplies power to a second power domain in which the second physical function module is located, and the power configuration file further includes power configuration information of the first physical function module and the second physical function module, where a power name of supplying power to the physical function module is recorded in the power configuration information.
Therefore, according to the power supply configuration file, the power supply domain where the physical function module is located, the power supply and the power supply information of the power supply can be determined, and whether the first physical function module and the second physical function module belong to the same power supply domain can be determined according to the power supply information.
For example, different power domains include different voltage values of the power supplies of the two power domains, and different power states. The power information records the voltage value configuration and the power state of the power supply, so that determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power and the power information of the second power may include: determining that the first physical function module and the second physical module do not belong to the same power domain in response to at least one of a difference in voltage value configuration and power state of the first power supply and the second power supply; and determining that the first physical function module and the second physical module belong to the same power domain in response to the fact that the voltage value configuration and the power state of the first power supply and the second power supply are the same.
For example, for the integrated circuit shown in FIG. 1, power domain W, power domain X, power domain Y, and power domain Z have different voltage values and therefore belong to four different power domains.
It should be noted that, it may also be determined in other manners whether there is communication across the voltage domain between the first physical function module and the second physical function module, for example, record a physical function module that needs to perform communication across the voltage domain, and the disclosure is not limited thereto.
For example, if it is determined that the first physical function module and the second physical function module have communication across the voltage domain, a voltage domain crossing module needs to be inserted between the first physical function module and the second physical function module.
Fig. 3 is a schematic flowchart of step S20 in a method for designing an integrated circuit according to at least one embodiment of the disclosure.
As shown in fig. 3, step S20 may include steps S201-S203.
In step S201, a cross-voltage bridge module is created according to the power supply profile.
In step S202, a voltage-crossing signal channel is established in the voltage-crossing bridge module for a port performing voltage-crossing domain signal transmission between the first physical function module and the second physical function module according to the power configuration file.
In step S203, a bridge module is added to a corresponding location in the register transfer level description file to obtain an updated register transfer level description file.
For example, step S201 may include: according to the power supply configuration file, a first buffer array and a second buffer array are created, wherein the first buffer array is located in a first power supply domain, the second buffer array is located in a second power supply domain, and the first buffer array and the second buffer array are used for providing buffer units; determining whether a cross-voltage domain processing unit between a first physical function module and a second physical function module needs an enable signal and an enable signal source according to power supply information of a first power supply and power supply information of a second power supply, wherein the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for a port which carries out cross-voltage domain communication between the first physical function module and the second physical function module; in response to the enable signal source indicating that the enable signal is from across the voltage bridge module, an enable unit is created in the respective power domain to provide the enable signal.
For example, each voltage bridge module includes at least two sections within: an enable unit and a buffer array.
For example, the type of cross-voltage domain processing unit that needs to be inserted between two power supplies may be determined according to the power supply state and the voltage value configuration between the two power supplies that perform cross-voltage domain communication provided in the power supply configuration file.
Table 2 shows the voltage value configuration and power state of two power supplies versus the type of processing unit across the voltage domain. For example, when both the first power supply and the second power supply are in a non-power-down state, if the voltage values are different, only level conversion is required, so that the cross-voltage domain processing unit is a level converter. When the first power supply is in a power-down state and the second power supply is in a power-down unavailable state, a signal output by the first power supply needs to be subjected to power-down isolation protection, and a power-down isolator needs to be used for stabilizing an output signal at a fixed value, so that the signal output from the first power supply to the second power supply needs to be subjected to power-down isolation protection, the signal output from the second power supply to the first power supply does not need to be subjected to power-down isolation protection, and level conversion can be performed when needed.
TABLE 2 converter circuit for data signal requirements between different power domains
Figure BDA0003952544570000251
When the type of the cross-voltage domain processing unit is a power-off isolator and a level shift isolator, determining that the cross-voltage domain processing unit between the first physical function module and the second physical function module needs an enable signal, and providing an enable signal source of each power supply in the power supply information of each power supply.
In a voltage-spanning bridge module, the number of enabled cells may be 0, 1 or 2. As shown in table 2, the enabling unit is optional, and if neither the first power supply nor the second power supply is powered down, the power-down isolator and the level shift isolator do not need to be used, and the enabling unit does not need to generate the enabling signal. In addition, if the enable signal source indicates that an external input signal is employed, the enable unit is also not required.
For example, the enabling unit is used for controlling a power-off isolator and a level shift isolator which are input from the opposite power domain to the direction of the power domain where the enabling unit is located.
For example, assuming that both the first power source and the second power source can be powered down and the enable signal source indicates that the enable signal is from the cross-voltage bridge module, in step S201, two enable units are respectively generated in the first power domain and the second power domain, for example, a first enable unit is located in the first power domain and a second enable unit is located in the second power domain, the first enable unit is used to control a power-down isolator or a level-shifting isolator in a signal transmission direction from the second power source to the first power source, and the second enable unit is used to control a power-down isolator or a level-shifting isolator in a signal transmission direction from the first power source to the second power source.
As for the source of the enable signal, reference may be made to the related description in step S10, and details are not repeated here.
For example, there are two buffer arrays in the voltage bridge module, located in the two power domains that interact. Buffer units are provided in the buffer array, and the buffer units may be in the form of buffers (buffers), registers, or FIFO (First Input First Output) queues.
For example, the buffer has no timing delay and mainly plays a role of occupancy, and if the buffer is not provided and the cross-voltage domain processing unit is not inserted, the cross-voltage signal path becomes a wire, which may be optimized by the tool in the synthesis stage. If there is a timing problem, the buffer unit may be a register for adjusting the timing. If the buffering function is required, for example, the first port of the first physical function module continuously transmits data, but the second port of the second physical function module receiving the data cannot continuously receive the data, the FIFO queue may be used as a buffering unit to achieve the purpose of buffering the data. Of course, the buffer unit can be adapted to other structure types according to actual needs, and the disclosure does not specifically limit this.
For example, a plurality of buffer units are instantiated in the buffer array, and the plurality of buffer units may be arranged in pairs and respectively located in two different power domains, so as to connect ports for performing cross-Voltage domain communication between the first physical function module and the second physical function module, and form a Voltage Cross Channel (VCC).
For example, step S202 may include: determining at least one pair of voltage domain crossing ports for carrying out voltage domain crossing signal transmission between a first physical function module and a second physical function module, wherein each pair of voltage domain crossing ports comprises a first port positioned on the first physical function module and a second port positioned on the second physical function module, the first port and the second port are connected and carry out data communication, and the first port and the second port are positioned on the same level in an integrated circuit; according to the power supply configuration file, in the voltage-spanning bridge module, a voltage-spanning signal channel is established between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports.
For example, the cross-voltage domain port is related to the signal transmission direction, i.e. the first port and the second port are unidirectional to transmit data. For example, the first port may be a drive port and the second port an input port, the first port sending data to the second port, or the first port is an input port and the second port is a drive port, the second port sending data to the first port.
For example, multiple levels (hierarchy) may be included in the integrated circuit, with the first port and the second port being located at the same level in the integrated circuit, e.g., both at a top level.
For example, for each pair of ports communicating across the voltage domain, one voltage-spanning signal path is established between the ports.
For example, in some embodiments, a first buffer unit in a first buffer array and a second buffer unit in a second buffer array are included in the voltage-crossing signal path. For example, the first buffer unit is connected to a first port in the first physical function module, the second buffer unit is connected to a second port in the second physical function module, and the first buffer unit and the second buffer unit may be directly connected for data interaction between the first port and the second port, thereby forming a voltage-crossing signal channel between the first port and the second port.
In this embodiment, no voltage domain crossing processing unit is inserted on the voltage domain crossing signal path, and the voltage domain crossing processing unit is inserted by the synthesis tool under the constraint of the power supply intention description file in the synthesis process. For example, in the synthesis process, in response to no cross-voltage domain processing unit being inserted into at least one cross-voltage signal channel in the cross-voltage bridge module, a cross-voltage domain processing unit is respectively inserted into the cross-voltage signal channels according to the power supply intention description file. In this embodiment, the synthesis of the bridge module is needed, but because the logic of the bridge module is very simple and the synthesis time is very short, the time consumed by the logic synthesis is reduced.
For example, in other embodiments, the voltage-crossing signal path includes a first buffer unit located in the first buffer array, a second buffer unit located in the second buffer array, and a voltage-crossing domain processing unit located between the first buffer unit and the second buffer unit, and the voltage-crossing domain processing unit is configured to provide level shifting and/or power-down isolation protection for the first port and the second port. For example, one end of the first buffer unit is connected to the first port in the first physical function module, the other end of the first buffer unit is connected to one end of the voltage domain crossing processing unit, the other end of the voltage domain crossing processing unit is connected to one end of the second buffer unit, and the other end of the second buffer unit is connected to the second port in the second physical function module, thereby forming a voltage crossing signal channel between the first port and the second port.
In the embodiment, the voltage-domain-crossing processing unit can be automatically inserted when the voltage-domain-crossing bridge module is inserted, so that the voltage-domain-crossing bridge module does not need to be integrated in the subsequent integration stage, the time spent in physical integration is further reduced, the iteration time of a chip is reduced, and the research and development period is shortened.
For example, according to the power supply configuration file, in the voltage-spanning bridge module, establishing a voltage-spanning signal channel between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports may include: acquiring a first buffer unit positioned in a first buffer array and a second buffer unit positioned in a second buffer array; connecting a first buffer unit with a first port, and connecting a second buffer unit with a second port; determining a voltage-crossing domain processing unit positioned between a first buffer unit and a second buffer unit according to the voltage value configuration, the power supply state and the power-down holding value of the first power supply and the second power supply; electrically connecting a cross-voltage domain processing unit with a first power supply and a second power supply; and connecting the enabling port of the cross-voltage domain processing unit with the corresponding enabling unit in the cross-voltage bridge module in response to the enabling signal of the cross-voltage domain processing unit coming from the cross-voltage bridge module.
For example, determining a cross-voltage domain processing unit located between the first buffer unit and the second buffer unit according to the voltage value configuration, the power state, and the power-down holding value of the first power supply and the second power supply may include: determining the type of a cross-voltage-domain processing unit according to the voltage value configuration and the power state of the first power supply and the second power supply; and selecting a corresponding cross-voltage domain processing standard unit under the type of the cross-voltage domain processing unit to be inserted between the first buffer unit and the second buffer unit according to the power-down holding values of the first power supply and the second power supply.
For example, as shown in Table 2, the type of processing unit across the voltage domain may be determined based on the voltage values and power states of the two power supplies. For example, referring to step S10, the name of the cross-voltage domain processing standard unit under each type of the cross-voltage domain processing unit is recorded in the power configuration file, and the corresponding cross-voltage domain processing standard unit is selected to be inserted between the first buffer unit and the second buffer unit according to the power-down holding value.
For example, the enable port of the cross-voltage domain processing unit is connected to an enable signal source, for example, if the enable signal is from the outside, a corresponding port is provided in the cross-voltage bridge module, and the enable port of the cross-voltage domain processing unit is connected to provide the enable signal.
It should be noted that, for step S202, the port of the first physical function module may also be traversed, and when it is determined that there is cross-voltage domain communication between the current port (first port) and the second port, a cross-voltage signal channel between the first port and the second port is created, which does not limit the specific implementation process in this disclosure.
Fig. 4 is a schematic diagram of a voltage bridge module according to at least one embodiment of the disclosure.
For example, the cross-voltage bridge module shown in fig. 4 is used to connect a first physical function module and a second physical function module, the first physical function module is located in a first power domain and is powered by a first power source, and the second physical function module is located in a second power domain and is powered by a second power source.
For example, the power state of the first power supply is a non-power-down state, the power state of the second power supply is a power-down state, and the voltage value of the first power supply is different from the voltage value of the second power supply.
As shown in FIG. 4, the cross-voltage bridge module includes a first buffer array in the first power domain, in which a first buffer unit BUF1, a first buffer unit BUF3, a first buffer unit BUF5 and a first buffer power supply BUF7 are provided. The cross-voltage bridge module further comprises a second buffer array located in the second power domain, and the second buffer array is provided with a second buffer unit BUF2, a second buffer unit BUF4, a second buffer unit BUF6 and a second buffer power supply BUF8.
As shown in fig. 4, for example, the first physical function module includes a first port 1, a first port 2, a first port 3, and a first port 4, and the second physical function module includes a second port 1, a second port 2, a second port 3, and a second port 4. For example, the first port 1 and the second port 1 constitute a pair of cross-voltage domain ports, and similarly, the first port 2 and the second port 2 constitute a pair of cross-voltage domain ports, the first port 3 and the second port 3 constitute a pair of cross-voltage domain ports, and the first port 4 and the second port 4 constitute a pair of cross-voltage domain ports. Of course, the first physical function module and the second physical function module may further include more ports, which are not described herein again.
As shown in fig. 4, VCC1 is a cross-voltage signal path between the first port 1 and the second port 1, VCC2 is a cross-voltage signal path between the first port 2 and the second port 2, VCC3 is a cross-voltage signal path between the first port 3 and the second port 3, and VCC4 is a cross-voltage signal path between the first port 4 and the second port 4.
Because the first power domain is a non-power-down power domain and the second power domain is a power-down power domain, the signal transmission direction is the direction from the second power source to the first power source and needs power-down isolation protection, and the direction from the first power source to the second power source does not need power-down isolation protection. Since the voltage value of the first power source is different from that of the second power source, level conversion is required regardless of the direction from the first power source to the second power source or the direction from the second power source to the first power source.
Thus, the type of cross-voltage domain processing unit on the cross-voltage signal path from the first power supply to the second power supply direction is a level shifter (such as LS in fig. 4), and the type of cross-voltage domain processing unit on the cross-voltage signal path from the second power supply to the first power supply direction is a level shifting isolator. The specific type of the level shift isolator is determined by the signal output by the driving port at the time of reset, for example, if the second port 1 outputs a low level signal at the time of reset, the level isolator on the voltage-crossing signal channel VCC1 selects the voltage-crossing processing standard cell ELS0 (level shift isolator outputting a low level signal), if the second port 2 outputs a high level signal at the time of reset, the level isolator on the voltage-crossing signal channel VCC2 selects the voltage-crossing processing standard cell ELS1 (level shift isolator outputting a high level signal).
For example, if the source of the enable signal of the second power source is indicated to be from the cross-voltage bridge module, the enable unit is arranged in the first power domain to provide the enable signal to the cross-voltage domain processing unit on the cross-voltage signal path of the second power source to the first power source in the signal transmission direction. For example, as shown in FIG. 4, the enabling unit is configured to provide an enabling signal to the cross-voltage domain processing unit ELS0 on the cross-voltage signal path VCC1 and the cross-voltage domain processing unit ELS1 on the cross-voltage signal path VCC2.
As shown in fig. 4, one voltage-crossing signal path is composed of a first buffer unit located in the first buffer array, a voltage-crossing domain processing unit, and a second buffer unit located in the second buffer array.
As shown in fig. 4, the voltage-crossing signal path VCC1 includes a first buffer unit BUF1, a second buffer unit BUF2, and a voltage-crossing domain processing unit ELS0, and the first buffer unit BUF1, the second buffer unit BUF2, and the voltage-crossing domain processing unit ELS0 are sequentially connected and connected to the first port 1 and the second port 1, thereby forming the voltage-crossing signal path VCC1 between the first port 1 and the first port 2.
As shown in fig. 4, the cross-voltage signal channel VCC3 includes a first buffer unit BUF5, a second buffer unit BUF6, and a cross-voltage domain processing unit LS, and the first buffer unit BUF5, the second buffer unit BUF6, and the cross-voltage domain processing unit LS are sequentially connected to the first port 3 and the second port 3, so as to form the cross-voltage signal channel VCC3 between the first port 3 and the first port 3.
As shown in fig. 4, the cross-voltage domain processing unit is connected to both the first power supply and the second power supply in addition to the buffering unit and the enabling unit (if necessary), so that the cross-voltage bridge module is a multi-power domain functional module.
For the cross-voltage signal channel VCC2 and the cross-voltage signal channel VCC4, they are similar to the cross-voltage signal channel VCC1 and the cross-voltage signal channel VCC3, and are not described herein again.
According to the embodiments described above, taking the voltage-spanning bridge module between the first physical function module and the second physical function module as an example, the voltage-spanning bridge module includes a first buffer array located in the first power domain, a second buffer array located in the second power domain, and a plurality of voltage-spanning signal channels, where the plurality of voltage-spanning signal channels are connected to the pairs of voltage-spanning ports for voltage-spanning signal transmission between the first physical function module and the second physical function module in a one-to-one correspondence manner; and, when the cross-voltage domain processing unit needs the enable signal and the enable signal needs to come from the cross-voltage bridge module, the cross-voltage bridge module may further include an enable unit for providing the enable signal.
The cross-voltage bridge module can be regarded as an independent physical functional module, and the internal structures of different cross-voltage bridge modules are similar, but the specific types of the cross-voltage domain processing units may be different according to different connected power domains, and are not described herein again.
Therefore, through the structural design of the voltage-spanning bridge module, compared with the scheme that the voltage-spanning domain processing unit is placed inside one of the two interactive physical function modules, the physical function module of the multi-power-supply-domain design can be simplified into the single-power-supply-domain design, and the time and the complexity of logic synthesis, physical implementation and low-power-consumption verification of the physical function module are simplified.
For example, after the cross-voltage bridge module is obtained, the cross-voltage bridge module is inserted into a corresponding position in the register transfer level description file to obtain an updated register transfer level description file.
After the updated register transmission level description file is obtained, at least one voltage-spanning bridge module is added to the updated register transmission level description file relative to the register transmission level description file of the original integrated circuit, and the connection relation of the ports related to the voltage-spanning bridge modules is modified, and the voltage-spanning bridge modules are used for providing power-down isolation protection and/or level conversion for the physical function modules of voltage-spanning domain communication.
The method for designing an integrated circuit provided by at least one embodiment of the present disclosure further includes: and generating a power supply intention description file of the integrated circuit according to the power supply configuration file and the updated register transmission level description file.
For example, the generating the power intention description file of the integrated circuit according to the power configuration file and the updated register transfer level description file may include: generating a first power supply intention description subfile corresponding to the first physical function module according to the power supply configuration file, wherein the first power supply intention description subfile comprises a power supply network definition of a first power supply domain, a power supply domain definition of the first power supply domain and a power supply state table describing power supply state combinations of the first power supply domain; generating a second power supply intention description subfile corresponding to the second physical function module according to the power supply configuration file, wherein the second power supply intention description subfile comprises a power supply network definition of a second power supply domain, a power supply domain definition of the second power supply domain and a power supply state table describing power supply state combinations of the second power supply domain; generating a third power supply intention description subfile corresponding to the voltage-crossing bridge module according to the power supply configuration file, wherein the third power supply intention description subfile comprises power supply network definitions of the first power supply and the second power supply, power supply domain definitions of the first power supply domain and the second power supply domain, a power supply state table describing power supply state combinations of the first power supply domain and the second power supply domain, and a voltage-crossing domain strategy of the voltage-crossing bridge module; and generating a power supply intention description file of the integrated circuit according to the first power supply intention description subfile, the second power supply intention description subfile and the third power supply intention description subfile.
Because the first physical function module and the second physical function module are single power domain function modules, the power intention description subfile is simple and only comprises three main parts, namely a power domain definition, a power network connection and a power state table. The cross-voltage bridge module is a multi-power-domain functional module, the power supply intention description subfile of the cross-voltage bridge module is relatively complex, and the cross-voltage bridge module also has information such as a cross-voltage domain strategy (a level conversion strategy and a power failure isolation strategy), a power supply state transfer table and the like besides a power supply domain definition, a power supply network connection and a power supply state table.
For example, in the post-update register transfer level description file, the designation of the cross-voltage bridge module indicates that the cross-voltage bridge module connects the first power domain and the second power domain.
For example, when creating the cross-voltage bridge modules, the name of each cross-voltage bridge module includes the names of two physical function modules across the power domains and related information of the power domains, e.g., for the cross-voltage bridge module connecting the physical function module H and the physical function module K, the two connected power domains are the power domain Y and the power domain Z, and thus may be named as VCB _ H2K _ Y2Z. Of course, only one possible embodiment is given here, and the disclosure is not particularly limited to the naming formats.
For example, generating a third power intent description subfile corresponding across the voltage bridge module from the power profile may include: determining that the cross-voltage bridge module is connected with the first voltage domain and the second voltage domain according to the name of the cross-voltage bridge module; and generating a third power supply intention description subfile according to the power supply information of the first power supply and the power supply information of the second power supply in the power supply configuration file.
For example, the power domain definition, the power network connection and the power state table may be determined according to power information of the first power source and power information of the second power source, and the cross-voltage policy may be determined according to the internal structure of the cross-voltage bridge, the power information of the first power source and the power information of the second power source.
For the content included in the power network definition, the power domain definition, and the power state table cross-voltage policy, reference may be made to the foregoing content, and details are not repeated here for the embodiments shown in fig. 8A to 8C.
For example, the power intent description file may be in a UPF file format or a CPF file format, or in other feasible formats, and the disclosure is not limited in this respect.
It should be noted that, if the integrated circuit further includes a third physical function module, a fourth physical function module, and other voltage-spanning bridge modules, the method may also be applied to similar manner in this embodiment to obtain the power intention description subfiles of the physical function modules and the voltage-spanning bridge modules, and form the power intention description file of the integrated circuit, which is not described herein again.
Therefore, in the design method of the integrated circuit provided by at least one embodiment of the present disclosure, the power supply intention description file of the integrated circuit can be automatically generated, and the manual writing of the power supply intention description file is not needed, so that the manpower is reduced, the error probability is reduced, the flows of logic synthesis, physical implementation and low power consumption verification in the multi-voltage chip design are greatly simplified, and the iteration cycle in the chip development is shortened.
Fig. 5 is an improved integrated circuit design flow provided by at least one embodiment of the present disclosure.
According to the design method of the integrated circuit, the power supply intention description file does not need to be written manually, but can be automatically inserted into the cross-voltage bridge module to generate the power supply intention description file, when modification and version iteration occur, the power supply intention description file does not need to be modified, the power supply configuration file is directly modified, the process is executed again, iteration updating can be completed, insertion of the cross-voltage bridge module is completed in the front-end design stage, and the three processes of logic synthesis, physical implementation and low power consumption verification, which take the longest time in the integrated circuit design process, are simplified; moreover, the power supply intention description file of the integrated circuit can be automatically generated, and the labor cost and the time cost are greatly reduced.
Particularly, for logic synthesis, because the physical functional modules are single power domain physical functional modules, the synthesis time is greatly reduced. For example, the voltage-domain-crossing processing unit can be automatically inserted when the voltage-domain-crossing bridge module is inserted, so that the voltage-domain-crossing bridge module does not need to be synthesized, and the iteration time of the integrated circuit design is further reduced.
In physical implementation, similar to logic synthesis, the physical function modules are all single power domain physical function modules, only one power network is needed in physical implementation, complexity of physical implementation is greatly reduced, and although the voltage-spanning bridge module is a multi-power domain function module, logic of the voltage-spanning bridge module is very simple, so that time of physical implementation is not increased too much.
For low power consumption verification, low power consumption verification (such as checking whether a processing unit across a voltage domain is correctly inserted or not) only needs to be complete in a voltage bridge module, and all physical functional modules of a single power domain do not need to verify the low power consumption design, so that the low power consumption verification time is greatly reduced.
For example, when a cross-voltage bridge module needs to be inserted for a functional module with cross-voltage domain communication among all physical functional modules in an integrated circuit, the cross-voltage bridge module can be implemented through two-layer traversal.
For example, first all the physical function modules are traversed, for the current physical function module, then all the input ports (ports for receiving external input signals) of the current physical function module are traversed, an input port with cross-voltage domain communication exists in all the input ports is found, and cross-voltage signal channels are respectively established for the input ports with cross-voltage domain communication.
And then, after obtaining the updated RTL file of the integrated circuit, traversing all the physical function modules and the voltage-spanning bridge modules in the updated RTL file according to the updated RTL file and the power configuration file, automatically generating power intention description subfiles of all the physical function modules and the voltage-spanning bridge modules, and finally combining the power intention description subfiles into a power intention description file of the integrated circuit.
Fig. 6 is a flowchart illustrating a method for designing an integrated circuit according to at least one embodiment of the disclosure.
The following describes a specific implementation process of inserting a cross-voltage bridge module into all the physical functional modules in the integrated circuit, where the functional module that performs communication across the voltage domain exists, with reference to fig. 6.
As shown in fig. 6, the power configuration file and the register transfer level description file (RTL) of the integrated circuit are first obtained and read in, and the specific process is as described in step S10, which is not described herein again.
Then, all the physical function modules are traversed, and for the first physical function module T currently processed 1 Obtaining a first physical function module T from the power configuration file 1 Power supply source PS 1 For example, the name of the power supply source of each physical function module is recorded in the power configuration table of the physical function module in the power configuration file, so that the first physical function module T can be obtained 1 First power supply PS for supplying power 1
Then, traverse the first physical function module T 1 For all input ports currently processed, input port P 1 Determining the input port P from the RTL file of the integrated circuit 1 Corresponding drive port P 2 Drive port P 2 To the input port P 1 And sending data and providing a driving function.
Thereafter, the drive port P is determined from the power profile 2 The second physical function module T is arranged 2 Power supply source PS 2 And a power-down retention value CV 2
Specifically, when the power-down holding value is determined, the power-down holding value may be obtained according to the power-down holding value in the power configuration information of the physical function module. For example, as shown in table 1, if the power-down hold value is "# AUTO #", it indicates that the integrated circuit is used to drive the port P at the time of reset 2 The output signal RV is used as a power-down holding value CV 2 (ii) a For example, if the power down hold value is a port list, then if port P is driven 2 In the port list, the power-down hold value CV 2 Is 1, otherwise is 0.
Then, the first physical function module T is judged 1 And a second physical function module T 2 Whether it is the same physical function module, and the first power supply PS 1 And a second power supply PS 2 Whether or not they are the same.
If the first physical function module T 1 And a second physical function module T 2 Is the same physical function module and the first power supply PS 1 And a second power supply PS 2 If the same, continuing to use the first physical function module T 1 The next input port in the set performs the above operation.
Otherwise, judging the first physical function module T 1 And a second physical function module T 2 Whether a voltage domain spanning module is created in between, wherein the voltage domain spanning module at least comprises buffer arrays located in two power domains and required enabling units. If not, the cross-voltage domain module can be created with reference to step S201, and if it is, the cross-voltage domain module can be created with reference to step S202 at the first physical function module T 1 And a second physical function module T 2 Across the voltage domain module in between is input port P 1 And a drive port P 2 A voltage-spanning signal path is established.
Then, continuously traversing the next input port of the first physical function module until the first physical function module T is traversed 1 All input ports of (2) complete the pairing of the first physical function module T 1 Is performed.
And then, continuously traversing other physical function modules, and executing the operation until all the physical function modules are traversed to obtain the updated RTL file.
And traversing all the physical function modules and the voltage-spanning bridge modules in the updated RTL file, respectively generating power intention description subfiles of the physical function modules and the voltage-spanning bridge modules according to the power configuration file, and respectively generating a power intention description file of the integrated circuit according to the power intention description subfiles respectively corresponding to the physical function modules and the voltage-spanning bridge modules.
In the embodiment, the original complex multi-power-supply-domain physical function module is simplified into a single-power-supply-domain design, so that the flows of logic synthesis, physical implementation and low-power-consumption verification in the multi-voltage chip design are greatly simplified, the time and complexity of the logic synthesis, physical implementation and low-power-consumption verification of the function module are reduced, and the iteration cycle in chip development is shortened; the power supply intention description files of all the physical function modules can be automatically generated, so that the labor and time cost is greatly reduced, and the efficiency and the accuracy of multi-voltage design are improved; the whole process is fully automatic, so that the iteration time caused by modification requirements or correction problems in chip design is shortened, and the multi-voltage design efficiency in an integrated circuit, especially the multi-voltage design efficiency in large-scale integrated circuit development, is improved.
When the power domain changes (such as the architecture changes), the power configuration file is modified, and then the process is executed again, so that the updated register transmission level description file and the power intention description file of the integrated circuit can be obtained, the labor and time cost is greatly reduced, and the iteration time is reduced.
Fig. 7A-7D are schematic circuit structures of an integrated circuit according to at least one embodiment of the disclosure. For example, fig. 7A-7D are schematic circuit structures of the integrated circuit shown in fig. 1, wherein the voltage bridge module is inserted by applying the design method provided by at least one embodiment of the present disclosure.
The following describes, by taking the chip circuit structure shown in fig. 1 as an example, an implementation process of a design method of an integrated circuit provided in at least one embodiment of the present disclosure with reference to a specific embodiment.
For example, the physical functional block division and the power domain division in the RTL file of an integrated circuit are shown in fig. 1, and the power configuration file is shown in table 1.
Fig. 7A to 7D illustrate that a voltage-spanning bridge module is inserted between the physical function module E, the physical function module F, the physical function module K, and the physical function module H, but it should be noted that, for other physical function modules such as the physical function module B, the design method of the integrated circuit provided in at least one embodiment of the present disclosure may also be executed in a similar manner, and details are not repeated here.
In fig. 7A to 7D, each black solid block represents a port, and certainly, the physical function module may further include more ports, and the execution manner is similar, and is not described herein again.
Traversing a plurality of physical function modules, and regarding the physical function modules F and T 1 = physical function module F, power supply PS of physical function module F is obtained from power supply configuration file 1 = X (from "# DEFAULT #" line), all input ports of the physical function module F are traversed.
As shown in FIG. 7A, for input port P in FIG. 7A 1 = P0_ F, determine the driving port P corresponding to the input port P0_ F 2 Obtaining the power supply PS of the physical function module E from the power supply configuration file for the p0_ E port of the physical function module E 2 = X, power down hold value is empty (get from # DEFAULT # line). Because of the PS 1 =PS 2 And thus input port P 1 And a drive port P 2 Belong to the same power domain, do not need to insert and stride voltage bridge module and stride voltage signal channel.
Then, go through to the input port P 1 The processing procedure and the input port p0_ F are not required to be inserted into the cross-voltage bridge module and the cross-voltage signal channel, which is not described herein again.
Then, go through to the input port P 1 = k _ rdy', as shown in fig. 7A, determine the drive port P corresponding to the input port k _ rdy 2 Is located at the K _ rdy port of the physical function module K, so T 2 = physical function moduleK, drive port P 2 = k _ rdy; power supply PS for obtaining physical function module K from power supply configuration file 2 = Z, power down hold value port list [ k _ out0, k _ out1]. Since drive port k _ rdy is not in the port list k _ out0, k _ out1]Thus driving port P 2 Power-down hold value CV of = k _ rdy 2 And =0. Because of the PS 2 !=PS 1 And T 2 !=T 1 Therefore, it is necessary to establish a voltage-spanning signal channel for the input port k _ rdy' and the driving port k _ rdy.
Since no voltage bridge is created between the physical function module K and the physical function module F, a new voltage bridge module is created, named VCB _ F2K _ X2Z, which represents the previous voltage bridge module between the physical function module F and the physical function module K and connects the power domain X and the power domain Z. Creating a cross-voltage bridge module comprises the steps of:
1) A first buffer array X and a second buffer array Z are created in the cross-voltage bridge module VCB _ F2K _ X2Z, located within power domain X and power domain Z, respectively.
2) Acquiring the information of the enabling signal source columns of the power supply X and the power supply Z from the power supply information table of the power supply configuration file: the power supply Z is # AUTO #, so that an enable unit is generated and placed in the power domain X, and the enable unit generates an enable signal to control a power-off isolator or a level conversion isolator from the power domain Z to the power domain X. The enable signal source column for power domain X is empty, indicating that no enable signals need to be prepared for the cross-voltage domain processing units from power domain X to power domain Z.
Then, a voltage-spanning signal path VCC1 is inserted from the physical function module K to the physical function module F for connecting the input port K _ rdy' and the driving port K _ rdy.
As shown in fig. 7A, the cross-voltage signal path VCC1 includes a first buffer unit BUF1 and a second buffer unit BUF2, and a cross-voltage domain processing unit ELS0. According to the power supply information table in the power supply configuration file, the turn-off voltage value of the power supply Z is 0, so that the power supply state of the power supply Z is a power-down state, the turn-on voltage value of the power supply X is 0.8V, the turn-on voltage value of the power supply Z is 0.9V, and the power supply X and the power supply Z are turned onThe starting voltage values are different, so that a level shift isolator is needed to be used by a voltage-crossing domain processing unit in a voltage-crossing signal channel from the power supply Z to the power supply X direction. As previously mentioned, the value CV is maintained due to a power loss 2 =0, therefore an ELS0 type of voltage across processing standard cell is used. And according to the power-down holding value, selecting a cross-voltage processing standard unit LVLDBUFE0 from the cross-voltage domain processing unit list-in type ELS in the power supply configuration file as a cross-voltage domain processing unit of a cross-voltage signal channel VCC1. The enable port of the cross-voltage domain processing unit ELS0 is connected to an enable unit, and the input and output power supplies are connected to the power supply Z and the power supply X, respectively.
Then, go through to the input port P 1 = k _ out1', determine the driving port P corresponding to the input port k _ out1 2 Is located at the K _ out1 port of the physical functional block K, so T 2 = physical function module K, drive port P 2 = k _ out1; power supply PS for obtaining physical function module K from power supply configuration file 2 = Z, power down hold value to port list [ k _ out0, k _ out1]. Since the driving port k _ out1 is located in the port list k _ out0, k _ out1]Thus driving port P 2 Power-down hold value CV of = k _ out1 2 And =1. Because of the PS 2 !=PS 1 And T 2 !=T 1 Therefore, it is necessary to establish a voltage-crossing signal path for the input port k _ out1' and the driving port k _ out 1.
Since a voltage-spanning bridge module (VCB _ F2K _ X2Z) has been created between the physical function module F and the physical function module K, a voltage-spanning signal path VCC2 is established in the voltage-spanning bridge module for the input port K _ out1' and the drive port K _ out 1.
As shown in fig. 7A, the cross-voltage signal path VCC2 includes a first buffer unit BUF3 and a second buffer unit BUF4, and a cross-voltage domain processing unit ELS1. Similar to the cross-voltage signal path VCC1, the cross-voltage domain processing unit employs a level shifting isolator. Value CV maintained due to power down 2 =1, therefore an ELS1 type of voltage-across processing standard cell is used. According to the power-down holding value, selecting a cross-voltage processing standard unit LVLDBUFE1 from the cross-voltage domain processing unit list-in type ELS in the power configuration file asA cross-voltage domain processing unit that is a cross-voltage signal path VCC2. The enable port of the cross-voltage domain processing unit ELS1 is connected to an enable unit, and the input and output power supplies are connected to the power supply Z and the power supply X, respectively.
For the voltage-crossing signal path inserted into the voltage-crossing domain processing standard unit LVLDBUFE1, the input port and the driving port are marked with "_ H" so as to guide the integration tool to insert into a circuit unit of ELS1 type through the power supply intention description file if the voltage-crossing domain processing standard unit is inserted in the integration stage. The same reason in fig. 7B to fig. 7D is not repeated.
And then, continuously executing the process on other input ports of the physical function module F until the traversal of all the input ports of the physical function module F is completed, and then continuously traversing the physical function module K.
For the physical function modules K, T 1 = physical function module K, power supply PS of physical function module K is obtained from power supply configuration file 1 = Z, all input ports of the physical functional module K are traversed.
As shown in fig. 7B, for the input port P 1 = P3_ K, determine the driving port P corresponding to the input port P3_ K 2 Is located at p3_ F port which is a physical function module F, so T 2 = physical function module F, drive port P 2 = p3_ F; power supply PS for obtaining physical function module F from power supply configuration file 2 And = X, the power down hold value is null, indicating that power down isolation protection is not required. Because of the PS 2 !=PS 1 And T 2 !=T 1 Therefore, it is necessary to establish a voltage-crossing signal path for the input port p3_ K and the driving port p3_ F.
Since a voltage-spanning bridge module (VCB _ F2K _ X2Z) has been created between the physical function module F and the physical function module K, a voltage-spanning signal path VCC3 is established in the voltage-spanning bridge module for the input port p3_ K and the drive port p3_ F.
As shown in fig. 7B, the cross-voltage signal path VCC3 includes a first buffer unit BUF5 and a second buffer unit BUF7, and a cross-voltage domain processing unit LS. Since the power state of the power supply X is a non-powerdown state, the cross-voltage domain processing unit may select a level shifter. And selecting the cross-voltage processing standard unit LVLDBUF from the cross-voltage domain processing unit surface type LS in the power supply configuration file as a cross-voltage domain processing unit of the cross-voltage signal channel VCC3. The input and output power supplies of the cross-voltage domain processing unit LS are connected to power supply X and power supply Z, respectively.
Then, go through to the input port P 1 = P2_ K, determine the driving port P corresponding to the input port P2_ K 2 Located at the p2_ F port, which is the physical function module F. As shown in fig. 7B, a voltage-spanning signal channel VCC4 is established for the input port p2_ K and the driving port p2_ F in the voltage-spanning bridge module, and the specific process is similar to the input port p3_ K, which is not described herein again.
Thereafter, with continued reference to FIG. 7C, as shown in FIG. 7C, traversal is made to input port P 1 = h _ in0, and the driving port P corresponding to the input port h _ in0 is determined 2 At the H _ out0 port, which is a physical function block H, so T 2 = physical function module H, drive port P 2 = h _ out0; power supply PS for obtaining physical function module H from power supply configuration file 2 = Y, power-down holding value "# AUTO #" indicating that signal RV output at reset using drive port h _ out0 is used as power-down holding value CV 2 . As shown in fig. 7C, for the driving port h _ out0, RV =1, i.e., the power-down holding value CV 2 And =1. Because of the PS 2 !=PS 1 And T 2 !=T 1 Therefore, it is necessary to establish a voltage-crossing signal path for the input port h _ in0 and the driving port h _ out0.
Since no voltage bridge is created between the physical function module K and the physical function module H, a new voltage bridge module is created, named VCB _ H2K _ Y2Z, which represents the previous voltage bridge module between the physical function module H and the physical function module K and connects the power domain Y and the power domain Z. Creating a cross-voltage bridge module comprises the steps of:
1) As shown in FIG. 7C, a first buffer array Y and a second buffer array Z are created in the cross-voltage bridge module VCB _ F2K _ X2Z, within power domain Y and power domain Z, respectively.
2) As shown in fig. 7C, the information of the enable signal source columns of power Y and power Z is obtained from the power information table of the power profile: the power supply Z is # AUTO #, so that an enabling unit is generated and placed in the power domain Y, and the enabling unit generates an enabling signal to control a power-off isolator or a level conversion isolator from the power domain Z to the power domain Y. The enable signal source column of power domain Y is VDD _ Y _ ISOn, which represents an external input from power domain Y, for example, from physical function module K, and the enable signal Y _ ISOn controls a power-down isolator or a level shift isolator from power domain Y to power domain Z.
Then, a voltage-spanning signal channel VCC5 is inserted from the physical function block H to the physical function block K for connecting the input port H _ in0 and the driving port H _ out0.
As shown in fig. 7C, the cross-voltage signal path VCC5 includes a first buffer unit BUF1 and a second buffer unit BUF2, and a cross-voltage domain processing unit ELS1. According to a power supply information table in a power supply configuration file, the closing voltage values of a power supply Z and a power supply Y are 0, so that the power supply states of the power supply Z and the power supply Y are both in a power-down state, the opening voltage value of the power supply Y is 0.6V, the opening voltage value of the power supply Z is 0.9V, and the opening voltage values of the power supply Y and the power supply Z are different, so that a cross-voltage domain processing unit in a cross-voltage signal channel from the power supply Z to the power supply Y and from the power supply Y to the power supply Z needs to use a level conversion isolator. As previously mentioned, the value CV is maintained due to the power down of the drive port h _ out0 2 =1, therefore an ELS1 type of voltage-across processing standard cell is used. And according to the power-down holding value, selecting a cross-voltage processing standard unit LVLDBUFE1 from a cross-voltage domain processing unit list-in type ELS in the power supply configuration file as a cross-voltage domain processing unit of a cross-voltage signal channel VCC 5. The enabling port of the cross-voltage domain processing unit ELS1 is connected to the external input port Y _ ISOn, and the input and output power supplies are respectively connected to the power supply Y and the power supply Z.
Then, as shown in FIG. 7C, traverse to input port P 1 = h _ in1, and the driving port P corresponding to the input port h _ in1 is determined 2 At the H _ out1 port, which is a physical functional block H, so T 2 = physical function module H, drive port P 2 =hOut1; power supply PS for obtaining physical function module H from power supply configuration file 2 = Y, power-down holding value "# AUTO #" indicating that signal RV output at reset using drive port h _ out0 is used as power-down holding value CV 2 . As shown in fig. 7C, RV =0, i.e., the power-down retention value CV, for the driving port h _ out1 2 =0. Because of the PS 2 !=PS 1 And T 2 !=T 1 Therefore, it is necessary to establish a voltage-crossing signal path for the input port h _ in1 and the driving port h _ out 1.
Since a voltage-spanning bridge module (VCB _ H2K _ Y2Z) has been created between the physical function module H and the physical function module K, a voltage-spanning signal path VCC6 is established in the voltage-spanning bridge module for the input port H _ in1 and the driving port H _ out 1.
As shown in fig. 7C, the cross-voltage signal path VCC6 includes a first buffer unit BUF3 and a second buffer unit BUF4, and a cross-voltage domain processing unit ELS0. Similar to the cross-voltage signal path VCC5, the cross-voltage domain processing unit employs a level shifting isolator. Value CV maintained due to power down 2 =0, therefore an ELS0 type of voltage across processing standard cell is used. And according to the power-down holding value, selecting a cross-voltage processing standard unit LVLDBUFE0 from the cross-voltage domain processing unit list-in type ELS in the power supply configuration file as a cross-voltage domain processing unit of a cross-voltage signal channel VCC6. The enabling port of the cross-voltage domain processing unit ELS0 is connected to the external input port Y _ ISOn, and the input and output power supplies are respectively connected to the power supply Y and the power supply Z.
And then, continuously executing the process on other input ports of the physical function module K until the traversal of all the input ports of the physical function module K is completed, and then continuously traversing the physical function module H.
For the physical function blocks H, T 1 = physical function module H, power supply PS of physical function module H is obtained from power supply configuration file 1 = Y, traverse all input ports of the physical functional module H.
With continued reference to FIG. 7D, for input port P 1 = k _ in0, and the driving port P corresponding to the input port k _ in0 is determined 2 Located as a physical functionK _ out0 port of module K, therefore T 2 = physical function module K, drive port P 2 = k _ out0; power supply PS for obtaining physical function module K from power supply configuration file 2 = Z, power down hold value port list [ k _ out0, k _ out1]. Since the drive port k _ out0 is in the port list k _ out0, k _ out1]Thus driving port P 2 Power-down hold value CV of = k _ out0 2 And =1. Because of the PS 2 !=PS 1 And T 2 !=T 1 Therefore, it is necessary to establish a cross-voltage signal path for the input port k _ in0 and the driving port k _ out0.
Since a voltage-spanning bridge module (VCB _ H2K _ Y2Z) has been created between the physical function module H and the physical function module K, a voltage-spanning signal path VCC7 is established in the voltage-spanning bridge module for the input port K _ in0 and the driving port K _ out0.
As shown in fig. 7D, the cross-voltage signal path VCC7 includes a first buffer unit BUF5 and a second buffer unit BUF6, and a cross-voltage domain processing unit ELS1. Similar to the cross-voltage signal path VCC6, the cross-voltage domain processing unit employs a level shifting isolator. Value CV maintained due to power down 2 =1, therefore an ELS1 type of voltage-across processing standard cell is used. And according to the power-down holding value, selecting a cross-voltage processing standard unit LVLDBUFE1 from the cross-voltage domain processing unit list-in type ELS in the power supply configuration file as a cross-voltage domain processing unit of a cross-voltage signal channel VCC7. The enabling port of the cross-voltage domain processing unit ELS1 is connected to the enabling unit in the power domain Y, and the input and output power supplies are respectively connected to the power supply Z and the power supply Y.
And then, continuously executing the process on other input ports of the physical function module H until the traversal of all the input ports of the physical function module H is completed, and continuously traversing the next physical function module until all the physical function modules are traversed to obtain the updated register transmission level description file.
After the updated register transmission level description file is obtained, all the physical function modules and the cross-voltage bridge modules in the updated RTL file can be traversed, and the power supply intention description subfiles of all the physical function modules and the cross-voltage bridge modules are automatically generated by combining the power supply configuration file.
Fig. 8A-8C are schematic diagrams of a power intent description subfile provided by at least one embodiment of the present disclosure.
Fig. 8A is a power supply intention description subfile for the physical function module F.
As shown in fig. 8A, since the physical function module F is a single power domain (powered only by the power source X), the power intent description subfile of the physical function module F contains only three main parts, the power network definition, the power domain definition, and the power state table.
As shown in fig. 8A, the power network part describes the power information of the physical function module F, which can be obtained according to the power configuration file of table 2. For example, power lines, power networks, power ports, etc. are defined as power X, where VSS is a ground port, which is the same for all physical functional modules. The power pack (supply set) is automatically generated based on the power and ground signals.
As shown in fig. 8A, the power domain part describes the power domain of the physical function module F, and is also directly available according to the power configuration file of table 2, for example, because the physical function module F is a single power domain function module, its main power is connected to a unique power pack (SS _ X).
As shown in fig. 8A, the power status table part describes all power status combinations in the physical function module F, and can be obtained according to the power information table in the power configuration file. Wherein "-supply" defines the state of the power supply line in which the value of the ON voltage of the power supply X is defined to be 0.8V; "-domain" defines the state of the power domain, which is determined according to the power line state; "-group" defines a power state table, which is determined according to the power domain state.
Fig. 8B is a power supply intention description subfile of the physical function module K.
As shown in FIG. 8B, since the physical function module K is a single power domain (powered only by the power supply Z), the power intent description subfile for the physical function module K contains only three main parts, the power network definition, the power domain definition, and the power state table.
The power intention description subfile of the physical function module K is similar to the power intention description subfile of the physical function module F except that the power names are different, and the power state of the power Z is a power-down capable state, so that when a power state table is defined, two states of ON (ON) and OFF (OFF) exist, and repeated parts are not described again.
The power supply intention description subfiles of other physical function modules are similar to the power supply intention description subfiles of the physical function module K and the physical function module F, and are not described in detail herein.
FIG. 8C is a power supply intent description subfile across the voltage bridge module VCB _ H2K _ Y2Z. The power supply intent description subfiles of the other bridge modules are similar and will not be described in detail here.
As shown in fig. 8C, since the cross-voltage bridge module VCB _ H2K _ Y2Z is a multi-power domain (powered by power supply Z and power supply Y), the power intent description subfile of the cross-voltage bridge module VCB _ H2K _ Y2Z contains four main parts of power network definition, power domain definition, power status table, and cross-voltage domain policy.
As shown in fig. 8C, the power network portion describes power information across the voltage bridge module VCB _ H2K _ Y2Z. The power supplies for this are power supply Y and power supply Z, known from "Y2Z" in its name. The power supply information of power supply Y and power supply Z can be obtained according to the power supply configuration files in Table 2. For example, the power network portion defines two power ports that create power Y and Z and corresponding power lines. The power pack (supply set) is automatically generated based on the power and ground signals.
As shown in FIG. 8C, the voltage bridge module named has two power sources connected to it, power Y and power Z, respectively, thus creating two power domains, PD _ Y and PD _ Z. As shown in fig. 8C, the power domain PD _ Y includes a first buffer array Y and an enable unit, whose primary power (primary) is the power supply group SS _ Y; the power domain PD _ Z contains the other remaining units, such as the second buffer array Z, whose primary power (primary) is the power pack SS _ Z.
As shown in FIG. 8C, the power state table portion describes all power state combinations across the voltage bridge module VCB _ H2K _ Y2Z. According to the power information table in the power profile, the turn-ON voltage values of power Y and power Z are 0.6V and 0.9V, respectively, both of which can be powered down, so that each power has two states (ON and OFF), and the two power domains have four combined states (ON-ON, ON-OFF, OFF-ON, OFF) in total.
As shown in FIG. 8C, the cross-voltage domain policy section describes the insertion policy of the cross-voltage domain processing unit, and the relevant information comes from the power supply profile and the internal design of the cross-voltage bridge module VCB _ H2K _ Y2Z.
Referring to table 1, since both the power Y and the power Z may be powered down and the turn-on voltage values are different, a cross-voltage domain processing unit using an ELS type (level shift isolator) is required, and the level shift isolator includes two types of ELS0 and ELS1, as shown in fig. 8C, four isolation policies may be defined using a set _ isolation command, which are respectively used to describe two policies of inserting the cross-voltage domain processing unit using ELS0 (ISO 0_ Y2Z in fig. 8C) and ELS1 (ISO 1_ Y2Z in fig. 8C) from the power Y to the power Z direction, and two policies of inserting the cross-voltage domain processing unit using ELS0 (ISO 0_ Z2Y in fig. 8C) and ELS1 (ISO 1_ Z2Y in fig. 8C) from the power Z to the power Y direction.
For example, using ISO1_ Y2Z in fig. 8C as an example, a defined insertion policy from power Y to power Z is explained.
ISO1_ Y2Z defines the case where the standard cell is processed across the voltage domain using ELS1 type from power Y to power Z. Since the policy defined by ISO1_ Y2Z is used to protect power domains from being in a powered down state to being in an ON state, i.e., applied to a scenario where power Y is in a powered down state (OFF) and power Z is in an ON-fill (ON).
As shown in fig. 8C, the set _ isolation command includes the following main parameters:
"clamp _ value" indicates that the power down hold value is 1, i.e., that a cross-voltage processing standard cell of the ELS1 type needs to be used. The enable _ sense indicates an active level of the enable signal, which should be a Low level (Low) as can be seen from table 1. "iso _ signal" indicates the source of the enable signal, Y _ ISOn, which is available from the enable signal source column in Table 1. "isolation _ supply" indicates the source of power supply, and "isolation _ supply" selects "SS _ Z" because it is the direction of power Y to power Z, which is in a powered down state and power Z is in an on state. The "elements" indicate which signals need to use the strategy, and according to the process of inserting the cross-voltage bridge module, all signals that need to have the power-down holding value of 1 end with a suffix, so the elements are all output ports in the first buffer array Y _ Bufs that end with "_ H", i.e., Y _ Bufs/_ H.
"use _ interface _ cell" is used to tell the synthesis tool which of the cross-voltage domain processing units can be used to process the four policies for inserting the cross-voltage domain processing units defined above, because both the power supply Y and the power supply Z can be powered down, an ELS-type cross-voltage domain processing unit needs to be used, and the cross-voltage domain processing unit table is queried from the power supply configuration file to obtain the value of the "lib _ cell" option, for example, "lib _ cell" is { lvdbufe 0 lvdvue 1}.
Therefore, in the embodiment, a cross-voltage bridge module can be automatically inserted between any two physical functional modules needing cross-voltage domain communication in the integrated circuit, and the cross-voltage bridge module is used for providing level conversion and/or power-down isolation protection for the two physical functional modules, so that the physical functional modules all maintain a single power domain functional module, only the cross-voltage bridge module is a multi-voltage domain functional module, and the scale of the cross-voltage domain module is far smaller than that of the physical functional module, and therefore, the time for integration, physical implementation and low-power verification brought by multi-voltage design can be greatly reduced. And the cross-voltage domain processing unit is automatically inserted into the cross-voltage bridge module, and the cross-voltage bridge module is not required to be integrated, so that the integration time can be further reduced, and the iteration time caused by modification requirements or modification problems in chip design is shortened.
In addition, the scheme can automatically generate the power supply intention description file of the integrated circuit, greatly reduces the labor and time cost, and improves the efficiency and the accuracy of multi-voltage design.
At least one embodiment of the present disclosure further provides a device for designing an integrated circuit, and fig. 9 is a schematic block diagram of the device for designing an integrated circuit according to at least one embodiment of the present disclosure.
For example, the integrated circuit includes a plurality of physical functional modules including a first physical functional module and a second physical functional module. For the related contents of the physical function module, the first physical function module and the second physical function module, reference may be made to the description of the design method of the integrated circuit, and repeated descriptions are omitted.
As shown in fig. 9, the apparatus 100 for designing an integrated circuit may include: an acquisition unit 101 and an insertion unit 102.
For example, these units may be implemented by a hardware (e.g., circuit) module, a software module, or any combination of the two, and the following embodiments are the same and will not be described again. These units may be implemented, for example, by a Central Processing Unit (CPU), a data processor (GPU), a Tensor Processor (TPU), a Field Programmable Gate Array (FPGA) or other form of processing unit having data processing and/or instruction execution capabilities and corresponding computer instructions.
An obtaining unit 101 configured to obtain a power supply configuration file and a register transfer level description file of the integrated circuit.
The inserting unit 102 is configured to, in response to the existence of the cross-voltage domain communication between the first physical function module and the second physical function module, insert a cross-voltage bridge module between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file to obtain an updated register transfer level description file.
For example, in the updated register transfer level description file, the voltage-spanning bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are both single-power-domain functional modules, and the voltage-spanning bridge module is used for providing level conversion and/or power-down isolation protection for voltage-spanning domain communication between the first physical functional module and the second physical functional module.
For example, the insertion unit 102 includes a create subunit, and an add subunit.
For example, the creation subunit is configured to create a cross-voltage bridge module according to the power supply profile.
The establishing subunit is configured to establish, in the voltage-spanning bridge module, a voltage-spanning signal channel for a port for performing voltage-spanning domain signal transmission between the first physical function module and the second physical function module according to the power supply configuration file.
The adding subunit is configured to add a voltage-spanning bridge module to a corresponding position in the register transfer level description file to obtain an updated register transfer level description file.
For example, the creating subunit, when executing creating the cross-voltage bridge module according to the power supply profile, includes performing the following operations: according to the power supply configuration file, a first buffer array and a second buffer array are created, wherein the first buffer array is located in a first power supply domain, the second buffer array is located in a second power supply domain, and the first buffer array and the second buffer array are used for providing buffer units; determining whether a cross-voltage domain processing unit between a first physical function module and a second physical function module needs an enable signal and an enable signal source according to power supply information of a first power supply and power supply information of a second power supply, wherein the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for a port which carries out cross-voltage domain communication between the first physical function module and the second physical function module; in response to the enable signal source indicating that the enable signal is from across the voltage bridge module, an enable unit is created in the respective power domain to provide the enable signal.
For example, when the establishing subunit performs, according to the power supply configuration file, establishing a voltage-crossing signal channel for a port in the voltage-crossing bridge module, where signal transmission is performed between the first physical function module and the second physical function module in the voltage-crossing domain, the following operations are performed: determining at least one pair of voltage domain crossing ports for carrying out voltage domain crossing signal transmission between a first physical function module and a second physical function module, wherein each pair of voltage domain crossing ports comprises a first port positioned on the first physical function module and a second port positioned on the second physical function module, the first port and the second port are connected and carry out data communication, and the first port and the second port are positioned on the same level in an integrated circuit; according to the power supply configuration file, in the voltage-spanning bridge module, a voltage-spanning signal channel is established between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports.
For example, the voltage-crossing signal path includes a first buffer unit located in the first buffer array, a second buffer unit located in the second buffer array, and a voltage-crossing domain processing unit located between the first buffer unit and the second buffer unit, and the voltage-crossing domain processing unit is configured to provide level shifting and/or power down isolation protection for the first port and the second port.
For example, the establishing subunit, when establishing, in the cross-voltage bridge module, a cross-voltage signal channel between each pair of cross-voltage domain ports for connecting the first port and the second port of each pair of cross-voltage domain ports according to the power supply configuration file, includes performing the following operations: acquiring a first buffer unit positioned in a first buffer array and a second buffer unit positioned in a second buffer array; connecting a first buffer unit with a first port, and connecting a second buffer unit with a second port; determining a voltage-crossing domain processing unit positioned between a first buffer unit and a second buffer unit according to the voltage value configuration, the power supply state and the power-down holding value of the first power supply and the second power supply; electrically connecting a cross-voltage domain processing unit with a first power supply and a second power supply; the enable ports of the cross-voltage domain processing units are connected with corresponding enable units in the cross-voltage bridge modules in response to the enable signals of the cross-voltage domain processing units coming from the cross-voltage bridge modules.
For example, when the establishing subunit executes the configuration according to the voltage values of the first power supply and the second power supply, the power supply state and the power-down holding value, and the establishing subunit constructs the processing unit across the voltage domain, the establishing subunit performs the following operations: determining the type of a cross-voltage-domain processing unit according to the voltage value configuration and the power state of the first power supply and the second power supply; and selecting a corresponding cross-voltage domain processing standard unit under the type of the cross-voltage domain processing unit to be inserted between the first buffer unit and the second buffer unit according to the power-down holding values of the first power supply and the second power supply.
For example, the buffer unit is in the form of a buffer, register, or FIFO queue.
For example, types of cross-voltage domain processing units include level shifters, power down isolators, and level shift isolators, the level shifters configured to perform level shifting; the power-down isolator is configured to perform power-down isolation protection; the level shifting isolator is configured to perform level shifting and power down isolation protection.
For example, as shown in fig. 9, the apparatus 100 for designing an integrated circuit may further include: a determination unit 103.
The determining unit 103 is configured to determine whether there is a cross-voltage domain communication between the first physical function module and the second physical function module according to the power supply profile.
For example, when the determining unit 103 performs determining whether cross-voltage domain communication exists between the first physical function module and the second physical function module according to the power supply configuration file, the following operations are performed: determining a first power domain where the first physical function module is located and a second power domain where the second physical function module is located according to the power configuration information of the first physical function module and the power configuration information of the second physical function module; and determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power supply and the power information of the second power supply.
For example, when the determining unit 103 performs the determination of whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power and the power information of the second power, the following operations are performed: determining that the first physical function module and the second physical module do not belong to the same power domain in response to at least one of a difference in voltage value configuration and power state of the first power supply and the second power supply; and determining that the first physical function module and the second physical module belong to the same power domain in response to the fact that the voltage value configuration and the power state of the first power supply and the second power supply are the same.
For example, as shown in fig. 9, the apparatus 100 for designing an integrated circuit may further include: a generating unit 104.
For example, the generation unit 104 is configured to generate a power intention description file for the integrated circuit from the power configuration file and the updated register transfer level description file.
For example, when the generation unit 104 executes the generation of the power intention description file of the integrated circuit according to the power configuration file and the updated register transfer level description file, the following operations are performed: generating a first power supply intention description subfile corresponding to the first physical function module according to the power supply configuration file, wherein the first power supply intention description subfile comprises a power supply network definition of a first power supply domain, a power supply domain definition of the first power supply domain and a power supply state table describing a power supply state combination of the first power supply domain; generating a second power supply intention description subfile corresponding to the second physical function module according to the power supply configuration file, wherein the second power supply intention description subfile comprises a power supply network definition of a second power supply domain, a power supply domain definition of the second power supply domain and a power supply state table describing a power supply state combination of the second power supply domain; generating a third power supply intention description subfile corresponding to the voltage-crossing bridge module according to the power supply configuration file, wherein the third power supply intention description subfile comprises power supply network definitions of the first power supply and the second power supply, power supply domain definitions of the first power supply domain and the second power supply domain, a power supply state table describing power supply state combinations of the first power supply domain and the second power supply domain, and a voltage-crossing policy of the voltage-crossing bridge module; and generating a power intention description file of the integrated circuit according to the first power intention description subfile, the second power intention description subfile and the third power intention description subfile.
For example, when the generating unit 104 executes the third power intention description subfile corresponding to the cross-voltage bridge module according to the power configuration file, the following operations are executed: determining that the cross-voltage bridge module is connected with the first voltage domain and the second voltage domain according to the name of the cross-voltage bridge module; and generating a third power supply intention description subfile according to the power supply information of the first power supply and the power supply information of the second power supply in the power supply configuration file.
For example, the design apparatus 100 of an integrated circuit may further include an integration unit (not shown in fig. 9).
And the synthesis unit is configured to synthesize the updated register transmission level description file according to the power supply intention description file and the updated register transmission level description file, wherein in the synthesis process, in response to that no trans-voltage domain processing unit is inserted into at least one trans-voltage signal channel in the trans-voltage bridge module, the trans-voltage domain processing unit is respectively inserted into at least one trans-voltage signal channel according to the power supply intention description file.
In addition, the design apparatus 100 of the integrated circuit can achieve similar technical effects to those of the design method of the integrated circuit, and will not be described herein again.
It should be noted that, in the embodiment of the present disclosure, the design apparatus 100 of the integrated circuit may include more or less circuits or units, and the connection relationship between the respective circuits or units is not limited and may be determined according to actual requirements. The specific configuration of each circuit or unit is not limited, and may be configured by an analog device, a digital chip, or other suitable configurations according to the circuit principle.
At least one embodiment of the present disclosure further provides an electronic device, and fig. 10 is a schematic diagram of an electronic device provided in at least one embodiment of the present disclosure.
For example, as shown in fig. 10, the electronic device includes a processor 201, a communication interface 202, a memory 203, and a communication bus 204. The processor 201, the communication interface 202, and the memory 203 communicate with each other through the communication bus 204, and the components such as the processor 201, the communication interface 202, and the memory 203 may communicate with each other through a network connection. The present disclosure is not limited herein as to the type and function of the network. It should be noted that the components of the electronic device shown in fig. 10 are only exemplary and not limiting, and the electronic device may have other components according to the actual application.
For example, memory 203 is used to store computer readable instructions non-transiently. The processor 201 is configured to execute computer readable instructions to implement a method for designing an integrated circuit according to any of the above embodiments. For specific implementation and related explanation of each step of the design method of the integrated circuit, reference may be made to the above-mentioned embodiment of the design method of the integrated circuit, which is not described herein again.
For example, other implementations of the design method of the integrated circuit implemented by the processor 201 executing the computer readable instructions stored in the memory 203 are the same as the implementations mentioned in the foregoing method embodiment, and are not described herein again.
For example, the communication bus 204 may be a peripheral component interconnect standard (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
For example, the communication interface 202 is used to enable communication between the electronic device and other devices.
For example, the processor 201 may control other components in the electronic device to perform desired functions. The processor 201 may be a device having data processing capability and/or program execution capability, such as a Central Processing Unit (CPU), a Network Processor (NP), a Tensor Processor (TPU), or a Graphics Processing Unit (GPU); but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The Central Processing Unit (CPU) may be an X86 or ARM architecture, etc.
For example, memory 203 may comprise any combination of one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and/or non-volatile memory. Volatile memory can include, for example, random Access Memory (RAM), cache memory (or the like). The non-volatile memory may include, for example, read Only Memory (ROM), a hard disk, an Erasable Programmable Read Only Memory (EPROM), a portable compact disc read only memory (CD-ROM), USB memory, flash memory, and the like. One or more computer-readable instructions may be stored on the computer-readable storage medium and executed by the processor 201 to implement various functions of the electronic device. Various application programs and various data and the like can also be stored in the storage medium.
For example, the detailed description of the process of executing the data processing by the electronic device may refer to the related description in the embodiment of the design method of the integrated circuit, and the repeated parts are not described again.
Fig. 11 is a schematic diagram of a non-transitory computer-readable storage medium according to at least one embodiment of the disclosure. For example, as shown in fig. 11, the storage medium 300 may be a non-transitory computer-readable storage medium, on which one or more computer-readable instructions 301 may be non-temporarily stored on the storage medium 300. For example, the computer readable instructions 301, when executed by a processor, may perform one or more steps in a design method according to an integrated circuit as described above.
For example, the storage medium 300 may be applied to the electronic device described above, and for example, the storage medium 300 may include a memory in the electronic device.
For example, the storage medium may include a memory card of a smart phone, a storage component of a tablet computer, a hard disk of a personal computer, a Random Access Memory (RAM), a Read Only Memory (ROM), an Erasable Programmable Read Only Memory (EPROM), a portable compact disc read only memory (CD-ROM), a flash memory, or any combination of the above, as well as other suitable storage media.
For example, the description of the storage medium 300 may refer to the description of the memory in the embodiment of the electronic device, and repeated descriptions are omitted.
Those skilled in the art will appreciate that the disclosure of the present disclosure is susceptible to numerous variations and modifications. For example, the various devices or components described above may be implemented in hardware, or may be implemented in software, firmware, or a combination of some or all of the three.
Further, while the present disclosure makes various references to certain elements of a system according to embodiments of the present disclosure, any number of different elements may be used and run on a client and/or server. The units are merely illustrative and different aspects of the systems and methods may use different units.
Flow charts are used in this disclosure to illustrate steps of methods according to embodiments of the disclosure. It should be understood that the preceding and following steps are not necessarily performed in the exact order in which they are performed. Rather, various steps may be processed in reverse order or simultaneously. Also, other operations may be added to the processes.
It will be understood by those skilled in the art that all or part of the steps of the above methods may be implemented by instructing the relevant hardware through a computer program, and the program may be stored in a computer readable storage medium, such as a read-only memory, a magnetic or optical disk, and the like. Alternatively, all or part of the steps of the above embodiments may be implemented using one or more integrated circuits. Accordingly, each module/unit in the above embodiments may be implemented in the form of hardware, and may also be implemented in the form of a software functional module. The present disclosure is not limited to any specific form of combination of hardware and software.
Unless otherwise defined, all terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
The foregoing is illustrative of the present disclosure and is not to be construed as limiting thereof. Although a few exemplary embodiments of this disclosure have been described, those skilled in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this disclosure. Accordingly, all such modifications are intended to be included within the scope of this disclosure as defined in the claims. It is to be understood that the foregoing is illustrative of the present disclosure and is not to be construed as limited to the specific embodiments disclosed, and that modifications to the disclosed embodiments, as well as other embodiments, are intended to be included within the scope of the appended claims. The present disclosure is defined by the claims and their equivalents.

Claims (28)

1. A method of designing an integrated circuit, wherein the integrated circuit comprises a plurality of physical functional modules, the plurality of physical functional modules comprising a first physical functional module and a second physical functional module,
the design method comprises the following steps:
acquiring a power supply configuration file and a register transmission level description file of the integrated circuit;
in response to the first physical function module and the second physical function module having cross-voltage domain communication, inserting a cross-voltage bridge module between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file to obtain an updated register transfer level description file;
in the updated register transfer level description file, the cross-voltage bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are both single-power-domain functional modules, and the cross-voltage bridge module is used for providing level conversion and/or power-down isolation protection for cross-voltage-domain communication between the first physical functional module and the second physical functional module.
2. The design method of claim 1, wherein inserting a voltage-spanning bridge module between the first physical function module and the second physical function module according to the power configuration file and the register transfer level description file to obtain an updated register transfer level description file comprises:
creating a voltage bridge module according to the power supply configuration file;
according to the power supply configuration file, establishing a voltage-crossing signal channel for a port for performing voltage-crossing domain signal transmission between the first physical function module and the second physical function module in the voltage-crossing bridge module;
and adding the voltage-spanning bridge module at a corresponding position in the register transmission level description file to obtain the updated register transmission level description file.
3. The design method of claim 2, wherein the power profile includes power information of a first power source that supplies power to a first power domain in which the first physical function module is located, and power information of a second power source that supplies power to a second power domain in which the second physical function module is located,
creating a voltage-spanning bridge module from the power supply profile, comprising:
according to the power configuration file, creating a first buffer array and a second buffer array, wherein the first buffer array is located in the first power domain, the second buffer array is located in the second power domain, and the first buffer array and the second buffer array are used for providing buffer units;
determining whether a cross-voltage domain processing unit between the first physical function module and the second physical function module needs an enable signal and an enable signal source according to the power supply information of the first power supply and the power supply information of the second power supply, wherein the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for a port performing cross-voltage domain communication between the first physical function module and the second physical function module;
in response to the enable signal source indicating that the enable signal is from the voltage-spanning bridge module, an enable unit is created in a respective power domain to provide the enable signal.
4. The design method of claim 2, wherein establishing a cross-voltage signal path in the cross-voltage bridge module for a port for cross-voltage domain signaling between the first physical function module and the second physical function module according to the power supply profile comprises:
determining at least one pair of voltage domain crossing ports for signal transmission between the first physical function module and the second physical function module in a voltage domain crossing manner, wherein each pair of voltage domain crossing ports comprises a first port located in the first physical function module and a second port located in the second physical function module, the first port and the second port are connected and in data communication, and the first port and the second port are located on the same level in the integrated circuit;
establishing, in the voltage-spanning bridge module, a voltage-spanning signal channel between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports according to the power supply configuration file.
5. The design method of claim 4, wherein the cross-voltage signal path comprises a first buffer unit located in a first buffer array, a second buffer unit located in a second buffer array, and a cross-voltage domain processing unit located between the first buffer unit and the second buffer unit,
the cross-voltage domain processing unit is used for providing level conversion and/or power down isolation protection for the first port and the second port.
6. The design method of claim 5, wherein the configuration file includes power configuration information of the first physical function module and power configuration information of the second physical function module,
the power configuration information of the first physical function module comprises a name of a first power supply for supplying power to the first physical function module and a power-down holding value expected to be output when the first power supply is in a power-down state,
the power supply information of the first power supply includes a voltage value configuration and a power supply state of the first power supply, the power supply information of the second power supply includes a voltage value configuration and a power supply state of the second power supply,
establishing, in the voltage-spanning bridge module, a voltage-spanning signal path between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports according to the power supply profile, including:
acquiring the first buffer unit positioned in the first buffer array and the second buffer unit positioned in the second buffer array;
connecting the first buffer unit with the first port, and connecting the second buffer unit with the second port;
determining the voltage-crossing domain processing unit between the first buffer unit and the second buffer unit according to the voltage value configuration, the power state and the power-down holding value of the first power supply and the second power supply;
electrically connecting the cross-voltage domain processing unit with the first power supply and the second power supply;
connecting the enable port of the cross-voltage domain processing unit with a corresponding enable unit in the cross-voltage bridge module in response to the enable signal of the cross-voltage domain processing unit coming from the cross-voltage bridge module.
7. The design method of claim 6, wherein the power supply profile further includes a type of the across-voltage-domain processing unit, and a name of a across-voltage-domain processing standard unit for each type,
determining the voltage-domain-crossing processing unit located between the first buffer unit and the second buffer unit according to the voltage value configuration, the power state and the power-down holding value of the first power supply and the second power supply, including:
determining the type of the voltage-crossing domain processing unit according to the voltage value configuration and the power state of the first power supply and the second power supply; and
and selecting a corresponding cross-voltage domain processing standard unit under the type of the cross-voltage domain processing unit to be inserted between the first buffer unit and the second buffer unit according to the power-down holding values of the first power supply and the second power supply.
8. The design method of claim 3, wherein the buffer unit is in the form of a buffer, a register, or a FIFO queue.
9. The design method of claim 7, wherein the types of cross-voltage domain processing units include a level shifter, a power down isolator, and a level shifting isolator,
the level shifter is configured to perform level shifting;
the power-down isolator is configured to perform power-down isolation protection;
the level shift isolator is configured to perform level shift and power down isolation protection.
10. The design method of claim 1, further comprising:
determining whether cross-voltage domain communication exists between the first physical function module and the second physical function module according to the power supply configuration file.
11. The design method of claim 10, wherein the power profile includes power information of a first power source that supplies power to a first power domain in which the first physical function module is located, and power information of a second power source that supplies power to a second power domain in which the second physical function module is located,
the power configuration file further comprises power configuration information of the first physical function module and power configuration information of the second physical function module,
determining whether cross-voltage domain communication exists between the first physical function module and the second physical function module according to the power supply configuration file, including:
determining a first power domain where the first physical function module is located and a second power domain where the second physical function module is located according to the power configuration information of the first physical function module and the power configuration information of the second physical function module;
and determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power supply and the power information of the second power supply.
12. The design method of claim 11, wherein the power information of the first power source includes a voltage value configuration and a power state of the first power source, the power information of the second power source includes a voltage value configuration and a power state of the second power source, the power state includes a power-down capable state or a power-down incapable state,
determining whether the first physical function module and the second physical module belong to the same power domain according to the power information of the first power supply and the power information of the second power supply, including:
determining that the first physical function module and the second physical function module do not belong to the same power domain in response to at least one of a difference in voltage value configuration and power state of the first power supply and the second power supply;
and determining that the first physical function module and the second physical function module belong to the same power domain in response to the fact that the voltage value configuration and the power state of the first power supply and the second power supply are the same.
13. The design method of any one of claims 1-12, further comprising:
and generating a power supply intention description file of the integrated circuit according to the power supply configuration file and the updated register transmission level description file.
14. The design method of claim 13, wherein the updated register transfer level description file includes the first physical function module, the second physical function module, and the voltage-spanning bridge module,
the power configuration file comprises power information of a first power supply for supplying power to a first power domain where the first physical function module is located and power information of a second power supply for supplying power to a second power domain where the second physical function module is located,
the power configuration file further comprises power configuration information of the first physical function module and power configuration information of the second physical function module,
generating a power intention description file of the integrated circuit according to the power configuration file and the updated register transfer level description file, including:
generating a first power intention description subfile corresponding to the first physical function module according to the power configuration file, wherein the first power intention description subfile comprises a power network definition of the first power domain, a power domain definition of the first power domain and a power state table describing power state combinations of the first power domain;
generating a second power intention description subfile corresponding to the second physical function module according to the power configuration file, wherein the second power intention description subfile comprises a power network definition of the second power domain, a power domain definition of the second power domain and a power state table describing power state combinations of the second power domain;
generating a third power supply intention description subfile corresponding to the voltage-crossing bridge module according to the power supply configuration file, wherein the third power supply intention description subfile comprises power supply network definitions of the first power supply and the second power supply, power supply domain definitions of the first power supply domain and the second power supply domain, a power supply state table describing power supply state combinations of the first power supply domain and the second power supply domain, and a voltage-crossing domain policy of the voltage-crossing bridge module;
generating a power intent description file for the integrated circuit from the first, second, and third power intent description subfiles.
15. The design method of claim 14, wherein the naming of the cross-voltage bridge module in the post-update register transfer level description file indicates that the cross-voltage bridge module connects the first power domain and the second power domain;
generating a third power supply intention description subfile corresponding to the cross-voltage bridge module according to the power supply configuration file, wherein the third power supply intention description subfile comprises:
determining that the cross-voltage bridge module connects the first voltage domain and the second voltage domain according to the name of the cross-voltage bridge module;
and generating the third power supply intention description subfile according to the power supply information of the first power supply and the power supply information of the second power supply in the power supply configuration file.
16. The design method of claim 13, further comprising:
synthesizing the updated register transfer level description file according to the power supply intention description file and the updated register transfer level description file,
in the synthesis process, in response to that no voltage domain crossing processing unit is inserted into at least one voltage domain crossing signal channel in the voltage bridge module, inserting a voltage domain crossing processing unit into the at least one voltage domain crossing signal channel according to the power supply intention description file.
17. The design method according to any one of claims 1 to 12, wherein the power supply profile includes power supply information of a first power supply that supplies power to a first power supply domain in which the first physical function module is located, and power supply information of a second power supply that supplies power to a second power supply domain in which the second physical function module is located,
the power supply information comprises a power supply name, voltage value configuration, a power supply state, an enabling signal source and an enabling signal effective level, wherein the power supply state comprises a power-down state or a power-down-incapable state;
the power configuration file further comprises power configuration information of the first physical function module and power configuration information of the second physical function module,
the power configuration information of the first physical function module comprises the name of the first power supply and a power-down holding value expected to be output when the first power supply is in a power-down state,
the power supply configuration information of the second physical function module comprises the name of the second power supply and a power-down holding value expected to be output when the second power supply is in a power-down state;
the power supply configuration file also comprises types of the cross-voltage domain processing units and names of the cross-voltage domain processing standard units under each type.
18. A design apparatus for an integrated circuit, wherein the integrated circuit comprises a plurality of physical function modules, the plurality of physical function modules comprises a first physical function module and a second physical function module,
the design device includes:
an acquisition unit configured to acquire a power supply configuration file and a register transfer level description file of the integrated circuit;
the inserting unit is configured to insert a cross-voltage bridge module between the first physical function module and the second physical function module according to the power supply configuration file and the register transmission level description file so as to obtain an updated register transmission level description file in response to the existence of cross-voltage domain communication between the first physical function module and the second physical function module;
in the updated register transfer level description file, the cross-voltage bridge module is a multi-power-domain functional module, the first physical functional module and the second physical functional module are both single-power-domain functional modules, and the cross-voltage bridge module is used for providing level conversion and/or power-down isolation protection for cross-voltage-domain communication between the first physical functional module and the second physical functional module.
19. The apparatus of claim 18, wherein the insertion unit comprises a create subunit, and an add subunit,
the creating subunit is configured to create a voltage-spanning bridge module according to the power supply configuration file;
the establishing subunit is configured to establish a voltage-crossing signal channel for a port performing voltage-crossing domain signal transmission between the first physical function module and the second physical function module in the voltage-crossing bridge module according to the power configuration file;
the adding subunit is configured to add the voltage-spanning bridge module to a corresponding position in the register transfer level description file to obtain the updated register transfer level description file.
20. The design apparatus of claim 19, wherein the power profile includes power information of a first power source that supplies power to a first power domain in which the first physical function module is located, and power information of a second power source that supplies power to a second power domain in which the second physical function module is located,
the creating subunit performs creating a cross-voltage bridge module according to the power supply profile, including performing operations of:
according to the power configuration file, creating a first buffer array and a second buffer array, wherein the first buffer array is located in the first power domain, the second buffer array is located in the second power domain, and the first buffer array and the second buffer array are used for providing buffer units;
determining whether a cross-voltage domain processing unit between the first physical function module and the second physical function module needs an enable signal and an enable signal source according to the power supply information of the first power supply and the power supply information of the second power supply, wherein the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for a port performing cross-voltage domain communication between the first physical function module and the second physical function module;
in response to the enable signal source indicating that the enable signal is from the voltage-spanning bridge module, an enable unit is created in a respective power domain to provide the enable signal.
21. The design apparatus of claim 19, wherein the establishing subunit, when performing establishing a cross-voltage signal path for a port in the cross-voltage bridge module for cross-voltage domain signaling between the first physical function module and the second physical function module according to the power supply profile, performs the following operations:
determining at least one pair of voltage domain crossing ports for signal transmission between the first physical function module and the second physical function module in a voltage domain crossing manner, wherein each pair of voltage domain crossing ports comprises a first port located in the first physical function module and a second port located in the second physical function module, the first port and the second port are connected and in data communication, and the first port and the second port are located on the same level in the integrated circuit;
establishing, in the voltage-spanning bridge module, a voltage-spanning signal channel between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports according to the power supply configuration file.
22. The design apparatus of claim 21, wherein the cross-voltage signal path comprises a first buffer unit located in a first buffer array, a second buffer unit located in a second buffer array, and a cross-voltage domain processing unit located between the first buffer unit and the second buffer unit,
the cross-voltage domain processing unit is used for providing level conversion and/or power-down isolation protection for the first port and the second port.
23. The design apparatus of claim 22, wherein the configuration file includes power configuration information of the first physical function module and power configuration information of the second physical function module,
the power configuration information of the first physical function module comprises a name of a first power supply for supplying power to the first physical function module and a power-down holding value expected to be output when the first power supply is in a power-down state,
the power supply information of the first power supply includes a voltage value configuration and a power supply state of the first power supply, the power supply information of the second power supply includes a voltage value configuration and a power supply state of the second power supply,
the establishing subunit, when performing, according to the power supply profile, establishing, in the voltage-spanning bridge module, one voltage-spanning signal channel between each pair of voltage-spanning domain ports for connecting the first port and the second port of each pair of voltage-spanning domain ports, performs the following operations:
acquiring the first buffer unit positioned in the first buffer array and the second buffer unit positioned in the second buffer array;
connecting the first buffer unit with the first port, and connecting the second buffer unit with the second port;
determining the voltage-crossing domain processing unit between the first buffer unit and the second buffer unit according to the voltage value configuration, the power supply state and the power-down holding value of the first power supply and the second power supply;
electrically connecting the cross-voltage domain processing unit with the first power supply and the second power supply;
connecting the enable port of the cross-voltage domain processing unit with a corresponding enable unit in the cross-voltage bridge module in response to the enable signal of the cross-voltage domain processing unit coming from the cross-voltage bridge module.
24. The design apparatus of claim 23, wherein the power supply profile further comprises types of the across-voltage-domain processing units, and names of the across-voltage-domain processing standard units for each type,
the establishing subunit, when executing the cross-voltage domain processing unit located between the first buffer unit and the second buffer unit according to the voltage value configuration, the power state, and the power-down holding value of the first power supply and the second power supply, performs the following operations:
determining the type of the voltage-crossing domain processing unit according to the voltage value configuration and the power state of the first power supply and the second power supply; and
and selecting a corresponding cross-voltage domain processing standard unit under the type of the cross-voltage domain processing unit to be inserted between the first buffer unit and the second buffer unit according to the power-down holding values of the first power supply and the second power supply.
25. Design apparatus according to any one of claims 18 to 24, further comprising a generation unit,
the generating unit is configured to generate a power intention description file of the integrated circuit according to the power configuration file and the updated register transfer level description file.
26. Design means according to any one of claims 18 to 24, further comprising an integration unit,
the synthesizing unit is configured to synthesize the post-update register transfer level description file according to the power supply intention description file and the post-update register transfer level description file,
in the synthesis process, in response to that no voltage domain crossing processing unit is inserted into at least one voltage domain crossing signal channel in the voltage bridge module, inserting a voltage domain crossing processing unit into the at least one voltage domain crossing signal channel according to the power supply intention description file.
27. An electronic device, comprising:
a memory non-transiently storing computer executable instructions;
a processor configured to execute the computer-executable instructions,
wherein the computer-executable instructions, when executed by the processor, implement a method of designing an integrated circuit according to any of claims 1-17.
28. A non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium stores computer-executable instructions that, when executed by a processor, implement a method of designing an integrated circuit according to any one of claims 1-17.
CN202211453923.3A 2022-11-21 2022-11-21 Method and device for designing integrated circuit, electronic device and storage medium Pending CN115719052A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211453923.3A CN115719052A (en) 2022-11-21 2022-11-21 Method and device for designing integrated circuit, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211453923.3A CN115719052A (en) 2022-11-21 2022-11-21 Method and device for designing integrated circuit, electronic device and storage medium

Publications (1)

Publication Number Publication Date
CN115719052A true CN115719052A (en) 2023-02-28

Family

ID=85255928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211453923.3A Pending CN115719052A (en) 2022-11-21 2022-11-21 Method and device for designing integrated circuit, electronic device and storage medium

Country Status (1)

Country Link
CN (1) CN115719052A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117371386A (en) * 2023-12-08 2024-01-09 奇捷科技(深圳)有限公司 Circuit layout updating method, device, equipment and storage medium
CN117494620A (en) * 2023-11-16 2024-02-02 海光集成电路设计(北京)有限公司 Integrated method, redundant unit deleting method, device, equipment and storage medium
CN117709259A (en) * 2024-02-01 2024-03-15 北京开源芯片研究院 Chip design method and device, electronic equipment and readable storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117494620A (en) * 2023-11-16 2024-02-02 海光集成电路设计(北京)有限公司 Integrated method, redundant unit deleting method, device, equipment and storage medium
CN117371386A (en) * 2023-12-08 2024-01-09 奇捷科技(深圳)有限公司 Circuit layout updating method, device, equipment and storage medium
CN117371386B (en) * 2023-12-08 2024-04-02 奇捷科技(深圳)有限公司 Circuit layout updating method, device, equipment and storage medium
CN117709259A (en) * 2024-02-01 2024-03-15 北京开源芯片研究院 Chip design method and device, electronic equipment and readable storage medium

Similar Documents

Publication Publication Date Title
CN115719052A (en) Method and device for designing integrated circuit, electronic device and storage medium
US8332795B2 (en) Automated pin multiplexing for programmable logic device implementation of integrated circuit design
US8166437B2 (en) Automated pad ring generation for programmable logic device implementation of integrated circuit design
US8479135B2 (en) Automated framework for programmable logic device implementation of integrated circuit design
EP3719633A1 (en) Methods and apparatus to insert buffers in a dataflow graph
JP2005182654A (en) Reconfigurable circuit, processing device having reconfigurable circuit, function determination method of logic circuit in reconfigurable circuit, circuit generation method and circuit
US7673276B2 (en) Method and system for conducting a low-power design exploration
US20080129274A1 (en) Controller, information processing apparatus and supply voltage control method
US8897083B1 (en) Memory interface circuitry with data strobe signal sharing capabilities
US20170011138A1 (en) System and method for hierarchical power verification
US10276219B2 (en) System for improved power distribution to a memory card through remote sense feedback
JP5274069B2 (en) Reduction of leakage power in low power mode
US20110145779A1 (en) Engineering Change Order Language for Modifying Integrated Circuit Design Files for Programmable Logic Device Implementation
USRE43623E1 (en) Method and apparatus for simulating logic circuits that include a circuit block to which power is not supplied
US7152216B2 (en) Method, system, and computer program product for automatic insertion and correctness verification of level shifters in integrated circuits with multiple voltage domains
US10782914B2 (en) Buffer systems and methods of operating the same
US7444613B1 (en) Systems and methods for mapping arbitrary logic functions into synchronous embedded memories
US8341563B1 (en) Method and apparatus for power gating stitching
CN116301294A (en) System chip low-power-consumption implementation method, system chip, vehicle machine and equipment
JP4142653B2 (en) Logic synthesis apparatus, circuit design method, and program
JP6253048B2 (en) Nonvolatile logic integrated circuit design support system
US20200348932A1 (en) Memory control system with a sequence processing unit
US20110063884A1 (en) Structure and method for backing up and restitution of data
JP2004335686A (en) High speed low consumption power logic device
KR20210010069A (en) Method of generating network on chip used on block diagram editor

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination