JPH03209569A - 論理シミュレーション方法 - Google Patents
論理シミュレーション方法Info
- Publication number
- JPH03209569A JPH03209569A JP2004926A JP492690A JPH03209569A JP H03209569 A JPH03209569 A JP H03209569A JP 2004926 A JP2004926 A JP 2004926A JP 492690 A JP492690 A JP 492690A JP H03209569 A JPH03209569 A JP H03209569A
- Authority
- JP
- Japan
- Prior art keywords
- event
- cell
- simulation
- timing error
- timing
- 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
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims description 16
- 230000015654 memory Effects 0.000 description 33
- 238000001514 detection method Methods 0.000 description 15
- 238000012360 testing method Methods 0.000 description 12
- 239000013598 vector Substances 0.000 description 12
- 238000012545 processing Methods 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 230000010355 oscillation Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 240000002853 Nelumbo nucifera Species 0.000 description 1
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明は、論理シミュレーション方法に関する。
(従来の技術)
一般に、半導体デバイスは多数の基本機能素子からなる
論理回路によって構成されるが、例えば新しい半導体デ
バイスを設計する際においては、設計した論理回路が期
待通りの動作を行うか否か等を予め論理シミュレータに
よりシ竜ニレ−ジョンしている。このような論理シミュ
レータは、従来汎用コンピュータ等を用いて、ソフトウ
ェアによって構成されていた。
論理回路によって構成されるが、例えば新しい半導体デ
バイスを設計する際においては、設計した論理回路が期
待通りの動作を行うか否か等を予め論理シミュレータに
よりシ竜ニレ−ジョンしている。このような論理シミュ
レータは、従来汎用コンピュータ等を用いて、ソフトウ
ェアによって構成されていた。
また、このような論理シミュレータにおける論理シミュ
レーションの高速化を図るため、例えば特開昭59−3
652号公報、特開昭83−257841号公報等にお
いて、上述したような論理シミュレータのソフトウェア
の一部を、ハードウェアに置き換えた論理シミュレータ
が提案されている。
レーションの高速化を図るため、例えば特開昭59−3
652号公報、特開昭83−257841号公報等にお
いて、上述したような論理シミュレータのソフトウェア
の一部を、ハードウェアに置き換えた論理シミュレータ
が提案されている。
ところで、通常、ロジック回路を構成するゲート(セル
)に、ある入力の変化(イベント)があった時、セルの
立ち上り、立ち下がり特性等によって、ある遅延時間を
もってイベントが出力されるが、この入力から出力まで
の遅延時間内に他の入力イベントがあった場合、出力が
、 E−(発振状態)または”X’ (不定状態)と
なったり、入力イベントの入力順序と出力イベントの出
力順序とが一致しない追い越し等のタイミングエラーが
発生する場合がある。また、例えばフリップフロップ、
カウンタ等のメモリーセル等においては、セットアツプ
タイム、ホールドタイム等のタイミングエラーが発生す
る場合がある。
)に、ある入力の変化(イベント)があった時、セルの
立ち上り、立ち下がり特性等によって、ある遅延時間を
もってイベントが出力されるが、この入力から出力まで
の遅延時間内に他の入力イベントがあった場合、出力が
、 E−(発振状態)または”X’ (不定状態)と
なったり、入力イベントの入力順序と出力イベントの出
力順序とが一致しない追い越し等のタイミングエラーが
発生する場合がある。また、例えばフリップフロップ、
カウンタ等のメモリーセル等においては、セットアツプ
タイム、ホールドタイム等のタイミングエラーが発生す
る場合がある。
このため、従来の論理シミュレータでは、遅延時間の計
算等を行わず、タイミングエラーを検出せずにシミュレ
ーションを実施するモードと、遅延時間の計算等を行い
、タイミングエラーの有無を検出しながらシミュレーシ
ョンを実行し、タイミングエラーが発生した場合は、こ
のタイミングエラーを表示するモードを選択することが
できるよう構成されていた。
算等を行わず、タイミングエラーを検出せずにシミュレ
ーションを実施するモードと、遅延時間の計算等を行い
、タイミングエラーの有無を検出しながらシミュレーシ
ョンを実行し、タイミングエラーが発生した場合は、こ
のタイミングエラーを表示するモードを選択することが
できるよう構成されていた。
(発明が解決しようとする課題)
しかしながら、上述した従来の方法では、表示画面等に
よりタイミングエラーの発生を知ることはできるが、シ
ミュレーション結果にはこのタイミングエラーの発生が
反映されておらず、実際の状態とは異なる状態がシミコ
レ−ジョンされてしまうという問題があった。
よりタイミングエラーの発生を知ることはできるが、シ
ミュレーション結果にはこのタイミングエラーの発生が
反映されておらず、実際の状態とは異なる状態がシミコ
レ−ジョンされてしまうという問題があった。
本発明は、かかる従来の事情に対処してなされたもので
、従来に較べてより実際の状態に近い正確なシミュレー
ションを行うことのできる論理シミュレーション方法を
提供しようとするものである。
、従来に較べてより実際の状態に近い正確なシミュレー
ションを行うことのできる論理シミュレーション方法を
提供しようとするものである。
[発明の構成]
(課題を解決するための手段)
すなわち本発明の論理シミュレーション方法は、複数の
セルと、これらのセルを接続する複数のネットからなる
ロジック回路の動作をシミュレションするに際し、前記
セルの入力タイミングからタイミングエラーを検出し、
前記タイミングエラーが検出された場合、このタイミン
グエラーが検出された前記セルの出力を該タイミングエ
ラー発生による値に設定して前記シミュレーションを実
行することを特徴とする。
セルと、これらのセルを接続する複数のネットからなる
ロジック回路の動作をシミュレションするに際し、前記
セルの入力タイミングからタイミングエラーを検出し、
前記タイミングエラーが検出された場合、このタイミン
グエラーが検出された前記セルの出力を該タイミングエ
ラー発生による値に設定して前記シミュレーションを実
行することを特徴とする。
(作 用)
本発明の論理シミュレーション方法では、タイミングエ
ラーが検出された場合、このタイミングエラーが検出さ
れたセルの出力を該タイミングエラー発生による値に設
定してシミュレーションを実行する。、(例えば、フリ
ップフロップのデータインブッ[・セットアツプタイム
エラー発生時には、その時のデータではなくてそのデー
タに変化する前のデータをタイミングエラーが検出され
たセルの出力に反映、設定させる。)したがって、シミ
ュレーション結果にはこのタイミングエラーの発生が反
映されており、従来に較べてより実際の状態に近い正確
なシミュレーションを行うことができる。
ラーが検出された場合、このタイミングエラーが検出さ
れたセルの出力を該タイミングエラー発生による値に設
定してシミュレーションを実行する。、(例えば、フリ
ップフロップのデータインブッ[・セットアツプタイム
エラー発生時には、その時のデータではなくてそのデー
タに変化する前のデータをタイミングエラーが検出され
たセルの出力に反映、設定させる。)したがって、シミ
ュレーション結果にはこのタイミングエラーの発生が反
映されており、従来に較べてより実際の状態に近い正確
なシミュレーションを行うことができる。
(実施例)
以下、本発明方法を 1チツプのハードウェア論理シミ
ュレータに適用した実施例を、図面を参照して説明する
。
ュレータに適用した実施例を、図面を参照して説明する
。
第1図に示すように、この実施例の論理シミュレータは
、 ■チップ上に形成されたハードウェアから構成され
るシミュレーションチップ1と、例えば複数のRA M
から構成されるデータ収容部2と、入出力装置としての
エンジニアリング・ワーク・ステーション(以下EWS
という)3とからその主要部が構成されている。
、 ■チップ上に形成されたハードウェアから構成され
るシミュレーションチップ1と、例えば複数のRA M
から構成されるデータ収容部2と、入出力装置としての
エンジニアリング・ワーク・ステーション(以下EWS
という)3とからその主要部が構成されている。
上記シミュレーションチップ1は、タイムホイール部(
以下TWUという)11と、アキュムレータ部(以下A
CUという)12と、ファンクションロジック部(以下
FDUという)13とから構成されている。また、この
シミュレーションチップ1は、タイミングエラーを検出
せずにシミュレーションを実施するモード(以下Aモー
ドという)と、タイミングエラーの有無を検出しながら
シミュレーションを実行し、タイミングエラーが発生し
た場合は、このタイミングエラーを表示するモード(以
下Bモードという)と、タイミングエラーが発生した場
合は、このタイミングエラーが検出されたセルの出力を
該タイミングエラー発生による値に設定してシミュレー
ションを実行し、このタイミングエラーを反映したシミ
ュレーションを実施するモード(以下Cモードという)
とを選択することができるよう構成されている。
以下TWUという)11と、アキュムレータ部(以下A
CUという)12と、ファンクションロジック部(以下
FDUという)13とから構成されている。また、この
シミュレーションチップ1は、タイミングエラーを検出
せずにシミュレーションを実施するモード(以下Aモー
ドという)と、タイミングエラーの有無を検出しながら
シミュレーションを実行し、タイミングエラーが発生し
た場合は、このタイミングエラーを表示するモード(以
下Bモードという)と、タイミングエラーが発生した場
合は、このタイミングエラーが検出されたセルの出力を
該タイミングエラー発生による値に設定してシミュレー
ションを実行し、このタイミングエラーを反映したシミ
ュレーションを実施するモード(以下Cモードという)
とを選択することができるよう構成されている。
一方、データ収容部2は、コンディションステ−トメモ
リ−(以下COMという)21、テストベクタメモリー
(以下TVMという)22、タイムホイールメモリー(
以下TWMという)23、イベントテーブルメモリー(
以下ETMという)24、ネットインフォメーションメ
モリー(以下NIMという)25、結果格納用メモリー
(以下R5Mという)26、セルスペックメモリー(以
下CSMという)27、ネットシグナルステートメモリ
ー(以下STMという)28等から構成されている。
リ−(以下COMという)21、テストベクタメモリー
(以下TVMという)22、タイムホイールメモリー(
以下TWMという)23、イベントテーブルメモリー(
以下ETMという)24、ネットインフォメーションメ
モリー(以下NIMという)25、結果格納用メモリー
(以下R5Mという)26、セルスペックメモリー(以
下CSMという)27、ネットシグナルステートメモリ
ー(以下STMという)28等から構成されている。
上記シミュレーションチップ1とデータ収容部2は、外
部バス(外部データバス、外部アドレスバス)4を介し
て接続されている。
部バス(外部データバス、外部アドレスバス)4を介し
て接続されている。
また、シミュレーションチップ1内のTWU 11、A
CU12、FDU13は内部バス(内部データバス、内
部アドレスバス)14を介して接続されている。
CU12、FDU13は内部バス(内部データバス、内
部アドレスバス)14を介して接続されている。
さらに、複数のメモリーのうちSTM28だけは、専用
のステートバス(ステートデータバス、ステートアドレ
スバス)30を介してACU12に接続されている。
のステートバス(ステートデータバス、ステートアドレ
スバス)30を介してACU12に接続されている。
シミュレーションに必要なデータは、EWS 3によっ
て入力され、データ収容部2に転送され、必要に応じて
シミュレーションチップ1に取り込まれるが、データ収
容部2のメモリーのうち、C0M21には、EWS 3
との応答時に必要なデータが収容される。
て入力され、データ収容部2に転送され、必要に応じて
シミュレーションチップ1に取り込まれるが、データ収
容部2のメモリーのうち、C0M21には、EWS 3
との応答時に必要なデータが収容される。
シミュレーションに必要なデータとしては、ロジックの
構成に関するデータすなわち各セル(論理素子)の接続
状態に関するネットインフォメーションデータおよび各
セルのスペックに関するセルスペックデータと、シミュ
レーション用の入力信号に関するテスト・ベクタ等があ
るが、これらは、シミュレーションに先立って予めEW
S 3からTVM22、N1M25、C3M27内に書
き込まれる。
構成に関するデータすなわち各セル(論理素子)の接続
状態に関するネットインフォメーションデータおよび各
セルのスペックに関するセルスペックデータと、シミュ
レーション用の入力信号に関するテスト・ベクタ等があ
るが、これらは、シミュレーションに先立って予めEW
S 3からTVM22、N1M25、C3M27内に書
き込まれる。
なお、TVM22に格納されるテスト・ベクタには、例
えば入力信号の立ち上り、立ち下がり等の変化(以下イ
ベントという)の種類と、イベントの発生したネット名
に関する情報が発生時刻順に記載されている。また、そ
れぞれのイベントには、イベントの発生順を示すイベン
トゲートフラグが付されている。
えば入力信号の立ち上り、立ち下がり等の変化(以下イ
ベントという)の種類と、イベントの発生したネット名
に関する情報が発生時刻順に記載されている。また、そ
れぞれのイベントには、イベントの発生順を示すイベン
トゲートフラグが付されている。
また、Nx間25iこ格納されるネットインフォメーシ
ョンデータは、第4図に示すように例えばあるセルの出
力側のネットがどのセルに接続されているかを示すネッ
ト次段メモリー(以下N N Mという)25aおよび
拡張ネット次段メモリ(以下ENNMという)25bと
、あるセルの入力側にどのネットが接続されているかを
示すネット前段メモリー(以下NBMという)25Cお
よび拡張ネット前段メモリー(以下ENBMという)2
5dとに分けられている。また、このネットインフォメ
ーションデータには、セル種(例えばANDゲートであ
るかORゲートであるか等)に関する情報およびセルの
ファンアウト(負荷容量)に関する情報が含まれている
。また、C5M27内に格納されるセルスペックデータ
は、各セルのホールドタイム、セットアツプタイム等の
タイミングエラーおよびファンアウトによる遅延時間を
算出するのに必要となる性能を示すもの等である。
ョンデータは、第4図に示すように例えばあるセルの出
力側のネットがどのセルに接続されているかを示すネッ
ト次段メモリー(以下N N Mという)25aおよび
拡張ネット次段メモリ(以下ENNMという)25bと
、あるセルの入力側にどのネットが接続されているかを
示すネット前段メモリー(以下NBMという)25Cお
よび拡張ネット前段メモリー(以下ENBMという)2
5dとに分けられている。また、このネットインフォメ
ーションデータには、セル種(例えばANDゲートであ
るかORゲートであるか等)に関する情報およびセルの
ファンアウト(負荷容量)に関する情報が含まれている
。また、C5M27内に格納されるセルスペックデータ
は、各セルのホールドタイム、セットアツプタイム等の
タイミングエラーおよびファンアウトによる遅延時間を
算出するのに必要となる性能を示すもの等である。
なお、上述したロジックの構成に関するデータにおいて
、例えばフリップフロップ、カウンタ等のメモリーセル
については、セットアツプタイム、ホールドタイム等の
タイミングエラーを検出するため、次のように取り扱う
。
、例えばフリップフロップ、カウンタ等のメモリーセル
については、セットアツプタイム、ホールドタイム等の
タイミングエラーを検出するため、次のように取り扱う
。
すなわち、例えば第2図に示すように、メモリーセル(
フリップフロップ)101の入力側のネット102〜1
05には、タイミングエラーを検出するためのタイミン
グセル111が接続されている。このタイミングセル1
11は、タイミングセルイネーブル信号によって動作し
、ネット102〜105からの入力のタイミングが所定
のタイミングより短い場合は、各タイミングエラー項目
毎に、例えばクロックパルス幅エラー検出信号:ハイ、
クロックパルス幅エラー検出信号二ローデータインプッ
トセットアツプタイムエラー検出信号、データインプッ
トホールドタイムエラー検出信号、プリセットパルス幅
エラー検出信号、プリセットリムーヴアルタイムエラー
検出信号、プリセットインヒビトタイムエラー検出信号
、クリアパルス幅エラー検出信号、クリアリムーウ゛ア
ルタイムエラー検出信号、クリアリムーヴアルタイムエ
ラー検出信号等のタイミングエラー検出信号を発生する
。
フリップフロップ)101の入力側のネット102〜1
05には、タイミングエラーを検出するためのタイミン
グセル111が接続されている。このタイミングセル1
11は、タイミングセルイネーブル信号によって動作し
、ネット102〜105からの入力のタイミングが所定
のタイミングより短い場合は、各タイミングエラー項目
毎に、例えばクロックパルス幅エラー検出信号:ハイ、
クロックパルス幅エラー検出信号二ローデータインプッ
トセットアツプタイムエラー検出信号、データインプッ
トホールドタイムエラー検出信号、プリセットパルス幅
エラー検出信号、プリセットリムーヴアルタイムエラー
検出信号、プリセットインヒビトタイムエラー検出信号
、クリアパルス幅エラー検出信号、クリアリムーウ゛ア
ルタイムエラー検出信号、クリアリムーヴアルタイムエ
ラー検出信号等のタイミングエラー検出信号を発生する
。
すなわち、EWS 3からフリップフロップ、カウンタ
等のメモリーセルを入力すると、N1M25には、第2
図に示すように、メモリーセル101にタイミングセル
111が接続された形で入力される。そして、タイミン
グエラー検出を実施しないシミュレーションを行う場合
(Aモード)は、このタイミングセル111を動作させ
ない。また、タイミングエラーを表示する場合あるいは
タイミングエラーを反映させたシミュレーションを行う
場合(BモードおよびCモード)は、タイミングセル1
11にタイミングセルイネーブル信号を与え、タイミン
グセル111を動作させることにより、タイミングエラ
ーを検出する。
等のメモリーセルを入力すると、N1M25には、第2
図に示すように、メモリーセル101にタイミングセル
111が接続された形で入力される。そして、タイミン
グエラー検出を実施しないシミュレーションを行う場合
(Aモード)は、このタイミングセル111を動作させ
ない。また、タイミングエラーを表示する場合あるいは
タイミングエラーを反映させたシミュレーションを行う
場合(BモードおよびCモード)は、タイミングセル1
11にタイミングセルイネーブル信号を与え、タイミン
グセル111を動作させることにより、タイミングエラ
ーを検出する。
なお、第2図には、メモリーセル]01およびタイミン
グセル111が、多入力多出力のセルとして示されてい
るが、実際には、メモリーセル101およびタイミング
セル111は、各出力毎に分割された多大カー出力の複
数のセルとして取り扱うことにより、通常のゲートと同
様な取り扱いを行う。
グセル111が、多入力多出力のセルとして示されてい
るが、実際には、メモリーセル101およびタイミング
セル111は、各出力毎に分割された多大カー出力の複
数のセルとして取り扱うことにより、通常のゲートと同
様な取り扱いを行う。
次に、 ■チップ上に形成されたハードウェアから構成
されるシミュレーションチップ1の構成および動作につ
いてTWUII、ACU12、FDUlBの順に説明す
る。
されるシミュレーションチップ1の構成および動作につ
いてTWUII、ACU12、FDUlBの順に説明す
る。
TWU 11は、例えば第3図に示す如く構成されてい
る。
る。
TWUIIにおいては、EWS3からTVM22に書き
込まれたテスト・ベクタを順次読み込み、TWM23と
ETM24に展開するとともに、新しく発生したイベン
トを発生時刻順にこれらのテスト・ベクタ間に書き込む
。
込まれたテスト・ベクタを順次読み込み、TWM23と
ETM24に展開するとともに、新しく発生したイベン
トを発生時刻順にこれらのテスト・ベクタ間に書き込む
。
すなわち、上記TWM2Bは、イベントを管理するメモ
リーであって、アドレスを絶対時間で持ち、データとし
てイベントの発生ネット名、イベント値等のイベントに
関するデータを格納したETM24内のアドレス値(ポ
インター)、次のイベントの発生時間(TWMのアドレ
ス:ポインター)等を格納する。また、ETM24は、
データとしである時間に発生したイベントの発生ネット
名、イベント値を持ち、さらに同時間に発生した別のイ
ベントデータが格納されているETMのアドレス値(ポ
インター)等を持つ。
リーであって、アドレスを絶対時間で持ち、データとし
てイベントの発生ネット名、イベント値等のイベントに
関するデータを格納したETM24内のアドレス値(ポ
インター)、次のイベントの発生時間(TWMのアドレ
ス:ポインター)等を格納する。また、ETM24は、
データとしである時間に発生したイベントの発生ネット
名、イベント値を持ち、さらに同時間に発生した別のイ
ベントデータが格納されているETMのアドレス値(ポ
インター)等を持つ。
TWUl 1のデータバスレジスタ40は、内部バスと
外部バスとをつなぐ双方向レジスタである。
外部バスとをつなぐ双方向レジスタである。
また、コンパレイティプロシック41は、同時間に発生
するイベントかどうかを判断するものであり、データチ
エツクロジック42は、新しく発生したイベントやロー
ドしてきたイベントがポインターを切断するかどうか(
ポインターのチェーンをつなぎ直す必要があるか)また
は、メモリーの書き込みが禁止でないかどうか等を判断
する。また、加算ロジック43は、現在の絶対時間とデ
イレ−値から新しく発生したイベントの絶対時間を算出
する。
するイベントかどうかを判断するものであり、データチ
エツクロジック42は、新しく発生したイベントやロー
ドしてきたイベントがポインターを切断するかどうか(
ポインターのチェーンをつなぎ直す必要があるか)また
は、メモリーの書き込みが禁止でないかどうか等を判断
する。また、加算ロジック43は、現在の絶対時間とデ
イレ−値から新しく発生したイベントの絶対時間を算出
する。
また、TvMカウンタ44は、TvM22のテスト・ベ
クタをTWMにロードするためのものであり、TWMカ
ウンタ45は、TWM23のアドレスとなる絶対時間を
、ETMカウンタ46は、ETM24のアドレスを示す
。
クタをTWMにロードするためのものであり、TWMカ
ウンタ45は、TWM23のアドレスとなる絶対時間を
、ETMカウンタ46は、ETM24のアドレスを示す
。
また、ビフォーイベントレジスタ(以下BEレジスタと
いう)47は、現時間のTWM23のデータを示す。ネ
クストイベントレジスタ(以下NEレジスタという)4
8は、TVM22からロドされたデータや新しく発生し
たイベントデータを格納し処理する。
いう)47は、現時間のTWM23のデータを示す。ネ
クストイベントレジスタ(以下NEレジスタという)4
8は、TVM22からロドされたデータや新しく発生し
たイベントデータを格納し処理する。
また、TWUコントロールロジック49は、TWUII
の動作を制御する。
の動作を制御する。
次にTWUIIの動作を説明する。
まず、TWUIIは、TVM22内に収容されたシミュ
レーションを行うテスト・ベクターを、TWM2Bにロ
ードする。(但し、TWM23の示す時間範囲のみロー
ド)。
レーションを行うテスト・ベクターを、TWM2Bにロ
ードする。(但し、TWM23の示す時間範囲のみロー
ド)。
上記動作で、同時間に発生するイベントがあれば、その
イベントの発生ネット名、イベント値をETM24に書
き込み、このETM24のアドレスをTWM23のポイ
ンターとして書き込む。なお、この動作は、BEレジス
タ47と、NEレジスタ48を用いて行う。また、ロー
ドしたイベントが先にロードしたイベントを越え、TW
M2Bの次の発生時間を示すポインターを更新する(ポ
インターのチェーンをつなぎ直す)必要があればポイン
タの更新を行う。
イベントの発生ネット名、イベント値をETM24に書
き込み、このETM24のアドレスをTWM23のポイ
ンターとして書き込む。なお、この動作は、BEレジス
タ47と、NEレジスタ48を用いて行う。また、ロー
ドしたイベントが先にロードしたイベントを越え、TW
M2Bの次の発生時間を示すポインターを更新する(ポ
インターのチェーンをつなぎ直す)必要があればポイン
タの更新を行う。
上述のようにしてTVM22からTWM23へのテスト
・ベクターのロードが終了すると、ACU12からのイ
ベント読み出し要求信号(ACUリクエスト)を受けて
順次イベントをTWM23からACU12へと読み出す
。
・ベクターのロードが終了すると、ACU12からのイ
ベント読み出し要求信号(ACUリクエスト)を受けて
順次イベントをTWM23からACU12へと読み出す
。
データを送り出すと、外部バス4の使用権はACU12
に移り、TWUIIは、FDU13から来る新しく発生
したイベント書き込み要求信号またはACU12からの
ACUリクエストが来るまで待機状態となる。
に移り、TWUIIは、FDU13から来る新しく発生
したイベント書き込み要求信号またはACU12からの
ACUリクエストが来るまで待機状態となる。
そして、ACUリクエストが来ると、再び、順次イベン
トをTWM23からACU12へと読み出す。
トをTWM23からACU12へと読み出す。
FDU13からイベント書き込み要求信号が発生したと
き、内部データバス14には新しく発生したイベントの
発生ネット名、イベント値とデイレ−値が送られて来て
いる。TWUl 1は、このデータをデータバスレジス
タ40でラッチした後、加算器ロジック43で現在の絶
対時間とデイレ−値から新しく発生したイベントの絶対
時間を算出してTWM23に書き込む。この時、TWM
2Bの次のイベント発生時間を示すポインターを更新す
る(ポインターのチェーンをつなぎ直す)必要があれば
ポインターの更新を行う。
き、内部データバス14には新しく発生したイベントの
発生ネット名、イベント値とデイレ−値が送られて来て
いる。TWUl 1は、このデータをデータバスレジス
タ40でラッチした後、加算器ロジック43で現在の絶
対時間とデイレ−値から新しく発生したイベントの絶対
時間を算出してTWM23に書き込む。この時、TWM
2Bの次のイベント発生時間を示すポインターを更新す
る(ポインターのチェーンをつなぎ直す)必要があれば
ポインターの更新を行う。
この後、まだTWM23内にイベントがあれば上述した
ように、TWM23からACU12へとイベントを読み
出し、同様な処理を行う。また、TWM23内にイベン
トがなければ、次の時間範囲のテスト・ベクターを、T
VM22からTWM23にロードし、上述した処理を繰
り返す。そして、TvM22にあるシミュレーションを
行うテスト・ベクターを全てロードして処理し、それに
よって発生するイベントも全て処理したならば、動作を
終了する。
ように、TWM23からACU12へとイベントを読み
出し、同様な処理を行う。また、TWM23内にイベン
トがなければ、次の時間範囲のテスト・ベクターを、T
VM22からTWM23にロードし、上述した処理を繰
り返す。そして、TvM22にあるシミュレーションを
行うテスト・ベクターを全てロードして処理し、それに
よって発生するイベントも全て処理したならば、動作を
終了する。
なお、第3図に示す例では、各メモリーとしてS RA
Mを用いているが、DRAMを用いる場合は、DRAM
コントローラ回路を追加する必要がある。
Mを用いているが、DRAMを用いる場合は、DRAM
コントローラ回路を追加する必要がある。
次に第4図を参照してACU12について説明する。
ACU12では、まずACUコントロールロジック60
からACUリクエストを出し、TWU 11からTWア
クノリッジ信号に同期して内部バス上に出力されたイベ
ントデータを、I BUSレジスタ61にラッチする。
からACUリクエストを出し、TWU 11からTWア
クノリッジ信号に同期して内部バス上に出力されたイベ
ントデータを、I BUSレジスタ61にラッチする。
ACU12は、TWアクノリッジ信号を受けると外部バ
ス4の占有権を得、イベントデータをラッチしてイベン
ト読み出し要求信号を”L”にすることで内部動作に入
る。
ス4の占有権を得、イベントデータをラッチしてイベン
ト読み出し要求信号を”L”にすることで内部動作に入
る。
そして、I BUSレジスタ61にラッチしたイベント
の発生ネット名(アドレス)によって57M28をアク
セスし、イベントの発生したネットの現状態(論理値)
と、イベントゲートフラグをステータスレジスタ62に
格納する。
の発生ネット名(アドレス)によって57M28をアク
セスし、イベントの発生したネットの現状態(論理値)
と、イベントゲートフラグをステータスレジスタ62に
格納する。
この後、IBUSレジスタ61に格納されているTWU
IIからのイベント(カレントイベント)のイベントゲ
ートフラグと、ステータスレジスタ62に格納されてい
る57M28からのイベントゲートフラグとを、ALU
6Bで比較演算することで、カレントイベントが有効な
イベントであるのか、無効なイベントであるのか、また
は不確定なイベントであるとして、論理値″E”にリプ
レースしなければならないのかを判断する。
IIからのイベント(カレントイベント)のイベントゲ
ートフラグと、ステータスレジスタ62に格納されてい
る57M28からのイベントゲートフラグとを、ALU
6Bで比較演算することで、カレントイベントが有効な
イベントであるのか、無効なイベントであるのか、また
は不確定なイベントであるとして、論理値″E”にリプ
レースしなければならないのかを判断する。
つまり、例えばある入力イベントがセルに入力された時
、セルの立ち上り、立ち下がり特性等によって、出力イ
ベントはある遅延時間をもって出力されるが、この入力
から出力までの遅延時間内に他の入力イベントがあると
出力は、 E“ (発振状態)またはX“ (不定状態
)となる。また、セルの立ち上り遅延時間と、立ち下が
り遅延時間との関係から、出力イベントの順序が入力イ
ベントの順序と逆転する追い越しが発生する場合がある
ので、このようなタイミングエラーを次のようにして検
出する。なお、上記イベントゲートフラグには、イベン
トゲートインフラグとイベントゲートアウトフラグがあ
る。イベントゲートインフラグは、セルの入力にイベン
トがあり、出力にツユ−チャーイベントか発生する場合
、ツユ−チャーイベントをTWM2Bに書き込む時にイ
ンクリメントされる入力順番を示すフラグである。また
、イベントゲートアウトフラグは、TWM23からイベ
ントを取り出す時、どのツユ−チャーイベントまで取り
出したかを示すものである。
、セルの立ち上り、立ち下がり特性等によって、出力イ
ベントはある遅延時間をもって出力されるが、この入力
から出力までの遅延時間内に他の入力イベントがあると
出力は、 E“ (発振状態)またはX“ (不定状態
)となる。また、セルの立ち上り遅延時間と、立ち下が
り遅延時間との関係から、出力イベントの順序が入力イ
ベントの順序と逆転する追い越しが発生する場合がある
ので、このようなタイミングエラーを次のようにして検
出する。なお、上記イベントゲートフラグには、イベン
トゲートインフラグとイベントゲートアウトフラグがあ
る。イベントゲートインフラグは、セルの入力にイベン
トがあり、出力にツユ−チャーイベントか発生する場合
、ツユ−チャーイベントをTWM2Bに書き込む時にイ
ンクリメントされる入力順番を示すフラグである。また
、イベントゲートアウトフラグは、TWM23からイベ
ントを取り出す時、どのツユ−チャーイベントまで取り
出したかを示すものである。
第5図に示すように、まず、イベントゲートインフラグ
について、 I BUSレジスタ”−ステータスレジスタ。
について、 I BUSレジスタ”−ステータスレジスタ。
の演算を行い、その値がゼロであるか否かを判断する(
201)。
201)。
上記値がゼロであれば、当該セル内部を伝播中のイベン
トは、カレントイベントのみであるか、当該セルを伝播
中のイベントの中で、カレントイベントが最新の入力に
よって発生したものである。
トは、カレントイベントのみであるか、当該セルを伝播
中のイベントの中で、カレントイベントが最新の入力に
よって発生したものである。
そこで、上記値がゼロの場合は、イベント信号について
判断を行う(202)。
判断を行う(202)。
そして、カレントイベントが当該ネットの旧信号値を変
えるものであれば有効なイベント・とじて処理する(2
03)。
えるものであれば有効なイベント・とじて処理する(2
03)。
一方、カレントイベントが当該ネットの旧信号値を変え
るものでなければ、そのイベントはキャンセルして無か
ったものとする(204)。
るものでなければ、そのイベントはキャンセルして無か
ったものとする(204)。
また、上記(201)における演算の値がゼロでない場
合は、当該セル内部を伝播中のイベントが他にも存在す
ることになる。すなわち、例えばカレントイベントがT
WM2Bにツユ−チャーイベントとして一旦書き込まれ
、遅延時間の経過後に読み出されてくる前に当該セルの
入力に別のイベントが発生した場合等である。このため
、(201)における演算の値がゼロでない場合は、イ
ベントアウトフラグについて、 I BUSレジスタ2− ステータスレジスタ2の演算
を行い、その値がゼロより大きい(1以上)であるか否
か−を判断する(205)。
合は、当該セル内部を伝播中のイベントが他にも存在す
ることになる。すなわち、例えばカレントイベントがT
WM2Bにツユ−チャーイベントとして一旦書き込まれ
、遅延時間の経過後に読み出されてくる前に当該セルの
入力に別のイベントが発生した場合等である。このため
、(201)における演算の値がゼロでない場合は、イ
ベントアウトフラグについて、 I BUSレジスタ2− ステータスレジスタ2の演算
を行い、その値がゼロより大きい(1以上)であるか否
か−を判断する(205)。
上記値がゼロ以下である場合は、カレントイベントは当
該セルを伝播中に他のイベントに追い越されたことにな
り、無条件でキャンセルする(204)。
該セルを伝播中に他のイベントに追い越されたことにな
り、無条件でキャンセルする(204)。
一方、上記値がゼロより大きい場合(1以上の場合)は
、カレントイベントは当該セルを伝播中に他のイベント
に追い越されないことになり、論理値”E″のイベント
となる。
、カレントイベントは当該セルを伝播中に他のイベント
に追い越されないことになり、論理値”E″のイベント
となる。
そこで、上記値が1以上の場合は、イベント信号につい
て判断を行う(206)。
て判断を行う(206)。
そして、カレントイベントが当該ネットの旧信号値を変
えるものであれば論理値を”E”として(207)、有
効なイベントとして処理する(203)。
えるものであれば論理値を”E”として(207)、有
効なイベントとして処理する(203)。
一方、カレントイベントが当該ネットの旧信号値を変え
るものでなければ、そのイベントはキャンセルして無か
ったものとする(204)。
るものでなければ、そのイベントはキャンセルして無か
ったものとする(204)。
上述したような判断の結果、カレントイベントが無効で
あると判断された場合は、次のTWU 11からのイベ
ントデータの計算に備えて、IBUSレジスタ61のイ
ベントゲートフラグを57M28に書き込んで、カレン
トイベントの処理を終了する。
あると判断された場合は、次のTWU 11からのイベ
ントデータの計算に備えて、IBUSレジスタ61のイ
ベントゲートフラグを57M28に書き込んで、カレン
トイベントの処理を終了する。
一方、上記判断において、カレントイベントが有効と判
断された場合は、次のようにして処理を続行する。
断された場合は、次のようにして処理を続行する。
すなわち、まず、I BUSレジスタ61のカレントイ
ベント、および、イベントゲートフラグを57M28に
書き込み、その後、データセレクター64を介してRS
M26にカレントイベン)・の内容を書き残す。
ベント、および、イベントゲートフラグを57M28に
書き込み、その後、データセレクター64を介してRS
M26にカレントイベン)・の内容を書き残す。
この際、カレントイベントが書き込まれるアドレスは、
RSM書き込みアドレスカウンタ65によって、” 0
000”から順次’ FPFP”までインクリメントし
ていく。
RSM書き込みアドレスカウンタ65によって、” 0
000”から順次’ FPFP”までインクリメントし
ていく。
なお、シミュレーションの結果は、−旦TWM23また
はETM24に書き込まれ、デイレ−時間の後、これら
のメモリーから読み出され、イベントゲートフラグの検
査をした後に始めてバストイベントとなりRSM26に
書き込まれる。
はETM24に書き込まれ、デイレ−時間の後、これら
のメモリーから読み出され、イベントゲートフラグの検
査をした後に始めてバストイベントとなりRSM26に
書き込まれる。
次に、ACU12は、カレントイベントによって発生す
る次段セルの出力変化(次段イベント)を求める作業に
入る。
る次段セルの出力変化(次段イベント)を求める作業に
入る。
まず、IBUSレジスタ61にラッチしているイベント
の発生したネット名(アドレス)によってN1M25中
のNNM25aをアクセスし、次段イベントの発生する
可能性のあるネット名(アドレス)、セル種、ファンア
ウトをNNレジスタ66に格納する。ここで、次段イベ
ントの発生する可能性のあるネットが2以上ある場合は
、2番目以降については次段ネットアドレス同士をつな
ぐポインターのみ読みだしておき、最初の次段ネットを
処理した後、ポインターによって次の次段ネットを順次
読み出し処理していく。
の発生したネット名(アドレス)によってN1M25中
のNNM25aをアクセスし、次段イベントの発生する
可能性のあるネット名(アドレス)、セル種、ファンア
ウトをNNレジスタ66に格納する。ここで、次段イベ
ントの発生する可能性のあるネットが2以上ある場合は
、2番目以降については次段ネットアドレス同士をつな
ぐポインターのみ読みだしておき、最初の次段ネットを
処理した後、ポインターによって次の次段ネットを順次
読み出し処理していく。
次に、NNレジスタ66に格納した次段ネットのアドレ
スによって、N1M25中のN8M25Cをアクセスし
、次段ネットに影響を与える入力ネットのアドレス、お
よびその入力ビンコード(タロツク、クリアー データ
イネーブル、ロード等)をNBレジスタ67に格納する
。入力ネットのアドレスが2以上ある場合は、次段ネッ
トの場合と同様に、ポインターを用いて1入力ずつ読み
出していく。また、並列処理により、NNレジスタ66
に格納した次段ネットのアドレスによって、51M28
をアクセスし、次段ネットの現状態(論理値)とイベン
トゲートフラグをステータスレジスタ62に格納する。
スによって、N1M25中のN8M25Cをアクセスし
、次段ネットに影響を与える入力ネットのアドレス、お
よびその入力ビンコード(タロツク、クリアー データ
イネーブル、ロード等)をNBレジスタ67に格納する
。入力ネットのアドレスが2以上ある場合は、次段ネッ
トの場合と同様に、ポインターを用いて1入力ずつ読み
出していく。また、並列処理により、NNレジスタ66
に格納した次段ネットのアドレスによって、51M28
をアクセスし、次段ネットの現状態(論理値)とイベン
トゲートフラグをステータスレジスタ62に格納する。
この後、NBレジスタ67に格納した入力ネットのアド
レスによって、51M28をアクセスし、入力ネットの
現状態(論理値)をステータスレジスタ62に格納する
。また、NBレジスタ67に格納した入力ネットのアド
レスをつなぐポインターによって、ENBM25dをア
クセスし、他の入力ネットのアドレスをNBレジスタ6
7に格納する。そして、ステータスレジスタ62、NN
レジスタ66、NBレジスタ67に格納した次段ネット
、入力ネット、ビンコード、セル種、ファンアウト等に
関する情報を、ステータスレジスタ62を書き換える毎
に、データセレクター68から内部バス14を経由して
FDUlBの入力レジスタに転送する。
レスによって、51M28をアクセスし、入力ネットの
現状態(論理値)をステータスレジスタ62に格納する
。また、NBレジスタ67に格納した入力ネットのアド
レスをつなぐポインターによって、ENBM25dをア
クセスし、他の入力ネットのアドレスをNBレジスタ6
7に格納する。そして、ステータスレジスタ62、NN
レジスタ66、NBレジスタ67に格納した次段ネット
、入力ネット、ビンコード、セル種、ファンアウト等に
関する情報を、ステータスレジスタ62を書き換える毎
に、データセレクター68から内部バス14を経由して
FDUlBの入力レジスタに転送する。
全ての情報をFDUlBに転送し終わると、ACUコン
トロールロジック60からACUコンティニューか、A
CUリクエストを出して外部バス4の占有権をFDUl
Bに渡す。
トロールロジック60からACUコンティニューか、A
CUリクエストを出して外部バス4の占有権をFDUl
Bに渡す。
すなわち、次段ネットが複数ある場合は、ACUコンテ
ィニュー信号を出してFDUlB、TWUllの処理が
終了するのを待ち、TWアクノリッジがあれば次の次段
ネットについて、上記処理を繰り返す。また、次の次段
ネットがない場合は、内部のNNレジスタ66、NBレ
ジスタ67、ステータスレジスタ62を全てクリアし、
次のカレントイベントがTWUIIから内部バス14上
に出力され、TWアクノリッジがあるまでACUリクエ
ストを出して待機する。
ィニュー信号を出してFDUlB、TWUllの処理が
終了するのを待ち、TWアクノリッジがあれば次の次段
ネットについて、上記処理を繰り返す。また、次の次段
ネットがない場合は、内部のNNレジスタ66、NBレ
ジスタ67、ステータスレジスタ62を全てクリアし、
次のカレントイベントがTWUIIから内部バス14上
に出力され、TWアクノリッジがあるまでACUリクエ
ストを出して待機する。
次に第6図を参照してFDUlBについて説明する。
まず、FDUlBは、上述のようにしてACU12から
転送されたデータをラッチする。そして、各論理ブロッ
クにおいて、入力端子論理値から出力論理値を決定し、
セル種データにより、指定セルの出力論理値を選択する
。
転送されたデータをラッチする。そして、各論理ブロッ
クにおいて、入力端子論理値から出力論理値を決定し、
セル種データにより、指定セルの出力論理値を選択する
。
次に、この選択された出力論理値と、現出力論理値との
比較を行い、イベントの発生(変化の有無)を判断する
。また、イベントビン(イベントが発生したビン)以外
の入力データにより出力が決定される場合は、イベント
の発生無しと判定する。
比較を行い、イベントの発生(変化の有無)を判断する
。また、イベントビン(イベントが発生したビン)以外
の入力データにより出力が決定される場合は、イベント
の発生無しと判定する。
イベントの発生が無い場合は、内部バス14にイベント
の発生無しの信号を送り、FDUlBの処理を終了する
。
の発生無しの信号を送り、FDUlBの処理を終了する
。
一方、イベントの発生がある場合は、現出力論理値と、
上記選択された出力論理値より、イベントの立ち上り/
立ち下り変化を判断し、セル種、入力ピン名、出力ピン
名により、C5M27のアドレスを作成し、C3M27
から入力したデータと、ファンアウトデータから遅延時
間を計算して、ネットアドレス、イベントの有無、論理
値とともに内部バス14に送り出し、FDUlBの処理
を終了する。
上記選択された出力論理値より、イベントの立ち上り/
立ち下り変化を判断し、セル種、入力ピン名、出力ピン
名により、C5M27のアドレスを作成し、C3M27
から入力したデータと、ファンアウトデータから遅延時
間を計算して、ネットアドレス、イベントの有無、論理
値とともに内部バス14に送り出し、FDUlBの処理
を終了する。
こうして、ある時刻において発生したイベントに基づく
ロジック回路の状態がシミュレーシジンされることにな
る。
ロジック回路の状態がシミュレーシジンされることにな
る。
そして、このような、TWUII、ACU12、FDU
13による処理を繰り返すことにより、TVM22内の
テスト・ベクタに応じた被シミユレーシヨンロジックの
時間的な変化を、シミュレーション途中でEWS 3と
の応答を行うことなく、高速にシミュレーションする。
13による処理を繰り返すことにより、TVM22内の
テスト・ベクタに応じた被シミユレーシヨンロジックの
時間的な変化を、シミュレーション途中でEWS 3と
の応答を行うことなく、高速にシミュレーションする。
また、前述した如くシミュレーションモードとしてCモ
ードが選択されている場合は、−度シミュレーションが
終了した後、タイミングエラーが検出されたセルの出力
を、該タイミングエラー発生による値に設定して同様な
シミュレーションを実行する。
ードが選択されている場合は、−度シミュレーションが
終了した後、タイミングエラーが検出されたセルの出力
を、該タイミングエラー発生による値に設定して同様な
シミュレーションを実行する。
また、シミュレーションモードとしてAモードが選択さ
れている場合は、上述したようなタイミングエラーの検
出は行わない。
れている場合は、上述したようなタイミングエラーの検
出は行わない。
すなわち、この実施例の論理シミュレータでは、タイミ
ングエラーを検出せずにシミュレーションを実施するA
モードと、タイミングエラーの有無を検出しながらシミ
ュレーションを実行し、タイミングエラーが発生した場
合は、このタイミングエラーを表示するBモードと、タ
イミングエラーが発生した場合は、このタイミングエラ
ーが検出されたセルの出力を該タイミングエラー発生に
よる値に設定してシミュレーションを実行し、このタイ
ミングエラーを反映したシミュレーションを実施するC
モードとを選択することができるよう構成されている。
ングエラーを検出せずにシミュレーションを実施するA
モードと、タイミングエラーの有無を検出しながらシミ
ュレーションを実行し、タイミングエラーが発生した場
合は、このタイミングエラーを表示するBモードと、タ
イミングエラーが発生した場合は、このタイミングエラ
ーが検出されたセルの出力を該タイミングエラー発生に
よる値に設定してシミュレーションを実行し、このタイ
ミングエラーを反映したシミュレーションを実施するC
モードとを選択することができるよう構成されている。
したがって、Cモードを選択することにより、従来に較
べてより実際の状態に近い正確なシミュレーションを行
うことができる。
べてより実際の状態に近い正確なシミュレーションを行
うことができる。
また、メモリー以外のロジック部分が全て1チツプ上に
ハードウェアとして形成されており、このハードウェア
単独でシミュレーションを行うことができるので、従来
に較べて高速に短時間でシミュレーションを行うことが
できる。
ハードウェアとして形成されており、このハードウェア
単独でシミュレーションを行うことができるので、従来
に較べて高速に短時間でシミュレーションを行うことが
できる。
なお、上記実施例では、1チツプ上にTWU 11と、
ACU12と、FDU13とを設けたハードウェア論理
シミュレータに本発明を適用した例について説明したが
、本発明はかかる実施例に限定されるものではなく、複
数(例えば2〜3)チップ上に分割されたハードウェア
論理シミュレータあるいは通常のソフトウェア論理シミ
ュレータ等にも同様にして適用することができる。
ACU12と、FDU13とを設けたハードウェア論理
シミュレータに本発明を適用した例について説明したが
、本発明はかかる実施例に限定されるものではなく、複
数(例えば2〜3)チップ上に分割されたハードウェア
論理シミュレータあるいは通常のソフトウェア論理シミ
ュレータ等にも同様にして適用することができる。
[発明の効果]
以上説明したように、本発明の論理シミュレーション方
法によれば、従来に較べてより実際の状態に近い正確な
シミュレーションを行うことができる。
法によれば、従来に較べてより実際の状態に近い正確な
シミュレーションを行うことができる。
第1図は本発明の一実施例の論理シミュレータの全体構
成を示す図、第2図はタイミングエラー検出におけるメ
モリーセルの取り扱いを説明するための図、第3図は第
1図の論理シミュレータのタイムホイール部の構成を示
す図、第4図は第1図の論理シミュレータのアキュムレ
ータ部の構成を示す図、第5図はアキュムレータ部にお
けるタイミングエラー検出手順を説明するための流れ図
、第6図は第1図の論理シミュレータのファンクション
ロジック部の構成を示す図である。 1・・・・・・シミュレーションチップ、2・・・・・
・データ収容部(RAM) 、3・・・・・・エンジニ
アリング・ワーク・ステーション(入出力装置)、4・
・・・・・外部バス、11・・・・・・タイムホイール
部、12・・・・・・アキュムレータ部、13・・・・
・・ファンクションロジック部、14・・・・・・内部
ハス、21・・・・・・コンデイションステートメモリ
ー 22・・・・・・テストベクタメモリ23・・・・
・・タイムホイールメモリー 24・・・・・・イベン
トテーブルメモリー 25・・・・・・ネットインフォ
メーションメモリー 26・・・・・・結果格納用メモ
リー 27・・・・・・セルスペックメモリー 28・
・・・・・ネットシグナルステートメモリー 30・・
・・・・ステートバス。
成を示す図、第2図はタイミングエラー検出におけるメ
モリーセルの取り扱いを説明するための図、第3図は第
1図の論理シミュレータのタイムホイール部の構成を示
す図、第4図は第1図の論理シミュレータのアキュムレ
ータ部の構成を示す図、第5図はアキュムレータ部にお
けるタイミングエラー検出手順を説明するための流れ図
、第6図は第1図の論理シミュレータのファンクション
ロジック部の構成を示す図である。 1・・・・・・シミュレーションチップ、2・・・・・
・データ収容部(RAM) 、3・・・・・・エンジニ
アリング・ワーク・ステーション(入出力装置)、4・
・・・・・外部バス、11・・・・・・タイムホイール
部、12・・・・・・アキュムレータ部、13・・・・
・・ファンクションロジック部、14・・・・・・内部
ハス、21・・・・・・コンデイションステートメモリ
ー 22・・・・・・テストベクタメモリ23・・・・
・・タイムホイールメモリー 24・・・・・・イベン
トテーブルメモリー 25・・・・・・ネットインフォ
メーションメモリー 26・・・・・・結果格納用メモ
リー 27・・・・・・セルスペックメモリー 28・
・・・・・ネットシグナルステートメモリー 30・・
・・・・ステートバス。
Claims (1)
- (1)複数のセルと、これらのセルを接続する複数のネ
ットからなるロジック回路の動作をシミュレーションす
るに際し、 前記セルの入力タイミングからタイミングエラーを検出
し、前記タイミングエラーが検出された場合、このタイ
ミングエラーが検出された前記セルの出力を該タイミン
グエラー発生による値に設定して前記シミュレーション
を実行することを特徴とする論理シミュレーション方法
。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004926A JP2847310B2 (ja) | 1990-01-12 | 1990-01-12 | 論理シミュレーション方法 |
KR1019910000394A KR0134036B1 (ko) | 1990-01-12 | 1991-01-12 | 논리 시뮬레이션 방법 |
US08/379,769 US5446748A (en) | 1990-01-12 | 1995-01-27 | Apparatus for performing logic simulation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004926A JP2847310B2 (ja) | 1990-01-12 | 1990-01-12 | 論理シミュレーション方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03209569A true JPH03209569A (ja) | 1991-09-12 |
JP2847310B2 JP2847310B2 (ja) | 1999-01-20 |
Family
ID=11597205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004926A Expired - Fee Related JP2847310B2 (ja) | 1990-01-12 | 1990-01-12 | 論理シミュレーション方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5446748A (ja) |
JP (1) | JP2847310B2 (ja) |
KR (1) | KR0134036B1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5884065A (en) * | 1992-01-10 | 1999-03-16 | Nec Corporation | Logic circuit apparatus and method for sequentially performing one of a fault-free simulation and a fault simulation through various levels of a logic circuit |
JP3124417B2 (ja) * | 1993-07-13 | 2001-01-15 | 三菱電機株式会社 | 論理シミュレーションシステム及び論理シミュレーション方法 |
KR970000265B1 (ko) * | 1994-09-26 | 1997-01-08 | 엘지반도체 주식회사 | 데이타전송율 자동검출회로 |
US6205569B1 (en) * | 1997-11-18 | 2001-03-20 | Seagate Technology Llc | Error recovery using alternate headers in a disc drive |
US6370495B1 (en) * | 1999-02-02 | 2002-04-09 | Oak Technology | Method and apparatus for simulating a storage component |
JP5173216B2 (ja) * | 2006-04-18 | 2013-04-03 | パナソニック株式会社 | 半導体集積回路システム、半導体集積回路、オペレーティングシステム及び半導体集積回路の制御方法 |
US10755014B2 (en) * | 2018-03-14 | 2020-08-25 | Montana Systems Inc. | Event-driven design simulation |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3633100A (en) * | 1970-05-12 | 1972-01-04 | Ibm | Testing of nonlinear circuits by comparison with a reference simulation with means to eliminate errors caused by critical race conditions |
US4787061A (en) * | 1986-06-25 | 1988-11-22 | Ikos Systems, Inc. | Dual delay mode pipelined logic simulator |
US4787062A (en) * | 1986-06-26 | 1988-11-22 | Ikos Systems, Inc. | Glitch detection by forcing the output of a simulated logic device to an undefined state |
US4924430A (en) * | 1988-01-28 | 1990-05-08 | Teradyne, Inc. | Static timing analysis of semiconductor digital circuits |
JP2522541B2 (ja) * | 1989-03-24 | 1996-08-07 | 三菱電機株式会社 | シミュレ―ション装置及びシミュレ―ション方法 |
US5095454A (en) * | 1989-05-25 | 1992-03-10 | Gateway Design Automation Corporation | Method and apparatus for verifying timing during simulation of digital circuits |
US5051938A (en) * | 1989-06-23 | 1991-09-24 | Hyduke Stanley M | Simulation of selected logic circuit designs |
US5091872A (en) * | 1989-06-23 | 1992-02-25 | At&T Bell Laboratories | Apparatus and method for performing spike analysis in a logic simulator |
-
1990
- 1990-01-12 JP JP2004926A patent/JP2847310B2/ja not_active Expired - Fee Related
-
1991
- 1991-01-12 KR KR1019910000394A patent/KR0134036B1/ko not_active IP Right Cessation
-
1995
- 1995-01-27 US US08/379,769 patent/US5446748A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR0134036B1 (ko) | 1998-05-15 |
US5446748A (en) | 1995-08-29 |
JP2847310B2 (ja) | 1999-01-20 |
KR910014809A (ko) | 1991-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4937770A (en) | Simulation system | |
US5513339A (en) | Concurrent fault simulation of circuits with both logic elements and functional circuits | |
JPH06195322A (ja) | 汎用型ニューロコンピュータとして用いられる情報処理装置 | |
US4819150A (en) | Array for simulating computer functions for large computer systems | |
US20060130029A1 (en) | Programming language model generating apparatus for hardware verification, programming language model generating method for hardware verification, computer system, hardware simulation method, control program and computer-readable storage medium | |
Condon et al. | Fast special purpose computer for Monte Carlo simulations in statistical physics | |
CN112100950A (zh) | 用于芯片设计的方法、系统、设备以及存储介质 | |
US5613062A (en) | Logic simulator | |
JPH03209569A (ja) | 論理シミュレーション方法 | |
CN117377961A (zh) | 用于仿真的方法、装置及设备 | |
JP2832738B2 (ja) | 論理シミュレータ | |
JP2797128B2 (ja) | 論理シミュレータ | |
JP2797127B2 (ja) | 論理シミュレータ | |
JP3004669B2 (ja) | 論理シミュレータ | |
EP0440553B1 (en) | Gate addressing system for logic simulation machine | |
JP3004670B2 (ja) | 論理シミュレータ | |
JP3532350B2 (ja) | データトレース装置 | |
JP3004668B2 (ja) | 論理シミュレータ | |
EP0231948A2 (en) | Simulation system | |
Hahanov et al. | «Quantum» processor for digital systems analysis | |
JPH0345580B2 (ja) | ||
US11048843B1 (en) | Dynamic netlist modification of compacted data arrays in an emulation system | |
JP2557128B2 (ja) | スキャン・フリップフロップの初期化方式 | |
US9990452B2 (en) | Low power corruption of memory in emulation | |
JPH0443310B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |