JPH0916640A - Circuit simulator and block relaxation repetitive simulating method - Google Patents

Circuit simulator and block relaxation repetitive simulating method

Info

Publication number
JPH0916640A
JPH0916640A JP7168250A JP16825095A JPH0916640A JP H0916640 A JPH0916640 A JP H0916640A JP 7168250 A JP7168250 A JP 7168250A JP 16825095 A JP16825095 A JP 16825095A JP H0916640 A JPH0916640 A JP H0916640A
Authority
JP
Japan
Prior art keywords
circuit
external
partial
external node
nodes
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.)
Withdrawn
Application number
JP7168250A
Other languages
Japanese (ja)
Inventor
Tetsuo Kage
哲郎 鹿毛
Fumiyo Kawato
富美代 川藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP7168250A priority Critical patent/JPH0916640A/en
Publication of JPH0916640A publication Critical patent/JPH0916640A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE: To improve the efficiency of convergence for a block relaxation repetitive simulating method. CONSTITUTION: A net list reading means 4 reads out a net list indicating the connecting relation of elements in an object circuit, a transistor(TR) group extracting means 5 extracts a TR group having a minimum unit function, a circuit dividing means 6 divides the object circuit into plural partial circuits in each TR group, and a signal propagation flow graph extracting means 7 recognizes a signal flow direction from an input terminal up to an output terminal based upon the connecting relation of TR groups. An analyzing means 8 executes the parallel analysis of plural partial circuits by a direct method or a relaxation method and analyzes the whole circuit by an iterative solution method.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、回路シミュレータ及び
シミュレーション方法に関し、特に、大規模集積回路の
ように非線形な大規模回路やシステムの数値シミュレー
ションを、計算機を用いて行う場合に適用して好適なも
のである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a circuit simulator and a simulation method, and is particularly suitable for application when a computer is used to perform numerical simulation of a nonlinear large-scale circuit or system such as a large-scale integrated circuit. It is something.

【0002】[0002]

【従来の技術】集積回路などを製造する場合、その電気
特性を十分に検証しておくことが必要であり、計算機に
よる回路動作の数値シミュレーションが不可欠となって
いる。しかしながら、集積回路の高密度化や大規模化に
伴い、1つの回路のシミュレーションにかかる時間は非
常に長大化し、特に複雑な非線形特性のため、ニュート
ン法による線形化方程式をLU分解法などの直接法行列
求解に基づいて解く場合に時間がかかるようになってき
た。
2. Description of the Related Art When manufacturing an integrated circuit or the like, it is necessary to sufficiently verify the electrical characteristics thereof, and a numerical simulation of circuit operation by a computer is indispensable. However, as integrated circuits become denser and larger in scale, the time taken to simulate one circuit becomes extremely long. Especially, due to the complicated non-linear characteristics, linearization equations based on Newton's method can be converted directly into LU decomposition methods. It has become time-consuming to solve based on the solution of the normal matrix.

【0003】このため、従来の回路シミュレータは、非
線形な大規模回路を正確で高速にシュミレートするた
め、複数のプロセッサを相互に接続した並列計算機シス
テムを用いて並列処理を行っていた。例えば、図14に
示すように、対象となる回路を部分回路i、j、kに分
割し、境界となる外部節点Pi 、Pj 、Pk に外部節点
電圧vi 、vj 、vk を与えて、各部分回路i、j、k
の解析するブロック緩和反復シミュレーション法が用い
られていた。
For this reason, the conventional circuit simulator performs parallel processing by using a parallel computer system in which a plurality of processors are connected to each other in order to accurately and quickly simulate a large-scale nonlinear circuit. For example, as shown in FIG. 14, to divide the circuit to be partial circuit i, j, a k, external nodes P i at the boundary, P j, P k to the external node voltages v i, v j, v k And each subcircuit i, j, k
The block relaxation iterative simulation method to analyze was used.

【0004】すなわち、このブロック緩和反復シミュレ
ーション法は、図15のステップS1に示すように、対
象となる回路を部分回路i、j、kに分割し、ステップ
S2で部分回路i、j、kのロードを行い、ステップS
3で外部節点電圧vi 、vj、vk の設定を行う。
That is, in this block relaxation iterative simulation method, as shown in step S1 of FIG. 15, a target circuit is divided into partial circuits i, j, k, and in step S2, the partial circuits i, j, k are divided. Load, step S
In step 3, the external node voltages v i , v j and v k are set.

【0005】次に、ステップS4に示すように、部分回
路i、j、kの解析を各部分回路i、j、kに対応して
設けられたプロセッサPEi 、PEj 、PEk で並列に
行う。
Next, as shown in step S4, the analysis of the partial circuits i, j, k is performed in parallel by the processors PE i , PE j , PE k provided corresponding to the partial circuits i, j, k. To do.

【0006】次に、ステップS5に示すように、ステッ
プS4の部分回路i、j、kの解析で求めた外部節点電
圧vi ´、vj ´、vk ´が、ステップS3で設定した
外部節点電圧vi 、vj 、vk に収束するかどうかの判
断を行い、収束しない場合はステップS3に戻り、収束
するまでステップS3〜S5の動作を繰り返す。
Next, as shown in step S5, the external node voltages v i ′, v j ′, v k ′ obtained by the analysis of the partial circuits i, j, k in step S4 are the external node voltages set in step S3. It is determined whether or not the voltages converge to the node voltages v i , v j , and v k, and if they do not converge, the process returns to step S3, and the operations of steps S3 to S5 are repeated until they converge.

【0007】次に、ステップS3〜S5の動作を図16
を参照しながらより詳しく説明する。図14のような回
路に対して、(1)式に示すような線形連立方程式が成
立する。
Next, the operation of steps S3 to S5 will be described with reference to FIG.
Will be described in more detail with reference to. For the circuit as shown in FIG. 14, a linear simultaneous equation as shown in equation (1) is established.

【0008】[0008]

【数1】 (Equation 1)

【0009】ここで、 Ai :部分回路iの内部節点間のアドミタンス回路行列 Bi :部分回路iの内部節点と外部節点との間のアドミ
タンス回路行列 Ci :部分回路iの外部節点と内部節点との間のアドミ
タンス回路行列 D :外部回路の外部節点間のアドミタンス回路行列 xi :部分回路iの内部(節点電圧)変数ベクトル v :外部(節点電圧)変数ベクトル bi :部分回路iの内部(電流源)電源ベクトル d :外部(電流源)電源ベクトルである。
[0009] Here, A i: partial circuit i admittance circuit matrix B i between the internal nodes of: admittance circuit matrix between internal nodes and external nodes of the partial circuit i C i: external nodes and internal partial circuit i Admittance circuit matrix between the nodes D: Admittance circuit matrix between external nodes of the external circuit x i : Internal (node voltage) variable vector of the partial circuit i v: External (node voltage) variable vector b i : of the partial circuit i Internal (current source) power supply vector d: External (current source) power supply vector.

【0010】この(1)式は、以下の(2)〜(6)式
に展開される。 A1 1 +B1 v=b1 ・・・(2)式 A2 2 +B2 v=b2 ・・・(3)式 : Ai i +Bi v=bi ・・・(4)式 : An n +Bn v=bn ・・・(5)式 Dv=d−(C1 1 +C2 2 +・・・+Cn n )・・・(6)式 まず、図16のステップS100で外部変数ベクトルv
に初期値v0 を設定する。
This equation (1) is developed into the following equations (2) to (6). A 1 x 1 + B 1 v = b 1 ... (2) Formula A 2 x 2 + B 2 v = b 2 ... (3) Formula: A i x i + B i v = b i ... (4 ) formula: A n x n + B n v = b n ··· (5) formula Dv = d- (C 1 x 1 + C 2 x 2 + ··· + C n X n) ··· (6) equation first , The external variable vector v in step S100 of FIG.
To the initial value v 0 .

【0011】次に、ステップS101〜S10nに示す
ように、ステップS100で与えられた外部変数ベクト
ルvに対して、各プロセッサPE1 〜PEn で(2)式
〜(5)式を解析することにより、各部分回路1〜nの
内部変数ベクトルx1 〜xnを求める。そして、内部変
数ベクトルx1 〜xn が所定の値に収束している場合、
ホスト計算機に内部変数ベクトルx1 〜xn を送信す
る。
Next, as shown in steps S101 to S10n, the equations (2) to (5) are analyzed by the processors PE 1 to PE n with respect to the external variable vector v given in step S100. Thus, the internal variable vectors x 1 to x n of the respective partial circuits 1 to n are obtained. Then, when the internal variable vectors x 1 to x n converge to a predetermined value,
The internal variable vectors x 1 to x n are transmitted to the host computer.

【0012】次に、ステップS200、S210に示す
ように、ホスト計算機では、各プロセッサPE1 〜PE
n から送信された内部変数ベクトルx1 〜xn に基づい
て、(6)式の解析により外部変数ベクトルvを求め
る。そして、ステップS220に示すように、外部変数
ベクトルvが収束したかどうかを判定する。
Next, as shown in steps S200 and S210, in the host computer, each of the processors PE 1 to PE
Based on the internal variable vectors x 1 to x n transmitted from n , the external variable vector v is obtained by the analysis of the equation (6). Then, as shown in step S220, it is determined whether or not the external variable vector v has converged.

【0013】次に、ステップS230に示すように、求
めた外部変数ベクトルvが初期値v0 に十分近くない場
合、ステップS100に戻り、この求めた外部変数ベク
トルvを初期値v0 として以上の処理を繰り返す。
Next, as shown in step S230, when the obtained external variable vector v is not sufficiently close to the initial value v 0 , the process returns to step S100 and the obtained external variable vector v is set as the initial value v 0 . Repeat the process.

【0014】[0014]

【発明が解決しようとする課題】従来のブロック緩和反
復シミュレーション法は、シミュレーションを行う対象
回路が同一の場合においても、回路の分割方法や緩和反
復する変数の選択法により、反復の収束速度が大きく異
なっていた。そのため、ブロック緩和反復シミュレーシ
ョンを並列処理で効率よく行うためには、ブロックの大
きさの均等化やブロック間の通信量の最小化が必要とさ
れていた。
In the conventional block relaxation iterative simulation method, even if the target circuit to be simulated is the same, the convergence speed of the iteration is high due to the circuit division method and the relaxation iteration variable selection method. It was different. Therefore, in order to perform the block relaxation iterative simulation efficiently in parallel, it is necessary to equalize the block sizes and minimize the communication volume between blocks.

【0015】例えば、解くべき行列Aを、 A=B−C ・・・(7)式 の形式に分ける。ここで、行列Bは、 Bx=d ・・・(8)式 を容易に解くことができる行列、例えば、対角行列や下
三角行列である。
For example, the matrix A to be solved is divided into the form of A = B-C (7). Here, the matrix B is a matrix in which Bx = d (8) can be easily solved, for example, a diagonal matrix or a lower triangular matrix.

【0016】なお、 A=L+D+U ・・・(9)式 とすると、ガウス−ヤコビ法では、B=D、C=−(L
+U)となり、ガウス−ザイデル法では、B=(L+
D)、C=−Uとなる。また、Lは下三角行列、Dは対
角行列、Uは上三角行列を表している。
A = L + D + U (9) In the Gauss-Jacobi method, B = D and C =-(L
+ U), and in the Gauss-Seidel method, B = (L +
D) and C = -U. L is a lower triangular matrix, D is a diagonal matrix, and U is an upper triangular matrix.

【0017】ここで、 xk+1 =−B-1cxk +c-1b ・・・(10)式 の緩和反復が収束するための条件は、 スペクトル半径ρ(B-1C)<1 ・・・(11)式 である。Here, x k + 1 = −B −1 cx k + c −1 b (10) The condition for the relaxation iteration to converge is that the spectral radius ρ (B −1 C) <1. It is a formula (11).

【0018】次に、2次元の行列で変数の接続度を考え
る。
Next, let us consider the degree of connection of variables in a two-dimensional matrix.

【0019】[0019]

【数2】 (Equation 2)

【0020】(12)式において、ガウス−ザイデル法
では、スペクトル半径ρ(B-1C)は(13)式のよう
になる。
In the equation (12), in the Gauss-Seidel method, the spectrum radius ρ (B -1 C) is as shown in the equation (13).

【0021】[0021]

【数3】 (Equation 3)

【0022】(13)式において、a12とa21が、a11
とa22に比べて大きい時、密結合である。また、a12
21が、a11とa22に比べて小さい時、疎結合である。
特に、a12=0の時、ρ(B-1C)=0となり1回で収
束する。
In the equation (13), a 12 and a 21 are a 11
And a 22 are larger than that, it means a tight coupling. Further, when a 12 and a 21 are smaller than a 11 and a 22 , they are loosely coupled.
In particular, when a 12 = 0, ρ (B −1 C) = 0 and converges once.

【0023】次に、上述の概念をブロックに拡張し、ブ
ロックx1 、x2 、x3 が図17に示すように結合した
状態を考える。
Next, the above concept is extended to a block, and the state where the blocks x 1 , x 2 and x 3 are connected as shown in FIG. 17 is considered.

【0024】[0024]

【数4】 (Equation 4)

【0025】(14)式において、x2 とx3 は密結合
しているので、x2 とx3 をブロック化し、ガウス−ザ
イデル法を用いるために変数の順序を(15)式によう
に並べ換える。
In equation (14), x 2 and x 3 are tightly coupled, so x 2 and x 3 are blocked, and the order of variables is changed to equation (15) in order to use the Gauss-Seidel method. Rearrange.

【0026】[0026]

【数5】 (Equation 5)

【0027】(15)式において、x2 とx3 のブロッ
ク、
In equation (15), the blocks of x 2 and x 3 ,

【0028】[0028]

【数6】 (Equation 6)

【0029】すなわち、(16)式を直接法行列求解で
解けば、元の行列は1回の緩和反復で解くことができ
る。このように、変数の分割方法は、緩和反復の収束速
度に大きく影響する。
That is, if the equation (16) is solved by solving the direct modulus matrix, the original matrix can be solved by one relaxation iteration. As described above, the variable division method has a great influence on the convergence speed of the relaxation iteration.

【0030】しかしながら、従来のシミュレーション方
法では、対象回路を部分的に最適化する方法は考えられ
ていたが、回路の分割方法、緩和反復する変数の選択
法、或いは並列処理の効率化を回路全体から見て体系的
に行うようにしたシミュレーション方法は考えられてい
なかった。
However, in the conventional simulation method, although a method of partially optimizing the target circuit has been considered, the circuit division method, the relaxation iterative variable selection method, or the parallel processing efficiency improvement is applied to the entire circuit. From the viewpoint, a simulation method that was systematically performed was not considered.

【0031】そこで、本発明の目的は、対象回路全体か
ら見た回路の分割や緩和変数の選択を最適化することに
より、ブロック緩和反復シミュレーション法の収束効率
を向上させることができる回路シミュレータ及びシミュ
レーション方法を提供することである。
Therefore, an object of the present invention is to improve the convergence efficiency of the block relaxation iterative simulation method by optimizing the division of the circuit viewed from the entire target circuit and the selection of relaxation variables. Is to provide a method.

【0032】[0032]

【課題を解決するための手段】上述した課題を解決する
ために、対象回路を複数の部分回路に分割し、分割した
各部分回路を接続する外部節点の選択を対象回路内に信
号が伝わる順序で求め、外部節点の電位及び前記各部分
回路の内部節点の電圧を並列的に求める。
In order to solve the above-mentioned problems, the order in which a target circuit is divided into a plurality of partial circuits, and the selection of external nodes connecting each divided partial circuit is transmitted to the target circuit. Then, the potential of the external node and the voltage of the internal node of each of the partial circuits are obtained in parallel.

【0033】部分回路を複数のプロセッサに割り当てて
並列に処理する。点・ブロック緩和法では、反復の各ス
テップで内部節点及び外部節点の電位をLU分解法によ
り求める。
The partial circuits are assigned to a plurality of processors and processed in parallel. In the point / block relaxation method, the potentials of the internal node and the external node are obtained by the LU decomposition method at each step of iteration.

【0034】外部節点方程式を解く緩和法では、プロセ
ッサ内の処理をガウス−ザイデル法で行い、プロセッサ
間の処理をガウス−ヤコビ法で行う。一方、ブロック緩
和法では、複数のプロセッサを相互に接続した並列計算
機を用いて、対象回路網を外部節点で接続される部分回
路に分割して解析する機構を有するシステムにおいて、
信号入力端子を始点、信号出力端子を終点とする回路グ
ループ間の信号伝播フローグラフを抽出し、信号伝播フ
ローグラフを深さ方向優先に辿って外部節点を抽出し
て、外部節点に初期電位を与えて、前記初期電位を用い
て求まる各部分回路への入力電流を用いて各部分回路を
各プロセッサで並列に直接法を用いて解析して、新たに
外部節点の電位を求める手続きを前記外部節点の電位の
変化が許容以下になるまで繰り返す。
In the relaxation method for solving the external nodal equation, the processing in the processor is performed by the Gauss-Seidel method, and the processing between the processors is performed by the Gauss-Jacobi method. On the other hand, in the block relaxation method, a parallel computer in which a plurality of processors are connected to each other is used to divide a target network into partial circuits connected at external nodes and analyze the system.
Extract the signal propagation flow graph between the circuit groups with the signal input terminal as the start point and the signal output terminal as the end point, follow the signal propagation flow graph with priority in the depth direction to extract the external node, and set the initial potential to the external node. Given the input current to each partial circuit obtained by using the initial potential, each partial circuit is analyzed in parallel by each processor using the direct method, and a procedure for newly obtaining the potential of the external node is performed. Repeat until the change in the potential at the node is below the allowable level.

【0035】信号入力端子を始点、信号出力端子を終点
とする回路グループ間の信号伝播フローグラフを抽出
し、この信号伝播フローグラフから外部節点のみを残し
た非連結の外部節点グラフを抽出し、所定よりも多い外
部節点の部分グラフは所定以下になるまで細分化し、各
部分グラフに対して、その部分グラフを構成する外部節
点と同じ外部節点を一番多く持つ部分回路に組み込んで
反復求解する。
A signal propagation flow graph between circuit groups having a signal input terminal as a start point and a signal output terminal as an end point is extracted, and a non-connected external node graph leaving only external nodes is extracted from this signal propagation flow graph, Subgraphs with more external nodes than the given number are subdivided to less than a given number, and for each subgraph, iterative solution is performed by incorporating it into the partial circuit that has the same most external nodes as the external nodes that make up the subgraph. .

【0036】対象回路を複数の部分回路に分割し、接続
度の一番大きな部分回路に外部節点を組み込む。接続度
は、部分回路の外部節点数とその部分回路に合致する外
部節点数との割合である。
The target circuit is divided into a plurality of partial circuits, and external nodes are incorporated in the partial circuit having the largest degree of connection. The degree of connection is the ratio of the number of external nodes of the partial circuit to the number of external nodes that match the partial circuit.

【0037】対象回路を複数の部分回路に分割し、部分
回路が最も多く接続している外部節点を、その外部節点
が接続している全ての部分回路に組み込む。トランジス
タグループの接続関係に基づいて、入力端子から出力端
子までの信号の流れる方向を認識する信号伝播フローグ
ラフ抽出手段と、信号伝播フローグラフ抽出手段の出力
に基づいて、部分回路の解析を行う解析手段とを備え
る。
The target circuit is divided into a plurality of partial circuits, and the external nodes to which the largest number of partial circuits are connected are incorporated into all the partial circuits to which the external nodes are connected. Signal propagation flow graph extraction means for recognizing the direction of signal flow from the input terminal to the output terminal based on the connection relationship of the transistor groups, and analysis for performing partial circuit analysis based on the output of the signal propagation flow graph extraction means And means.

【0038】解析手段は、部分回路と同数のプロセッサ
により並列に解析を行う。部分回路を接続する外部節点
を、接続度の一番大きな部分回路に組み込む組み込み手
段と、組み込み手段により外部節点を組み込んだ部分回
路の解析を行う解析手段とを備える。
The analysis means analyzes in parallel by the same number of processors as the partial circuits. An assembling means for incorporating an external node connecting a partial circuit into a partial circuit having the largest degree of connection and an analyzing means for analyzing the partial circuit incorporating the external node by the incorporating means.

【0039】[0039]

【作用】各部分回路の抽出と、分割した各部分回路を接
続する外部節点の選択を、対象回路内に信号が伝わる順
序で求めることにより、各部分回路を解析する際の収束
効率が向上し、シミュレーションを行う時間を短くする
ことができる。
[Function] By extracting each partial circuit and selecting the external node connecting each divided partial circuit in the order in which the signal is transmitted in the target circuit, the convergence efficiency when analyzing each partial circuit is improved. , The simulation time can be shortened.

【0040】部分回路を複数のプロセッサに割り当てて
並列に直接法又は緩和法で処理することにより、シミュ
レーションを行う時間をより一層短くすることができ
る。点・ブロック緩和法における外部節点方程式を解く
緩和法では、プロセッサ内の処理をガウス−ザイデル法
で行い、プロセッサ間の処理をガウス−ヤコビ法で行う
ことにより、収束効率の向上と並列処理の最適化を同時
に達成することができる。
By assigning the partial circuits to a plurality of processors and processing them in parallel by the direct method or the relaxation method, the simulation time can be further shortened. In the relaxation method that solves the external nodal equation in the point / block relaxation method, the processing in the processor is performed by the Gauss-Seidel method, and the processing between the processors is performed by the Gauss-Jacobi method, which improves the convergence efficiency and optimizes the parallel processing. Can be achieved at the same time.

【0041】緩和ブロック法においては、複数のプロセ
ッサを相互に接続した並列計算機を用いて、対象回路網
を外部節点で接続される部分回路に分割して解析する機
構を有するシステムにおいて、信号入力端子を始点、信
号出力端子を終点とする回路グループ間の信号伝播フロ
ーグラフを抽出し、信号伝播フローグラフを深さ方向優
先に辿って外部節点を抽出して、外部節点に初期電位を
与えて、前記初期電位を用いて求まる各部分回路への入
力電流を用いて各部分回路を各プロセッサで並列に直接
法を用いて解析して、新たに外部節点の電位を求める手
続きを前記外部節点の電位の変化が許容以下になるまで
繰り返す。
In the relaxation block method, a signal input terminal is used in a system having a mechanism for dividing a target circuit network into partial circuits connected at external nodes by using a parallel computer in which a plurality of processors are connected to each other. The signal propagation flow graph between the circuit groups having the start point and the signal output terminal as the end point is extracted, the external node is extracted by tracing the signal propagation flow graph with priority in the depth direction, and the initial potential is given to the external node. Using the input current to each sub-circuit obtained by using the initial potential, each sub-circuit is analyzed in parallel in each processor using the direct method, and the procedure for newly finding the potential of the external nodal is described as follows. Repeat until the change is below the allowable value.

【0042】信号入力端子を始点、信号出力端子を終点
とする回路グループ間の信号伝播フローグラフを抽出
し、この信号伝播フローグラフから外部節点のみを残し
た非連結の外部節点グラフを抽出し、所定よりも多い外
部節点の部分グラフは所定以下になるまで細分化し、各
部分グラフに対して、その部分グラフを構成する外部節
点と同じ外部節点を一番多く持つ部分回路に組み込んで
反復求解する。
A signal propagation flow graph between circuit groups having a signal input terminal as a start point and a signal output terminal as an end point is extracted, and an unconnected external node graph leaving only external nodes is extracted from this signal propagation flow graph, Subgraphs with more external nodes than the given number are subdivided to less than a given number, and for each subgraph, iterative solution is performed by incorporating it into the partial circuit that has the same most external nodes as the external nodes that make up the subgraph. .

【0043】対象回路を複数の部分回路に分割し、接続
度の一番大きな部分回路に外部節点を組み込むことによ
り、各部分回路内の変数間の相互関係が強くなり、各部
分回路を解析する際の収束効率を向上させることができ
る。
By dividing the target circuit into a plurality of partial circuits and incorporating an external node in the partial circuit having the largest degree of connection, the mutual relationship between the variables in each partial circuit is strengthened, and each partial circuit is analyzed. In this case, the convergence efficiency can be improved.

【0044】接続度を部分回路の外部節点数とその部分
回路に合致する外部節点数との割合とすることにより、
接続度を容易に求めることができ、外部節点を部分回路
に組み込む際の処理を簡単に行うことができる。
By setting the connection degree as the ratio of the number of external nodes of the partial circuit and the number of external nodes that match the partial circuit,
The degree of connection can be easily obtained, and the process of incorporating an external node in a partial circuit can be easily performed.

【0045】外部節点の電位をLU分解法により求める
ことにより、高速処理が可能となる。対象回路を複数の
部分回路に分割し、部分回路が最も多く接続している外
部節点を、その外部節点が接続している全ての部分回路
に組み込むことにより、各部分回路内の変数間の相互関
係をより一層強固にすることができ、各部分回路を解析
する際の収束効率を向上させることができる。
High-speed processing is possible by obtaining the potential of the external node by the LU decomposition method. By dividing the target circuit into multiple partial circuits, and incorporating the external nodes to which the most partial circuits are connected to all the partial circuits to which the external nodes are connected, mutual variables between variables in each partial circuit The relationship can be further strengthened, and the convergence efficiency at the time of analyzing each partial circuit can be improved.

【0046】入力端子から出力端子までの信号の流れる
方向に基づいて、抽出した部分回路の解析を行うことに
より、各部分回路を解析する際の収束効率が向上し、シ
ミュレーションを行う時間を短くすることができる。
By analyzing the extracted partial circuits based on the direction of signal flow from the input terminal to the output terminal, the convergence efficiency at the time of analyzing each partial circuit is improved and the simulation time is shortened. be able to.

【0047】部分回路と同数のプロセッサにより並列に
解析を行うことにより、シミュレーションを行う時間を
より一層短くすることができる。部分回路を接続する外
部節点を、接続度の 一番大きな部分回路に組み込んで
部分回路の解析を行うことにより、各部分回路内の変数
間の相互関係が強くなり、各部分回路を解析する際の収
束効率を向上させることができる。
By performing the analysis in parallel with the same number of processors as the partial circuits, it is possible to further shorten the simulation time. By incorporating the external node that connects the partial circuits into the partial circuit with the largest degree of connection and performing the partial circuit analysis, the mutual relationship between the variables in each partial circuit becomes stronger, and when analyzing each partial circuit. The convergence efficiency of can be improved.

【0048】部分回路が最も多く接続している外部節点
を、その外部節点が接続している全ての部分回路に組み
込んで部分回路の解析を行うことにより、各部分回路内
の変数間の相互関係をより一層強固にすることができ、
各部分回路を解析する際の収束効率を向上させることが
できる。
The external nodes to which the largest number of partial circuits are connected are incorporated into all the partial circuits to which the external nodes are connected, and the partial circuits are analyzed to determine the mutual relationship between the variables in each partial circuit. Can be made even stronger,
It is possible to improve the convergence efficiency when analyzing each partial circuit.

【0049】[0049]

【実施例】以下、本発明の一実施例による回路シミュレ
ータを図面を参照しながら説明する。図1は、本発明の
一実施例による回路シミュレータの概略構成を示すブロ
ック図である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS A circuit simulator according to an embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic configuration of a circuit simulator according to an embodiment of the present invention.

【0050】図1において、並列計算機3は、2次元格
子状に接続された複数のプロセッサPE1 〜PEn を備
えている。各プロセッサPE1 〜PEn は、ネットワー
クを介して任意のプロセッサPE1 〜PEn と通信でき
る。また、各プロセッサPE1 〜PEn は、バス2を介
してホスト計算機1に現在の動作状況を送信することが
できる。
In FIG. 1, the parallel computer 3 includes a plurality of processors PE 1 to PE n connected in a two-dimensional grid. Each processor PE 1 -PE n can communicate with any processor PE 1 -PE n via the network. Further, each of the processors PE 1 to PE n can send the current operating status to the host computer 1 via the bus 2.

【0051】また、図2において、4は対象回路の素子
の接続関係を示すネットリストを読み込むネットリスト
読み込み手段、5は最小単位の機能を有するトランジス
タグループを抽出するトランジスタグループ抽出手段、
6はトランジスタグループを単位として、図1の並列計
算機3のプロセッサPE1 〜PEn の数の部分回路に対
象回路を分割する回路分割手段、7はトランジスタグル
ープの接続関係に基づいて、入力端子から出力端子まで
の信号の流れる方向を認識する信号伝播フローグラフ抽
出手段、8は部分回路を並列に解析し収束の判定を行う
解析手段である。
Further, in FIG. 2, reference numeral 4 is a netlist reading means for reading a netlist showing the connection relation of elements of the target circuit, 5 is a transistor group extracting means for extracting a transistor group having a minimum unit function,
6 is a circuit dividing means for dividing the target circuit into the partial circuits of the number of processors PE 1 to PE n of the parallel computer 3 of FIG. 1 in the unit of the transistor group, and 7 is based on the connection relationship of the transistor groups from the input terminals. Signal propagation flow graph extraction means for recognizing the direction of signal flow to the output terminal, and 8 is an analysis means for analyzing partial circuits in parallel and determining convergence.

【0052】次に、本発明の一実施例による回路シミュ
レータの動作について説明する。図3において、シミュ
レーションを行う対象回路は、例えば、MOSトランジ
スタM1 〜M9 、抵抗R1 、キャパシタC1 、C2 など
から構成され、図2のネットリスト読み込み手段4によ
り、対象回路の素子の接続関係を示すネットリストを読
み込む。
Next, the operation of the circuit simulator according to the embodiment of the present invention will be described. In FIG. 3, the target circuit to be simulated is composed of, for example, MOS transistors M 1 to M 9 , a resistor R 1 , capacitors C 1 and C 2, and the like. Read the netlist showing the connection relations of.

【0053】次に、対象回路から機能を持ったまとまり
を認識し、トランジスタグループ抽出手段5により、ト
ランジスタグループTG1 〜TG3 を作成する。この場
合、一般的には、MOSトランジスタM1 〜M9 のゲー
ト入力の部分で分割してトランジスタグループTG1
TG3 の作成が行われる。例えば、トランジスタグルー
プTG1 は、MOSトランジスタM1 、M2 、抵抗
1 、キャパシタC1 から構成され、トランジスタグル
ープTG2 は、MOSトランジスタM3 、M4 、M7
キャパシタC2 から構成され、トランジスタグループT
3 は、MOSトランジスタM5 、M6 から構成されて
いる。このトランジスタグループTG1 〜TG3 は、論
理ゲートなどの最小単位の機能を有している。
Next, the functional group is recognized from the target circuit, and the transistor group extracting means 5 creates the transistor groups TG 1 to TG 3 . In this case, in general, the MOS transistors M 1 to M 9 are divided at the gate input portions to form the transistor groups TG 1 to TG 1 .
Creation of TG 3 is performed. For example, the transistor group TG 1 includes MOS transistors M 1 and M 2 , a resistor R 1 and a capacitor C 1 , and the transistor group TG 2 includes MOS transistors M 3 , M 4 and M 7 ,
The transistor group T is composed of the capacitor C 2.
G 3 is composed of MOS transistors M 5 and M 6 . The transistor groups TG 1 to TG 3 have a minimum unit function such as a logic gate.

【0054】次に、図4において、トランジスタグルー
プTG1 〜TG10を単位として、図2の回路分割手段6
により、図1の並列計算機3のプロセッサPE1 〜PE
n の数の部分回路CB1 〜CB4 に対象回路を分割す
る。この時、各部分回路CB1〜CB4 は、大きさがほ
ぼ均等で、且つ部分回路CB1 〜CB4 を接続する外部
節点P1 〜P5 の数が最小となるように対象回路を分割
する。例えば、部分回路CB1 はトランジスタグループ
TG1 〜TG3 から構成され、部分回路CB2 はトラン
ジスタグループTG4 〜TG6 から構成され、部分回路
CB3 はトランジスタグループTG7 、TG8 から構成
され、部分回路CB4 はトランジスタグループTG9
TG10から構成されている。そして、外部節点P1 は部
分回路CB1 と部分回路CB3 とを接続し、外部節点P
2 は部分回路CB1 と部分回路CB2 とを接続し、外部
節点P3 は部分回路CB2 と部分回路CB3 とを接続
し、外部節点P4 は部分回路CB2 と部分回路CB4
を接続し、外部節点P5 は部分回路CB3 と部分回路C
4 とを接続している。
Next, in FIG. 4, the circuit dividing means 6 shown in FIG. 2 is used with the transistor groups TG 1 to TG 10 as a unit.
By the processor PE 1 to PE of the parallel computer 3 of FIG.
The target circuit is divided into n sub-circuits CB 1 to CB 4 . At this time, each of the partial circuits CB 1 to CB 4 has a substantially equal size, and the target circuit is divided so that the number of external nodes P 1 to P 5 connecting the partial circuits CB 1 to CB 4 is minimized. To do. For example, the partial circuit CB 1 is composed of the transistor groups TG 1 to TG 3 , the partial circuit CB 2 is composed of the transistor groups TG 4 to TG 6 , and the partial circuit CB 3 is composed of the transistor groups TG 7 and TG 8 . The partial circuit CB 4 is a transistor group TG 9 ,
It is composed of TG 10 . The external node P 1 connects the partial circuit CB 1 and the partial circuit CB 3, and the external node P 1
2 connects the partial circuit CB 1 and the partial circuit CB 2 , the external node P 3 connects the partial circuit CB 2 and the partial circuit CB 3, and the external node P 4 connects the partial circuit CB 2 and the partial circuit CB 4 . The external node P 5 is connected to the partial circuit CB 3 and the partial circuit C.
It is connected to B 4 .

【0055】次に、各トランジスタグループTG1 〜T
10について、図3のMOSトランジスタM1 〜M9
ゲート端子をグループ入力、他のトランジスタグループ
TG1 〜TG10のゲート端子が接続する節点をグループ
出力とし、信号入力端子9、10を始点、信号出力端子
11、12を終点とする各トランジスタグループTG1
〜TG10の間のグループ信号伝播フローグラフを作成す
る。
Next, each transistor group TG 1 -T
Regarding G 10 , the gate terminals of the MOS transistors M 1 to M 9 in FIG. 3 are group inputs, the nodes connected to the gate terminals of the other transistor groups TG 1 to TG 10 are group outputs, and the signal input terminals 9 and 10 are start points. , Each of the transistor groups TG 1 having the signal output terminals 11 and 12 as end points
Create a group signal propagation flow graph between ~ TG 10 .

【0056】次に、グループ信号伝播フローグラフおい
て、回路分割を行った際の外部節点に対して外部節点フ
ラグを立てる。そして、図2の信号伝播フロー抽出手段
7で外部節点フラグを辿ることにより、外部節点の接続
や分離の状況、信号伝播順序などの必要な情報を得る。
Next, in the group signal propagation flow graph, the external node flag is set for the external node when the circuit division is performed. Then, the signal propagation flow extracting means 7 in FIG. 2 traces the external node flag to obtain necessary information such as the connection and disconnection state of the external node and the signal propagation order.

【0057】例えば、図5に示す信号伝播フローグラフ
おいて、ブロックB0 〜B7 が外部節点x1 〜x8 によ
り接続されている場合、信号伝播フローグラフを深さ方
向優先で辿り、出会った順序で外部節点x1 〜x8 を並
べる。すなわち、図6に示すように、外部節点x1 〜x
8 の順序を深さ方向優先で並び換える。
For example, in the signal propagation flow graph shown in FIG. 5, when the blocks B 0 to B 7 are connected by the external nodes x 1 to x 8 , the signal propagation flow graph is traced with priority in the depth direction, and met. The external nodes x 1 to x 8 are arranged in this order. That is, as shown in FIG. 6, the external nodes x 1 to x
Rearrange the order of 8 with priority in the depth direction.

【0058】図7は、外部節点x1 〜x8 の順序を深さ
方向優先で並び換える処理を示すフローチャートであ
る。まず、ステップS10で並べ換えテーブルの初期化
を行い、ステップS11で木の根の部分に相当するブロ
ックB0 の外部節点をスタックレジスタにスタックす
る。
FIG. 7 is a flow chart showing a process for rearranging the order of the external nodes x 1 to x 8 in the depth direction. First, the rearrangement table is initialized in step S10, and the external node of the block B 0 corresponding to the root of the tree is stacked in the stack register in step S11.

【0059】次に、ステップS12に示すように、スタ
ックレジスタにスタックがある場合、ステップS13に
進んで、スタックレジスタから外部節点x1 〜x8 を先
入れ先出し方式で取り出し、取り出した外部節点x1
8 を並べ換えテーブルに登録する。
Next, as shown in step S12, if there is a stack in the stack register, the process proceeds to step S13, the external node x 1 ~x 8 from the stack register extraction first-in first-out basis, retrieved external nodes x 1 ~
Register x 8 in the rearrangement table.

【0060】次に、ステップS14に示すように、並べ
換えテーブルに登録した外部節点x1 〜x8 に接続する
ブロックB0 〜B7 に外部節点x1 〜x8 がある場合、
ステップS15に進んで、そのブロックB0 〜B7 の外
部節点x1 〜x8 のうち1つを並べ換えテーブルに登録
し、残りの外部節点x1 〜x8 をスタックレジスタにス
タックする。そして、ステップS14に戻って、並べ換
えテーブルに登録した外部節点x1 〜x8 に接続するブ
ロックB0 〜B7 に外部節点x1 〜x8 がなくなるま
で、ステップS15の動作を繰り返す。
Next, as shown in step S14, if the blocks B 0 to B 7 connected to the external nodes x 1 to x 8 registered in the rearrangement table have external nodes x 1 to x 8 ,
Proceeds to step S15, and registered in the reordering table one of the external nodes x 1 ~x 8 of the block B 0 ~B 7, stacking remaining external nodes x 1 ~x 8 in the stack register. Then, the process returns to step S14, the block B 0 .about.B 7 for connecting to an external node x 1 ~x 8 registered in the reordering table to external nodes x 1 ~x 8 is eliminated, repeated operation of step S15.

【0061】一方、ステップS14において、並べ換え
テーブルに登録した外部節点x1 〜x8 に接続するブロ
ックB0 〜B7 に外部節点x1 〜x8 がない場合、ステ
ップS12に戻る。そして、スタックレジスタにスタッ
クがなくなるまで以上の動作を繰り返す。
[0061] On the other hand, in step S14, when the block B 0 .about.B 7 for connecting to an external node x 1 ~x 8 registered in the reordering table no external node x 1 ~x 8, the flow returns to step S12. Then, the above operation is repeated until there is no stack in the stack register.

【0062】以上のような動作が行われた後、グループ
信号伝播フローグラフの外部節点フラグからの情報に基
づいて、ブロック緩和反復アルゴリズムに応じた部分回
路CB1 〜CB4 毎の方程式を作成する。そして、図2
の解析手段8における図1の並列計算機3の各プロセッ
サPE1 〜PEn にロードして反復求解を行う。
After the above operation is performed, an equation for each of the partial circuits CB 1 to CB 4 according to the block relaxation iterative algorithm is created based on the information from the external node flag of the group signal propagation flow graph. . And FIG.
1 is loaded into each of the processors PE 1 to PE n of the parallel computer 3 of FIG.

【0063】次に、本発明の第1実施例によるシミュレ
ーション方法について説明する。この第1実施例は、点
・ブロック緩和シミュレーションと呼ばれるもので、外
部節点電圧ベクトルv0 の外部節点変数の順序を深さ方
向優先で並べることにより、収束効率を向上させたもの
である。
Next, a simulation method according to the first embodiment of the present invention will be described. This first embodiment is called a point / block relaxation simulation, and the convergence efficiency is improved by arranging the external node variables of the external node voltage vector v 0 in the depth direction first.

【0064】点・ブロック緩和シミュレーションを行う
場合、回路を分割し、分割した節点、すなわち外部節点
変数を集めると、図8に示すように、縁付きブロック対
角(BBD)行列となる。この縁付きブロック対角(B
BD)行列により、各部分回路CB1 〜CB4 毎の方程
式が得られる。なお、ここでは、回路を4つに分割し、
4台のプロセッサPE1 〜PE4 で並列に処理を行う場
合について示した。
When the point / block relaxation simulation is performed, the circuit is divided and the divided nodes, that is, the external node variables are collected to form an edged block diagonal (BBD) matrix as shown in FIG. This edged block diagonal (B
The BD) matrix gives an equation for each of the partial circuits CB 1 to CB 4 . In addition, here, the circuit is divided into four,
The case where four processors PE 1 to PE 4 perform processing in parallel has been described.

【0065】図9において、まず、ステップS20に示
すように、外部節点電圧ベクトルv0 の外部節点変数の
順序を、信号伝播フローグラフにおける深さ方向優先で
並べる。
In FIG. 9, first, as shown in step S20, the external node variables of the external node voltage vector v 0 are arranged in the depth direction priority in the signal propagation flow graph.

【0066】次に、ステップS21に示すように、外部
節点電圧ベクトルv0 に予測値を与える。次に、ステッ
プS22に示すように、図8の行列式から求めた(1
9)式を、プロセッサPEi (i=1、2、3、4)を
用いて部分回路CB1 〜CB4 毎にLU分解法で解く。
Next, as shown in step S21, a predicted value is given to the external node voltage vector v 0 . Next, as shown in step S22, the value (1
The equation 9) is solved by the LU decomposition method for each of the partial circuits CB 1 to CB 4 using the processor PE i (i = 1, 2, 3, 4).

【0067】 Ai i =ji −Bi 0 (i=1、2、3、4) ・・・(19)式 次に、ステップS23に示すように、(20)式の計算
し、求めた値をj00とする。
A i v i = j i −B i v 0 (i = 1, 2, 3, 4) Equation (19) Next, as shown in step S23, equation (20) is calculated. , And the obtained value is j 00 .

【0068】 J0 −C1 1 −C2 2 −C3 3 −C4 4 ・・・(20)式 次に、ステップS24において、図8に示すようにプロ
セッサPEi (i=1、2、3、4)に(21)式を割
り付ける。
J 0 −C 1 v 1 −C 2 v 2 −C 3 v 3 −C 4 v 4 (20) Equation Next, in step S 24, the processor PE i (i Equation (21) is assigned to = 1, 2, 3, 4).

【0069】 D0 0 =j00 ・・・(21)式 次に、ステップS25に示すように、各プロセッサPE
i (i=1、2、3、4)内では、収束速度の速いガウ
ス−ザイデル法により、各プロセッサPEi (i=1、
2、3、4)間では、並列性の高いガウス−ヤコビ法に
より、(22)式を解く。
D 0 v 0 = j 00 Equation (21) Next, as shown in step S 25, each processor PE
Within i (i = 1, 2, 3, 4), each processor PE i (i = 1,
Between (2, 3, 4), the equation (22) is solved by the highly parallel Gauss-Jacobi method.

【0070】 D0i0i=j0i(i=1、2、3、4) ・・・(22)式 次に、ステップS26に示すように、求めた外部節点電
圧ベクトルv0 ´が、予測値として与えた外部節点電圧
ベクトルv0 に十分近くなるまで、以上の処理を繰り返
す。
D 0i v 0i = j 0i (i = 1, 2, 3, 4) (22) Next, as shown in step S 26, the obtained external node voltage vector v 0 ′ is predicted. The above processing is repeated until the value is sufficiently close to the external nodal voltage vector v 0 given as a value.

【0071】以上説明したように、本発明の第1実施例
によれば、外部節点行列D0 を解く際に、外部節点変数
を信号の伝わる順序に並べてガウス−ザイデル法で解
き、その外側をガウス−ヤコビ法で解くことにより、収
束の速さと並列処理による効果の両方を期待できる。
As described above, according to the first embodiment of the present invention, when the external nodal matrix D 0 is solved, the external nodal variables are arranged in the order in which the signal is transmitted and solved by the Gauss-Seidel method, and the outside thereof is By solving with the Gauss-Jacobi method, both the speed of convergence and the effect of parallel processing can be expected.

【0072】次に、本発明の第2実施例によるシミュレ
ーション方法について説明する。この第2実施例は、ブ
ロック緩和シミュレーションと呼ばれるもので、図12
に示すように外部節点電圧ベクトルv0 の外部節点変数
01〜v04を、接続度の高い部分回路に組み込んで、部
分回路の解析を行うようにしたものである。
Next, a simulation method according to the second embodiment of the present invention will be described. This second embodiment is called block relaxation simulation and is shown in FIG.
As shown in FIG. 5 , the external node variables v 01 to v 04 of the external node voltage vector v 0 are incorporated into a partial circuit having a high degree of connection to analyze the partial circuit.

【0073】以下、外部節点変数の部分回路への組み込
み手順について説明する。図11のステップS30にお
いて、図10の非連結外部節点部分グラフEBj〜EB
j+3 を任意に1つ取り出す。ここで、非連結外部節点部
分グラフEBj 〜EBj+3 とは、共通の部分回路CB
i+1 〜CBi+4 を接続する外部節点vp 〜vp+5 の集合
である。
The procedure for incorporating the external node variable into the partial circuit will be described below. In step S30 of FIG. 11, the unconnected external node subgraphs EB j to EB of FIG.
Take one j + 3 arbitrarily. Here, the unconnected external node subgraphs EB j to EB j + 3 are common subcircuits CB.
It is a set of external nodes v p to v p + 5 connecting i + 1 to CB i + 4 .

【0074】次に、ステップS31で非連結外部節点部
分グラフEBj 〜EBj+3 がある場合、ステップS31
に進み、取り出した非連結外部節点部分グラフEBj
EBj+3 に接続する全ての部分回路CBi+1 〜CBi+4
について、接続度の計算を行う。ここで、接続度は、部
分回路CBi+1 〜CBi+4 の外部節点vp 〜vp+5 の数
と合致する外部節点vp 〜vp+5 の数との割合である。
Next, in step S31, if there are unconnected external node subgraphs EB j to EB j + 3 , step S31
And the extracted unconnected external node subgraph EB j ~
All partial circuits CB i + 1 to CB i + 4 connected to EB j + 3
About, the connection degree is calculated. Here, the connection degree is a ratio between the number of external nodes v p to v p + 5 of the partial circuits CB i + 1 to CB i + 4 and the number of matching external nodes v p to v p + 5 .

【0075】次に、外部節点を部分回路に組み込んだ後
の、部分回路の解析手順について説明する。 図13に
おいて、ステップS40〜S43の手順により、外部節
点の部分回路への組み込みが行われ、図12に示すよう
に、外部節点電圧ベクトルv0 の外部節点変数v01〜v
04が、部分回路CB1 〜CB4 の内部節点電圧変数ベク
トルv1 〜v4 に組み込まれる。また、部分回路CB1
〜CB4 の内部節点と外部節点との間のアドミタンス回
路行列B1 〜B4 、部分回路CB1 〜CB4 の外部節点
と内部節点との間のアドミタンス回路行列C1 〜C4
外部節点行列D0 は、部分回路CB1 〜CB4 の内部節
点間のアドミタンス回路行列A1 〜A4に組み込まれ
る。
Next, the analysis procedure of the partial circuit after incorporating the external node into the partial circuit will be described. In FIG. 13, the external nodes are incorporated into the partial circuit by the procedure of steps S40 to S43, and as shown in FIG. 12, the external node variables v 01 to v 01 of the external node voltage vector v 0.
04 is incorporated into the internal node voltages variable vector v 1 to v 4 partial circuit CB 1 to CB 4. Also, the partial circuit CB 1
To CB 4 of internal nodes and admittance circuit matrix between the external node B 1 ~B 4, partial circuit CB 1 admittance circuit between the external nodes and internal nodes of the to CB 4 matrix C 1 -C 4,
The external node matrix D 0 is incorporated in the admittance circuit matrix A 1 to A 4 between the internal nodes of the partial circuits CB 1 to CB 4 .

【0076】次に、ステップS44に示すように、外部
節点電圧ベクトルv0 に予測値を与える。次に、ステッ
プS45に示すように、図12の行列式から求めた(2
3)式を、プロセッサPEk を用いて部分回路CB1
CB4 毎に計算する。
Next, as shown in step S44, a predicted value is given to the external node voltage vector v 0 . Next, as shown in step S45, the value obtained from the determinant of FIG.
3) by using the processor PE k , the partial circuit CB 1
Calculate for each CB 4 .

【0077】[0077]

【数7】 (Equation 7)

【0078】次に、ステップS46に示すように、(2
4)式を、プロセッサPEk を用いて部分回路CB1
CB4 毎にLU分解法で解く。 Akkk =jk ´ ・・・(24)式 次に、ステップS47に示すように、求めた外部節点電
圧ベクトルvk が、予測値として与えた外部節点電圧ベ
クトルv0 に十分近くなるまで、以上の処理を繰り返
す。
Next, as shown in step S46, (2
4) by using the processor PE k , the partial circuit CB 1 ~
Solve by the LU decomposition method for each CB 4 . A kk v k = j k ' ··· (24) formula Next, as shown in step S47, the external node voltages vector v k obtained is close enough to the external node voltages vector v 0 given as a predicted value The above process is repeated until.

【0079】以上説明したように、本発明の第2実施例
によれば、非連結外部節点部分グラフを最も関係の深い
部分回路に組み込むことにより、ブロック内の変数間の
相互関係が強くなり、ブロック緩和反復法の収束能力を
高めることができる。
As described above, according to the second embodiment of the present invention, by incorporating the unconnected external node subgraph in the subcircuit having the deepest relation, the mutual relation between the variables in the block becomes strong. The convergence ability of the block relaxation iterative method can be improved.

【0080】次に、本発明の第3実施例によるシミュレ
ーション方法について説明する。この第3実施例は、オ
ーバーラップ・ブロック緩和シミュレーションと呼ばれ
るもので、非連結の外部節点の部分グラフを適切な部分
回路に組み込むとともに、その非連結外部節点部分グラ
フにおいて、他の部分回路が一番多く接続している外部
節点変数を、接続している全ての部分回路にもオーバー
ラップさせて組み込むようにしたものである。なお、外
部節点変数を組み込んだ後の部分回路の解析は、上述し
たブロック緩和シミュレーションと同様に行われる。
Next, a simulation method according to the third embodiment of the present invention will be described. This third embodiment is called an overlap block relaxation simulation, in which a subgraph of unconnected external nodes is incorporated into an appropriate subcircuit, and other partial circuits are integrated in the unconnected external node subgraph. The external node variables that are connected the most are overlapped and incorporated into all the connected partial circuits. The analysis of the partial circuit after incorporating the external node variable is performed in the same manner as the block relaxation simulation described above.

【0081】以上説明したように、本発明の第3実施例
によれば、各部分回路のサイズは増加するが、最も適切
な外部節点変数を部分回路にオーバーラップさせること
により、尾非連結外部節点部分グラフを最も関係の深い
部分回路に組み込むことにより、ブロック内の変数間の
相互関係がより一層強くなり、ブロック緩和反復法の収
束能力をさらに高めることができる。
As described above, according to the third embodiment of the present invention, the size of each partial circuit increases, but by overlapping the most appropriate external node variable with the partial circuit, the tail non-connected external By incorporating the nodal subgraph into the most related subcircuit, the mutual relation between the variables in the block becomes stronger, and the convergence ability of the block relaxation iterative method can be further enhanced.

【0082】[0082]

【発明の効果】以上説明したように、本発明によれば、
大規模な回路を高速にシミュレーションするために、並
列処理によるブロック緩和反復法が有効である。ブロッ
ク緩和反復は、対象回路が同じでも、回路の分割の方
法、変数の分離の方法により、収束速度が大きく異な
る。
As described above, according to the present invention,
The block relaxation iterative method by parallel processing is effective for high-speed simulation of large-scale circuits. In the block relaxation iteration, even if the target circuit is the same, the convergence speed greatly differs depending on the circuit division method and the variable separation method.

【0083】本発明では、回路の信号伝播フローグラフ
を抽出し、分割する外部節点グラフを状況を認識するこ
とにより、回路分割や変数の分離を大局的見地から最適
に行い、ブロック緩和反復法の収束速度を高めることが
できる。
In the present invention, by extracting the signal propagation flow graph of the circuit and recognizing the situation of the external node graph to be divided, the circuit division and the variable separation are optimally performed from a global perspective, and the block relaxation iteration method is used. The convergence speed can be increased.

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

【図1】本発明の一実施例による回路シミュレータの概
略構成を示すブロック図である。
FIG. 1 is a block diagram showing a schematic configuration of a circuit simulator according to an embodiment of the present invention.

【図2】本発明の第1実施例による回路シミュレータの
機能を示すブロック図である。
FIG. 2 is a block diagram showing functions of the circuit simulator according to the first embodiment of the present invention.

【図3】本発明の一実施例によるトランジスタグループ
の構成を示す回路図である。
FIG. 3 is a circuit diagram showing a configuration of a transistor group according to an embodiment of the present invention.

【図4】本発明の一実施例による部分回路の構成を示す
ブロック図である。
FIG. 4 is a block diagram showing a configuration of a partial circuit according to an embodiment of the present invention.

【図5】本発明の一実施例による信号伝播フローグラフ
を示す図である。
FIG. 5 is a diagram showing a signal propagation flow graph according to an embodiment of the present invention.

【図6】本発明の一実施例によるスタックレジスタの内
容を示す図である。
FIG. 6 is a diagram showing the contents of a stack register according to an embodiment of the present invention.

【図7】本発明の一実施例による信号伝播フローグラフ
に基づいて変数を並べる処理を示すフローチャートであ
る。
FIG. 7 is a flowchart showing a process of arranging variables based on a signal propagation flow graph according to an embodiment of the present invention.

【図8】本発明の第1実施例によるブロック対角行列を
示す図である。
FIG. 8 is a diagram showing a block diagonal matrix according to the first exemplary embodiment of the present invention.

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

【図10】本発明の一実施例による非連結外部節点を有
する部分回路の構成を示すブロック図である。
FIG. 10 is a block diagram showing a configuration of a partial circuit having a non-connected external node according to an embodiment of the present invention.

【図11】本発明の第1実施例による非連結外部節点部
分グラフの組み込み手順をを示すフローチャートであ
る。
FIG. 11 is a flowchart showing a procedure for incorporating an unconnected external node subgraph according to the first embodiment of the present invention.

【図12】本発明の第2実施例によるブロック対角行列
を示す図である。
FIG. 12 illustrates a block diagonal matrix according to a second exemplary embodiment of the present invention.

【図13】本発明の第2実施例によるシミュレーション
方法を示すフローチャートである。
FIG. 13 is a flowchart showing a simulation method according to a second embodiment of the present invention.

【図14】従来の部分回路の構成を示すブロック図であ
る。
FIG. 14 is a block diagram showing a configuration of a conventional partial circuit.

【図15】従来のシミュレーション方法を示すフローチ
ャートである。
FIG. 15 is a flowchart showing a conventional simulation method.

【図16】従来のシミュレーション方法の並列処理を示
すフローチャートである。
FIG. 16 is a flowchart showing parallel processing of a conventional simulation method.

【図17】ブロックの結合状態を示す図である。FIG. 17 is a diagram showing a combined state of blocks.

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

1 ホスト計算機 2 バス 3 並列計算機 4 ネットリスト読み込み手段 5 トランジスタグループ抽出手段 6 回路分割手段 7 信号伝播フロー抽出手段 8 収束判定手段 1 Host Computer 2 Bus 3 Parallel Computer 4 Netlist Reading Means 5 Transistor Group Extracting Means 6 Circuit Dividing Means 7 Signal Propagation Flow Extracting Means 8 Convergence Determining Means

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 複数のプロセッサを相互に接続した並列
計算機を用いて、対象回路網を外部節点で接続される部
分回路に分割して解析する機構を有するシステムにおい
て、 外部節点に初期電位を与えて、各プロセッサが各部分回
路を直接法を用いて並列に解き、この結果を使って外部
節点電位方程式を前記各プロセッサに割り当てて緩和法
を用いて並列に解析して前記外部節点の電位を更新し、
この電位の変化が許容以下になるまで繰り返す点・ブロ
ック緩和シミュレーション方法。
1. A system having a mechanism for dividing and analyzing a target circuit network into partial circuits connected at external nodes by using a parallel computer in which a plurality of processors are connected to each other, and applying an initial potential to the external nodes. Then, each processor solves each partial circuit in parallel using the direct method, and using this result, the external node potential equation is assigned to each processor and analyzed in parallel using the relaxation method to calculate the potential of the external node. Updated,
This is a point / block relaxation simulation method that is repeated until the change in this potential falls below the allowable level.
【請求項2】 信号入力端子を始点、信号出力端子を終
点とする回路グループ間の信号伝播フローグラフを抽出
し、信号伝播フローグラフを深さ方向優先に辿って外部
節点電位方程式の外部節点変数を並べ、上から均等に各
プロセッサに割り付けて反復求解することを特徴とする
請求項1記載の点・ブロック緩和シミュレーション方
法。
2. An external node variable of an external node potential equation by extracting a signal propagation flow graph between circuit groups having a signal input terminal as a start point and a signal output terminal as an end point, and tracing the signal propagation flow graph preferentially in the depth direction. 2. The point / block relaxation simulation method according to claim 1, further comprising:
【請求項3】 前記緩和法の実行において、 前記プロセッサ内の処理をガウス−ザイデル法で行い、
前記プロセッサ間の処理をガウス−ヤコビ法で行うこと
を特徴とする請求項2に記載の点・ブロック緩和シミュ
レーション方法。
3. In the execution of the relaxation method, the processing in the processor is performed by the Gauss-Seidel method,
The point / block relaxation simulation method according to claim 2, wherein the processing between the processors is performed by a Gauss-Jacobi method.
【請求項4】 複数のプロセッサを相互に接続した並列
計算機を用いて、対象回路網を外部節点で接続される部
分回路に分割して解析する機構を有するシステムにおい
て、 信号入力端子を始点、信号出力端子を終点とする回路グ
ループ間の信号伝播フローグラフを抽出し、信号伝播フ
ローグラフを深さ方向優先に辿って外部節点を抽出し
て、 外部節点に初期電位を与えて、前記初期電位を用いて求
まる各部分回路への入力電流を用いて各部分回路を各プ
ロセッサで並列に直接法を用いて解析して、新たに外部
節点の電位を求める手続きを前記外部節点の電位の変化
が許容以下になるまで繰り返すことを特徴とするブロッ
ク緩和シミュレーション方法。
4. A system having a mechanism for dividing and analyzing a target circuit network into partial circuits connected at external nodes using a parallel computer in which a plurality of processors are connected to each other, wherein a signal input terminal is a starting point and a signal is a signal. The signal propagation flow graph between the circuit groups with the output terminal as the end point is extracted, the external node is extracted by tracing the signal propagation flow graph with priority in the depth direction, and the initial potential is given to the external node to set the initial potential. Using the input current to each partial circuit obtained by using each sub-circuit in parallel in each processor using the direct method, the procedure of newly finding the potential of the external node allows the change in the potential of the external node. A block relaxation simulation method characterized by repeating until:
【請求項5】 信号入力端子を始点、信号出力端子を終
点とする回路グループ間の信号伝播フローグラフを抽出
し、この信号伝播フローグラフから外部節点のみを残し
た非連結の外部節点グラフを抽出し、所定よりも多い外
部節点の部分グラフは所定以下になるまで細分化し、各
部分グラフに対して、その部分グラフを構成する外部節
点と同じ外部節点を一番多く持つ部分回路に組み込んで
反復求解する請求項4記載のブロック緩和シミュレーシ
ョン方法。
5. A signal propagation flow graph between circuit groups having a signal input terminal as a start point and a signal output terminal as an end point is extracted, and a non-connected external node graph in which only external nodes are left is extracted from this signal propagation flow graph. However, subgraphs with more external nodes than the specified number are subdivided until the number of external nodes is less than the specified value, and for each subgraph, it is repeated by incorporating it into a partial circuit that has the same number of external nodes as the external nodes that make up the subgraph The block relaxation simulation method according to claim 4, wherein the solution is obtained.
【請求項6】 接続度の一番大きな部分回路に前記外部
節点を組み込んで前記外部節点の電位及び前記各部分回
路の内部節点の電圧を求め、前記接続度は、部分回路の
外部節点数とその部分回路に合致する外部節点数との割
合であることを特徴とする請求項5記載のブロック緩和
シミュレーション方法。
6. The potential of the external node and the voltage of the internal node of each of the partial circuits are obtained by incorporating the external node into the partial circuit having the largest degree of connection, and the degree of connection is the number of external nodes of the partial circuit. 6. The block relaxation simulation method according to claim 5, wherein the ratio is the number of external nodes that match the partial circuit.
【請求項7】 請求項5記載の反復求解方式において、 収束速度を高めるために各部分回路で変数を重複させて
反復求解を行うオーバーラップ・ブロック緩和シミュレ
ーション法を行うために、外部節点の各部分グラフにお
いて、その部分グラフを構成する外部節点のうち、部分
回路が一番多く接続する外部節点を、その外部節点に接
続するすべての部分回路にも組み込んで反復求解する方
式。
7. The iterative solution method according to claim 5, wherein in order to perform an overlapping block relaxation simulation method in which variables are overlapped in each partial circuit to increase the convergence speed, an iterative solution is performed. In a subgraph, a method that iteratively solves by incorporating the external node, which is connected to the largest number of partial circuits, among all the external nodes that make up the subgraph, into all the partial circuits connected to the external node.
【請求項8】 請求項2において、対象回路の素子の接
続関係を示すネットリストを読み込むネットリスト読み
込み手段と、 最小単位の機能を有する回路グループを抽出する回路グ
ループ抽出手段と、 前記回路グループを単位として、前記対象回路を複数の
部分回路に分割する回路分割手段と、 前記回路グループの接続関係に基づいて、入力端子から
出力端子までの信号の流れる方向を認識する信号伝播フ
ローグラフ抽出手段と、 前記信号伝播フローグラフ抽出手段の出力に基づいて、
前記部分回路の解析を該部分回路と同数のプロセッサに
より並列に行う解析手段とを備えることを特徴とする回
路シミュレータ。
8. The netlist reading unit according to claim 2, which reads a netlist indicating a connection relationship between elements of a target circuit, a circuit group extracting unit that extracts a circuit group having a function of a minimum unit, and the circuit group. As a unit, a circuit dividing means for dividing the target circuit into a plurality of partial circuits, and a signal propagation flow graph extracting means for recognizing a flowing direction of a signal from an input terminal to an output terminal based on a connection relationship of the circuit groups. , Based on the output of the signal propagation flow graph extraction means,
A circuit simulator comprising: an analyzing unit that analyzes the partial circuits in parallel by the same number of processors as the partial circuits.
【請求項9】 請求項5において、対象回路の素子の接
続関係を示すネットリストを読み込むネットリスト読み
込み手段と、 最小単位の機能を有する回路グループを抽出する回路グ
ループ抽出手段と、 前記回路グループを単位として、前記対象回路を複数の
部分回路に分割する回路分割手段と、 各部分回路に接続する外部節点を、接続度の一番大きな
部分回路に組み込む組み込み手段と、 前記組み込み手段により外部節点を組み込んだ部分回路
の解析を行う解析手段とを備えることを特徴とする回路
シミュレータ。
9. The netlist reading unit according to claim 5, which reads a netlist indicating a connection relationship between elements of a target circuit, a circuit group extracting unit that extracts a circuit group having a function of a minimum unit, and the circuit group. As a unit, a circuit dividing unit that divides the target circuit into a plurality of partial circuits, an external node that is connected to each partial circuit, an assembling unit that is incorporated into the partial circuit having the largest degree of connection, and an external node that is formed by the assembling unit. A circuit simulator comprising: an analyzing unit that analyzes an incorporated partial circuit.
JP7168250A 1995-06-10 1995-06-10 Circuit simulator and block relaxation repetitive simulating method Withdrawn JPH0916640A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7168250A JPH0916640A (en) 1995-06-10 1995-06-10 Circuit simulator and block relaxation repetitive simulating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7168250A JPH0916640A (en) 1995-06-10 1995-06-10 Circuit simulator and block relaxation repetitive simulating method

Publications (1)

Publication Number Publication Date
JPH0916640A true JPH0916640A (en) 1997-01-17

Family

ID=15864537

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7168250A Withdrawn JPH0916640A (en) 1995-06-10 1995-06-10 Circuit simulator and block relaxation repetitive simulating method

Country Status (1)

Country Link
JP (1) JPH0916640A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013101608A (en) * 2011-10-17 2013-05-23 Mizuho Information & Research Institute Inc Non-linear structure analysis calculation device, non-linear structure analysis calculation method and non-linear structure analysis calculation program
JP2016009320A (en) * 2014-06-24 2016-01-18 富士電機株式会社 Simulation device for electric circuit, simulation method for electric circuit, and program
US9690750B2 (en) 2014-01-17 2017-06-27 Fujitsu Limited Arithmetic device, arithmetic method, and wireless communication device
JP2019008794A (en) * 2017-06-20 2019-01-17 ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH Computer implementation method for simulation of whole electric circuit

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013101608A (en) * 2011-10-17 2013-05-23 Mizuho Information & Research Institute Inc Non-linear structure analysis calculation device, non-linear structure analysis calculation method and non-linear structure analysis calculation program
US9690750B2 (en) 2014-01-17 2017-06-27 Fujitsu Limited Arithmetic device, arithmetic method, and wireless communication device
JP2016009320A (en) * 2014-06-24 2016-01-18 富士電機株式会社 Simulation device for electric circuit, simulation method for electric circuit, and program
JP2019008794A (en) * 2017-06-20 2019-01-17 ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH Computer implementation method for simulation of whole electric circuit

Similar Documents

Publication Publication Date Title
US5930499A (en) Method for mixed placement of structured and non-structured circuit elements
CN114742001B (en) System static time sequence analysis method based on multiple FPGA
CN103294600B (en) Based on the automatic design for Measurability method of the automatic design for Measurability system of the EDIF net table level circuit of Perl
US8020122B2 (en) Circuit splitting in analysis of circuits at transistor level
US20060020441A1 (en) Method and system for creating timing constraint library
JPH0916640A (en) Circuit simulator and block relaxation repetitive simulating method
Mak et al. Board-level multiterminal net routing for FPGA-based logic emulation
US8504953B2 (en) Schematic generation visualization aid for netlists comprising analog circuits
CN114330173B (en) Boundary node connection relation obtaining method, device, equipment and storage medium
KR100576987B1 (en) A method for manufacturing and designing an electronic device and electronic apparatus
CN112861455B (en) FPGA modeling verification system and method
US7979817B2 (en) Net list producing device producing a net list with an interconnection parasitic element by hierarchical processing
CN115705446A (en) Post-simulation method and device of integrated circuit
US7451420B1 (en) Determining reachable pins of a network of a programmable logic device
Houngninou et al. Implementation of switching circuit models as transfer functions
JPH07287051A (en) Input data creation device for logic simulation
US11210440B1 (en) Systems and methods for RLGC extraction based on parallelized left-looking incomplete inverse fast multipole operations
JP3766119B2 (en) Circuit simulation method and apparatus
US7536668B1 (en) Determining networks of a tile module of a programmable logic device
Qin et al. RCLK-VJ network reduction with Hurwitz polynomial approximation
US20240070361A1 (en) Circuit analysis method, circuit analysis device, and circuit analysis system
US7058908B2 (en) Systems and methods utilizing fast analysis information during detailed analysis of a circuit design
Hidalgo et al. Multi-FPGA systems synthesis by means of evolutionary computation
JP3664954B2 (en) Delay library creation system and recording medium
Chen et al. TSA-TICER: A Two-Stage TICER Acceleration Framework for Model Order Reduction

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020903