JPS6345671A - 論理回路シミユレ−シヨン方法 - Google Patents
論理回路シミユレ−シヨン方法Info
- Publication number
- JPS6345671A JPS6345671A JP61188438A JP18843886A JPS6345671A JP S6345671 A JPS6345671 A JP S6345671A JP 61188438 A JP61188438 A JP 61188438A JP 18843886 A JP18843886 A JP 18843886A JP S6345671 A JPS6345671 A JP S6345671A
- Authority
- JP
- Japan
- Prior art keywords
- event
- processing
- signal value
- events
- duplicate
- 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
Landscapes
- Logic Circuits (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、論理回路の動作を論理的にシミュレートする
論理シミュレークヨ/方法に係り、特に大規模論理回路
の論理動作を高速にシミュレートするに好適な論理シミ
ュレーション方法に関する。
論理シミュレークヨ/方法に係り、特に大規模論理回路
の論理動作を高速にシミュレートするに好適な論理シミ
ュレーション方法に関する。
大規模論理回路の設計時には、同期型論理設計方式を採
用することが多い。これは、フリップフロップのセット
、リセット条件に、必ずクロック信号を用い、一定時刻
でフリップ70ツブを動作させつつ、フリツプフaツブ
間の組合せ論理回路で情報加工を行う設計方式である。
用することが多い。これは、フリップフロップのセット
、リセット条件に、必ずクロック信号を用い、一定時刻
でフリップ70ツブを動作させつつ、フリツプフaツブ
間の組合せ論理回路で情報加工を行う設計方式である。
このような同期型論理設計方式では、フリップフロップ
で囲まれた組合せ論理回路は回路遅延時間ゼロと見なし
て、設計を行う。論理シミュレーションにおいても、特
開昭60−173484 号に記載のように、同期型論
理設計方式の性質を利用し、高速に論理シミュレーショ
ンを実行する方法が知られている。即ち、フリップ70
ツブで囲まれる組合せ論理回路について、各素子の出力
信号値を回路遅延時間ゼロと見なして算出して行く。
で囲まれた組合せ論理回路は回路遅延時間ゼロと見なし
て、設計を行う。論理シミュレーションにおいても、特
開昭60−173484 号に記載のように、同期型論
理設計方式の性質を利用し、高速に論理シミュレーショ
ンを実行する方法が知られている。即ち、フリップ70
ツブで囲まれる組合せ論理回路について、各素子の出力
信号値を回路遅延時間ゼロと見なして算出して行く。
そして、組合せ論理回路からの最終のイベント(信号値
変化)が7リツプフロツブに達した時にのみ、そのフリ
ップフロップの出力信号値を算出する方法である。
変化)が7リツプフロツブに達した時にのみ、そのフリ
ップフロップの出力信号値を算出する方法である。
一方では、上述のようなイベント駆動方式に基づく各素
子の出力信号値の算出を、多数の並列プロセッサ、ろる
いはパイプライン・プロセッサを用いて並列的に処理す
ることにより、高速に論理シミュレーションを実行する
方法も知られている。
子の出力信号値の算出を、多数の並列プロセッサ、ろる
いはパイプライン・プロセッサを用いて並列的に処理す
ることにより、高速に論理シミュレーションを実行する
方法も知られている。
ここではパイプライン・プロセッサを用いた場合の処理
の様子を第2図に示す。既にEl e El +・・・
・・・、Ewで表わされるN個のイベントが保持されて
いるとする。通常の処理では、まず最初のイベントEl
についてイベント読出し、素子機能。
の様子を第2図に示す。既にEl e El +・・・
・・・、Ewで表わされるN個のイベントが保持されて
いるとする。通常の処理では、まず最初のイベントEl
についてイベント読出し、素子機能。
現在の出力信号値および入力信号値読出し、出力信号値
算出と変化判定、新出力信号値格納、そして新しいイベ
ント格納の各処理を順次実行し、引続き次のイベントE
、について同様の処理を実行する。これに対しパイプラ
イン・プロセッサを用いた場合には、最初のイベントE
8についてイベント読出し処理が終了すると、引続き素
子機能、現出力信号値読出し処理を実行すると同時に、
次のイベントE、についてイベント読出し処理を行う。
算出と変化判定、新出力信号値格納、そして新しいイベ
ント格納の各処理を順次実行し、引続き次のイベントE
、について同様の処理を実行する。これに対しパイプラ
イン・プロセッサを用いた場合には、最初のイベントE
8についてイベント読出し処理が終了すると、引続き素
子機能、現出力信号値読出し処理を実行すると同時に、
次のイベントE、についてイベント読出し処理を行う。
第2図に示した例では、最大5個のイベントを同時に処
理することが可能である。
理することが可能である。
上記従来技術では、シミニレ−ジョン対象論理回路内に
あって2つ以上の入力端子を有するある素子において、
その2つ以上の入力端子の入力信号値が同時に変化した
場合、それら2つ以上の信号値変化はそれぞれ独立のイ
ベントとして保持される。このため同一素子の出力信号
値算出f、2回以上実行してしまい、そのための処理オ
ーバヘッドが存在する。特に多数のイベン)f並列的に
処理する場合には、第2図に示した様に、あるイベント
についてその指示する素子の新出力信号値を格納する以
前に、他のイベントについてその指示する素子の現出力
信号値読出しを実行するため、必ずしも最新の出力信号
値を用いてその変化判定が実行されるとは限らない。こ
のため、上記の様に同一素子の出力信号値算出を2回以
上実行した場合に、いずれの回においても出力信号値変
化と判定し、同一のイベントがその下流の素子に対し再
度同一のイベントを発生させ、もはやその処理オーバヘ
ッドが無視できないものとなる。
あって2つ以上の入力端子を有するある素子において、
その2つ以上の入力端子の入力信号値が同時に変化した
場合、それら2つ以上の信号値変化はそれぞれ独立のイ
ベントとして保持される。このため同一素子の出力信号
値算出f、2回以上実行してしまい、そのための処理オ
ーバヘッドが存在する。特に多数のイベン)f並列的に
処理する場合には、第2図に示した様に、あるイベント
についてその指示する素子の新出力信号値を格納する以
前に、他のイベントについてその指示する素子の現出力
信号値読出しを実行するため、必ずしも最新の出力信号
値を用いてその変化判定が実行されるとは限らない。こ
のため、上記の様に同一素子の出力信号値算出を2回以
上実行した場合に、いずれの回においても出力信号値変
化と判定し、同一のイベントがその下流の素子に対し再
度同一のイベントを発生させ、もはやその処理オーバヘ
ッドが無視できないものとなる。
本発明の目的は、上記の様な同一素子に対するイベント
(重複イベント)による処理オーバヘッドを最小限に抑
えた。高速な論理シミュレーション処理装置を提供する
ことにある。
(重複イベント)による処理オーバヘッドを最小限に抑
えた。高速な論理シミュレーション処理装置を提供する
ことにある。
上記目的は、多数のイベントの中から、同一素子を指示
するイベントを重複イベントとして高速に判定、削除す
る重複イベント削除手段を設けることにより、達成され
る。
するイベントを重複イベントとして高速に判定、削除す
る重複イベント削除手段を設けることにより、達成され
る。
重複イベントを含む可能性がある多数のイベントの処理
を開始する直前に1重複イベント削除手段を用いて有効
なイベントだけを残し、それら有効なイベントについて
のみ処理を実行することが可能となる。このため重複イ
ベントによる処理オーバヘッドを最小限に抑え、高速に
論理シミュレーションを実行できる。
を開始する直前に1重複イベント削除手段を用いて有効
なイベントだけを残し、それら有効なイベントについて
のみ処理を実行することが可能となる。このため重複イ
ベントによる処理オーバヘッドを最小限に抑え、高速に
論理シミュレーションを実行できる。
以下、本発明の一実施例と、図面を用いて詳細に説明す
る。
る。
初めに本実施例のハードウェア構成の概略を第3図を用
いて説明する。本実施例のハードウェアは大きく主記憶
装置1、スカラ処理装置2、ベクトル処理装置3から構
成される。主記憶装置1は論理シミュレーションを実行
するためのプログラム・データを保持する。スカラ処理
装置2は、主記憶装置1よりプログラム金構成する命令
を読出し、解読し、その命令に従い主記憶装置1のデー
タを参照または更新するか、あるいはベクトル処理装置
3に対し、ベクトル処理の開始を指示する。
いて説明する。本実施例のハードウェアは大きく主記憶
装置1、スカラ処理装置2、ベクトル処理装置3から構
成される。主記憶装置1は論理シミュレーションを実行
するためのプログラム・データを保持する。スカラ処理
装置2は、主記憶装置1よりプログラム金構成する命令
を読出し、解読し、その命令に従い主記憶装置1のデー
タを参照または更新するか、あるいはベクトル処理装置
3に対し、ベクトル処理の開始を指示する。
ベクトル処理装置3は、スカラ処理装置2から送られる
ベクトル処理開始の指示により、主記憶装置!!、1よ
りベクトル命令を読出し、解読し、そのベクトル命令に
従い主記憶装置1のデータを参照または更新する。
ベクトル処理開始の指示により、主記憶装置!!、1よ
りベクトル命令を読出し、解読し、そのベクトル命令に
従い主記憶装置1のデータを参照または更新する。
スカラ処理装置2はさらに、バッファ記憶21、命令バ
ッファ22.命令デコーダ23.演算処理部24から構
成され、演算処理部24はさらに、汎用レジスタ241
、浮動小数点レジスタ242、演算器243から構成さ
れる装 ベクトル処理装置3はさらに、命令制御部31゜アクセ
ス制御部32、ベクトルレジスタ部33゜演算処理部3
4から構成される。命令制御部31ばさらに、命令バッ
ファ3114.命令デコーダ312より構成され、アク
セス制御部32はさらニ、アドレスレジスタ群321.
ロード処理部322、ストア処理部323より構成され
、ベクトルレジスタ部はさらに、スカシレジスタ群33
1、ベクトルレジスタ群332、マスクレジスタ群33
3 より構成され、演算処理部34はさらに。
ッファ22.命令デコーダ23.演算処理部24から構
成され、演算処理部24はさらに、汎用レジスタ241
、浮動小数点レジスタ242、演算器243から構成さ
れる装 ベクトル処理装置3はさらに、命令制御部31゜アクセ
ス制御部32、ベクトルレジスタ部33゜演算処理部3
4から構成される。命令制御部31ばさらに、命令バッ
ファ3114.命令デコーダ312より構成され、アク
セス制御部32はさらニ、アドレスレジスタ群321.
ロード処理部322、ストア処理部323より構成され
、ベクトルレジスタ部はさらに、スカシレジスタ群33
1、ベクトルレジスタ群332、マスクレジスタ群33
3 より構成され、演算処理部34はさらに。
演算器群341より構成される。
本実施例のハードウェアは1例えばHITAClS−8
10のようなベクトル・プロセッサのハードウェアと、
その基本的な動作も含めて同様である。そこで、スカラ
処理装置2およびベクトル処理装置3の詳細な動作の説
明は省略する。
10のようなベクトル・プロセッサのハードウェアと、
その基本的な動作も含めて同様である。そこで、スカラ
処理装置2およびベクトル処理装置3の詳細な動作の説
明は省略する。
以上で1本実施例のハードウェア構成の説明を終了する
。
。
次に5本実施例による論理シミュレーション処理手順を
説明するが、その前に、論理シミュレーションを実行す
るためのデータの形式を説明する。
説明するが、その前に、論理シミュレーションを実行す
るためのデータの形式を説明する。
巣4図は、シミュレーション対象論理回路を、論理シミ
ュレーション実行可能な形式に翻訳した論理テーブルL
’r B Lのルコードの形式を示す。
ュレーション実行可能な形式に翻訳した論理テーブルL
’r B Lのルコードの形式を示す。
LTBLのルコードは原則として論理回路を構成するA
ND、OR等のゲート1つ、またはラッチ1つを表わす
。本レコードは20バイトの長さを持ち、第4図に示す
ように1バイトまたは4バイトの長さを持つ8つのフィ
ールドに分けられる。
ND、OR等のゲート1つ、またはラッチ1つを表わす
。本レコードは20バイトの長さを持ち、第4図に示す
ように1バイトまたは4バイトの長さを持つ8つのフィ
ールドに分けられる。
バイト位置Oの1バイトのフィールドFNは、当該レコ
ードに対応する素子の機能、すなわちMの。
ードに対応する素子の機能、すなわちMの。
OR1あるいはラッチ等の種類を保持する。バイト位置
1の1バイトのフィールドFLは1重複イベント削除処
理を実行するためのフラグを保持する。バイト位置20
1バイトのフィールドは、本実施例では使用していない
。バイト位置3の1バイトのフィールドVALは、当該
レコードに対応する素子の出力信号1直を保持する。バ
イト位置4および8のそれぞれ4バイトのフィールドF
llおよびFI2は、当該レコードに対応する素子の、
入刃先素子に対応するレコードを指示するポインタを保
持する。バイト位置12および16のそれぞれ4バイト
のフィールドFOIおよびFO2は、当該レコードに対
応する素子の、出力先素子に対応するレコードを指示す
るポインタを保持する。
1の1バイトのフィールドFLは1重複イベント削除処
理を実行するためのフラグを保持する。バイト位置20
1バイトのフィールドは、本実施例では使用していない
。バイト位置3の1バイトのフィールドVALは、当該
レコードに対応する素子の出力信号1直を保持する。バ
イト位置4および8のそれぞれ4バイトのフィールドF
llおよびFI2は、当該レコードに対応する素子の、
入刃先素子に対応するレコードを指示するポインタを保
持する。バイト位置12および16のそれぞれ4バイト
のフィールドFOIおよびFO2は、当該レコードに対
応する素子の、出力先素子に対応するレコードを指示す
るポインタを保持する。
フィールドFTI、FI2.FOIおよびFO2に保持
されるポインタ情報により、シミュレーション対象論理
回路を構成する素子間の結線関係を表わす。
されるポインタ情報により、シミュレーション対象論理
回路を構成する素子間の結線関係を表わす。
論理テーブルLTBLの他に、論理シミュレーションを
実行するためにゲート・イベント・テープkGEVT%
ラッチ・イベント・テーブルLEVTが存在する。GE
VTは、AND、OR等のゲート素子において、その入
力信号値が変化した素子に対応するLTBLレコードを
指示するポインタを、イベントとして保持する。LEV
Tは、ラッチ素子において、その入力信号値が変化した
素子に対応するLTBLレコードを指示するポインタを
、イベントとして保持する。GEVT、LEVTのそれ
ぞれに対し、その保持するイベント数を保持するエリア
ogv’rN、LEVTNが存在する。また、論理シミ
ュレーションの進捗度、すなわちシミュレー・/ヨ/・
サイクル数を保持するためのエリアCYOLEが存在す
る。
実行するためにゲート・イベント・テープkGEVT%
ラッチ・イベント・テーブルLEVTが存在する。GE
VTは、AND、OR等のゲート素子において、その入
力信号値が変化した素子に対応するLTBLレコードを
指示するポインタを、イベントとして保持する。LEV
Tは、ラッチ素子において、その入力信号値が変化した
素子に対応するLTBLレコードを指示するポインタを
、イベントとして保持する。GEVT、LEVTのそれ
ぞれに対し、その保持するイベント数を保持するエリア
ogv’rN、LEVTNが存在する。また、論理シミ
ュレーションの進捗度、すなわちシミュレー・/ヨ/・
サイクル数を保持するためのエリアCYOLEが存在す
る。
以上で、論理シミュレーション分実行するためのデータ
の形式の説明を終了する。
の形式の説明を終了する。
次に、本実施例による論理シミュレーション処理手順を
第1図および第5図を用いて説明する。
第1図および第5図を用いて説明する。
第1図は全体の処理手順の概要を示す。初期設定101
では、倫理テーブルLTBLの初期設定を行う。すなわ
ちLTBLの各レコードのフラグ・フィールドFLに″
0”を、出力信号値フィールドMALに0期値を格納す
る。次に、サイクル数格納エリアCYOLEに10”を
格納する(処理102)。
では、倫理テーブルLTBLの初期設定を行う。すなわ
ちLTBLの各レコードのフラグ・フィールドFLに″
0”を、出力信号値フィールドMALに0期値を格納す
る。次に、サイクル数格納エリアCYOLEに10”を
格納する(処理102)。
以下、CYCLEの内容が、指定されたシミュレーショ
ン終了サイクル数に達するまで、処理103から処理1
19までを繰返す。まず、外部入力信号セット103に
て、シミュレーション対&m理回路に対し外部より与え
られる信号値を、論理テーブルLTBLの出力信号値フ
ィールドVALに格納する。この時出力先素子ボイ/り
・フィールドFOI、FO2の内容を、出力先素子の機
能に従いゲート・イベント・テーブルGEVTまたはラ
ッチ・イベント・テーブルLEVTに格納する。次に、
ゲート・イベント評価104にて、GEVTの内容に従
い、イベントの発生したゲート素子の新しい出力信号値
を算出する。すなわち、GEVTに格納されているイベ
ントを読出し、その指示するLTBLレコードについて
、その機能フィールドPNの内容、入刃先素子ポインタ
・フィールドFIZ、−FI2の内容がさらに指示する
LTBLレコードのそれぞれの出力信号値フィールドの
内容により、新しい出力信号値を算出する。新しい出力
信号値を、上記イベントが指示するLTBLレコードの
出力信号値フィールドVALの内容と比較し。
ン終了サイクル数に達するまで、処理103から処理1
19までを繰返す。まず、外部入力信号セット103に
て、シミュレーション対&m理回路に対し外部より与え
られる信号値を、論理テーブルLTBLの出力信号値フ
ィールドVALに格納する。この時出力先素子ボイ/り
・フィールドFOI、FO2の内容を、出力先素子の機
能に従いゲート・イベント・テーブルGEVTまたはラ
ッチ・イベント・テーブルLEVTに格納する。次に、
ゲート・イベント評価104にて、GEVTの内容に従
い、イベントの発生したゲート素子の新しい出力信号値
を算出する。すなわち、GEVTに格納されているイベ
ントを読出し、その指示するLTBLレコードについて
、その機能フィールドPNの内容、入刃先素子ポインタ
・フィールドFIZ、−FI2の内容がさらに指示する
LTBLレコードのそれぞれの出力信号値フィールドの
内容により、新しい出力信号値を算出する。新しい出力
信号値を、上記イベントが指示するLTBLレコードの
出力信号値フィールドVALの内容と比較し。
異なっている、すなわち出力信号値が変化した場合には
出力信号値フィールドVALの内容を更新し、出力先素
子ポインタ・フィールドF01゜FO2の内容を、出力
先素子の機能に従いGEVTまたはLEVTに格納する
。以上のゲート・イベント評価104の処理は、第3図
に示したベクトル処理装置3にて、第2図に示すように
ベクトル処理として実行される。また、ゲート・イベン
ト評価104にて新たなゲート・イベントが発生した場
合には、再度ゲート・イベント評価104を実行する(
処理105)。
出力信号値フィールドVALの内容を更新し、出力先素
子ポインタ・フィールドF01゜FO2の内容を、出力
先素子の機能に従いGEVTまたはLEVTに格納する
。以上のゲート・イベント評価104の処理は、第3図
に示したベクトル処理装置3にて、第2図に示すように
ベクトル処理として実行される。また、ゲート・イベン
ト評価104にて新たなゲート・イベントが発生した場
合には、再度ゲート・イベント評価104を実行する(
処理105)。
ゲート・イベントが発生しなくなったら、クロックを立
上げる(処理106)。すなわち、シミュレーション対
象倫理回路に対し外部からクロックとして与えられる信
号値を、ii%i埋テーブルTBLの出力信号値フィー
ルドMALに格納する。この特出刃先素子ポインタ・フ
ィールドFOI、FO2の内容を、出力先素子の機能に
従いゲート・イベント・テーブルGEVTまたはラッチ
・イベント・テーブルLEVTに格納する。次に、ゲー
ト・イベント評価107を実行する。その処理はゲート
・イベント評価104と同様である。また、ゲート・イ
ベントが発生しなくなるまで繰返す点も同様である(処
理109)。次に、ラッチ重複イベント削除109にて
、LEVTに格納されているイベントの内、同一のLT
BLレコードを指示する重複イベン11−削除する。こ
れは外部入力信号セット103、クロック立上げ106
.あるいはゲート・イベント評価104,107のそれ
ぞれの処理において、同一素子の異なる入力信号値が便
化したために発生した重複イベント、あるいはベクトル
処理の性質により重複イベントがさらに下流の素子に伝
謄され発生した重飄イベントにより、続くラッチ・イベ
ン) 110.あるいはその以降の処理にオーバヘッド
が含まれるのを防ぐためのものである。ラッチ重複イベ
ント削除109の詳細な処理手順については、後に説明
する。次に、ラッチ・イベント評tit[1lloにて
、LEVTの内容に従い、イベントの発生したラッチ素
子の新しい出力信号値eX出する。その処理は、GEV
TO代りにLEVTからイベント分読出すことを除いて
、ゲート・イベント評価104と同様でおる。ラッチ・
イベント評価110にて新たなゲート・イベントが発生
した場合には、再度ゲート・イベント評価107より処
理を繰返す(処理111)。
上げる(処理106)。すなわち、シミュレーション対
象倫理回路に対し外部からクロックとして与えられる信
号値を、ii%i埋テーブルTBLの出力信号値フィー
ルドMALに格納する。この特出刃先素子ポインタ・フ
ィールドFOI、FO2の内容を、出力先素子の機能に
従いゲート・イベント・テーブルGEVTまたはラッチ
・イベント・テーブルLEVTに格納する。次に、ゲー
ト・イベント評価107を実行する。その処理はゲート
・イベント評価104と同様である。また、ゲート・イ
ベントが発生しなくなるまで繰返す点も同様である(処
理109)。次に、ラッチ重複イベント削除109にて
、LEVTに格納されているイベントの内、同一のLT
BLレコードを指示する重複イベン11−削除する。こ
れは外部入力信号セット103、クロック立上げ106
.あるいはゲート・イベント評価104,107のそれ
ぞれの処理において、同一素子の異なる入力信号値が便
化したために発生した重複イベント、あるいはベクトル
処理の性質により重複イベントがさらに下流の素子に伝
謄され発生した重飄イベントにより、続くラッチ・イベ
ン) 110.あるいはその以降の処理にオーバヘッド
が含まれるのを防ぐためのものである。ラッチ重複イベ
ント削除109の詳細な処理手順については、後に説明
する。次に、ラッチ・イベント評tit[1lloにて
、LEVTの内容に従い、イベントの発生したラッチ素
子の新しい出力信号値eX出する。その処理は、GEV
TO代りにLEVTからイベント分読出すことを除いて
、ゲート・イベント評価104と同様でおる。ラッチ・
イベント評価110にて新たなゲート・イベントが発生
した場合には、再度ゲート・イベント評価107より処
理を繰返す(処理111)。
ゲート・イベントが発生しなくなったら、クロックを立
下げる(処理112)。これより処理1117まで、処
理106から111までと同派の処理を実行する。
下げる(処理112)。これより処理1117まで、処
理106から111までと同派の処理を実行する。
処理117にて、ゲート・イベントが存在しなかったら
、サイクル数洛納エリアCYCLEの内容を“1”増す
(処理118)。そしてCYCLEの内容が指定された
シミュレーション、1’FTサイクル数にまだ達してい
なかったら処理103以降を繰返す(処理119)。シ
ミュレーション終了サイクル数に達していたら、結果出
力および終了処理120を実行して、全体の処理を終了
する。
、サイクル数洛納エリアCYCLEの内容を“1”増す
(処理118)。そしてCYCLEの内容が指定された
シミュレーション、1’FTサイクル数にまだ達してい
なかったら処理103以降を繰返す(処理119)。シ
ミュレーション終了サイクル数に達していたら、結果出
力および終了処理120を実行して、全体の処理を終了
する。
次に、ラッチ重複イベント削除109,115の詳細な
処理手順を第5図を用いて説明する。まず、ラッチ・イ
ベント・テーブルLEVTに格納されているすべてのイ
ベントについて、その指示する論理テーブルLTBLの
レコードのフラグ・フィールドFLに′1”を格納する
(処理501)。
処理手順を第5図を用いて説明する。まず、ラッチ・イ
ベント・テーブルLEVTに格納されているすべてのイ
ベントについて、その指示する論理テーブルLTBLの
レコードのフラグ・フィールドFLに′1”を格納する
(処理501)。
本処理はベクトル処理にて実行する。処理502から5
07はベクトル処理ではなくスカラ処理にて実行する。
07はベクトル処理ではなくスカラ処理にて実行する。
これらは、LEVTに格納されているイベントを先頭か
ら逐次読出し、その指示するI、TBLレコードのフラ
グ・フィールドF’Lに″1″が格納されていたら、本
イベントを有効イベントとしてLEVTに再度格納する
とともに、フラグ・フィールドFLに″O#を格納する
。これにより、同一のLTBLレコード分指示するイベ
ントがこの後存在しても、フラグ・フィールドFLの内
容が″0”であることにより重複イベントと判定され、
削除される。
ら逐次読出し、その指示するI、TBLレコードのフラ
グ・フィールドF’Lに″1″が格納されていたら、本
イベントを有効イベントとしてLEVTに再度格納する
とともに、フラグ・フィールドFLに″O#を格納する
。これにより、同一のLTBLレコード分指示するイベ
ントがこの後存在しても、フラグ・フィールドFLの内
容が″0”であることにより重複イベントと判定され、
削除される。
以上で、本実施例の論理シミュレーション処理手順の説
明を終了する。
明を終了する。
本実施例によれば、ゲート・イベント評価等の処理にお
いて重複イベントが発生したり、それがさらに下流の素
子に伝播される様な条件にあったとしても、その重複イ
ベントがラッチ素子にまで伝播した時点において削除さ
れる。そのため重複イベントによる処理オーバヘッドを
少なく抑え、論理7ミユレ一シヨン分高速に実行するこ
とが可能である。
いて重複イベントが発生したり、それがさらに下流の素
子に伝播される様な条件にあったとしても、その重複イ
ベントがラッチ素子にまで伝播した時点において削除さ
れる。そのため重複イベントによる処理オーバヘッドを
少なく抑え、論理7ミユレ一シヨン分高速に実行するこ
とが可能である。
本実施例では、ラッチ・イベントについてのみその重複
イベント削除を実行したが、ゲート・イベントについて
も重複イベント削除を実行することも可能である。その
場合、第1図において、ゲート・イベント評価104,
107,113の直前に、第5図に示したラッチ重複イ
ベント削除の同様の処理手順によるゲート重複イベント
削除を実行すればよい。この場合、重複イベント削除に
要するオーバヘッドは増すものの、重複イベントをその
まま処理するごとによるオーバヘッドは最小となる。
イベント削除を実行したが、ゲート・イベントについて
も重複イベント削除を実行することも可能である。その
場合、第1図において、ゲート・イベント評価104,
107,113の直前に、第5図に示したラッチ重複イ
ベント削除の同様の処理手順によるゲート重複イベント
削除を実行すればよい。この場合、重複イベント削除に
要するオーバヘッドは増すものの、重複イベントをその
まま処理するごとによるオーバヘッドは最小となる。
本発明によれば、イベント駆動方式に基づき、多数のイ
ベントを並列的に処理する論理シミュレーション処理装
置において、重複イベントによる処理オーバヘッドを最
小限に抑え、高速に論理シミュレーションを実行するこ
とが可能となる。
ベントを並列的に処理する論理シミュレーション処理装
置において、重複イベントによる処理オーバヘッドを最
小限に抑え、高速に論理シミュレーションを実行するこ
とが可能となる。
さらに本発明によれば、論理シミュレーション結果を表
示もしくは印字するために、各素子の信号値変化を中間
的なテーブルまたはファイルに格納する場合に、重複イ
ベントによる余分な信号値変化を格納してしまうことを
防止できるため、メモリ、ディスク装置等の必要資源を
最小限に抑えられる効果がある。
示もしくは印字するために、各素子の信号値変化を中間
的なテーブルまたはファイルに格納する場合に、重複イ
ベントによる余分な信号値変化を格納してしまうことを
防止できるため、メモリ、ディスク装置等の必要資源を
最小限に抑えられる効果がある。
第1図は本発明の一実施例の全体の処理を示す流れ図、
第2図はパイプライン・プロセッサを用いた処理の様子
を示す図、第3図は本発明の一実施例の哨戒を示す図、
第4図は論理テーブルの形式を示す図、第5図は重複イ
ベント削除処理を示す流れ図である。 1・・・主記憶装置、2・・・スカラ処理装置、3・・
・ベクトル処理装置、31・・・命令制御部、32・・
・アクセス制御部、33・・・ベクトルレジスタ部、3
32・・・ベクトルレジスタ群、34・・・演算処理部
、341vJl Σ 葛 2 囚 一部斉り ¥r4 Σ 廚 3 凹
第2図はパイプライン・プロセッサを用いた処理の様子
を示す図、第3図は本発明の一実施例の哨戒を示す図、
第4図は論理テーブルの形式を示す図、第5図は重複イ
ベント削除処理を示す流れ図である。 1・・・主記憶装置、2・・・スカラ処理装置、3・・
・ベクトル処理装置、31・・・命令制御部、32・・
・アクセス制御部、33・・・ベクトルレジスタ部、3
32・・・ベクトルレジスタ群、34・・・演算処理部
、341vJl Σ 葛 2 囚 一部斉り ¥r4 Σ 廚 3 凹
Claims (1)
- 【特許請求の範囲】 1、動作を論理的にシミユレートされるべき論理回路を
構成する各素子のうち、入力信号値が変化した素子をイ
ベントとして保持し、 該保持されたイベントのうち、同一の内容を有する重複
イベントを削除し、 該重複イベントを削除した後の該保持されたイベントに
基づき、該各素子の出力信号値の算出を、処理すること
を有することを特徴とする、論理回路シミュレーション
方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61188438A JPS6345671A (ja) | 1986-08-13 | 1986-08-13 | 論理回路シミユレ−シヨン方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61188438A JPS6345671A (ja) | 1986-08-13 | 1986-08-13 | 論理回路シミユレ−シヨン方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6345671A true JPS6345671A (ja) | 1988-02-26 |
Family
ID=16223679
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61188438A Pending JPS6345671A (ja) | 1986-08-13 | 1986-08-13 | 論理回路シミユレ−シヨン方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6345671A (ja) |
-
1986
- 1986-08-13 JP JP61188438A patent/JPS6345671A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR910000364B1 (ko) | 이뮬레이션 시스템 및 그 방법 | |
| US8281318B2 (en) | Systems and methods for inter process communication based on queues | |
| JPH0743733B2 (ja) | 論理シミュレーション方法 | |
| US4028670A (en) | Fetch instruction for operand address calculation | |
| JPS63279328A (ja) | 仮想計算機システムのゲスト実行制御方式 | |
| JPS6345671A (ja) | 論理回路シミユレ−シヨン方法 | |
| JPH0363092B2 (ja) | ||
| US20250190217A1 (en) | Technique for handling ordering constrained access operations | |
| JP2553200B2 (ja) | 情報処理装置 | |
| US11106846B1 (en) | Systems and methods for emulation data array compaction | |
| JPH03271829A (ja) | 情報処理装置 | |
| JPH0222413B2 (ja) | ||
| JPH0831033B2 (ja) | データ処理装置 | |
| JPS60108973A (ja) | 配列要素の最小値および最小要素の要素番号を求める方法 | |
| JP2764947B2 (ja) | 命令制御方式 | |
| US11048843B1 (en) | Dynamic netlist modification of compacted data arrays in an emulation system | |
| JPH0385636A (ja) | 命令先行制御装置 | |
| JP3014701B2 (ja) | 情報処理装置 | |
| JPS60179844A (ja) | 命令再読出し制御方式 | |
| JPH0743649B2 (ja) | 演算回路 | |
| JPS59189448A (ja) | オペランドバツフア | |
| JPS59165143A (ja) | デ−タ処理装置 | |
| JPH05158734A (ja) | マイクロプロセッサ | |
| Lavington | CSM-182-Manchester Computer Architectures, 1948-1975 | |
| JPS6368924A (ja) | マイクロプロセッサ |