JP2002197401A - Simulation method and simulator - Google Patents

Simulation method and simulator

Info

Publication number
JP2002197401A
JP2002197401A JP2000398013A JP2000398013A JP2002197401A JP 2002197401 A JP2002197401 A JP 2002197401A JP 2000398013 A JP2000398013 A JP 2000398013A JP 2000398013 A JP2000398013 A JP 2000398013A JP 2002197401 A JP2002197401 A JP 2002197401A
Authority
JP
Japan
Prior art keywords
node
simulation method
newton
initial value
convergence condition
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
JP2000398013A
Other languages
Japanese (ja)
Inventor
Kenichi Horiuchi
賢一 堀内
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2000398013A priority Critical patent/JP2002197401A/en
Publication of JP2002197401A publication Critical patent/JP2002197401A/en
Pending legal-status Critical Current

Links

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a simulation method and a simulator which improves the probability of satisfying the convergence conditions of Newton repetition in the simulation method suited to a simulator for analyzing an event by using Newton's method. SOLUTION: A simultaneous equation is prepared with the node potential of each node of an analyzing object circuit. A circuit simulation method calculates the simultaneous equation by using the Newton's method (step S14) to perform DC operation point analysis. When the convergence condition by Newton repetition is not satisfied (step S15), a random number is multiplied to the value of a node potential which is not convergent to set a new initial value (step S20), to recalculate the simultaneous equation. This series of operation is called a fluctuation method.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、シミュレーション
方法及びシュミレータに関し、より詳細には、直流動作
点解析(以下、DC動作点解析と呼ぶ)を行う回路シミ
ュレータに好適なシミュレーション方法及びシュミレー
タに関するものである。
The present invention relates to a simulation method and a simulator, and more particularly, to a simulation method and a simulator suitable for a circuit simulator for performing a DC operating point analysis (hereinafter, referred to as a DC operating point analysis). is there.

【0002】[0002]

【従来の技術】一般に、半導体集積回路の設計では、設
計する回路の特性を解析するにあたって、回路シミュレ
ータを用いてDC動作点解析を行う。DC動作点解析
は、解析対象回路の回路方程式を解くことで、各節点電
位を求める。回路方程式の各節点電位を求める過程で、
ニュートン法が用いられる。
2. Description of the Related Art Generally, in the design of a semiconductor integrated circuit, a DC operating point analysis is performed using a circuit simulator to analyze characteristics of a circuit to be designed. In the DC operating point analysis, each node potential is obtained by solving a circuit equation of a circuit to be analyzed. In the process of finding each node potential of the circuit equation,
Newton's method is used.

【0003】図5は、特開平5−342294号公報に
記載の回路シミュレータのブロック図である。解析条件
読出し部82は、素子接続情報や回路特性から成る解析
条件を解析条件ファイル81から読み出す。動作点解析
部83は、読み出した解析条件に基づいて、ニュートン
法による線形近似計算を行い、各ノードの節点電位を求
める。動作点判断部84は、求められた節点電位が収束
したか否か判断する。
FIG. 5 is a block diagram of a circuit simulator described in Japanese Patent Application Laid-Open No. 5-342294. The analysis condition reading unit 82 reads analysis conditions including element connection information and circuit characteristics from the analysis condition file 81. The operating point analysis unit 83 performs a linear approximation calculation by the Newton method based on the read analysis conditions, and obtains a node potential of each node. The operating point determining unit 84 determines whether or not the obtained node potential has converged.

【0004】動作点判断部84は、ある節点電位が収束
しないと判断すると、不収束ノード再解析制御部90に
再解析の要求を行う。不収束ノード再解析制御部90
は、ノード初期値設定部89を起動して、新めてノード
の動作点の初期値を設定し、解析条件ファイル81の解
析条件を変更して、次の解析のために準備する。
When the operating point determining section 84 determines that a certain node potential does not converge, it issues a request for reanalysis to the non-convergent node reanalysis control section 90. Non-convergence node re-analysis controller 90
Starts the node initial value setting unit 89, newly sets the initial value of the operating point of the node, changes the analysis condition of the analysis condition file 81, and prepares for the next analysis.

【0005】ノード初期値設定部89は、収束・不収束
解析データ88に基づいて、動作点が収束したノードに
は、その動作点を設定し、動作点が収束しないノードに
は、このノードと素子を挟んで接続する周囲ノードの収
束する動作点の平均値を設定する。
A node initial value setting section 89 sets an operating point for a node whose operating point has converged based on the convergence / non-convergence analysis data 88, and sets this node for a node whose operating point does not converge. The average value of the converging operating points of the surrounding nodes connected across the element is set.

【0006】不収束ノード再解析制御部90は、解析条
件ファイル81の解析条件が変更されると、解析条件読
出し部82に指示して、次の解析を行わせる。
When the analysis condition in the analysis condition file 81 is changed, the non-convergence node re-analysis control unit 90 instructs the analysis condition reading unit 82 to perform the next analysis.

【0007】収束・不収束解析結果出力部86は、動作
点解析部83で求められた収束したノードの動作点、及
び、不収束ノード記憶部85に記憶されたノード名を解
析結果ファイル87に出力し、収束・不収束解析データ
88としてレコード化する。
The convergence / non-convergence analysis result output unit 86 stores the operating point of the converged node obtained by the operating point analysis unit 83 and the node name stored in the non-convergence node storage unit 85 in the analysis result file 87. The data is output and recorded as convergence / non-convergence analysis data 88.

【0008】[0008]

【発明が解決しようとする課題】上記従来の回路シミュ
レーション方法では、ノードの動作点が収束しないと、
収束しないノードと素子を挟んで接続する周囲のノード
の中から収束するノードを幾つか選択する。選択された
ノード間の平均値を求め、平均値を収束しないノードの
初期値として再設定し、再解析を行う。
In the above conventional circuit simulation method, if the operating points of the nodes do not converge,
Some of the nodes that converge are selected from the surrounding nodes that connect the non-converging node and the element. An average value between the selected nodes is obtained, the average value is reset as an initial value of a node that does not converge, and reanalysis is performed.

【0009】図6は、図5の回路シミュレーション方法
でDC動作点解析(動作点の解析)が行われる解析対象
回路の一例である。解析対象回路は、pチャネル型及び
nチャネル型トランジスタを用いたインバータである。
FIG. 6 shows an example of a circuit to be analyzed in which DC operating point analysis (operating point analysis) is performed by the circuit simulation method of FIG. The circuit to be analyzed is an inverter using p-channel and n-channel transistors.

【0010】DC動作点解析の結果によると、ノードN
cの電位は、電源電圧VDDに収束し、ノードNdの電位
は、グランド電位に収束する。ノードNbの電位をグラ
ンド電位にすると、ノードNaの電位がほぼ電源電圧VD
Dに収束するものの、ノードNxの電位は収束しない。
According to the result of the DC operating point analysis, the node N
The potential of c converges to the power supply voltage VDD, and the potential of the node Nd converges to the ground potential. When the potential of the node Nb is set to the ground potential, the potential of the node Na becomes almost equal to the power supply voltage VD.
Although it converges to D, the potential of the node Nx does not converge.

【0011】しかし、上記従来の回路シミュレーション
方法では、電位Vxの初期値の再設定を行う際には、電
位Vaと電位Vb、又は、電位Vcと電位Vdとに基づいて
電位Vxの初期値を求めることになる。この場合、電位
Vxの初期値がほぼVDD/2に設定される。
However, in the conventional circuit simulation method, when resetting the initial value of the potential Vx, the initial value of the potential Vx is determined based on the potential Va and the potential Vb or the potential Vc and the potential Vd. I will ask. In this case, the initial value of the potential Vx is set to approximately VDD / 2.

【0012】電位Vxの初期値としては、ほぼグランド
電位が最適である。従って上記で採用した電位Vxの初
期値(ほぼVDD/2)は近似値としては不適切であり、
ニュートン反復によっても収束しない。この条件下で
は、電位Vxは、再解析により収束しなければ、何度繰
り返しても同様の結果になる。
As an initial value of the potential Vx, a ground potential is almost optimal. Therefore, the initial value (approximately VDD / 2) of the potential Vx adopted above is inappropriate as an approximate value,
It does not converge even with Newton iteration. Under this condition, if the potential Vx does not converge by re-analysis, the same result is obtained no matter how many times it is repeated.

【0013】収束しないノードと素子を挟んで接続する
周囲のノードがたとえ全て収束しないノードであって
も、本発明は有効であり周囲のノードに影響されない。
The present invention is effective and is not affected by the surrounding nodes, even if all of the surrounding nodes connected to the non-converging node and the element across the element are non-converging nodes.

【0014】本発明は、上記したような従来の技術が有
する問題点を解決するためになされたものであり、ニュ
ートン法を用いて事象を解析するシミュレータに好適な
シミュレーション方法であって、ニュートン反復の収束
条件を満足する確率が高いシミュレーション方法及びシ
ュミレータを提供することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems of the prior art, and is a simulation method suitable for a simulator for analyzing an event using the Newton method. It is an object of the present invention to provide a simulation method and a simulator having a high probability of satisfying the convergence condition.

【0015】[0015]

【課題を解決するための手段】上記目的を達成するた
め、本発明のシミュレーション方法は、複数の変数を有
する連立方程式からニュートン反復法を用いて前記変数
の解を求めるシミュレーション方法において、前記各変
数に夫々初期値を与えてニュートン反復を行うステッ
プ、前記ニュートン反復によって得られた各変数の解を
解析し、各変数の解が所定の収束条件を満足するか否か
を判定するステップ、前記判定において、収束条件を満
足していると判定された変数についてはその時点の解を
新たな初期値として与え、収束条件を満足していないと
判定された変数についてはその時点の解を乱数に基づい
て修正して新たな初期値として与えるステップ、及び、
前記新たな初期値に基づいて更にニュートン反復を行う
ステップを有することを特徴とする。
In order to achieve the above object, a simulation method according to the present invention is a simulation method for obtaining a solution of a variable from a simultaneous equation having a plurality of variables by using a Newton iteration method. Performing a Newton iteration by giving an initial value to each of the variables, analyzing the solution of each variable obtained by the Newton iteration, and determining whether or not the solution of each variable satisfies a predetermined convergence condition; For the variables determined to satisfy the convergence condition, the solution at that time is given as a new initial value, and for the variables determined not to satisfy the convergence condition, the solution at that time is based on random numbers. Modifying and giving as a new initial value; and
The method further comprises performing Newton iteration based on the new initial value.

【0016】本発明のシミュレーション方法は、収束条
件を満足していないと判定された変数についてはその時
点の解を乱数に基づいて修正して新たな初期値として与
えるので、ニュートン法を用いて事象を解析するシミュ
レータに好適なシミュレーション方法であって、ニュー
トン反復の収束条件を満足する確率を高くすることがで
きる。
According to the simulation method of the present invention, for a variable determined not to satisfy the convergence condition, the solution at that time is corrected based on a random number and given as a new initial value. This is a simulation method suitable for a simulator that analyzes, and can increase the probability of satisfying the convergence condition of Newton iteration.

【0017】本発明のシミュレーション方法では、前記
乱数は、一様分布の確率に基づいて発生させることが好
ましい。この場合、乱数の値が一様に発生するので、何
回か繰り返すことで最適な初期値を得ることができる。
In the simulation method according to the present invention, it is preferable that the random numbers are generated based on a probability of a uniform distribution. In this case, since the value of the random number is uniformly generated, an optimum initial value can be obtained by repeating the number of times.

【0018】前記収束条件の判定ステップ、及び、新た
なニュートン反復ステップが所定回数行われると、エラ
ー表示を行ってシミュレーションを終了すること、又
は、前記エラー表示と共に、収束条件を満足する変数、
該変数のその時点の解、及び、収束条件を満足しない変
数を表示することも本発明の好ましい態様である。この
場合、初期値の設定が悪いのか本当に解が得られないの
かを判断することができる。
When the convergence condition determination step and the new Newton iteration step are performed a predetermined number of times, an error is displayed and the simulation is terminated.
It is also a preferred embodiment of the present invention to display the solution of the variable at that time and the variable that does not satisfy the convergence condition. In this case, it can be determined whether the setting of the initial value is bad or the solution cannot be obtained.

【0019】本発明のシミュレーション方法では、所定
回数のニュートン反復が行われる毎に、収束条件を満足
するか否かの判定ステップを行うこともできる。
In the simulation method of the present invention, each time a predetermined number of Newton iterations are performed, a step of determining whether or not the convergence condition is satisfied can be performed.

【0020】また、本発明のシミュレーション方法で
は、収束条件を満足していないと判定された変数につい
てはその時点の解に乱数を掛けて新たな初期値すること
もできる。
In the simulation method according to the present invention, a variable determined as not satisfying the convergence condition may be set to a new initial value by multiplying the solution at that time by a random number.

【0021】更に、本発明のシミュレーション方法で
は、前記変数が夫々、回路内のノードの電圧又は電流で
あること、又は、上記の何れかに記載のシミュレーショ
ン方法を行うシミュレータであることもできる。
Further, in the simulation method of the present invention, each of the variables may be a voltage or a current of a node in a circuit, or a simulator for performing any one of the simulation methods described above.

【0022】[0022]

【発明の実施の形態】以下、本発明の実施形態例に基づ
いて、本発明のシミュレーション方法及びシュミレータ
について図面を参照して説明する。図1は、本発明の一
実施形態例のシミュレーション方法を示すフローチャー
トである。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a simulation method and a simulator according to the present invention will be described based on embodiments of the present invention with reference to the drawings. FIG. 1 is a flowchart illustrating a simulation method according to an embodiment of the present invention.

【0023】最初に、解析対象回路に基づいて、連立方
程式を作成する。解析対象回路の各ノードの電位(以
下、節点電位と呼ぶ)を変数として、変数の数だけ回路
方程式を作り、連立方程式を作成する。
First, simultaneous equations are created based on the circuit to be analyzed. With the potential of each node of the circuit to be analyzed (hereinafter referred to as a node potential) as a variable, circuit equations are created by the number of variables, and simultaneous equations are created.

【0024】解析対象回路は、非線形素子を有する。回
路シュミレータは、図1のシミュレーション方法が組み
込まれ、ニュートン法を用いて、解析対象回路の連立方
程式を計算し、DC動作点解析を行う。
The circuit to be analyzed has a non-linear element. The circuit simulator incorporates the simulation method of FIG. 1, calculates simultaneous equations of a circuit to be analyzed using the Newton method, and performs DC operating point analysis.

【0025】ここで、ニュートン法の原理について説明
する。変数をx1及びx2とし、関数をf1(x)及びf2
(x)とすると、連立方程式F(x)は、下記のように
示される。
Here, the principle of the Newton method will be described. The variables are x1 and x2, and the functions are f1 (x) and f2
Assuming (x), the simultaneous equation F (x) is expressed as follows.

【数1】 (Equation 1)

【数2】 式(2)は、式(1)のヤコビアンである。式(1)及
び式(2)からニュートン法に基づいて作成される反復
式を下記に示す。
(Equation 2) Equation (2) is the Jacobian of Equation (1). An iterative formula created based on Newton's method from Formulas (1) and (2) is shown below.

【数3】 ニュートン法の一部である式(3)の反復式に適当な初
期値を与える。式(3)を初期値から始めて計算し反復
する(以下、ニュートン反復と呼ぶ)ことにより、近似
解列(x)を求める。
(Equation 3) An appropriate initial value is given to the iterative expression of the expression (3) which is a part of the Newton method. An approximate solution (x) is obtained by calculating and repeating equation (3) starting from the initial value (hereinafter referred to as Newton iteration).

【0026】ニュートン反復では、予め指定された許容
誤差εに対して、下記に示す収束条件を満足するか否か
判断する。 |(xn+1)−(xn)|<ε ・・・・ (4) 式(4)の収束条件を満足すると、(xn+1)を解にす
る。
In the Newton iteration, it is determined whether or not a predetermined convergence condition shown below is satisfied with respect to an allowable error ε. | (Xn + 1) − (xn) | <ε (4) When the convergence condition of the equation (4) is satisfied, (xn + 1) is solved.

【0027】図2は、ニュートン法の適用例を示す。1
つの変数xを有する関数f(x)に対して、ニュートン
法を適用する。同図(a)に示すように、f(x)=0
になる解xと近い値が初期値x0として設定されると、
3回のニュートン反復で収束条件が満足され、解x3を
求めることができる。
FIG. 2 shows an application example of the Newton method. 1
The Newton method is applied to a function f (x) having two variables x. As shown in FIG. 7A, f (x) = 0
When a value close to the solution x is set as the initial value x0,
The convergence condition is satisfied by three Newton iterations, and the solution x3 can be obtained.

【0028】同図(b)に示すように、f(x)=0に
なる解xと遠い値が初期値x0として設定されると、3
回のニュートン反復でも収束条件が満足されない。この
条件では、ニュートン反復の回数を増やしても解xを求
めることはできない。
As shown in FIG. 3B, when a value far from the solution x where f (x) = 0 is set as the initial value x0, 3
The convergence condition is not satisfied even by one Newton iteration. Under this condition, the solution x cannot be obtained even if the number of Newton iterations is increased.

【0029】まず、作成された連立方程式の変数である
各節点電位に適当な初期値を与え、揺動法による回路シ
ミュレーション方法を開始する。回路シミュレーション
方法では、図1のDC動作点の解析の処理を実行する。
First, an appropriate initial value is given to each node potential, which is a variable of the created simultaneous equations, and a circuit simulation method by the swing method is started. In the circuit simulation method, the process of analyzing the DC operating point in FIG. 1 is executed.

【0030】各ノードは、初期値が与えられると節点電
位に初期値を設定し、初期値が与えられない節点電位に
0を設定する(ステップS11)。揺動法の繰返し回数
であるカウンタRNを0にし(ステップS12)、ニュ
ートン反復の回数であるカウンタNを0にする(ステッ
プS13)。
Each node sets an initial value to a node potential when an initial value is given, and sets 0 to a node potential to which no initial value is given (step S11). The counter RN, which is the number of repetitions of the rocking method, is set to 0 (step S12), and the counter N, which is the number of Newton iterations, is set to 0 (step S13).

【0031】ニュートン法を用いて連立方程式を計算し
(ステップS14)、全ての節点電位に対して、ニュー
トン反復の収束条件を満足するか判断する(ステップS
15)。“YES”であれば処理を終了し、“NO”で
あれば、カウンタNの値が予め設定されている上限値未
満であるか判断する(ステップS16)。
A simultaneous equation is calculated using the Newton method (step S14), and it is determined whether or not all nodal potentials satisfy the convergence condition of the Newton iteration (step S14).
15). If “YES”, the process ends. If “NO”, it is determined whether the value of the counter N is less than a preset upper limit (step S16).

【0032】“YES”であれば、カウンタNの値を1
増加しステップS14から処理を継続させる。“NO”
であれば、カウンタRNの値が予め設定されている上限
値未満であるか判断する(ステップS18)。
If "YES", the value of the counter N is set to 1
It increases and the process is continued from step S14. “NO”
If, it is determined whether the value of the counter RN is less than a preset upper limit (step S18).

【0033】“NO”であれば、節点電位の中に収束条
件を満足できないノードがあると認識し、エラー処理を
実行する(ステップS21)。“YES”であれば、カ
ウンタRNの値を1増加し、節点電位の設定の処理を実
行して(ステップS20)、ステップS13から処理を
継続する。
If "NO", it is recognized that there is a node that cannot satisfy the convergence condition among the node potentials, and error processing is executed (step S21). If "YES", the value of the counter RN is incremented by 1, the process of setting the node potential is executed (step S20), and the process is continued from step S13.

【0034】エラー処理は、収束条件が満足するノード
と収束条件が満足しないノードとに夫々分類し、ノード
名や節点電位等を夫々表示して、処理を終了する。
The error processing is classified into a node satisfying the convergence condition and a node not satisfying the convergence condition, displays the node name, the node potential, and the like, and ends the processing.

【0035】図3は、図1の節点電位の設定の処理のフ
ローチャートである。ここで、各節点電位をXNiとす
る。各節点電位XNiの添字iは、計算対象であるノード
の番号に対応する。各節点電位XNiの添字Nは、番号i
のノードがニュートン反復により、図1の処理で増加し
たカウンタNに対応する。
FIG. 3 is a flowchart of the process of setting the node potential in FIG. Here, let each node potential be XNi. The subscript i of each node potential XNi corresponds to the number of the node to be calculated. The subscript N of each node potential XNi is the number i
Correspond to the counter N increased in the processing of FIG. 1 by the Newton iteration.

【0036】全ノードの数を示すカウンタiを1にして
(ステップS31)、各節点電位XNiが収束条件を満足
するか判断する(ステップS32)。“YES”であれ
ば、収束した番号iのノードに対して、XNiを初期値
(X0i)として更新し(ステップS35)、ステップS
36から処理を継続する。
The counter i indicating the number of all nodes is set to 1 (step S31), and it is determined whether each node potential XNi satisfies the convergence condition (step S32). If "YES", XNi is updated as the initial value (X0i) for the converged node of number i (step S35), and step S35 is executed.
The processing is continued from 36.

【0037】“NO”であれば、その時点の解を乱数に
基づいて修正し、新たな初期値として与える。下記に示
す乱数εを発生する(ステップS33)。 ε=1.2×{COS-1(2×Y−1)}/π ・・・・ (5) 但し、Yは0<Y<1を満たす一様分布の確率変数であ
り、εは0〜1.2の範囲にある。収束しない番号iの
ノードに対して下記に示すように、XNi×εを初期値
(X0i)として更新する(ステップS36)。 X0i=XNi×ε ・・・・ (6)
If "NO", the solution at that time is corrected based on the random number and given as a new initial value. The following random number ε is generated (step S33). ε = 1.2 × {COS −1 (2 × Y−1)} / π (5) where Y is a uniformly distributed random variable satisfying 0 <Y <1, and ε is 0 1.21.2. As shown below, XNi × ε is updated as an initial value (X0i) for the node with the number i that does not converge (step S36). X0i = XNi × ε (6)

【0038】また、乱数に基づいて行う修正は、その時
点の解に乱数を掛ける計算に代えて、その時点の解に乱
数を加える計算にすることもできる。この場合、加える
乱数は、−(電源電圧)〜+(電源電圧)の範囲の値に
する。確率変数Yには、適用分野に応じて、一様分布以
外の他の分布を採用することもできる。
Further, the correction performed based on the random number may be a calculation in which a random number is added to the solution at that time instead of multiplying the solution at that time by the random number. In this case, the added random number has a value in the range of − (power supply voltage) to + (power supply voltage). As the random variable Y, a distribution other than the uniform distribution can be adopted depending on the application field.

【0039】カウンタiの値が予め設定されている全て
のノードの数以上であるか判断する(ステップS3
6)。“YES”であれば、処理を終了する。“NO”
であれば、カウンタiの値を1増加し(ステップS3
7)、ステップS32から処理を継続する。
It is determined whether the value of the counter i is equal to or greater than the preset number of all nodes (step S3).
6). If “YES”, the process ends. “NO”
If it is, the value of the counter i is increased by 1 (step S3
7) The process is continued from step S32.

【0040】節点電位の再設定の処理では、ニュートン
反復の収束条件を満足しないと、収束しない節点電位の
値に乱数を掛けて、新たな初期値として、収束しない節
点電位に更新する(ステップS33及びS34)。更新
された節点電位の初期値を用いて、再度ニュートン反復
を実行する。この一連の操作を揺動法と呼ぶ。
In the process of resetting the node potential, if the convergence condition of the Newton iteration is not satisfied, the value of the node potential that does not converge is multiplied by a random number, and updated as a new initial value to the node potential that does not converge (step S33). And S34). Newton iteration is performed again using the updated initial value of the node potential. This series of operations is called a swing method.

【0041】揺動法は、収束した節点電位は解と見な
し、収束しない節点電位は関数f(x)の極小値の付近
で周期的に変動しているので、乱数に基づいて初期値を
関数f(x)の極小値の離れた場所にとり、節点電位の
周期的変動を回避しようとするものである。
In the swing method, a converged node potential is regarded as a solution, and a non-converged node potential periodically fluctuates near the minimum value of the function f (x). It is intended to avoid the periodic fluctuation of the node potential in a place apart from the minimum value of f (x).

【0042】揺動法が有効であるためには、以下の2つ
の条件が仮定される。第1の仮定は、ニュートン反復が
収束しない時、最後の反復で得られた節点電位には、収
束し解となる節点電位と、収束せずに周期変動をしてい
る節点電位が存在するものである。
For the swing method to be effective, the following two conditions are assumed. The first assumption is that when the Newton iteration does not converge, the node potentials obtained in the last iteration include a node potential that converges and becomes a solution and a node potential that does not converge and that periodically fluctuates. It is.

【0043】第2の仮定は、関数f(x)の変数に与え
る初期値により、ニュートン反復の収束条件を満足する
か否かが変わり、節点電位間の独立性が存在する。収束
しない節点電位の初期値を変化させても、収束する節点
電位の収束性には影響を与えないものである。
The second assumption is that whether or not the convergence condition of the Newton iteration is satisfied changes depending on the initial value given to the variable of the function f (x), and there is independence between node potentials. Even if the initial value of the node potential that does not converge is changed, it does not affect the convergence of the node potential that converges.

【0044】ある種の回路においては、いくつかの特性
の回路ブロックから構成されているものがあり、このよ
うな回路では、第1の仮定が比較的よく満足されている
と思われる。
Some circuits are composed of circuit blocks having several characteristics, and the first assumption seems to be satisfied relatively well in such circuits.

【0045】収束する初期値の集合にはある程度の規則
性があり、一方の初期値を変化させても、収束性にそれ
ほど影響を与えない領域が存在することが知られてい
る。第2の仮定をある程度満たしていると思われる。
It is known that a set of initial values that converge has a certain degree of regularity, and that even if one of the initial values is changed, there is an area that does not significantly affect the convergence. It seems that the second assumption is satisfied to some extent.

【0046】揺動法は、双方の仮定を満足する回路につ
いて有効である。しかし、揺動法が乱数を用いているた
めに、双方の仮定を満足しない回路でも、小規模の回路
であれば、偶然収束することも考えられる。
The swing method is effective for a circuit satisfying both assumptions. However, since the swing method uses random numbers, even a circuit that does not satisfy both assumptions may accidentally converge in a small-scale circuit.

【0047】SPICEシュミレータ(NECSPICE V6.
0)に揺動法を採用しない回路シミュレーション方法、
及び、揺動法を採用する回路シミュレーション方法(図
1のシミュレーション方法)を組み込み、10個の解析
対象回路に対してDC動作点解析を行い、収束した確率
について評価した。
SPICE simulator (NECSPICE V6.
0) Circuit simulation method that does not employ the swing method,
In addition, a circuit simulation method employing the swing method (the simulation method in FIG. 1) was incorporated, and a DC operating point analysis was performed on ten analysis target circuits, and the probability of convergence was evaluated.

【0048】[0048]

【表1】 表1は、解析対象回路の内容を示す。各解析対象回路
は、オペアンプに関する10個の回路(回路番号1〜1
0)であり、ノード数、素子数、及び、MOSトランジ
スタ数が夫々異なる。
[Table 1] Table 1 shows the contents of the circuit to be analyzed. Each circuit to be analyzed is composed of ten circuits (circuit numbers 1 to 1) related to the operational amplifier.
0), and the number of nodes, the number of elements, and the number of MOS transistors are different from each other.

【0049】[0049]

【表2】 表2は、DC動作点解析の結果を示す。DC動作点解析
の結果は、揺動法なし、揺動法あり(Nmax=50)、
及び、揺動法あり(Nmax=100)の3つの場合につ
いて実行された。
[Table 2] Table 2 shows the results of the DC operating point analysis. As a result of the DC operating point analysis, there is no swing method, there is a swing method (Nmax = 50),
And three cases with the swing method (Nmax = 100).

【0050】Nmaxは、図1のステップS16におい
て、ニュートン反復の回数であるカウンタNと比較され
る上限値であり、揺動法による方法において、50及び
100が夫々指定される。結果の項目の×は、ニュート
ン反復の収束条件が満足せず、揺動法の繰返し回数が上
限値を越えたことを示す。結果の項目の数字は、ニュー
トン反復の収束条件が満足し収束した揺動法の繰返し回
数を示す。
Nmax is an upper limit value to be compared with the counter N which is the number of Newton iterations in step S16 of FIG. 1, and 50 and 100 are respectively specified in the method by the swing method. The × in the result item indicates that the convergence condition of the Newton iteration was not satisfied and the number of repetitions of the rocking method exceeded the upper limit. The number of the item of the result indicates the number of repetitions of the rocking method in which the convergence condition of the Newton iteration is satisfied and converged.

【0051】揺動法によらない方法は、全ての解析対象
回路で収束せず、揺動法による方法は、全体の解析対象
回路の中で半分以上の回路が収束した。揺動法による方
法は、揺動法によらない方法に比して、DC動作点解析
における収束した確率が高い。
The method not using the swing method did not converge in all the circuits to be analyzed, and the method using the swing method converged more than half of the circuits to be analyzed. The swing method has a higher probability of convergence in the DC operating point analysis than the method not based on the swing method.

【0052】また、揺動法による方法は、規模の大きい
回路(回路番号9及び10)ほど、DC動作点解析にお
ける収束性が悪い傾向があり、Nmax=100の場合に
比して、Nmax=50の場合のほうが、揺動法の繰返し
回数がやや多い傾向がある。
In the swing method, the larger the circuits (circuit numbers 9 and 10), the lower the convergence in the DC operating point analysis tends to be. In the case of 50, the number of repetitions of the rocking method tends to be slightly larger.

【0053】後者の傾向の理由としては、節点電位が計
算される過程で、周期的変動に至る前に、ニュートン反
復の回数が上限値を越え、ニュートン反復が打ち切られ
るためであると思われる。しかし、回路番号1のように
Nmax=50でないと、収束しない場合もある。
It is considered that the reason for the latter tendency is that the number of Newton repetitions exceeds the upper limit and the Newton repetition is terminated before the periodic fluctuation occurs in the process of calculating the node potential. However, convergence may not be achieved unless Nmax = 50 as in the circuit number 1.

【0054】図4は、表2の揺動法による方法(Nmax
=100)における節点電位の残差の変化を示す。節点
電位の残差は、図1のステップ15及び図3のステップ
32で、収束条件の判定のために参照される値である。
FIG. 4 shows a method (Nmax) according to the swing method shown in Table 2.
= 100) shows the change in the residual of the node potential. The residual of the node potential is a value that is referred to in step 15 in FIG. 1 and step 32 in FIG. 3 to determine the convergence condition.

【0055】回路番号2、5、及び、8の場合、揺動法
の繰返し回数が大きくなると、残差の平均値が小さくな
り、揺動法による方法が有効に作用したことを示す。
In the case of the circuit numbers 2, 5, and 8, as the number of repetitions of the swing method increases, the average value of the residuals decreases, indicating that the method based on the swing method worked effectively.

【0056】回路番号6の場合、揺動法の繰返し回数に
依存せず、残差の平均値が殆ど一定であり、揺動法によ
る方法が偶然作用したことを示す。
In the case of the circuit number 6, the average value of the residuals is almost constant without depending on the number of repetitions of the swing method, indicating that the method by the swing method acted by chance.

【0057】回路番号3及び7の場合、揺動法の反復回
数が1であるため、揺動法による方法が作用したか評価
できない。
In the case of the circuit numbers 3 and 7, since the number of repetitions of the swing method is 1, it cannot be evaluated whether the method based on the swing method worked.

【0058】上記実施形態例によれば、収束条件が満足
しないと、その時点の変数の値に乱数を掛けた値を初期
値として再設定し、ニュートン反復を繰り返し行うの
で、解析対象回路の各ノードの節点電位を求めるDC動
作点解析に用いられるニュートン反復の収束条件を満足
する確率を高くすることができる。
According to the above embodiment, if the convergence condition is not satisfied, a value obtained by multiplying the value of the variable at that time by a random number is reset as an initial value, and Newton repetition is repeatedly performed. It is possible to increase the probability of satisfying the convergence condition of Newton iteration used in DC operating point analysis for obtaining a node potential of a node.

【0059】なお、上記実施形態例ではニュートン法を
用いて計算が行われる回路シミュレーションの分野につ
いて説明したが、ニュートン法を用いて計算が行われる
金融関係等の他の分野にも適用することができる。
In the above embodiment, the field of circuit simulation in which calculation is performed using the Newton method has been described. However, the present invention can be applied to other fields such as financial relations in which calculation is performed using the Newton method. it can.

【0060】以上、本発明をその好適な実施形態例に基
づいて説明したが、本発明のシミュレーション方法及び
シュミレータは、上記実施形態例の構成にのみ限定され
るものでなく、上記実施形態例の構成から種々の修正及
び変更を施したシミュレーション方法及びシュミレータ
も、本発明の範囲に含まれる。
As described above, the present invention has been described based on the preferred embodiment. However, the simulation method and the simulator of the present invention are not limited only to the configuration of the above-described embodiment, and are not limited thereto. Simulation methods and simulators with various modifications and changes from the configuration are also included in the scope of the present invention.

【0061】[0061]

【発明の効果】以上説明したように、本発明のシミュレ
ーション方法及びシュミレータでは、収束条件が満足し
ないと、その時点の変数の値に乱数を掛けた値を初期値
として再設定し、ニュートン反復を繰り返し行うので、
解析対象回路の各ノードの節点電位を求めるDC動作点
解析に用いられるニュートン反復の収束条件を満足する
確率を高くすることができる。
As described above, in the simulation method and the simulator according to the present invention, when the convergence condition is not satisfied, a value obtained by multiplying the value of the variable at that time by a random number is reset as an initial value, and Newton iteration is performed. Because it repeats,
It is possible to increase the probability of satisfying the convergence condition of Newton's iteration used in DC operating point analysis for obtaining a node potential of each node of the analysis target circuit.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態例のシミュレーション方法
を示すフローチャートである。
FIG. 1 is a flowchart illustrating a simulation method according to an embodiment of the present invention.

【図2】ニュートン法の適用例を示す。FIG. 2 shows an application example of the Newton method.

【図3】図1の節点電位の設定の処理のフローチャート
である。
FIG. 3 is a flowchart of a process of setting a node potential in FIG. 1;

【図4】表2の揺動法による方法(Nmax=100)に
おける節点電位の残差の変化を示す。
FIG. 4 shows a change in the residual of the nodal potential in the method based on the swing method in Table 2 (Nmax = 100).

【図5】特開平5−342294号公報に記載の回路シ
ミュレータのブロック図である。
FIG. 5 is a block diagram of a circuit simulator described in Japanese Patent Application Laid-Open No. 5-342294.

【図6】図6は、図5のシミュレーション方法でDC動
作点解析が行われる解析対象回路の一例である。
FIG. 6 is an example of an analysis target circuit in which DC operating point analysis is performed by the simulation method of FIG. 5;

【符号の説明】[Explanation of symbols]

81 解析条件ファイル 82 解析条件読出し部 83 動作点解析部 84 動作点判断部 85 不収束ノード記憶部 86 収束・不収束解析結果出力部 87 解析結果ファイル 88 収束・不収束解析データ 89 ノード初期値設定部 90 不収束ノード再解析制御部 81 Analysis condition file 82 Analysis condition reading unit 83 Operating point analysis unit 84 Operating point determination unit 85 Non-convergence node storage unit 86 Convergence / non-convergence analysis result output unit 87 Analysis result file 88 Convergence / non-convergence analysis data 89 Node initial value setting Unit 90 non-convergence node re-analysis control unit

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 複数の変数を有する連立方程式からニュ
ートン反復法を用いて前記変数の解を求めるシミュレー
ション方法において、 前記各変数に夫々初期値を与えてニュートン反復を行う
ステップ、 前記ニュートン反復によって得られた各変数の解を解析
し、各変数の解が所定の収束条件を満足するか否かを判
定するステップ、 前記判定において、収束条件を満足していると判定され
た変数についてはその時点の解を新たな初期値として与
え、収束条件を満足していないと判定された変数につい
てはその時点の解を乱数に基づいて修正して新たな初期
値として与えるステップ、及び、 前記新たな初期値に基づいて更にニュートン反復を行う
ステップを有することを特徴とするシミュレーション方
法。
1. A simulation method for obtaining a solution of a variable using a Newton iteration method from a simultaneous equation having a plurality of variables, wherein the step of giving an initial value to each of the variables and performing a Newton iteration is obtained by the Newton iteration. Analyzing the solution of each of the obtained variables to determine whether the solution of each variable satisfies a predetermined convergence condition. Is given as a new initial value, and for a variable determined not to satisfy the convergence condition, the solution at that time is corrected based on a random number and given as a new initial value; and Performing a Newton iteration on the basis of the value.
【請求項2】 前記乱数は、一様分布の確率に基づいて
発生させる、請求項1に記載のシミュレーション方法。
2. The simulation method according to claim 1, wherein the random number is generated based on a probability of a uniform distribution.
【請求項3】 所定回数のニュートン反復が行われる毎
に、収束条件を満足するか否かの判定ステップを行う、
請求項1又は2に記載のシミュレーション方法。
3. A step of determining whether a convergence condition is satisfied is performed every time a predetermined number of Newton iterations are performed.
The simulation method according to claim 1.
【請求項4】 前記収束条件の判定ステップ、及び、新
たなニュートン反復ステップが所定回数行われると、エ
ラー表示を行ってシミュレーションを終了する、請求項
1〜3の何れかに記載のシミュレーション方法。
4. The simulation method according to claim 1, wherein when the convergence condition determination step and the new Newton iteration step are performed a predetermined number of times, an error is displayed and the simulation is terminated.
【請求項5】 前記エラー表示と共に、収束条件を満足
する変数、該変数のその時点の解、及び、収束条件を満
足しない変数を表示する、請求項4に記載のシミュレー
ション方法。
5. The simulation method according to claim 4, wherein a variable satisfying a convergence condition, a solution of the variable at that time, and a variable not satisfying the convergence condition are displayed together with the error display.
【請求項6】 収束条件を満足していないと判定された
変数についてはその時点の解に乱数を掛けて新たな初期
値とする、請求項1〜5の何れかに記載のシミュレーシ
ョン方法。
6. The simulation method according to claim 1, wherein a variable determined as not satisfying the convergence condition is a new initial value by multiplying a solution at that time by a random number.
【請求項7】 前記変数が夫々、回路内のノードの電圧
又は電流である、請求項1〜6の何れかに記載のシミュ
レーション方法。
7. The simulation method according to claim 1, wherein each of the variables is a voltage or a current of a node in the circuit.
【請求項8】 請求項1〜7の何れかに記載のシミュレ
ーション方法を行うシミュレータ。
8. A simulator for performing the simulation method according to claim 1.
JP2000398013A 2000-12-27 2000-12-27 Simulation method and simulator Pending JP2002197401A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000398013A JP2002197401A (en) 2000-12-27 2000-12-27 Simulation method and simulator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000398013A JP2002197401A (en) 2000-12-27 2000-12-27 Simulation method and simulator

Publications (1)

Publication Number Publication Date
JP2002197401A true JP2002197401A (en) 2002-07-12

Family

ID=18863062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000398013A Pending JP2002197401A (en) 2000-12-27 2000-12-27 Simulation method and simulator

Country Status (1)

Country Link
JP (1) JP2002197401A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009157623A (en) * 2007-12-26 2009-07-16 Nec Electronics Corp System and method for circuit simulation
JP2011081674A (en) * 2009-10-08 2011-04-21 Central Res Inst Of Electric Power Ind Method for obtaining operating point of system with nonlinear element characteristics approximated into divided polygonal line by electronic computer, program for the same, storage medium storing the program, and simulation device
KR20190023309A (en) * 2017-08-28 2019-03-08 이지수 Visual educational tools for improving understanding of calculus

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009157623A (en) * 2007-12-26 2009-07-16 Nec Electronics Corp System and method for circuit simulation
JP2011081674A (en) * 2009-10-08 2011-04-21 Central Res Inst Of Electric Power Ind Method for obtaining operating point of system with nonlinear element characteristics approximated into divided polygonal line by electronic computer, program for the same, storage medium storing the program, and simulation device
KR20190023309A (en) * 2017-08-28 2019-03-08 이지수 Visual educational tools for improving understanding of calculus
KR101994527B1 (en) * 2017-08-28 2019-09-30 이지수 Visual educational tools for improving understanding of calculus

Similar Documents

Publication Publication Date Title
Nilim et al. Robustness in Markov decision problems with uncertain transition matrices
Sjöberg et al. Initializing Wiener–Hammerstein models based on partitioning of the best linear approximation
Shi et al. Compact representation and efficient generation of s-expanded symbolic network functions for computer-aided analog circuit design
US6289296B1 (en) Statistical simulation method and corresponding simulation system responsive to a storing medium in which statistical simulation program is recorded
Tlelo-Cuautle et al. Optimising operational amplifiers by evolutionary algorithms and gm/Id method
US20050267851A1 (en) Fitness function circuit, genetic algorithm machine, and fitness evaluation method
US8056045B2 (en) System and method for circuit simulation
Sanabria-Borbón et al. Sizing analogue integrated circuits by integer encoding and NSGA-II
Echenique Extensive-form games and strategic complementarities
JPH10240788A (en) Method for simulating semiconductor integrated circuit
JP6777574B2 (en) Piecewise linear approximation function generator and method
US7606693B2 (en) Circuit simulation with decoupled self-heating analysis
JP2002197401A (en) Simulation method and simulator
JP4486693B2 (en) Circuit simulator
US11157674B2 (en) Transistor sizing for parameter obfuscation of analog circuits
JPH04233665A (en) Method for determining dc operating state of circuit, simulating method of circuit operation and manufacture of circuit
US6795840B1 (en) Method for generating a sequence of random numbers of A 1/f-noise
US7308467B2 (en) Method for on-demand generation of individual random numbers of a sequence of random numbers of a 1/f noise
Coşkun et al. Equivalence Checking of System-Level and SPICE-Level Models of Static Nonlinear Circuits
JP2006221375A (en) Field effect transistor model, circuit simulation device, circuit simulation method, program for circuit simulation, and recording medium
JP4051937B2 (en) Non-linear element characteristic value calculation method and apparatus
Wang et al. Robust control of nonlinear systems with parametric uncertainty
JP5294328B2 (en) Method for obtaining operating point of system whose characteristic of nonlinear element is approximated by piecewise broken line by electronic computer, program thereof, recording medium recording the program, and simulation apparatus
KR20040000060A (en) Method for decoding error correction codes using approximate function
JPH07175789A (en) Numerically analyzing method of electric characteristic in semiconductor device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040421

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041122