JPH0287279A - 並列回路シミュレーションの回路分割方式 - Google Patents
並列回路シミュレーションの回路分割方式Info
- Publication number
- JPH0287279A JPH0287279A JP63239218A JP23921888A JPH0287279A JP H0287279 A JPH0287279 A JP H0287279A JP 63239218 A JP63239218 A JP 63239218A JP 23921888 A JP23921888 A JP 23921888A JP H0287279 A JPH0287279 A JP H0287279A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- leaf
- parent
- circuits
- simulation
- 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
Links
- 238000004088 simulation Methods 0.000 title claims description 31
- 238000000034 method Methods 0.000 claims description 21
- 229920006395 saturated elastomer Polymers 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012938 design process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は大規模LSIの電子回路設計に用いられる並列
回路シミュレーションの回路分割方式に関し、特に階層
構造をもつ回路の分割方式に関する。
回路シミュレーションの回路分割方式に関し、特に階層
構造をもつ回路の分割方式に関する。
従来の並列回路シミュレーションの回路分割の技術は階
層構造をもたないフラットな回路を単一レベルの階層構
造に分割するものであった。ここでは、回路を並列回路
シミュレーションでの処理時間のつりあった2つの部分
回路に分割する処理を複数の部分回路のうち処理時間が
最大の部分回路に適用し、生成された部分回路数がシミ
ュレーションのプロセッサ数に達するか処理時間が最大
の部分回路と全ての部分回路を参照する素子からなる親
回路の双方の処理時間の和が最小であると判定されるま
で繰り返し行ない、最小の処理時間を与えるシミュレー
ションデータな作成しようとしていた。
層構造をもたないフラットな回路を単一レベルの階層構
造に分割するものであった。ここでは、回路を並列回路
シミュレーションでの処理時間のつりあった2つの部分
回路に分割する処理を複数の部分回路のうち処理時間が
最大の部分回路に適用し、生成された部分回路数がシミ
ュレーションのプロセッサ数に達するか処理時間が最大
の部分回路と全ての部分回路を参照する素子からなる親
回路の双方の処理時間の和が最小であると判定されるま
で繰り返し行ない、最小の処理時間を与えるシミュレー
ションデータな作成しようとしていた。
〔発明が解決12ようとする課題〕
上述した従来の技術では、大規模な回路を設計する際の
ブロック設計とブロックから構成される全体回路からな
る階層設計のシミュレーションをそのまま用いられない
という欠点がある。階層設計におけるブロックは機能単
位に分かれており、ブロック内及びブロック間の接続は
、機能がブロック内で閉じているため、ブロックの外部
節点数が最小化されているものと期待できる。並列回路
シミュレーションにおける処理時間の短縮のためには昭
和61年特許願第26293号で述べられているように
並列回路シミュレーションの親回路が逐次方式で計算さ
れることからその処理時間が小さいことが望ましい。親
回路の処理時間は部分回路の外部節点数の論理和に比例
するので階層設計による階層構造の回路を使用できない
ことは処理時間の最小化に有効でないという欠点がある
。
ブロック設計とブロックから構成される全体回路からな
る階層設計のシミュレーションをそのまま用いられない
という欠点がある。階層設計におけるブロックは機能単
位に分かれており、ブロック内及びブロック間の接続は
、機能がブロック内で閉じているため、ブロックの外部
節点数が最小化されているものと期待できる。並列回路
シミュレーションにおける処理時間の短縮のためには昭
和61年特許願第26293号で述べられているように
並列回路シミュレーションの親回路が逐次方式で計算さ
れることからその処理時間が小さいことが望ましい。親
回路の処理時間は部分回路の外部節点数の論理和に比例
するので階層設計による階層構造の回路を使用できない
ことは処理時間の最小化に有効でないという欠点がある
。
本発明の並列回路シミュレーションの回路分割方式は、
葉と節という概念を用いる。最小単位の葉を1個の子回
路とし、葉とは子回路の集まり、葉の集まり、親回路と
それが参照する葉の集まりなどをいう。また、節とは葉
の分割の過程で葉から切り離された親回路をいう。葉の
負荷つまり並列回路シミュレーションにおいて、その葉
が割り当てられたプロセッサの処理時間は葉に含まれる
全ての親回路と子回路の負荷の和で表わされる。
葉と節という概念を用いる。最小単位の葉を1個の子回
路とし、葉とは子回路の集まり、葉の集まり、親回路と
それが参照する葉の集まりなどをいう。また、節とは葉
の分割の過程で葉から切り離された親回路をいう。葉の
負荷つまり並列回路シミュレーションにおいて、その葉
が割り当てられたプロセッサの処理時間は葉に含まれる
全ての親回路と子回路の負荷の和で表わされる。
葉のオペレーション長とは葉の負荷と最上位親回路から
葉を直接参照する親回路までの部分回路の負荷つまり処
理時間の和である。葉の最大オペレーション長が並列回
路シミュレーション全体の処理時間を表わす。ある1つ
の葉を2つに分割する時、それが1つの親回路と参照す
る複数の葉で構成されるならば、まず親回路を節とし、
複数の葉を1つの葉とする。次に分割対象となった葉が
複数の葉の集まりであった場合、負荷が最大の葉から順
に取り出すことをその負荷の和が残りの葉の負荷とつり
合うまで続け2つの葉を形成させる。
葉を直接参照する親回路までの部分回路の負荷つまり処
理時間の和である。葉の最大オペレーション長が並列回
路シミュレーション全体の処理時間を表わす。ある1つ
の葉を2つに分割する時、それが1つの親回路と参照す
る複数の葉で構成されるならば、まず親回路を節とし、
複数の葉を1つの葉とする。次に分割対象となった葉が
複数の葉の集まりであった場合、負荷が最大の葉から順
に取り出すことをその負荷の和が残りの葉の負荷とつり
合うまで続け2つの葉を形成させる。
また分割対象となった葉が1つの葉である場合には、負
荷のバランスがつりあう2つの子回路つまり葉に解体す
る。
荷のバランスがつりあう2つの子回路つまり葉に解体す
る。
本発明の並列回路シミュレーションの回路分割方式は全
回路を親回路と子回路のみで表わすことから始める。親
回路は他の部分回路を参照する素子と最上位親のみ電源
素子も含んで構成されており、それ以外の素子があれば
新たに子回路を生成する。これにより、最下位の葉だけ
にトランジスタ、抵抗などからなる物理的な回路をもつ
階層構造を作ることができる。このような階層構造化を
行なった後、まず最上位親回路を節とし、他の回路全体
を1つの葉とする。節が直接参照する葉の中で最大のオ
ペレーション長を持つ葉を選びそれを2つに分割する処
理を繰り返してより下位レベルの親回路に参照される葉
に順次分割対象を移し、節に直接参照される葉の数がプ
ロセッサ数になるか、葉の最大オペレーション長、即ち
並列回路シミュレーション全体の処理時間が最小化され
たと判断された時、葉の分割を終了させる。
回路を親回路と子回路のみで表わすことから始める。親
回路は他の部分回路を参照する素子と最上位親のみ電源
素子も含んで構成されており、それ以外の素子があれば
新たに子回路を生成する。これにより、最下位の葉だけ
にトランジスタ、抵抗などからなる物理的な回路をもつ
階層構造を作ることができる。このような階層構造化を
行なった後、まず最上位親回路を節とし、他の回路全体
を1つの葉とする。節が直接参照する葉の中で最大のオ
ペレーション長を持つ葉を選びそれを2つに分割する処
理を繰り返してより下位レベルの親回路に参照される葉
に順次分割対象を移し、節に直接参照される葉の数がプ
ロセッサ数になるか、葉の最大オペレーション長、即ち
並列回路シミュレーション全体の処理時間が最小化され
たと判断された時、葉の分割を終了させる。
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例の並列回路シミュレーション
の流れである。まずEWS9において回路図人力1を行
ない回路接続データ2を作成する。次に、回路接続デー
タ2からコントローラ10において回路分割3、つまり
本発明の並列回路シミュレーションの回路分割方式によ
り分割ファイル4を作りコンパイル5してオブジェクト
データを生成する。オブジェクトデータを並列回路シミ
ュレーション11において並列回路シミュL/ −ジョ
ン6にかけ結果ファイル7を出力させる。最後に結果フ
ァイル7をEWSl 2において表示8する。
の流れである。まずEWS9において回路図人力1を行
ない回路接続データ2を作成する。次に、回路接続デー
タ2からコントローラ10において回路分割3、つまり
本発明の並列回路シミュレーションの回路分割方式によ
り分割ファイル4を作りコンパイル5してオブジェクト
データを生成する。オブジェクトデータを並列回路シミ
ュレーション11において並列回路シミュL/ −ジョ
ン6にかけ結果ファイル7を出力させる。最後に結果フ
ァイル7をEWSl 2において表示8する。
第3図は第1図の回路分割3、つまり本発明並列回路シ
ミュレーションの回路分割方式の処理の流れである。前
処理26において回路接続データ人力25のデータの電
源素子をあらかじめ最上位親回路にひきあげる。また回
路接続データの親回路に電源以外の物理的な素子がある
場合それぞれの親回路の下で子回路を生成し、最上位親
回路を節、他の回路全体を1つの葉とする。更新処理2
7において、節に直接参照される葉の中で最大のオペレ
ーション長をもつものを選び分割対象とする分割処理2
8において27で選んだ葉を2つに分割する。判定処理
29において葉の最大オペレーション長が最小化された
か、又は葉の数がプロセッサ数に等しいと判断さhた時
、処理結果出力30をし、処理を終了させる。それ以外
の時は更新処理27に戻る。
ミュレーションの回路分割方式の処理の流れである。前
処理26において回路接続データ人力25のデータの電
源素子をあらかじめ最上位親回路にひきあげる。また回
路接続データの親回路に電源以外の物理的な素子がある
場合それぞれの親回路の下で子回路を生成し、最上位親
回路を節、他の回路全体を1つの葉とする。更新処理2
7において、節に直接参照される葉の中で最大のオペレ
ーション長をもつものを選び分割対象とする分割処理2
8において27で選んだ葉を2つに分割する。判定処理
29において葉の最大オペレーション長が最小化された
か、又は葉の数がプロセッサ数に等しいと判断さhた時
、処理結果出力30をし、処理を終了させる。それ以外
の時は更新処理27に戻る。
第4図は階層回路の分割を具体的に示したものである。
(a)、 (b)、 (c)、 (d)の順に分割は進
んでいる。(a)では、最上位親回路S1が節n1に、
他の部分回路S2〜S7が葉11になっている。
んでいる。(a)では、最上位親回路S1が節n1に、
他の部分回路S2〜S7が葉11になっている。
ここで節n1が直接参照しているのは、子回路S2と親
回路s3のみであるから、葉11は(b)のように葉1
2と13に分割される。ここで部分回路Siの負荷を1
oad (S i)とすると、葉12の負荷1oad(
n 2)=Ioad(S 2)、葉13の負荷1oad
のオペレーション長apt (A’ 2) =load
(S 1)+Ioad (A 4)、葉13のオペレ
ーション長apl(A) 3) =Ioad (S 1
) +Ioad (ff 3)と表せる。apl (4
72) <apl (473)であれば、次に分割すべ
き葉は13となる。13の中では、S3が子回路S4と
親回路S5を参照しているので、(c)のように83を
節n2とし、葉14と15に分割する。ここで、apl
(i74) =load (S 1) 十1oad
(S 3) +1oad(S 4)、apl (475
) =load(S 1) +1oad (S 3)
+、Σ 1oad (Si)とな1=5 す、apl (f 2) <apl (n 5) <a
pl (i24)であれば次の分割対象は14である。
回路s3のみであるから、葉11は(b)のように葉1
2と13に分割される。ここで部分回路Siの負荷を1
oad (S i)とすると、葉12の負荷1oad(
n 2)=Ioad(S 2)、葉13の負荷1oad
のオペレーション長apt (A’ 2) =load
(S 1)+Ioad (A 4)、葉13のオペレ
ーション長apl(A) 3) =Ioad (S 1
) +Ioad (ff 3)と表せる。apl (4
72) <apl (473)であれば、次に分割すべ
き葉は13となる。13の中では、S3が子回路S4と
親回路S5を参照しているので、(c)のように83を
節n2とし、葉14と15に分割する。ここで、apl
(i74) =load (S 1) 十1oad
(S 3) +1oad(S 4)、apl (475
) =load(S 1) +1oad (S 3)
+、Σ 1oad (Si)とな1=5 す、apl (f 2) <apl (n 5) <a
pl (i24)であれば次の分割対象は14である。
14は1つの子回路S4であるので(d)のように子回
路S4を2つの子回路S4.1.S4.2に分割し、葉
ρ4.1゜14.2とする。また節n2となっていた親
回路S3が下位の子回路の分割の影響を受けそれぞれn
2’、S3’となる。
路S4を2つの子回路S4.1.S4.2に分割し、葉
ρ4.1゜14.2とする。また節n2となっていた親
回路S3が下位の子回路の分割の影響を受けそれぞれn
2’、S3’となる。
第2図は本発明の他の実施例の並列回路シミュレーショ
ンの流れである。分割ファイル16を出力するまでは第
1図と同様である。並列コンパイル17は並列回路シミ
ュに一ジョン23において、マスタプロセッサが分割フ
ァイルから葉や節を抽出して各スレーブプロセッサにふ
りわけ、各プロセッサを活用して並列にコンパイルを行
なって、並列回路シミュレーション18のオブジェクト
データを作成する並列回路シミュレーションの結果ファ
イル19はEWS24におい、て表示20される。
ンの流れである。分割ファイル16を出力するまでは第
1図と同様である。並列コンパイル17は並列回路シミ
ュに一ジョン23において、マスタプロセッサが分割フ
ァイルから葉や節を抽出して各スレーブプロセッサにふ
りわけ、各プロセッサを活用して並列にコンパイルを行
なって、並列回路シミュレーション18のオブジェクト
データを作成する並列回路シミュレーションの結果ファ
イル19はEWS24におい、て表示20される。
以上説明したように本発明は、階層設計で作成された階
層構造のデータをそのまま活用して回路分割を行なうこ
とにより、階層構造をもたない回路の分割結果より、並
列回路シミュレーション全体の処理時間が短縮できると
いう効果がある。これは階層設計の際のブ′ロックが機
能単位に分かれているためブロックの外部ピン数が最小
化され、部分回路の外部接点数の論理和を小さくするこ
とに効果があり、並列回路シミュレーションの親回路の
処理時間が小さくなるためである。
層構造のデータをそのまま活用して回路分割を行なうこ
とにより、階層構造をもたない回路の分割結果より、並
列回路シミュレーション全体の処理時間が短縮できると
いう効果がある。これは階層設計の際のブ′ロックが機
能単位に分かれているためブロックの外部ピン数が最小
化され、部分回路の外部接点数の論理和を小さくするこ
とに効果があり、並列回路シミュレーションの親回路の
処理時間が小さくなるためである。
第1図は本発明の一実施例による並列回路シミュレーシ
ョンの流れ図、第2図は本発明の他の実施例による並列
回路シミュレーションの流れ図、第3図は本発明の処理
の流れを示す流れ図、第4図(a)〜(d)は階層回路
の分割の具体例を示す図である。 1.13・・・・・・回路図入力、2,14・・・・・
・回路接続データ、3,15・・・・・・回路分割、4
,16・・団・分割ファイル、5・・・・・・コンパイ
ル%6,18・旧・・並列回路シミュレーション、7.
19・・・・・・結果ファイル、8,20・・・・・・
表示、9,12,21゜24・・・・・・EWS、10
.22・・・・・・コントローラ、11.23・・・・
・・並列回路シミュレーション、17・・・・・並列コ
ンパイル、25・・印・回路接続データ入力、26・・
・・・・前処理、27・・団・更新処理、28・・・・
・・分割処理、29・・・・・・判定処理、3o・・・
・・・処理結果出力。 代理人 弁理士 内 原 音 J53凹 ¥J4回
ョンの流れ図、第2図は本発明の他の実施例による並列
回路シミュレーションの流れ図、第3図は本発明の処理
の流れを示す流れ図、第4図(a)〜(d)は階層回路
の分割の具体例を示す図である。 1.13・・・・・・回路図入力、2,14・・・・・
・回路接続データ、3,15・・・・・・回路分割、4
,16・・団・分割ファイル、5・・・・・・コンパイ
ル%6,18・旧・・並列回路シミュレーション、7.
19・・・・・・結果ファイル、8,20・・・・・・
表示、9,12,21゜24・・・・・・EWS、10
.22・・・・・・コントローラ、11.23・・・・
・・並列回路シミュレーション、17・・・・・並列コ
ンパイル、25・・印・回路接続データ入力、26・・
・・・・前処理、27・・団・更新処理、28・・・・
・・分割処理、29・・・・・・判定処理、3o・・・
・・・処理結果出力。 代理人 弁理士 内 原 音 J53凹 ¥J4回
Claims (1)
- トランジスタ、抵抗などの物理的素子からなる部分回路
を子回路とし、これを参照する部分回路を親回路とし、
これら子回路と親回路によって全体回路を構成する階層
構造をもつ回路の並列回路シミュレーションの回路分割
方式において、任意レベルの親回路群から参照を設け、
子回路に至るまでの全ての部分回路の集合とし、最上位
レベルの親回路から各々の葉に至るパスのシミュレーシ
ョン時間を予測算定し、これが最大であるパスに属する
葉を選んで葉内部の階層構造を保ちつつこれを2つに分
割する処理を葉の数がプロセッサ数に等しいか、あるい
はプロセッサ数以下であっても処理時間短縮が飽和状態
になったと判断されるまで階層的に繰り返すことを特徴
とする並列回路シミュレーションの回路分割方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63239218A JPH0287279A (ja) | 1988-09-22 | 1988-09-22 | 並列回路シミュレーションの回路分割方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63239218A JPH0287279A (ja) | 1988-09-22 | 1988-09-22 | 並列回路シミュレーションの回路分割方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0287279A true JPH0287279A (ja) | 1990-03-28 |
Family
ID=17041504
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63239218A Pending JPH0287279A (ja) | 1988-09-22 | 1988-09-22 | 並列回路シミュレーションの回路分割方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0287279A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0421071A (ja) * | 1990-05-14 | 1992-01-24 | Nec Corp | 並列回路シミュレーション装置 |
| WO2007144940A1 (ja) * | 2006-06-13 | 2007-12-21 | Fujitsu Limited | Hdl処理方法、プログラム及びコンピュータ読み取り可能な記憶媒体 |
-
1988
- 1988-09-22 JP JP63239218A patent/JPH0287279A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0421071A (ja) * | 1990-05-14 | 1992-01-24 | Nec Corp | 並列回路シミュレーション装置 |
| WO2007144940A1 (ja) * | 2006-06-13 | 2007-12-21 | Fujitsu Limited | Hdl処理方法、プログラム及びコンピュータ読み取り可能な記憶媒体 |
| US8024681B2 (en) | 2006-06-13 | 2011-09-20 | Fujitsu Limited | Hierarchical HDL processing method and non-transitory computer-readable storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5956257A (en) | Automated optimization of hierarchical netlists | |
| JP3921367B2 (ja) | データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並列演算装置、データ処理システム | |
| US20120089954A1 (en) | Methods, systems, and computer program product for parallelizing tasks in processing an electronic circuit design | |
| CN101253472A (zh) | 系统仿真 | |
| US20040216064A1 (en) | Method and apparatus for optimum transparent latch placement in a macro design | |
| Chen et al. | An adaptive LU factorization algorithm for parallel circuit simulation | |
| US7171347B2 (en) | Logic verification in large systems | |
| DE112022006148T5 (de) | Systeme und Verfahren für Prozessorschaltungen | |
| JPH0287279A (ja) | 並列回路シミュレーションの回路分割方式 | |
| CN111857833A (zh) | 并行计算智能处理器及并行计算智能处理方法 | |
| Ghosh | On the concept of dynamic multi-level simulation | |
| GB2613178A (en) | Techniques for controlling vector processing operations | |
| JP2785443B2 (ja) | 並列回路シミュレーション装置 | |
| JPH01250173A (ja) | 並列回路シミュレーションの回路分割方式 | |
| Lewis | Hardware accelerators for timing simulation of VLSI digital circuits | |
| JPH06124317A (ja) | 回路分割形シミュレーションの行列定式化方式 | |
| Wallace | On automatic verification of SLIDE descriptions | |
| JPH07249062A (ja) | 論理回路の生成方法 | |
| Dohler et al. | Cycle-based simulation on loosely-coupled systems | |
| Hur et al. | Special purpose array processor for digital logic simulation | |
| Leinward et al. | Dynamic Boolean Algebras | |
| JPH06195410A (ja) | 並列回路シミュレーションの回路分割方式 | |
| Zhang | Dynamic and static load balancing for solving block bordered circuit equations on multiprocessors | |
| Chan | A Multithreaded HDL simulator for deep Submicron SoC designs | |
| Jagtap et al. | Clustering and Parallel Processing |