Simulation methods, systems, devices, storage media, and software products for adaptive scanning of semiconductor devices.

By adaptively adjusting the scan step size, the problem of simulation redundancy and distortion caused by fixed step size in semiconductor device simulation is solved, and the high efficiency, stability and accuracy of the simulation process are achieved.

CN121189262BActive Publication Date: 2026-01-30上海芯钬量子科技有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511726867.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-11-24
Publication Date
2026-01-30
Estimated Expiration
2045-11-24

AI Technical Summary

Technical Problem

In existing technologies, the fixed scan step size during semiconductor device simulation cannot adapt to changes in physical quantities, resulting in redundant simulation iterations or distorted results, which affects simulation efficiency and stability.

Method used

An adaptive scanning method is adopted, which dynamically adjusts the scanning step size according to the number of iterations and convergence of the simulation process. The scanning step size is optimized by the step size adjustment function to ensure that the scanning step size is accelerated in the region with good convergence and decreased in the region with poor convergence. The process is repeated until the simulation endpoint is reached.

Benefits of technology

It achieves high efficiency and stability in the simulation process, reduces redundancy in the number of simulations, avoids distortion of simulation results, and improves simulation efficiency and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121189262B_ABST
    Figure CN121189262B_ABST
Patent Text Reader

Abstract

This invention relates to the field of computer-aided design technology for semiconductor devices, and discloses a simulation method, system, electronic device, readable storage medium, and program product for adaptive scanning of semiconductor devices. It addresses the technical problem that in existing technologies, a fixed scan step size leads to redundant simulation iterations or distorted simulation results in simulation scenarios with complex physical quantity variations. The method includes: acquiring scan parameters in response to a simulation request, wherein the scan parameters include a scan step size, a scan start point, and a scan end point; constructing a scan value starting from the scan start point with the current scan step size, and performing simulation based on the scan value; acquiring the number of iterations in the current simulation process; evaluating the convergence of the current simulation process based on the number of iterations, and adjusting the scan step size according to the convergence evaluation result; constructing the next scan value based on the adjusted scan step size; and cyclically executing the simulation solution and the scan step size adjustment until the scan value reaches the scan end point, completing the simulation.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of computer-aided design of semiconductor devices, and in particular to a simulation method and system for adaptive scanning of semiconductor devices, an electronic device, a computer storage medium, and a computer program product. BACKGROUND

[0002] In the process of semiconductor device design and manufacturing, numerical simulation technology plays a crucial role. It predicts the electrical characteristics of the device under different bias, temperature or frequency conditions by constructing a physical model of the device in the computer and solving the related partial differential equations (such as drift-diffusion equation, Poisson equation, etc.), thereby guiding process optimization and design iteration. Among them, parameter scanning is a basic operation in simulation, such as continuous change of voltage, current or time, to obtain key performance curves such as I-V (voltage-current) characteristics, transient response, etc.

[0003] In actual simulation process, the choice of scanning step has a decisive influence on the efficiency and stability of simulation. In the prior art, a fixed scanning step method is generally used, but the fixed scanning step cannot fully utilize the convergence advantage in the area with good convergence, resulting in redundant simulation times, waste of computing resources, and significant increase in simulation time and memory occupation; in the area with poor convergence, the fixed scanning step cannot be adjusted in time to cope with the situation of non-linear enhancement or dramatic change of physical quantity, which easily causes the failure of Newton iteration method, causing simulation interruption or result distortion.

[0004] Therefore, there is an urgent need for a technical solution that can dynamically and adaptively adjust the scanning step according to the real-time convergence and physical quantity change during the execution of parameter scanning by the solver, so as to achieve a balance between efficiency and stability. SUMMARY

[0005] The main purpose of the present application is to solve the technical problem that the fixed scanning step method cannot cope with the simulation simulation scene with complex physical quantity change in the prior art simulation of semiconductor devices, which easily causes redundant simulation times or simulation result distortion, resulting in poor simulation effect.

[0006] The first aspect of the present application provides a simulation method for adaptive scanning of semiconductor devices, comprising:

[0007] obtaining scanning parameters in response to a simulation request, wherein the scanning parameters include an initial scanning step, a scanning starting point and a scanning endpoint;

[0008] starting from the scanning starting point, constructing a scanning value with the current scanning step, and performing simulation based on the scanning value;

[0009] When the simulation solving succeeds, the iteration number in the current simulation process is obtained;

[0010] Convergence of the current simulation process is evaluated based on the iteration number, and the scanning step is adjusted according to the evaluation result of the convergence;

[0011] The next scanning value is constructed based on the adjusted scanning step;

[0012] The simulation solving and the adjustment of the scanning step are repeatedly performed until the constructed scanning value reaches a scanning end point, and the simulation of the semiconductor device is completed.

[0013] Optionally, in the first implementation manner of the first aspect, after the scanning value is constructed from the scanning start point and the simulation is performed based on the scanning value, the method further includes:

[0014] When the simulation solving fails, backtracking is enabled, the current scanning step is reduced to reconstruct the scanning value, the simulation solving is performed based on the reconstructed scanning value, and the iteration number is obtained.

[0015] Optionally, in the second implementation manner of the first aspect, the method further includes constructing a step adjustment function, and an expression of the step adjustment function is:

[0016] ;

[0017] wherein, the represents the adjusted scanning step, the represents the scanning step of the previous step, represents the step adjustment value;

[0018] The convergence of the current scanning step is evaluated based on the iteration number, and the scanning step is adjusted according to the evaluation result of the convergence, and the method includes:

[0019] When the simulation iteration number is greater than a preset optimal iteration number, the convergence of the current scanning step is poor, the step adjustment value is set to be less than 0, and the adjusted scanning step is calculated based on the step adjustment function;

[0020] When the simulation iteration number is less than the preset optimal iteration number, the convergence of the current scanning step is good, the step adjustment value is set to be greater than 0, and the adjusted scanning step is calculated based on the step adjustment function.

[0021] Optionally, in the third implementation manner of the first aspect, an expression for calculating the step adjustment value is:

[0022] ;

[0023] wherein, the Indicates the step size adjustment value; the represents the adaptive coefficient, which ranges from [0, 1); This represents the function for adjusting the optimal number of iterations. This represents the sum of the maximum relative changes of physical quantities during the simulation fitting process, which monotonically increases as the gradient change of the fitted physical quantities increases. Indicates the preset optimal number of iterations; This indicates the number of the previous iteration.

[0024] Alternatively, in a fourth implementation of the first aspect of the invention,

[0025] The expression for the optimal iteration number adjustment function is:

[0026] ;

[0027] in, and It is a constant, and .

[0028] Optionally, in a fifth implementation of the first aspect of the invention, the constant... The value range of the constant is [1.2, 1.8]. The value range is [0.2, 0.8], and .

[0029] A second aspect of the present invention provides a simulation system for adaptive scanning of semiconductor devices, comprising:

[0030] The parameter acquisition module is used to acquire scanning parameters in response to a simulation request, wherein the scanning parameters include the initial scanning step size, the scanning start point, and the scanning end point;

[0031] The scan value construction module is used to construct scan values ​​starting from the scan start point and using the current scan step size;

[0032] The simulation execution module is used to perform simulation based on the scan values;

[0033] The step size adjustment module is used to obtain the number of iterations in the current simulation process when the simulation solution is successful; evaluate the convergence of the current simulation process based on the number of iterations, and adjust the scan step size according to the convergence evaluation result;

[0034] The scan value construction module is also used to construct the next scan value based on the adjusted scan step size;

[0035] The loop execution module is used to repeatedly perform simulation solutions and adjust the scan step size until the constructed scan value reaches the scan endpoint, thus completing the simulation of the semiconductor device.

[0036] The third aspect of the present application provides a simulation device for adaptive scan of a semiconductor device, comprising a memory and at least one processor, the memory storing instructions; the at least one processor invoking the instructions in the memory to enable the simulation device for adaptive scan of a semiconductor device to perform the steps of the simulation method for adaptive scan of a semiconductor device described above.

[0037] The fourth aspect of the present application provides a computer-readable storage medium storing instructions, which, when executed on a computer, enable the computer to perform the steps of the simulation method for adaptive scan of a semiconductor device described above.

[0038] The fifth aspect of the present application provides a computer program product comprising computer programs / instructions, which, when executed by a processor, implement the steps of the simulation method for adaptive scan of a semiconductor device described above.

[0039] In the technical solution provided by the present application, the scan parameters are acquired in response to a simulation request, wherein the scan parameters include an initial scan step, a scan starting point and a scan ending point; a scan value is constructed from the scan starting point with the current scan step, and the simulation is performed based on the scan value; when the simulation is successfully solved, the number of iterations in the current simulation process is acquired; the convergence of the current simulation process is evaluated based on the number of iterations, and the scan step is adjusted according to the evaluation result of the convergence; the next scan value is constructed based on the adjusted scan step; the simulation solving and the adjustment of the scan step are repeatedly performed until the constructed scan value reaches the scan ending point, and the simulation of the semiconductor device is completed. The method has the beneficial effect that the scan step can be adaptively adjusted according to the simulation effect, the redundancy of the simulation times is reduced or the distortion of the simulation result is avoided, the efficiency and stability of the simulation can be considered, and the simulation effect is improved.

[0040] The system, the electronic device, the computer-readable storage medium and the computer program product provided by the present application also solve the corresponding technical problems. BRIEF DESCRIPTION OF DRAWINGS

[0041] The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiments of the present application and serve to explain the present application, but do not limit the present application. In the drawings:

[0042] Figure 1 The flowchart of the first embodiment of the simulation method for adaptive scan of a semiconductor device in the embodiments of the present application;

[0043] Figure 2 The flowchart of the second embodiment of the simulation method for adaptive scan of a semiconductor device in the embodiments of the present application;

[0044] Figure 3 An embodiment schematic diagram of a simulation system for adaptive scan of a semiconductor device in an embodiment of the present application;

[0045] Figure 4 An embodiment schematic diagram of a simulation device for adaptive scan of a semiconductor device in an embodiment of the present application;

[0046] Figure 5 An embodiment schematic diagram of a computer readable medium in an embodiment of the present application. DETAILED DESCRIPTION

[0047] Example embodiments of the present application will now be described more fully with reference to the accompanying drawings. Example embodiments of the present application, however, can be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these example embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the inventive concept to those skilled in the art. Like reference numerals refer to like elements throughout the specification.

[0048] In the case of specific embodiments described in accordance with the technical concept of the present application, features, structures, characteristics or other details described in a certain embodiment do not exclude the possibility of being combined in one or more other embodiments in a suitable manner.

[0049] In the description of specific embodiments, features, structures, characteristics or other details described in the present application are intended to enable those skilled in the art to fully understand the embodiments. However, it does not exclude the possibility that one or more of the specific features, structures, characteristics or other details can be practiced without the technical solution of the present application.

[0050] The flowcharts shown in the drawings are only exemplary illustrations, and do not necessarily include all contents and operations / steps, nor do they necessarily have to be executed in the order described. For example, some operations / steps can be further decomposed, and some operations / steps can be combined or partially combined, so the actual execution order can be changed according to the actual situation.

[0051] The block diagrams shown in the drawings are only functional entities, and do not necessarily have to correspond to physically independent entities. That is, these functional entities can be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0052] The term "and / or" or "and / or" includes all combinations of any one or more of the associated listed items.

[0053] Please refer toFigure 1 The first embodiment of the simulation method of the adaptive scanning of the semiconductor device in the embodiment of the application comprises the following steps:

[0054] S101, acquiring scanning parameters in response to a simulation request;

[0055] It can be understood that the execution subject of the application can be a simulation device or system of the adaptive scanning of the semiconductor device, and can also be a terminal or a server, and the specific implementation is not limited herein. The embodiment of the application takes the server as the execution subject for example.

[0056] The application can be specifically used in the physical simulation of the semiconductor device, so as to virtually predict and evaluate the performance of the semiconductor device on the computer before actually manufacturing the chip and performing the actual test, thereby greatly reducing the research and development cost, shortening the research and development period and improving the success rate. The physical simulation in the embodiment can be used to acquire the complete characteristic curve of the device, determine the working interval and limit of the device, verify whether the design meets the specifications, and analyze the sensitivity of the process change, etc. Specifically, it can be used to simulate the current-voltage characteristics of the devices such as diodes and transistors, or the characteristics of other semiconductor devices under parameters such as temperature and doping concentration, and observe the behavior of the device.

[0057] For example, when simulating the current-voltage characteristics of the diode, it is necessary to scan the voltage value and solve the corresponding current. If it is necessary to scan the voltage from 0V to 1V, using a fixed scanning step (such as 0.01V) may converge quickly when the voltage is low, but the scanning step is too small, which will waste time; when the voltage is high, the convergence is slow, but the scanning step is too large, which may diverge. Using the adaptive scanning method in the embodiment, the scanning step can be adjusted according to the convergence of each voltage point; for example, in the region from 0V to 0.5V, the convergence is fast, the iteration number is small, and the scanning step is automatically increased to 0.02V; in the region from 0.5V to 1V, the convergence is slow, the iteration number is large, and the scanning step is reduced to 0.005V; in this way, the overall simulation is faster and more stable.

[0058] Specifically, after receiving the simulation request, the server first acquires the parameters required for scanning in response to the simulation request. The scanning parameters at least include the overall simulation scanning range, the preset initial scanning step, the preset optimal iteration number of each scanning step, the adaptive adjustment coefficient, and the key physical quantity item at the current simulation time; wherein the key physical quantity item is related to the specific demand of the simulation, including but not limited to electrostatic potential, electron concentration, hole concentration, etc., which is used to calculate the physical quantity change value.

[0059] In a specific example, when simulating the current-voltage characteristic of a diode, the scanning range can be 0V-1V, i.e. the voltage of the scanning starting point is 0V and the voltage of the scanning end point is 1V; the initial scanning step can be set to 0.1V; the preset optimal iteration number of each scanning step can be set to 20; the adaptive adjustment coefficient is 0.5; and the key physical quantity is the electrostatic potential, electron concentration or hole concentration.

[0060] S102, starting from the scanning starting point, constructing a scanning value at the current scanning step, and performing simulation based on the scanning value;

[0061] After obtaining the scanning parameters, the specific scanning and simulation can be started, wherein the simulation in the embodiment is specifically obtaining a pre-constructed model equation set and solving based on the scanning value by combining the Newton iteration method.

[0062] Firstly, this step starts from the initial scanning starting point, constructs a scanning value at the preset initial scanning step, and performs scanning and simulation based on the constructed scanning value. For example, when the first scanning simulation starts from 0V and the scanning step is 0.1V, the constructed scanning value changes from the scanning starting point to 0.1V.

[0063] S103, when the simulation solving is successful, obtaining the iteration number in the current simulation process;

[0064] When each scanning simulation solving is performed, it is judged whether the simulation is successful. If the simulation solving is successful, the iteration number in the scanning process is obtained, so as to be used for evaluating the convergence of the current scanning simulation process in the subsequent process.

[0065] In this step, if the simulation solving fails, a rollback step is enabled, the step S102 is rolled back, and the scanning step is reduced according to the preset step reduction rule, the scanning value is reconstructed, and the simulation is performed based on the reconstructed scanning value. In a specific embodiment, the preset step reduction rule in this step can be a preset reduction proportion coefficient, and the value range of the proportion coefficient is (0, 1). When the rollback is needed, the preset reduction proportion coefficient is obtained, the scanning step used in the last simulation solving failure is multiplied by the reduction proportion coefficient to obtain the updated scanning step.

[0066] In a specific example, when the simulation solving fails by using 0.1V as the scanning value, the rollback is enabled, the scanning step is changed to 0.05V, and the updated scanning value is 0.05V. The simulation solving is performed again based on the updated scanning value.

[0067] S104, evaluating the convergence of the current simulation process based on the iteration number, and adjusting the scanning step according to the convergence evaluation result;

[0068] In the embodiment, in the case that the simulation is successfully solved, the iteration number of the current simulation process is obtained, and the convergence of the current scanning process is evaluated according to the specific iteration number during the scanning simulation.

[0069] In a specific embodiment, at step S101, when the scanning parameters are obtained in response to the simulation request, the preset optimal iteration number of each iteration solving is also obtained.

[0070] In a specific embodiment, when the iteration number of the current simulation exceeds the preset optimal iteration number, it is considered that the convergence in the current scanning step is poor, and the physical quantity changes greatly, and then the scanning step size is correspondingly reduced. When the iteration number of the simulation does not exceed the preset optimal iteration number, it is considered that the convergence in the current scanning step is good, and the physical quantity changes less, and then the scanning step size is correspondingly increased. In a preferred embodiment, the preset optimal iteration number is 20 times.

[0071] Specifically, the step size adjustment function can be constructed in advance during the adaptive adjustment, and the adaptive adjustment is realized through the step size adjustment function. The expression of the step size adjustment function is:

[0072] ;

[0073] Wherein, the represents the adjusted scanning step size, the represents the scanning step size of the previous step, represents the step size adjustment value. When the iteration number of the simulation is greater than the preset optimal iteration number, the convergence in the current scanning step is poor, the step size adjustment value is less than 0, and the adjusted scanning step size is calculated based on the step size adjustment function; when the iteration number of the simulation is less than the preset optimal iteration number, the convergence in the current scanning step is good, the step size adjustment value is greater than 0, and the adjusted scanning step size is calculated based on the step size adjustment function.

[0074] In another specific embodiment, when the convergence is judged based on the iteration number of the current simulation and the optimal iteration number, and it is evaluated whether the scanning step size needs to be adjusted, the adjustment value is calculated based on the preset optimal iteration number adjustment function, the preset optimal iteration number and the iteration number of the current simulation, and the scanning step size is adaptively adjusted according to the adjustment value. Specifically, the calculation expression of the step size adjustment value is:

[0075] ;

[0076] Wherein, the represents the step size adjustment value; the represents an adaptive coefficient, which ranges from 0 to 0.5, and can be adjusted based on the complexity of the specific simulation scheme, and is preferably 0.5. represents the optimal iteration number adjustment function; represents the sum of the maximum relative change values of the key physical quantities in the simulation fitting process, which monotonically increases with the increase of the gradient change value of the fitting physical quantity; represents the preset optimal iteration number; represents the iteration number of the previous step.

[0077] The expression of the optimal iteration number adjustment function is:

[0078]

[0079] wherein, and are constants, and .

[0080] In a specific embodiment, the following needs to be satisfied: to obtain a better adjustment effect.

[0081] Preferably, the constant has a value range of [1.2, 1.8], and the constant has a value range of [0.2, 0.8]; for example, = 1.45, = 0.55, .

[0082] In this step, if the previous step appears to be rolled back and the scan step is reduced for re-simulation, the scan step of the previous step is selected to be the value after the scan step is reduced.

[0083] Based on the expression of the step adjustment value, in the area with better convergence: at this time:

[0084]

[0085] Therefore, the following can be achieved:

[0086]

[0087] that is, the adjusted scan step is greater than the scan step of the previous step;

[0088] In the area with poor convergence, at this time:

[0089]

[0090] Therefore, the following can be achieved:

[0091] ​​​​

[0092] i.e. the adjusted scan step size is smaller than the last scan step size;

[0093] When ,

[0094] ;

[0095] ,

[0096] ;

[0097] i.e. the adjusted scan step size is equal to the last scan step size.

[0098] S105, constructing a next scan value based on the adjusted scan step size;

[0099] After the adjustment of the scan step size, a next scan value is constructed based on the last successful simulation scan value and the adjusted scan step size.

[0100] For example, if the last successful simulation scan value is 0.1V and the calculated adjusted scan step size is 0.08V, then the last successful simulation scan value and the calculated adjusted scan step size are added to obtain a next scan value of 0.18V.

[0101] S106, performing simulation solving and scan step size adjustment in a loop until the constructed scan value reaches the scan end point, and completing the simulation of the semiconductor device.

[0102] In this embodiment, after each scan, the operations in S102-S104 are performed, and the steps of simulation solving and scan step size adjustment are performed in a loop until the next scan value exceeds or reaches the scan end point. When the scan value exceeds or reaches the scan end point, the simulation is performed with the scan end point as the last scan value, and the simulation is successful, and the simulation process of the semiconductor device is completed. Finally, the simulation result, simulation curve or simulation report is output.

[0103] The simulation scheme provided in the embodiment of the present application can dynamically and adaptively adjust the scan step size according to the real-time convergence and the change of the physical quantity in the parameter scanning process, and can achieve the technical effect of balancing the efficiency and stability of the simulation scanning.

[0104] Specifically, based on the method in the embodiment, simulation in a region with good convergence will automatically increase the scanning step quickly, reduce the total number of scans required for simulation, speed up the simulation, and reduce the occupation of simulation resources; simulation in a region with poor convergence will automatically reduce the scanning step, prevent divergence that may occur, reduce the occurrence of backtracking, and ensure simulation accuracy while ensuring simulation efficiency. Moreover, the optimal number of iterations and the adaptive coefficient can be preset and adjusted to improve the customizability of the scheme, and the specific scanning step adjustment scheme can be set according to the specific situation of the scheme to improve the simulation effect.

[0105] Referring to Figure 2 The second embodiment of the adaptive scanning simulation method of the semiconductor device in the embodiment of the application includes the following steps.

[0106] S201, device and scene setting;

[0107] It can be understood that the execution subject of the application can be an adaptive scanning simulation device or system of a semiconductor device, or a terminal or a server, and the specific implementation is not limited herein. The embodiment of the application takes a server as an execution subject for example.

[0108] Before performing the adaptive scanning simulation, device and scene setting needs to be performed in a technical preparation stage, so as to construct a model of a semiconductor device to be simulated and a model of an external environment thereof.

[0109] In a specific implementation, constructing a geometric model of a semiconductor device includes specifying the geometric shape and size of each region, defining the material properties of each region, and setting the doping type and doping distribution, etc. Scene setting includes selecting an active physical model from a model library according to the simulation accuracy and complexity requirements, and setting the global environment, physical effects and boundary conditions of the simulation, etc.

[0110] S202, scanning setting;

[0111] After completing the initial device and scene setting, scanning setting needs to be performed. In order to configure the specific parameters of the adaptive scanning task, and lay the foundation for subsequent dynamic adjustment of the scanning step.

[0112] Specifically, the specific parameters of the scanning task set in this step include the scanning parameters, at least including the overall simulation scanning range, the preset initial scanning step, the preset optimal number of iterations for each scanning step, the adaptive adjustment coefficient, and the key physical quantity item at the current simulation time. For details, refer to the content in step S101 in the foregoing embodiment, which will not be repeated here.

[0113] S203, constructing a simulation equation;

[0114] In this step, the physical problem to be simulated is converted into a set of mathematical equations that can be solved by a computer. In one specific embodiment, the simulation engine can automatically construct a set of coupled partial differential equations describing the behavior of the semiconductor device based on the model of the semiconductor device constructed in step S201, in order to construct an initial mathematical model in the semiconductor device model.

[0115] S204, constructing a scan value according to a scan step length;

[0116] Next, the specific scanning and simulation steps can be performed. In the present embodiment, first, at S204, a scan value is constructed according to an initial scan starting point and a scan step length.

[0117] As described in step S102 in the foregoing embodiment, starting from the initial scan starting point, the scan value is constructed with a preset initial scan step length, and scanning and simulation are performed based on this scan value.

[0118] S205, iteratively solving;

[0119] After the scan value is obtained, the specific iterative solving step is performed.

[0120] S206, determining whether the current solving process converges normally;

[0121] If the current solving process does not converge normally, step S207 is performed to enable rollback; if it converges normally, step S208 is performed to perform the next step of determination.

[0122] S207, if it does not converge normally, enabling rollback and adjusting the scan step length;

[0123] In the present embodiment, if it does not converge normally, a rollback scheme is enabled, and in the rollback step, the scan step length is simultaneously reduced, and step S204 is returned to, in which the scan value is reconstructed according to the updated scan step length. The scheme in this step is basically the same as that in S103 in the foregoing embodiment.

[0124] S208, if it converges normally, determining whether the scan end point has been reached;

[0125] If it converges normally, the rollback scheme is enabled, and based on the determination of whether the scan end point has been reached, if the scan end point has not been reached, step S209 is performed to continue the iterative simulation.

[0126] In addition, the contents of S206-S208 in the present embodiment are basically similar to those in S103 in the foregoing embodiment.

[0127] S209, if the scan end point has not been reached, adjusting the scan step length according to the convergence effect;

[0128] In this step, the scanning step is adjusted according to the convergence effect. Specifically, when the convergence effect is good, the scanning step is reduced and the scanning value is reconstructed in step S204.

[0129] The specific way of adjusting the scanning step in this embodiment is basically the same as the content in step S104 in the foregoing embodiment, and thus is not described here again.

[0130] S210, if the scanning end point is reached, the simulation ends.

[0131] If the constructed scanning value exceeds the scanning end point or is equal to the scanning end point, it is considered that the scanning end point is reached, and the simulation is performed with the scanning end point as the last scanning value. After the simulation is successfully performed, the simulation process of the semiconductor device is completed.

[0132] The simulation scheme provided in the embodiment of the present application can dynamically and adaptively adjust the scanning step according to the real-time convergence and the change of the physical quantity in the parameter scanning process. Based on the method in the embodiment, the simulation can automatically and quickly increase the scanning step in the region with good convergence, reduce the total scanning times required by the simulation, speed up the simulation, and reduce the occupation of the simulation resources. The simulation can automatically reduce the scanning step in the region with poor convergence, prevent the divergence, reduce the occurrence of backtracking, and ensure the simulation efficiency while ensuring the simulation accuracy. Moreover, the scheme of the embodiment can improve the customizability of the scheme through the preset and adjustable optimal iteration number and adaptive coefficient, can set a specific scanning step adjustment scheme according to the specific situation of the scheme, and can achieve the technical effect of balancing the efficiency and stability of the simulation scanning.

[0133] The simulation method of the adaptive scanning of the semiconductor device in the embodiment of the present application is described above, and the simulation system of the adaptive scanning of the semiconductor device in the embodiment of the present application is described below. Please refer to Figure 3 One embodiment of the simulation system of the adaptive scanning of the semiconductor device in the embodiment of the present application includes:

[0134] The parameter acquisition module 301 is configured to acquire scanning parameters in response to a simulation request, wherein the scanning parameters include an initial scanning step, a scanning starting point, and a scanning end point.

[0135] The scanning value construction module 302 is configured to construct a scanning value from the scanning starting point with the current scanning step.

[0136] The simulation execution module 303 is configured to perform simulation based on the scanning value.

[0137] The step length adjustment module 304 is configured to acquire the iteration number in the current simulation process when the simulation solving succeeds; evaluate the convergence of the current simulation process based on the iteration number, and adjust the scanning step length according to the convergence evaluation result;

[0138] The scanning value construction module 302 is further configured to construct a next scanning value based on the adjusted scanning step length.

[0139] The loop execution module 305 is configured to cyclically execute the simulation solving and the adjustment of the scanning step length until the constructed scanning value reaches a scanning end point, and the simulation of the semiconductor device is completed.

[0140] The embodiment of the application can achieve the following technical effects: the scanning step length can be adaptively adjusted according to the simulation effect, the redundancy of the simulation number is reduced or the distortion of the simulation result is avoided, the efficiency and stability of the simulation can be considered, and the simulation effect is improved.

[0141] In another embodiment of the application, the adaptive scanning simulation system of the semiconductor device further comprises a rollback module configured to enable rollback and reduce the current scanning step length when the simulation solving fails; the scanning value construction module is further configured to reconstruct the scanning value; and the simulation execution module is further configured to execute the simulation solving according to the reconstructed scanning value and acquire the iteration number.

[0142] In another embodiment of the application, the step length adjustment module is further configured to construct a step length adjustment function, and the expression of the step length adjustment function is as follows:

[0143] ;

[0144] Wherein, the represents the adjusted scanning step length, the represents the scanning step length of the previous step, represents the step length adjustment value.

[0145] The step length adjustment module is specifically configured to:

[0146] When the simulation iteration number is greater than the preset optimal iteration number, the convergence in the current scanning step is poor, the step length adjustment value is less than 0, the adjusted scanning step length is calculated based on the step length adjustment function, and the scanning value is constructed based on the adjusted scanning step length.

[0147] When the simulation iteration number is less than the preset optimal iteration number, the convergence in the current scanning step is good, the step length adjustment value is greater than 0, the adjusted scanning step length is calculated based on the step length adjustment function, and the scanning value is constructed based on the adjusted scanning step length.

[0148] In another embodiment of the application, the calculation expression of the step length adjustment value is as follows:

[0149] ;

[0150] wherein, the step length adjustment value is denoted as denotes an adaptive coefficient, which ranges from [0, 1); denotes an optimal iteration number adjustment function; denotes a maximum relative change value of a physical quantity in a simulation fitting process, which monotonically increases with the increase of a gradient change value of the fitting physical quantity; denotes a preset optimal iteration number; denotes an iteration number of a previous step. In another embodiment of the present application, the expression of the optimal iteration number adjustment function is as follows:

[0151]

[0152] ;

[0153] wherein, and are constants, and .

[0154] In another embodiment of the present application, the constant ranges from [1.2, 1.8], the constant ranges from [0.2, 0.8], and .

[0155] In another embodiment of the present application, the specific working details of the simulation system of the adaptive scan of the semiconductor device in runtime are as described in the simulation method of the adaptive scan of the semiconductor device, which will not be described here.

[0156] The technical effects achieved by the embodiments of the present application are as follows: the scan step length can be adaptively adjusted according to the simulation effect, the redundancy of the simulation number is reduced or the distortion of the simulation result is avoided, the efficiency and stability of the simulation can be considered, and the simulation effect is improved.

[0157] Based on the same inventive concept, the embodiments of the present application also provide an electronic device for simulating the adaptive scan of a semiconductor device. The electronic device for simulating the adaptive scan of a semiconductor device in the embodiments of the present application is described in detail from the perspective of hardware processing.

[0158] Figure 4 An electronic device provided by the embodiments of the present application is shown in a structural schematic diagram. The electronic device 400 according to the embodiments of the present application is described below with reference to Figure 4 Figure 4 The electronic device 400 shown is merely an example, and should not impose any limitation on the functions and use range of the embodiments of the present application. ​​

[0159] As Figure 4 shown, the electronic device 400 is in the form of a general-purpose computing device. The components of the electronic device 400 can include, but are not limited to, at least one processing unit 410, at least one storage unit 420, a bus 430 that connects the different system components including the storage unit 420 and the processing unit 410, a display unit 440, and the like.

[0160] The storage unit stores program code that can be executed by the processing unit 410, such that the processing unit 410 performs the steps according to various exemplary embodiments of the present application described in the processing method part of the present specification. For example, the processing unit 410 can perform the steps as shown in Figure 1 or Figure 2 shown.

[0161] The storage unit 420 can include a readable medium in the form of volatile storage such as a random access memory (RAM) 4201 and / or cache memory 4202, and can further include a read-only memory (ROM) 4203.

[0162] The storage unit 420 can also include a program / utility 4204 having a set of program modules 4205 such as an operating system, one or more application programs, other program modules, and program data, each of which can give the electronic device 400 its functionality, at least in part. Each of these example applications or some combination thereof can include an implementation of a network environment.

[0163] The bus 430 can be representative of one or more of several types of bus structures, including a storage bus or bus controller, a peripheral bus, a graphics bus, a processor or local bus using any of a variety of bus structures.

[0164] The electronic device 400 can also communicate with one or more external devices 100 such as a keyboard or pointing device, a Bluetooth device, etc., as well as with one or more devices that enable a user to interact with the electronic device 400. Further, the electronic device 400 can communicate with one or more devices that enable the electronic device 400 to Figure 4Other hardware and / or software modules can be used in conjunction with the electronic device 400, as desired, including, but not limited to, microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

[0165] Those skilled in the art can easily understand, through the above description of the embodiments, that the exemplary embodiments described in the present application can be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solutions according to the embodiments of the present application can be embodied in the form of a software product, which can be stored in a computer readable storage medium (which can be a CD-ROM, a U disk, a mobile hard disk, etc.) or on a network, and includes a number of instructions to make a computing device (which can be a personal computer, a server, or a network device, etc.) execute the above-mentioned method according to the present application. When the computer program is executed by a data processing device, the computer readable medium can implement the above-mentioned method of the present application, i.e., as shown in the above-mentioned method. Figure 1 or Figure 2 .

[0166] Figure 5 A schematic diagram of a computer readable medium according to an embodiment of the present application.

[0167] The computer program implementing the method shown in the above-mentioned method. Figure 1 or Figure 2 The computer program implementing the method shown in the above-mentioned method.

[0168] The computer readable storage medium can include a data signal transported over a carrier wave and can be baseband or propagated along with carriers. The program code embodied on the computer readable storage medium can be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, and the like, or any suitable combination of the foregoing.

[0169] Furthermore, the present application provides a computer program product including computer program / instructions, which, when executed by a processor, implement the simulation method of adaptive scan of a semiconductor device as described in any of the above embodiments.

[0170] Program code for carrying out operations of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++, and the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server. In the latter scenario, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computing device, such as through the Internet using an Internet Service Provider. The present application can be implemented as a computer program product, i.e., a computer program tangibly embodied in a machine readable storage medium.

[0171] In light of the above, the present application can be implemented in hardware, or as software modules running on one or more processors, or in a combination thereof. Those skilled in the art will appreciate that the means for performing some or all of the functions of some or all of the components according to embodiments of the present application can be implemented in practice using a general purpose data processing apparatus such as a microprocessor or a digital signal processor (DSP) and that the means for performing some or all of the functions of some or all of the components according to embodiments of the present application can be implemented in practice using a general purpose data processing apparatus such as a microprocessor or a digital signal processor (DSP). The present application can also be implemented as a computer program product for performing some or all of the methods described herein, or for performing some or all of the methods described herein. Such a computer program product can be stored on a computer readable medium, or can have one or more signals transmitted over one or more networks. Such a computer program product can be downloaded or otherwise provided from an Internet website, server, or other source.

[0172] The above-described specific embodiments further illustrate the purpose, technical solutions and beneficial effects of the present application. It should be understood that the present application is not inherently related to any specific computer, virtual device or electronic equipment, and various general-purpose devices can implement the present application. The above-described specific embodiments are merely examples of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

[0173] Each of the embodiments in the specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other. Each of the embodiments mainly describes the difference from other embodiments.

[0174] The above-described specific embodiments are merely examples of the present application and are not intended to limit the present application. For those skilled in the art, the present application can have various changes and modifications. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A simulation method of adaptive scan of a semiconductor device, characterized by, Comprising: obtaining scan parameters in response to a simulation request, wherein the scan parameters include an initial scan step, a scan starting point and a scan ending point; starting from the scan starting point, constructing a scan value with a current scan step, and performing simulation based on the scan value; when the simulation is successfully solved, obtaining the number of iterations in the current simulation process; constructing a step adjustment function, and the expression of the step adjustment function is: ; Wherein, the represents the adjusted scanning step, the represents the scanning step of the previous step, represents the step adjustment value; when the number of simulation iterations is greater than a preset optimal iteration number, the convergence in the current scan step is poor, the step adjustment value is less than 0, and the adjusted scan step is calculated based on the step adjustment function; when the number of simulation iterations is less than the preset optimal iteration number, the convergence in the current scan step is good, the step adjustment value is greater than 0, and the adjusted scan step is calculated based on the step adjustment function; constructing a next scan value based on the adjusted scan step; looping to perform simulation solving and scan step adjustment until the constructed scan value reaches the scan ending point, and completing the simulation of the semiconductor device.

2. The simulation method of adaptive scan of a semiconductor device according to claim 1, wherein, After the step of starting from the scan starting point, constructing a scan value with a current scan step, and performing simulation based on the scan value, the method further comprises: when the simulation solving fails, enabling rollback, reducing the current scan step to reconstruct the scan value, performing simulation solving according to the reconstructed scan value, and obtaining the number of iterations.

3. The method of claim 2, wherein the method further comprises: The step of reducing the current scan step to reconstruct the scan value comprises: obtaining a preset reduction ratio coefficient; multiplying the scan step used when the simulation solving fails by the reduction ratio coefficient to reconstruct the scan value.

4. The method of claim 1, wherein, The expression for calculating the step adjustment value is: ; Wherein, the represents a step adjustment value; the represents an adaptive coefficient, which ranges from [0, 1); represents an optimal iteration number adjustment function; represents the sum of the maximum relative change values of physical quantities in the simulation fitting process, which monotonically increases with the increase of the gradient change value of the fitted physical quantity; represents a preset optimal iteration number; represents the iteration number of the previous step.

5. The method of claim 4, wherein, The expression of the optimal iteration number adjustment function is: ; wherein and is a constant, and .

6. The method of claim 5, wherein the method further comprises: the constant has a value in the range [1.2, 1.8], the constant has a value in the range [0.2, 0.8], and .

7. A simulation system for adaptive scanning of a semiconductor device, characterized in that, The simulation system of adaptive scanning of the semiconductor device comprises: a parameter obtaining module configured to obtain scan parameters in response to a simulation request, wherein the scan parameters include an initial scan step, a scan starting point and a scan ending point; a scan value constructing module configured to start from the scan starting point and construct a scan value with a current scan step; a simulation performing module configured to perform simulation based on the scan value; a step adjusting module configured to, when the simulation is successfully solved, obtain the number of iterations in the current simulation process, and construct a step adjustment function, and the expression of the step adjustment function is: ; Wherein, the represents the adjusted scanning step, the represents the scanning step of the previous step, represents the step adjustment value; The step adjusting module is further configured to, when the number of simulation iterations is greater than a preset optimal iteration number, make the step adjustment value less than 0 and calculate an adjusted scan step based on the step adjustment function, and when the number of simulation iterations is less than the preset optimal iteration number, make the step adjustment value greater than 0 and calculate an adjusted scan step based on the step adjustment function. The scan value constructing module is further configured to construct a next scan value based on the adjusted scan step. A loop performing module is configured to loop to perform simulation solving and scan step adjustment until the constructed scan value reaches the scan ending point, and complete the simulation of the semiconductor device.

8. An emulation device for adaptive scan of a semiconductor device, characterized by, The simulation device of adaptive scanning of the semiconductor device comprises a memory and at least one processor, and the memory stores instructions. The at least one processor invokes the instructions in the memory to cause an emulation device of the adaptive scan of the semiconductor device to perform the steps of the emulation method of the adaptive scan of the semiconductor device of any of claims 1-6.

9. A computer-readable storage medium having stored thereon computer programs / instructions, characterized in that, The program / instructions, when executed by a processor, implement the steps of the emulation method of the adaptive scan of the semiconductor device of any of claims 1-6.

10. A computer program product comprising computer programs / instructions, characterized in that, The computer program / instructions, when executed by a processor, implement the steps of the emulation method of the adaptive scan of the semiconductor device of any of claims 1-6.

Citation Information

Patent Citations

  • SI simulation optimization method and device for PCB

    CN120764290A

  • System, method and apparatus for sensitivity based fast power grid simulation with variable time step

    US20090319250A1