JPH01207838A - 並列論理シミュレーション制御方式 - Google Patents

並列論理シミュレーション制御方式

Info

Publication number
JPH01207838A
JPH01207838A JP63033400A JP3340088A JPH01207838A JP H01207838 A JPH01207838 A JP H01207838A JP 63033400 A JP63033400 A JP 63033400A JP 3340088 A JP3340088 A JP 3340088A JP H01207838 A JPH01207838 A JP H01207838A
Authority
JP
Japan
Prior art keywords
time
event
gate
processor
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.)
Granted
Application number
JP63033400A
Other languages
English (en)
Other versions
JP2590179B2 (ja
Inventor
Shintaro Shimogoori
慎太郎 下郡
Tetsuo Kage
鹿毛 哲郎
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 JP3340088A priority Critical patent/JP2590179B2/ja
Publication of JPH01207838A publication Critical patent/JPH01207838A/ja
Application granted granted Critical
Publication of JP2590179B2 publication Critical patent/JP2590179B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概要〕 並列計算機上で、各プロセソ勺に1個以上のゲートを割
り当て、各プロセッサ間で通信を行いながら、論理回路
のシミュレーションを並列処理する並列論理シミュレー
ション制樹1方式に関し。
各プロセッサ間で同期をとることなく、それぞれ担当す
るゲートのシミュレーション時刻を進1うさせ、並列効
果を高めて、論理シミュレーションを効率よく実行でき
るようにすることを目的とし。
並列計算機上の各プロセッサに、少なくともり一−I・
のビンに対する論理値およびその論理値が継続する時刻
情幸ドを持つイヘントを送受信するメッセージ送受信処
理手段と、ケーI・の各ビン対応に。
どの時刻までのイヘントが届いているかを管理するビン
時刻管理手段と、各ゲーI・かとの時刻まてのイヘンI
・を出力したかを管理するゲート時刻管理手段と、受信
したイヘント内の時刻、各ビン対応に+13理される時
刻および各ゲート対応に管理される時刻に応して、ケー
トの出力値を確定できる時刻までの出力値を計算し、イ
ヘントを発生させるシミュレーション実行処理手段とを
備え、各プロセッサをJl−同iUlに動作さゼるよう
に構成する。
〔産業上の利用分野〕
本発明は、並列計算機上で、各プロセッサに1個以」二
〇ケー1−を割り当て、各プロセッサ間で通信を行いな
がら、論理回路のシミュレーションを並列処理する並列
論理シミュレーション制御方式〔従来の技術〕 第7図は従来方式のイヘント1リフン法による処理の例
、第8財は従来方式の同期に関する改良例の説明図を示
す。
従来、論理シミル−ジョンを複数のプロセッサからなる
並列計算機上で実行する場合2いわゆるタイムホイール
を用いて、所定の一111位時間ごとに信号変化を処理
するイヘント1リブン法が用いられている。これは、シ
ミュレーション対象の回路を、単純にプロセッサの台数
分に分割し、各プロセ・ノザ」二で、第7図に示すよう
な処理を実行する方式である。
すなわち、前処理で、他のプしJ十ノリ°から受信した
入力信号の変化情報を持つイヘントを、内部のタイムホ
イールにおりる該当時刻の部分に格納し5次のケート評
価により、リ−1・の出力値を更新していく。ゲーI〜
評価では、タイj、ホイールから現時刻のイヘン1−を
取り出し、順次、そのケートのファンアウト側の各ケー
I・を取り出しながら。
出力値を計算する。そして、出力値か現在の値と異なれ
ば、イヘンI・とじて格納し、そのゲート出力が、他プ
ロセツサに接続されていれば、イヘントを送信する。こ
の処理を、その時刻におけるずべてのイヘントについて
処理する。その時刻におLJる処理が終了したならば、
他のプロセッサとの同Jυ]をとり1次の時刻について
、同様にシミュレーションを進めていく。
信月の変化(イヘント)が複数のプロセッサ間にまたか
っている場合には、プロセッサ間の通信線を用いて通信
を行うが、このような従来の方式では、各プロセッサが
行うシミュレーションの時刻を同時に進行させる必要が
あるため、シミュレーションの各華位時刻ごとに、全プ
ロセッサで同期をとらなければならない。
各A1位時間ごとに、各プロセッサ内で処理するイヘン
I・の量はまちまちであるので、同期によって処理を細
かく分断してしまうことは、並列効果を妨げる原因とな
る。
この点を改良するため8例えば第8図に示すように、現
在の時刻に関する同期を1次の時刻における前処理の間
までにとるようにし、同期をとるタイミングをできるだ
け遅くし2て、プじ】セソザ間の時刻ごとの負荷分散を
改善する方式が考えられている。しかし、やばりプ1コ
セソザ間の同期をとる必要があるので、並列計算機の能
力を十分に活かすことができないという問題がある。
〔発明か解決しようとする課題〕
以上のように、従来のイヘン1〜ドリブン法による論理
シミュレーションによれば、プ1」セノ・す間の同期が
必要になるために、負荷のバラツキによって遊び時間か
長くなり、さらに、ゲートごとに別々の遅延値を用いる
多重遅延シミュレーションを行う場合や、精度をよ(す
るために、単位時間の刻み幅を小さくする場合には、単
位時間ごとのイヘンI・のちらばりが激しくなって、負
荷の分散が一層悪くなるという問題がある。
本発明は上記問題点の解決を図り、各プロセッサ間で同
期をとることなく、それぞれ担当するゲ−トのシミュレ
ーション時刻を進行させ、並列効果を高めて、論理シミ
ュレーションを効率よく実行できるようにすることを目
的としている。
〔課題を解決するための手段〕
第1図は本発明の原理説明図である。
第1図において、10.IOA、IOBは並列計算機を
構成するプロセッサ(PE)、11は各プロセッサ間で
送受信されるイヘント、12は他プロセ・ノザからのイ
ヘントを含むメツセージを受信するメッセージ受信処理
部、13は他プロセソサヘメソセーシを送信するメツセ
ージ送信処理部。
14は受信したイヘントの待ち行列であるイヘ7トキュ
ー、15は各ピン対応に現在時刻を管理するピン時刻管
理部、16はゲートの現在時刻を管理するゲート時刻管
理部、17は担当するケートの論理シミュレーションを
実行するシミュレーション実行処理部、GTはシミュレ
ーション対象の論理回路を構成するゲー]・を表ず。
各プロセッサは、シミュレーション対象となる回路を構
成する1個またGJ複数個のケー1−を受し」持ち、そ
れぞれその動作を、各プロセッサ間で送受信するイヘン
ト】1に基づきシミュレートする。
イヘント11は、処理すべきプロセッサを識別するプロ
セッサ番号と、プロセソザ内ゲート番号と。
入力となるゲートのピン番号と、入力信号の論理値と、
その論理値がいつまで継続するかを示す時刻(even
ttime)情報を持つようになっている。
メッセージ受信処理部12は、ファンインを扱・うプロ
セッサIOAからのメッセージによるイ・・ント11を
受げ取る。メッセージ送信処理部13は、ファンアウト
を扱うプロセッサ1013へ、自プロセッサ10が扱う
ゲートGTの出力値により生成されたイヘント11を送
信する。
イヘン1−キュー14は、直しに処理できない入カイヘ
ンI・を保持する待ち行列である。ピン時刻管理部15
は、ゲートの各ピン対応に、どの時刻までのイヘントが
届いているかを、「ピンの現在の時刻(pintime
(i)) Jとして、保(4管理するものである。デー
1〜時刻管理部1Gは、ケー1−GTがどの時刻までの
イヘンI・を出力したかを、「ゲーI・の現在の時刻(
gatetime) Jとして、保持管理するものであ
る。
シミュレーション実行処理部17は、イヘントキュ−1
4の各イヘントについて、その中の時刻eventti
meと、該当するピンの現在の時刻pintime(i
)と、ゲートの現在の時刻にatetimeとに基づき
ゲートの出力値を確定できる時刻までの出力値を計算し
、その時刻が進む場合には、新たなイヘント11を発生
させ2メソセ一ジ送信処理部13を介して、他のプロセ
ッサIOB等へ送信する処理を行う。
各プロセッサは、受信したイヘントに基づき。
非同期に動作する。
〔作用〕
本発明では、各プロセッサが、タイムホイールを用いる
ことな(、基本的には回路の各ゲートをそれぞれ時間的
に独立させて担当する。そして。
各ゲートについて1人力値によって出力値を確定できる
時刻まで、シミュレーションを非同1υjに進めていき
、出)j値が確定する時刻が進んだ場合には、その時刻
情報と出力値とをメッセージとして。
ファンアラI・を担当するプロセッサへ送る。
〔実施例〕
第2図は本発明の適用システムの例、第3図は第2図に
示すシステム動作説明図、第4図は本発明の一実施例に
係るイヘントに対する処理説明図。
第5図は本発明の一実施例に係るシミュレーション実行
処理部の処理フロー、第6図は本発明の一実施例による
複数ゲートに対する処理説明図を示す。
本発明は9例えば第2図に示すようなマルチプロセッサ
・システムにより実現される。なお、もっと−船釣なマ
ルチプロセッサ°によっても、同様に実現可能である。
第2図(イ)において、20はシミュレーションのため
の基礎データとなる論理回路データが格納された論理回
路データファイル、21はCP IJおよびメモリなど
からなるホストプロセッサ、22はデイスプレィやプリ
ンタや外部記憶装置などのシミュレーション結果が出力
される出力装置。
23は多数のプロセッサが格子状に結合された格子状マ
ルチプロセッサからなる並列計算機を表す。
論理回路データファイル20に格納されているデータに
基づき、ホストプロセッサ21が、並列計算機23の各
プロセッサに送信する論理回路データは2例えば第2図
(ロ)図示のように、各プロセッサが受は持つ各ゲート
ごとに、そのゲートの種類情報と、立上りの遅延時間と
、立下りの遅延時間と、ファンアウト情報として、プロ
セ、す番号、プロセッサ内ゲート番号、ビン番号の情報
などを持つ。
ホスI・プロセッサ21の処理は、第3図(イ)に示す
ようになっている。まず、論理回路データファイル20
から回路データを読み込み2回路データを並列計算機2
3側へ送信する。各プロセッサへのゲートの割り当ては
、論理回路データファイル20の作成時に予め行うよう
にしてもよく。
また、この回路データの送信時に行うようにしてもよい
次に、シミュレーション実行命令による実行指示を出し
、既知の外部信号情報やシミュレーション終了時刻情報
などを送る。そして、シミュレーション結果が送られて
きたならば、その結果を所定の出力装置に出力する。
並列計算機23側では、各プロセッサは、第3M(ロ)
に示すように動作する。
イニシャルプログラムロード(IPL)終了後。
ホストプロセッサ21からのコマンドを待つ。そして、
コマンドに従って1回路データの受信処理。
シミュレーションの実行、シミュレーション結果の送信
処理を行う。
シミュレーションの実行にあたって、各プロセッサは、
外部からのイベントを受は取ると、イベントの発生した
ビンの現在の時刻pintime(i)と。
ゲートの現在の時刻gatetimeと、イベントの時
刻eventtimeとの関係により、第4図に示すよ
うな場合分けに応した処理を行う。
(al  第4図(イ)に示すように。
pintime(+)がgatetimeより小さく、
かつeventtimeがgatetimeより大きい
場合Q シミュレーションを実行し、全入力が確定して
いる時刻までの出力値を計算する。新しい出力値が定ま
ったならば、イベントを発生させ。
ファンアウトを担当するプロセッサへ送信する。
例えば、ANDゲートの場合、複数の入力のうち、どれ
か1本が“0”であれば、他の入力にかかわらず出力は
パ0”となる。そこで、出力値の確定時刻を、全入力値
が確定している時刻よりも先に進めることができる場合
がある。
すなわち、第4図(ロ)に示すように、ANDNOゲー
トは、入力1に°“0”が入った場合3人力2.入力3
を待たずに、出力を“O°′に確定できる。ORゲート
、NANDゲート、NORゲート等についても、同様に
出力を先行して確定できる場合がある。このようなとき
に、シミュレーション時刻のgatetimeを先に進
めることか可能であり、この場合、入力2.入力3等に
対するeventtimeが、 gatetimeより
も一時的に小さくなる。
(bl  第4図(ハ)に示すように。
eventtimeがgatetimeよりも小さい場
合に) そのイベントが発生したピンのpin tim
e (i)を更新するだけで5そのイヘ71・は捨てる
(C)第4図(ニ)に示すように、上記以外の場合→ 
eventtimeをpjnt相e(i)とし、そのイ
ベントをイベントキューに入れる。
第1図に示すシミュレーション実行処理部17の処理は
1例えば第5図に示すようになる。説明を簡単にするた
めに、まず1個のゲートだけを担当する場合について説
明する。以下の説明における■〜[相]は、第5図に示
す処理■〜[相]に対応する。
■ イベントキューにイヘン1−があるかないかをチエ
ツクし、イベントがあれば、それを取り出す。イベント
がない場合、他のプロセッサからのイベントを待つ。
■ pintime(i)≦gatetime  かつ
eventtime >gatetime  であるか
どうかをチ二ツクする。そうであれば処理■へ、違う場
合には、処理■へ制御を移す。
■ 3v6nttimeをそのピンのpintime(
i)に入れ。
各ピンのpintime(i)および論理値に応じて、
出力値を確定できる時刻まで1時刻を進める。
■ 新しい出力値を計算する。
■ 出力の時刻が進むならば、その時刻までのイベント
を発生させ、ファンアウト側へ送信する。
gatetimeをその時刻に更新する。その後、処理
[相]へ移る。
■ eventtimeがgatetimeより小さい
かどうかをチエツクする。gatetimeが小さい場
合、処理■へ移る。
■ 第4図(ハ)に示すケースであるので、イベントが
発生したピンのpintime(i)を更新し、そのイ
ベントを捨て、処理[相]へ移る。
■ pintime(i)を更新する。
■ そのイベントを該当するピンのイベントキュ=(待
ち行列)に入れる。
[相] gatetimeが、ホストプロセッサから指
定されたシミュレーション終了時刻になったかどうかを
判定する。終了時刻になった場合、シミュレーションの
実行を終了する。シミュレーション終了時刻になってい
ない場合、処理■へ制御を戻し1次のイベントについて
同様に処理を繰り返す。
1つのプロセッサで、複数のゲートを担当する場合には
9例えば第6図に示すように、各ゲートのピンごとにイ
ベントキュ−14を用意すると共に、ゲートごとにもイ
ベントキュ−40を用意し。
各ゲートについて、1イヘントずつイベントキュー40
から取り出して、ピンごとのイベントキュー14へ移し
ていき、1ゲートの場合と同様に。
処理を行うことができる。
すなわち、外部からのイベントがくると、それを、各ゲ
ー1−Gl〜G3ごとの待ち行列に入れる。
そして、第6図に示す■〜■の順番で、順に処理してい
く。待ち行列にイベントのないゲートは。
処理を飛ばす。このようにすることにより、各ゲートに
対する処理の負荷を平均化させるとかでき〔発明の効果
〕 以上説明したように2本発明によれば、プロセッサ間の
同期をとる必要がなく、各プロセッサがそれぞれ担当す
るゲートのシミュレーションを進めていくことができる
ので、プロセッサ数が多い場合、あるいはゲート数が少
ない場合でも、並列効果が大きい。また、タイムホイー
ルの単位時間ごとにシミュレーションを進めるのでなく
、イベントの時刻と、イベントが発生したピンの現在の
時刻と、ゲートの現在の時刻によって、シミュレーショ
ンを進行させるので、シミュレーション精度をよくして
も、並列効果への影響はない。従って、精度のよい論理
シミュレーションを高速に実行できるようになる。
【図面の簡単な説明】
第1図は本発明の原理説明図。 第2図は本発明の適用システムの例。 第3図は第2図に示すシステム動作説明図。 第4図は本発明の一実施例に係るイベントに対する処理
説明図。 第5図は本発明の一実施例に係るシミュレーション実行
処理部の処理フロー。 第6図は本発明の一実施例による複数ゲートに対する処
理説明図。 第7図は従来方式のイベントドリブン法による処理の例
。 第8図は従来方式の同期に関する改良例の説明図を示す
。 図中、10はプロセッサ、11はイベント、12はメッ
セージ受信処理部、13はメッセージ送信処理部、14
ばイベントキュ−115はピン時刻管理部、16はゲー
ト時刻管理部、17はシミュレーション実行処理部を表
す。

Claims (1)

  1. 【特許請求の範囲】 複数のプロセッサが結合された並列計算機により、論理
    回路の動作をシミュレートする論理シミュレーション制
    御方式において、 前記各プロセッサ(10)に、シミュレーション対象と
    なる回路を構成する1個または複数個のゲートを受け持
    たせ、 前記各プロセッサ(10)は、 少なくともゲートのピンに対する論理値およびその論理
    値が継続する時刻情報を持つイベントを送受信するメッ
    セージ送受信処理手段(12、13)と、自プロセッサ
    が担当するゲートの各ピン対応に、どの時刻までのイベ
    ントが届いているかを管理するピン時刻管理手段(15
    )と、 各ゲートがどの時刻までのイベントを出力したかを管理
    するゲート時刻管理手段(16)と、受信したイベント
    内の時刻、各ピン対応に管理される時刻および各ゲート
    対応に管理される時刻に応じて、ゲートの出力値を確定
    できる時刻までの出力値を計算し、イベントを発生させ
    るシミュレーション実行処理手段(17)とを備え、前
    記各プロセッサを非同期に動作させるようにしたことを
    特徴とする並列論理シミュレーション制御方式。
JP3340088A 1988-02-16 1988-02-16 並列論理シミュレーション制御方式 Expired - Fee Related JP2590179B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3340088A JP2590179B2 (ja) 1988-02-16 1988-02-16 並列論理シミュレーション制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3340088A JP2590179B2 (ja) 1988-02-16 1988-02-16 並列論理シミュレーション制御方式

Publications (2)

Publication Number Publication Date
JPH01207838A true JPH01207838A (ja) 1989-08-21
JP2590179B2 JP2590179B2 (ja) 1997-03-12

Family

ID=12385546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3340088A Expired - Fee Related JP2590179B2 (ja) 1988-02-16 1988-02-16 並列論理シミュレーション制御方式

Country Status (1)

Country Link
JP (1) JP2590179B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04227574A (ja) * 1990-03-30 1992-08-17 Internatl Business Mach Corp <Ibm> ロジック・シミュレーション・マシンのための全イベント・トレース・ギャザラ
JPH05205005A (ja) * 1990-03-30 1993-08-13 Internatl Business Mach Corp <Ibm> ロジック・シミュレーション・マシン用ホスト・インタフェース
JPH06282601A (ja) * 1993-03-26 1994-10-07 Nec Corp 論理シミュレーション装置
CN114841103A (zh) * 2022-07-01 2022-08-02 南昌大学 门级电路的并行仿真方法、系统、存储介质及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57164363A (en) * 1981-04-02 1982-10-08 Matsushita Electric Ind Co Ltd Simulation system in multi-processor system
JPS60116064A (ja) * 1983-11-28 1985-06-22 Mitsubishi Electric Corp 分散処理プロセツサ−間通信方式
JPS61110071A (ja) * 1984-11-02 1986-05-28 Sanyo Electric Co Ltd 論理回路のシミュレーション方法及びシミュレータ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57164363A (en) * 1981-04-02 1982-10-08 Matsushita Electric Ind Co Ltd Simulation system in multi-processor system
JPS60116064A (ja) * 1983-11-28 1985-06-22 Mitsubishi Electric Corp 分散処理プロセツサ−間通信方式
JPS61110071A (ja) * 1984-11-02 1986-05-28 Sanyo Electric Co Ltd 論理回路のシミュレーション方法及びシミュレータ

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04227574A (ja) * 1990-03-30 1992-08-17 Internatl Business Mach Corp <Ibm> ロジック・シミュレーション・マシンのための全イベント・トレース・ギャザラ
JPH05205005A (ja) * 1990-03-30 1993-08-13 Internatl Business Mach Corp <Ibm> ロジック・シミュレーション・マシン用ホスト・インタフェース
JPH06282601A (ja) * 1993-03-26 1994-10-07 Nec Corp 論理シミュレーション装置
CN114841103A (zh) * 2022-07-01 2022-08-02 南昌大学 门级电路的并行仿真方法、系统、存储介质及设备

Also Published As

Publication number Publication date
JP2590179B2 (ja) 1997-03-12

Similar Documents

Publication Publication Date Title
CN101573690B (zh) 线程排队的方法和装置
WO2019184619A1 (zh) 卷积计算加速器、卷积计算方法及卷积计算设备
US20220027716A1 (en) Neural network accelerator
JP7389231B2 (ja) 同期ネットワーク
JPH036534B2 (ja)
US6507809B1 (en) Method and system for simulating performance of a computer system
CN103744716A (zh) 一种基于当前vcpu调度状态的动态中断均衡映射方法
CN112445735A (zh) 一种联邦学习数据传输方法、计算机设备、系统及存储介质
CN112673351B (zh) 流式传输引擎
CN117435546A (zh) 多核处理器堆栈以及多核处理器
Reynolds et al. Design and performance analysis of hardware support for parallel simulations
JPH01207838A (ja) 並列論理シミュレーション制御方式
Peacock et al. A distributed approach to queueing network simulation
CN115775199B (zh) 数据处理方法和装置、电子设备和计算机可读存储介质
RU2643622C1 (ru) Вычислительный модуль
CN112506677B (zh) TensorFlow的分布式矩阵计算实现方法与系统
Nandapalan et al. Implementation of 3D FFTs across multiple GPUs in shared memory environments
CN101647002A (zh) 多处理系统及方法
TWI764236B (zh) 晶片上操作的顯式排程
Sang et al. Process mobility in distributed-memory simulation systems
JPH096835A (ja) ディジタル回路シミュレータ
Chung et al. Efficient parallel logic simulation techniques for the connection machine.
EP4028899B1 (en) Message based processing system and method of operating the same
US20240231956A9 (en) Apparatus and method for synchronizing participants of a simulation
US20240233066A1 (en) Kernel optimization and delayed execution

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees