A SPICE circuit netlist generation method for auxiliary circuit parameter optimization

Through the SPICE circuit netlist generation method that assists in circuit parameter optimization, multiple optimizers are used to optimize the parameter of analog integrated circuits, which solves the problems of low parameter optimization efficiency and slow design process in the existing technology, and achieves a more efficient and stable circuit design process.

CN114722760BActive Publication Date: 2025-03-18GUANGZHOU UNIVERSITY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210428041.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-22
Publication Date
2025-03-18
Estimated Expiration
2042-04-22

AI Technical Summary

Technical Problem

The prior art has low parameter optimization efficiency, slow design process, unstable algorithm process, and difficult to achieve automation and multi-thread optimization in analog integrated circuit design.

Method used

Through the SPICE circuit netlist generation method that assists with circuit parameter optimization, the circuit structure and parameters are set, the SPICE simulation process is generated, and a variety of optimizers are used to optimize the circuit simulation model and find the optimal combination of circuit parameters.

Benefits of technology

The efficiency of parameter optimization is improved, the design process is accelerated, the algorithm process is more rapid and stable, and the automation of analog integrated circuit parameter optimization is realized.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114722760B_ABST
    Figure CN114722760B_ABST
Patent Text Reader

Abstract

The present invention discloses a SPICE circuit netlist generation method for auxiliary circuit parameter optimization. By setting a set of SPICE .option statements, a set of configurations is performed on the simulation process. By default, a set of option statements is used here, which can only perform circuit feasibility inspection before parameter optimization, not check the circuit structure during the parameter optimization process, not generate simulation graphic files, and minimize simulation time. After the optimization is completed, a waveform file is generated and displayed. Under the set rules, users can also configure and set component libraries according to their own needs, and can select component libraries used by users. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization can construct a reasonable SPICE simulation process through this method after determining the structure of the circuit, and then optimize the circuit simulation model through multiple optimizers to find the optimal circuit parameter combination.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of analog circuits, and in particular to a SPICE circuit netlist generation method for assisting circuit parameter optimization. Background Art

[0002] In analog circuit design, the gate length L, gate width W, resistance R, and capacitance C of each CMOS tube in the circuit to be optimized have a crucial impact on circuit performance. While designing a reasonable and effective structure, the circuit parameters in the circuit must be excellent or optimal to reflect the superiority of circuit performance. Therefore, in integrated circuit design, it is necessary to continuously simulate, tune, and improve parameter values ​​through circuit simulation. Designing analog circuit parameters is still a time-consuming and arduous task. Therefore, we hope to speed up the automated design of analog integrated circuits by completing the automatic optimization of circuit parameters. In order to complete the automatic optimization of integrated circuit parameters, an important step is how to automate the simulation.

[0003] At present, mainstream EDA in the field of integrated circuit design, such as Cadence, mostly uses graphical interfaces. While it is convenient for engineers to use, it also limits the automation of parameter optimization. If you want to complete parameter optimization in a graphical interface, you need to perform image matching and script multiple preconditions. It is difficult to automate the adjustment of parameters, and it is not possible to achieve multi-threaded simultaneous optimization. SPICE uses the method of writing circuit netlists for simulation, but most of the existing SPICE simulation software has added graphical interfaces for the convenience of engineers, and it is difficult to use them in the automatic generation of circuit netlists. Summary of the invention

[0004] 1. Technical issues to be resolved

[0005] In view of the deficiencies in the prior art, the present invention provides a SPICE circuit netlist generation method for auxiliary circuit parameter optimization, which accelerates the design process and makes the algorithm process more rapid and stable by optimizing auxiliary circuit parameters and improving the parameter optimization efficiency, so as to solve the problems of low parameter optimization efficiency, slow design process and unstable algorithm process.

[0006] (II) Technical solution

[0007] In order to achieve the above-mentioned advantages of improving parameter optimization efficiency, accelerating the design process, and making the algorithm process more rapid and stable, the present invention provides the following technical solutions:

[0008] A SPICE circuit netlist generation method for assisting circuit parameter optimization comprises the following steps:

[0009] S1. Set circuit structure and various parameters

[0010] By setting the .option statement of SPICE, a set of configurations is made for the simulation process. A set of option statements is used to perform a feasibility test on the circuit only before parameter optimization. During the parameter optimization process, the circuit structure is not checked and simulation graphics files are not generated, thus minimizing the simulation time. After the optimization is completed, a waveform file is generated and displayed. Under the set rules, users can also configure and set the component library according to their own needs, or select the component library used by the user. The component library can automatically read the names of key components, including but not limited to the following devices: MOS tubes, triodes, diodes, and set the topological relationship of circuit components.

[0011] S2. Set circuit simulation and performance indicators

[0012] Set the simulation mode of the entire circuit, the calculation method of the circuit's performance indicators and the reading method of the performance indicators, and select one or more performance indicators as the optimization target. The specific steps are as follows: first, set the simulation mode and simulation node on which the performance index relies. The simulation modes include the following two types: DC simulation and AC simulation. Then, set the calculation formula of the performance indicator. You can directly call the calculation formula of common performance indicators saved in the database.

[0013] S3, read performance indicators

[0014] Repeat S2 until all performance indicators are set, and finally check whether the simulation is correct.

[0015] S4. Perform simulation

[0016] After setting all the information, the simulation stage will be carried out next. First, the SPICE circuit netlist is generated according to the corresponding parameters and written into the .sp format file required for SPICE simulation. Secondly, the SPICE simulation software is called through the subprocess. The compatible SPICE simulation software are: HSPICE, NGSPICE. Finally, wait for the subprocess to complete the simulation, and read the simulation results of the optimization target obtained by the simulation in the simulation result file through regular expressions.

[0017] S5. Input circuit parameters and performance indicators into the optimizer

[0018] Set the parameter relationship and parameter range of the device to be optimized, and initialize the circuit parameters to be optimized according to the parameter range. The selectable circuit parameters include the following: gate length L, gate width W, resistance R, capacitance C of the CMOS tube. The parameter relationship is a linear relationship. Complete a set of parameter simulation processes, pass the circuit parameters and performance indicators to the optimizer. The selectable optimizers include but are not limited to the following: genetic algorithm optimizer, differential evolution optimizer and reinforcement learning optimizer.

[0019] S6. Modify circuit parameters

[0020] The optimizer will modify the circuit parameters according to the simulation results, re-enter the modified circuit parameters into the system, and repeat steps S3-S5 until the performance indicators to be optimized meet the design requirements and the optimal circuit parameter combination is obtained.

[0021] Preferably, the topological relationship in step S1 includes the following settings: directly setting the connection relationship between the components in the circuit; reading the existing SPICE circuit netlist and extracting the circuit netlist therein; converting other forms of circuit coding into coding within the system.

[0022] Preferably, the device information in step S1 includes the following: the first letter of the device name, the number of nodes, the type of device, and the type of parameters.

[0023] Preferably, the names of the nodes in step S1 can be letters, numbers, or a combination thereof, and the node names are unique, among which there must be a node named "0", representing the ground.

[0024] Preferably, the optimization types in step S1 can be divided into fixed parameter devices whose parameters remain unchanged during the optimization process and devices to be optimized whose parameters are optimized during the optimization process, and the parameters of the fixed parameter devices are set.

[0025] Preferably, in step S2, a transient simulation is additionally performed to obtain a static operating point of the circuit, and the reinforcement learning optimizer in S5 can obtain a better optimization effect by utilizing the information of the static operating point.

[0026] Preferably, the optimizer in step S5 refers to a structure that can adjust the input according to the output of the system to obtain a set of optimal outputs of the system.

[0027] Preferably, multi-threaded operation is introduced in the process of steps S3-S6, and each thread generates and optimizes a circuit netlist with the same structure but different parameters, which can increase the speed of the overall process.

[0028] Preferably, the topological relationship of the circuit components is set in step S1, and the specific steps are as follows:

[0029] S11. Set the information related to the current device and device type; S12. Set the nodes to which the current device is connected; S13. Set the optimization type of the current device; S14. Complete the setting of the current device, put it into the completed device library, and repeat the S11-S13 process until the setting of all devices is completed; S15. Check the integrity and feasibility of the topological structure.

[0030] Preferably, in step S2, common performance indicators include the following: noise, linearity, gain, input impedance, output impedance, power consumption, voltage supply, output amplitude, response speed, and finally, the target of the performance indicator is set, including the following: greater than a certain number, less than a certain number, as large as possible, as small as possible, and the weight of the performance indicator among all indicators is set.

[0031] (III) Beneficial effects

[0032] Compared with the prior art, the SPICE circuit netlist generation method for auxiliary circuit parameter optimization provided by the present invention has the following beneficial effects:

[0033] 1. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization can build a reasonable SPICE simulation process through this method after determining the structure of the circuit, and then optimize the circuit simulation model through multiple optimizers to find the optimal circuit parameter combination.

[0034] 2. Compared with the existing ideas, the SPICE circuit netlist generation method for auxiliary circuit parameter optimization can greatly improve the efficiency in the field of parameter optimization and accelerate the design process of analog integrated circuits. The standardized automation of SPICE circuit netlist generation makes the parameter optimization process compatible with the automatic optimization algorithm, which can make the algorithm process faster and more stable. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Figure 1 A schematic diagram of a flow chart of a method for generating an image according to an embodiment of the present invention;

[0036] Figure 2 A schematic diagram of a multi-threaded optimized flow chart of a generation method according to an embodiment of the present invention;

[0037] Figure 3 A typical optimizer schematic diagram of the generation method according to an embodiment of the present invention. DETAILED DESCRIPTION

[0038] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0039] See also Figure 1-3 The SPICE circuit netlist generation method for auxiliary circuit parameter optimization provided by the embodiment of the present invention comprises the following steps:

[0040] S1. Set circuit structure and various parameters

[0041] By setting the .option statement of SPICE, a set of configurations is made for the simulation process. By default, we use a set of option statements here, which can only perform feasibility tests on the circuit before parameter optimization, do not check the circuit structure during parameter optimization, do not generate simulation graphics files, minimize simulation time, and generate and display waveform files after optimization. In compliance with the set rules, users can also configure according to their own needs, set up component libraries, and select the component libraries used by users. The names of key components can be automatically read through the component library, including but not limited to the following devices: MOS tubes, triodes, diodes, and set the topological relationship of circuit components. The system includes the following settings: directly set the components in the circuit and their connection relationship; read the existing SPICE circuit netlist and extract the circuit netlist; convert other forms of circuit coding into coding within the system.

[0042] The specific steps are as follows: S11, setting information related to the current device and device type, including the following: the first letter of the device name, the number of nodes, the type of device, and the type of parameters;

[0043] S12, setting the node to which the current device is connected. The name of the node can be letters, numbers, or a combination thereof. The node name is unique, and there must be a node named "0" representing the ground.

[0044] S13, setting the optimization type of the current device, which can be divided into a fixed parameter device whose parameters remain unchanged during the optimization process and a device to be optimized whose parameters are optimized during the optimization process, and setting the parameters of the fixed parameter device;

[0045] S14, complete the setting of the current device, put it into the completed device library, and repeat the S11-S13 process until the setting of all devices is completed;

[0046] S15. Check the integrity and feasibility of the topology structure.

[0047] S2. Set circuit simulation and performance indicators

[0048] Set the simulation mode of the entire circuit, the calculation method of the circuit's performance indicators and the performance indicator reading method, and select one or more performance indicators as the optimization target. The specific steps are as follows: S21. Set the simulation mode and simulation node on which the performance index relies. The simulation modes include the following two: DC simulation and AC simulation. S22. Set the calculation formula of the performance indicator. You can directly call the calculation formula of common performance indicators saved in the database. Common performance indicators include the following: noise, linearity, gain, input impedance, output impedance, power consumption, voltage supply, output amplitude, response speed 3. Set the target of the performance indicator, including the following: greater than a certain number, less than a certain number, as large as possible, as small as possible. Set the weight of this performance indicator among all indicators.

[0049] S3, read performance indicators

[0050] Repeat S2 until all performance indicators are set, and finally check whether the simulation is correct.

[0051] S4. Perform simulation

[0052] After setting all the information, the simulation stage will be carried out next. First, the SPICE circuit netlist is generated according to the corresponding parameters and written into the .sp format file required for SPICE simulation. Secondly, the SPICE simulation software is called through the subprocess. The compatible SPICE simulation software are: HSPICE, NGSPICE. Finally, wait for the subprocess to complete the simulation, and read the simulation results of the optimization target obtained by the simulation in the simulation result file through regular expressions.

[0053] S5. Input circuit parameters and performance indicators into the optimizer

[0054] Set the parameter relationship and parameter range of the device to be optimized, and initialize the circuit parameters to be optimized according to the parameter range. The selectable circuit parameters include the following: gate length L, gate width W, resistor value R, capacitor capacitance C of CMOS tube, the parameter relationship is a linear relationship, complete a set of parameter simulation processes, pass the circuit parameters and performance indicators to the optimizer, selectable optimizers include but are not limited to the following: genetic algorithm optimizer, differential evolution optimizer and reinforcement learning optimizer, the optimizer here refers to such a structure: the input can be adjusted according to the output of the system to obtain a set of optimal outputs of the system.

[0055] S6. Modify circuit parameters

[0056] The optimizer will modify the circuit parameters according to the simulation results, re-enter the modified circuit parameters into the system, and repeat steps S3-S5 until the performance indicators to be optimized meet the design requirements and the optimal circuit parameter combination is obtained.

[0057] Because the slowest step in the entire simulation process is the circuit simulation step, multi-threading can be introduced in the process of executing S3-S6. Each thread generates and optimizes a circuit netlist with the same structure but different parameters, which can increase the speed of the overall process. In S2, an additional transient simulation is set to obtain the static operating point of the circuit. The reinforcement learning optimizer in S5 can obtain better optimization results by using the information of the static operating point.

[0058] The circuit netlist of SPICE is a standard form of describing the circuit of the usual analog circuit and transistor level. The SPICE circuit netlist contains a variety of information such as the structure of the circuit, the parameters of the circuit elements and the circuit simulation method. After constructing a standard SPICE simulation process of a circuit structure, we change the gate length L, gate width W, resistance R, capacitance C, and other circuit parameters of each CMOS tube in the circuit to be optimized and generate a corresponding circuit netlist, and then complete the simulation to obtain the performance index of the circuit. This method of generating a circuit netlist can be compatible with a variety of circuit optimization algorithms. After determining the structure of the circuit, a reasonable SPICE simulation process can be constructed by this method, and then the circuit simulation model is optimized by a variety of optimizers to find the optimal circuit parameter combination. Compared with the prior art, the automation of the simulation integrated circuit parameter optimization of the present invention can greatly improve the efficiency in the field of parameter optimization and speed up the design process of the analog integrated circuit. The standardized automation of SPICE circuit netlist generation makes the parameter optimization process compatible with the automatic optimization algorithm, which can make the algorithm process more rapid and stable.

[0059] Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present invention, and that the scope of the present invention is defined by the appended claims and their equivalents.

Claims

1. A SPICE circuit netlist generation method for auxiliary circuit parameter optimization, characterized in that: The following steps are involved: S1. Set circuit structure and various parameters By setting the .option statement of SPICE, a set of configurations is made for the simulation process. A set of option statements is used to perform a feasibility test of the circuit only before parameter optimization. During the parameter optimization process, the circuit structure is not checked and simulation graphics files are not generated, so as to minimize the simulation time. After the optimization is completed, a waveform file is generated and displayed. Under the set rules, users can configure and set the component library according to their own needs, or select the component library used by the user. The names of key components are automatically read through the component library, including but not limited to the following devices: MOS tubes, triodes, diodes, and the topological relationship of circuit components is set; S2. Set circuit simulation and performance indicators Set the simulation mode of the whole circuit, the calculation mode of the performance index of the circuit and the reading mode of the performance index, and select one or more performance indexes as the optimization target. The specific steps are as follows: first, set the simulation mode and simulation node on which the performance index depends. The simulation modes include the following two types: DC simulation and AC simulation. Then, set the calculation formula of the performance index. You can directly call the calculation formula of common performance indexes saved in the database. S3, read performance indicators Repeat S2 until all performance indicators are set, and finally check whether the simulation is correct; S4. Perform simulation After setting all the information, the simulation phase begins. First, a SPICE circuit netlist is generated based on the corresponding parameters and written into the .sp format file required for SPICE simulation. Second, the SPICE simulation software is called through a subprocess. Compatible SPICE simulation software include: HSPICE and NGSPICE. Finally, the simulation is waited for by the subprocess to complete, and the simulation results of the optimization target obtained by the simulation are read in the simulation result file through regular expressions. S5. Input circuit parameters and performance indicators into the optimizer Set the parameter relationship and parameter range of the device to be optimized, and initialize the circuit parameters to be optimized according to the parameter range. The selectable circuit parameters include the following: gate length L, gate width W, resistance R, capacitance C of the CMOS tube. The parameter relationship is a linear relationship. Complete the simulation process of a set of parameters, and pass the circuit parameters and performance indicators to the optimizer. The selectable optimizers include but are not limited to the following: genetic algorithm optimizer, differential evolution optimizer and reinforcement learning optimizer. S6. Modify circuit parameters The optimizer will modify the circuit parameters according to the simulation results, re-enter the modified circuit parameters into the system, and repeat steps S3-S5 until the performance indicators to be optimized meet the design requirements and the optimal circuit parameter combination is obtained; The topological relationship of the circuit components is set in step S1, and the specific steps are as follows: S11. Set the information related to the current device and device type; S12. Set the nodes to which the current device is connected; S13. Set the optimization type of the current device; S14. Complete the setting of the current device, put it into the completed device library, and repeat the S11-S13 process until the setting of all devices is completed; S15. Check the integrity and feasibility of the topological structure.

2. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1 is characterized in that: The topological relationship in step S1 includes the following setting methods: directly setting the connection relationship between the components in the circuit; reading the existing SPICE circuit netlist and extracting the circuit netlist therein; converting other forms of circuit coding into coding within the system.

3. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1 is characterized in that: The device information in step S1 includes the following: the first letter of the device name, the number of nodes, the type of device, and the type of parameters.

4. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1 is characterized in that: The name of the node in step S1 can be letters, numbers, or a combination thereof. The node name is unique, and there must be a node named "0" representing the ground.

5. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1, characterized in that: The optimization types in step S1 can be divided into fixed parameter devices whose parameters remain unchanged during the optimization process and devices to be optimized whose parameters are optimized during the optimization process, and the parameters of the fixed parameter devices are set.

6. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1 is characterized in that: In the step S2, a transient simulation is additionally performed to obtain a static operating point of the circuit, and the reinforcement learning optimizer in S5 can obtain a better optimization effect by utilizing the information of the static operating point.

7. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1, characterized in that: The optimizer in step S5 refers to a structure that can adjust the input according to the output of the system to obtain a set of optimal outputs of the system.

8. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1, characterized in that: In the process of steps S3-S6, multi-thread operation is introduced, and each thread generates and optimizes a circuit netlist with the same structure but different parameters, which can increase the speed of the overall process.

9. The SPICE circuit netlist generation method for auxiliary circuit parameter optimization according to claim 1, characterized in that: In step S2, common performance indicators include the following: noise, linearity, gain, input impedance, output impedance, power consumption, voltage supply, output amplitude, response speed, and finally the target of the performance indicator is set.

Citation Information

Patent Citations

  • Transient analysis method and transient analysis system under integrated circuit power supply network full-parameter model

    CN103207941A

  • Analog integrated circuit design parameter automatic optimization scheme based on artificial intelligence algorithm

    CN112417803A