JPH0896016A - 論理シミュレーション方法 - Google Patents
論理シミュレーション方法Info
- Publication number
- JPH0896016A JPH0896016A JP6227821A JP22782194A JPH0896016A JP H0896016 A JPH0896016 A JP H0896016A JP 6227821 A JP6227821 A JP 6227821A JP 22782194 A JP22782194 A JP 22782194A JP H0896016 A JPH0896016 A JP H0896016A
- Authority
- JP
- Japan
- Prior art keywords
- event
- processing step
- pin
- processing
- logic
- 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
Abstract
(57)【要約】
【目的】既存の論理接続と、入力ピンから出力ピンまで
の遅延データベースを基に、ピンtoピンの遅延誤差な
しの論理シミュレーション方法を実現する。 【構成】入力パタンの入力変化に対応して、イベント残
存の有無のチェックが行われ(102)、残存イベント
ありと判定されて、イベント取り出し処理が行われる
(106)。対応するゲートによる論理演算が行われ
(107)、イベント発生の有無がチェックされる(1
08)。イベントが発生されると、当該イベントが出力
情報である場合には、遅延データベース12の遅延デー
タが参照され(111)、前記遅延データに従ってスケ
ジューリングデータの処理が行われる(112)。そし
て残存イベントおよび残存スケシュールデータがなくな
るまで処理が繰返されて、残存イベントおよびスケジュ
ーリングデータが存在しない状態になって、シミュレー
ション処理は終了(EXIT104)する。
の遅延データベースを基に、ピンtoピンの遅延誤差な
しの論理シミュレーション方法を実現する。 【構成】入力パタンの入力変化に対応して、イベント残
存の有無のチェックが行われ(102)、残存イベント
ありと判定されて、イベント取り出し処理が行われる
(106)。対応するゲートによる論理演算が行われ
(107)、イベント発生の有無がチェックされる(1
08)。イベントが発生されると、当該イベントが出力
情報である場合には、遅延データベース12の遅延デー
タが参照され(111)、前記遅延データに従ってスケ
ジューリングデータの処理が行われる(112)。そし
て残存イベントおよび残存スケシュールデータがなくな
るまで処理が繰返されて、残存イベントおよびスケジュ
ーリングデータが存在しない状態になって、シミュレー
ション処理は終了(EXIT104)する。
Description
【0001】
【産業上の利用分野】本発明は論理シミュレーション方
法に関し、特にイベント駆動型の遅延シミュレーション
として用いられる論理シミュレーション方法に関する。
法に関し、特にイベント駆動型の遅延シミュレーション
として用いられる論理シミュレーション方法に関する。
【0002】
【従来の技術】従来の、この種の論理シミュレーション
方法においては、一つの方法として、内部論理マクロの
構成要素であるゲートに対して、遅延量の割付けを行う
という手法が用いられている。この論理シミュレーショ
ン方法により、内部論理マクロの入力ピンから出力ピン
に至るまでの遅延データを、遅延シミュレーションによ
り反映させようとする場合には、強制的に各ゲートに遅
延値を割付けるか、或はまた内部論理マクロそのものを
一つの大きなゲートとしてモデル化し、当該遅延値を表
現する以外には方法が見当らない。このように、強制的
に遅延値を割付けるという方法においては、適切に遅延
値をゲートに配分することが必要条件となるが、この配
分を誤差なく行うことは困難であり、また論理回路中の
或る経路の遅延値を正確にモデル化することができたと
しても、その他の経路については正確にモデル化するこ
とが困難であり、このために結果的に歪が生じることが
多いのが実状である。この問題を解決するために、従来
は、ダミーゲートを発生させることにより遅延値の割付
けが行われているが、この方法では、ダミーゲートの数
だけ論理シミュレーションを行う必要があり、これに要
する時間が増大するという問題がある。
方法においては、一つの方法として、内部論理マクロの
構成要素であるゲートに対して、遅延量の割付けを行う
という手法が用いられている。この論理シミュレーショ
ン方法により、内部論理マクロの入力ピンから出力ピン
に至るまでの遅延データを、遅延シミュレーションによ
り反映させようとする場合には、強制的に各ゲートに遅
延値を割付けるか、或はまた内部論理マクロそのものを
一つの大きなゲートとしてモデル化し、当該遅延値を表
現する以外には方法が見当らない。このように、強制的
に遅延値を割付けるという方法においては、適切に遅延
値をゲートに配分することが必要条件となるが、この配
分を誤差なく行うことは困難であり、また論理回路中の
或る経路の遅延値を正確にモデル化することができたと
しても、その他の経路については正確にモデル化するこ
とが困難であり、このために結果的に歪が生じることが
多いのが実状である。この問題を解決するために、従来
は、ダミーゲートを発生させることにより遅延値の割付
けが行われているが、この方法では、ダミーゲートの数
だけ論理シミュレーションを行う必要があり、これに要
する時間が増大するという問題がある。
【0003】また、従来の他の方法としては、一つの大
きなゲートとしてモデル化する方法があるが、この方法
の場合には遅延値の割付けが容易であり、しかも誤差が
少なくすることができるという利点はあるものの、半導
体集積回路内の内部論理マクロのゲート数の拡大が顕著
になりつつある中でのモデル化は益々困難になりつつあ
る。この方法の従来技術の例としては、特開平3−15
2673号公報において「論理回路のシミュレータ」が
提案されている。当該公開特許公報による提案において
は、内部論理マクロの出力値と遅延値とを、各入力値の
組み合わせに対して全てROM内の記憶領域に保存して
おき、これらの各記憶領域のアドレスの値を、ブロック
の番号と各入力値とを連結して表わした2進数と一致さ
せて論理演算を行う技術が示されている。また本来内部
論理マクロとしては、一つの独立した回路として、それ
以前に設計され検証された論理接続を流用し、タイミン
グ部分を変更して使用している場合が多く、このモデル
化手法を使用した遅延割付け方法においては、論理部分
について記述し直さなければならないという欠点があ
る。このために、従来の設計資産の流用または使用が制
限されているのが実情である。
きなゲートとしてモデル化する方法があるが、この方法
の場合には遅延値の割付けが容易であり、しかも誤差が
少なくすることができるという利点はあるものの、半導
体集積回路内の内部論理マクロのゲート数の拡大が顕著
になりつつある中でのモデル化は益々困難になりつつあ
る。この方法の従来技術の例としては、特開平3−15
2673号公報において「論理回路のシミュレータ」が
提案されている。当該公開特許公報による提案において
は、内部論理マクロの出力値と遅延値とを、各入力値の
組み合わせに対して全てROM内の記憶領域に保存して
おき、これらの各記憶領域のアドレスの値を、ブロック
の番号と各入力値とを連結して表わした2進数と一致さ
せて論理演算を行う技術が示されている。また本来内部
論理マクロとしては、一つの独立した回路として、それ
以前に設計され検証された論理接続を流用し、タイミン
グ部分を変更して使用している場合が多く、このモデル
化手法を使用した遅延割付け方法においては、論理部分
について記述し直さなければならないという欠点があ
る。このために、従来の設計資産の流用または使用が制
限されているのが実情である。
【0004】従来の論理回路のシミュレーションの処理
手順を、図6を参照して説明する。まず、処理ステップ
601において、入力ピンに入力される入力パターン信
号を変化させる。次いで処理ステップ602において
は、イベント残存の有無がチェックされ、残存イベント
が存在する場合には処理ステップ606に移行してイベ
ント取り出し処理が行われる。また、処理ステップ60
2において残存イベントが存在しない場合には、処理ス
テップ603においてスケジュールデータの有無がチェ
ックされ、スケジュールデータが存在する場合には、処
理ステップ605においてイベント登録処理が行われ、
次いで処理ステップ606において、同様にイベント取
り出し処理が行われる。処理ステップ606においてイ
ベント取り出し処理が行われると、処理ステップ607
に移行して、論理接続情報を参照して演算すべきゲート
が特定され、所定の演算処理が行われる。次いで処理ス
テップ608においては、処理ステップ607における
演算処理結果によるイベント発生の有無がチェックさ
れ、イベントが発生する場合には、処理ステップ609
において、当該ゲートに割り付けられた遅延値が参照さ
れて、処理ステップ610においてスケジューリング処
理が行われて、処理ステップ602に戻る。処理ステッ
プ608においてイベントが発生せずに消滅した場合に
は、スケジューリング処理は行われず処理ステップ60
2に戻る。このように、論理シミュレーションは、処理
ステップ602および処理ステップ603を介して、イ
ベントならびにスケジュールデータが無くなるまで繰返
して処理が行われ、これらイベントならびにスケジュー
ルデータが無くなった時点において、この論理シミュレ
ーションは終了(EXIT604)する。
手順を、図6を参照して説明する。まず、処理ステップ
601において、入力ピンに入力される入力パターン信
号を変化させる。次いで処理ステップ602において
は、イベント残存の有無がチェックされ、残存イベント
が存在する場合には処理ステップ606に移行してイベ
ント取り出し処理が行われる。また、処理ステップ60
2において残存イベントが存在しない場合には、処理ス
テップ603においてスケジュールデータの有無がチェ
ックされ、スケジュールデータが存在する場合には、処
理ステップ605においてイベント登録処理が行われ、
次いで処理ステップ606において、同様にイベント取
り出し処理が行われる。処理ステップ606においてイ
ベント取り出し処理が行われると、処理ステップ607
に移行して、論理接続情報を参照して演算すべきゲート
が特定され、所定の演算処理が行われる。次いで処理ス
テップ608においては、処理ステップ607における
演算処理結果によるイベント発生の有無がチェックさ
れ、イベントが発生する場合には、処理ステップ609
において、当該ゲートに割り付けられた遅延値が参照さ
れて、処理ステップ610においてスケジューリング処
理が行われて、処理ステップ602に戻る。処理ステッ
プ608においてイベントが発生せずに消滅した場合に
は、スケジューリング処理は行われず処理ステップ60
2に戻る。このように、論理シミュレーションは、処理
ステップ602および処理ステップ603を介して、イ
ベントならびにスケジュールデータが無くなるまで繰返
して処理が行われ、これらイベントならびにスケジュー
ルデータが無くなった時点において、この論理シミュレ
ーションは終了(EXIT604)する。
【0005】
【発明が解決しようとする課題】上述した従来の論理シ
ミュレーション方法においては、前述の論理マクロの構
成要素のゲートに対して、遅延値を強制的に割り付ける
第1の方法の場合には、当該遅延値の割り付けに誤差が
生じ易く、またダミーゲートの数だけシミュレーション
時間が増加し、論理シミュレーションの所要時間が増大
するという欠点があり、また、一つの大きなゲートとし
てモデル化する第2方法の場合には、モデル化がゲート
の増大に伴ない困難になるという制約条件があり、且つ
過去の設計資産による論理部分の流用または使用が制限
されるという欠点がある。
ミュレーション方法においては、前述の論理マクロの構
成要素のゲートに対して、遅延値を強制的に割り付ける
第1の方法の場合には、当該遅延値の割り付けに誤差が
生じ易く、またダミーゲートの数だけシミュレーション
時間が増加し、論理シミュレーションの所要時間が増大
するという欠点があり、また、一つの大きなゲートとし
てモデル化する第2方法の場合には、モデル化がゲート
の増大に伴ない困難になるという制約条件があり、且つ
過去の設計資産による論理部分の流用または使用が制限
されるという欠点がある。
【0006】以下に、図2に示される論理回路の場合を
例として、従来技術の手法による問題点を明らかにす
る。図2においては、説明の便宜のために、ピンに対し
て数字の符号が付記されているが、ピン1、2、3、
7、8および9により囲まれた長方形内部が、所謂内部
論理マクロ22である。この内部論理マクロ22の構成
要素である4つのゲートを、それぞれA、B、Cおよび
Dとする。また内部論理マクロ22における入力ピンか
ら出力ピンまでの遅延データベースが図3に示されてい
る。
例として、従来技術の手法による問題点を明らかにす
る。図2においては、説明の便宜のために、ピンに対し
て数字の符号が付記されているが、ピン1、2、3、
7、8および9により囲まれた長方形内部が、所謂内部
論理マクロ22である。この内部論理マクロ22の構成
要素である4つのゲートを、それぞれA、B、Cおよび
Dとする。また内部論理マクロ22における入力ピンか
ら出力ピンまでの遅延データベースが図3に示されてい
る。
【0007】前述の第1の方法による場合には、図3の
遅延データベースに従って、各ゲートA、B、Cおよび
Dに遅延が割り付けられる。例えば、図3に示されるよ
うに、パス1においては、ピン1からピン7までに遅延
値6が割付けられ、パス2においては、ピン1からピン
8まで遅延値10が割付けられる。また、パス3におい
ては、ピン3からピン8まで遅延値10が割付けられ
る。この結果、パス4においては、ピン3からピン9ま
では遅延値6になる筈であるが、遅延データベース上に
おいては遅延値7となっているため、ダミーゲートをピ
ン5とピン9の間に挿入して、遅延1が割付けられる。
この挿入ゲートにより、シミュレーション上余分の演算
処理が必要となり、その分処理時間が増大することにな
る。
遅延データベースに従って、各ゲートA、B、Cおよび
Dに遅延が割り付けられる。例えば、図3に示されるよ
うに、パス1においては、ピン1からピン7までに遅延
値6が割付けられ、パス2においては、ピン1からピン
8まで遅延値10が割付けられる。また、パス3におい
ては、ピン3からピン8まで遅延値10が割付けられ
る。この結果、パス4においては、ピン3からピン9ま
では遅延値6になる筈であるが、遅延データベース上に
おいては遅延値7となっているため、ダミーゲートをピ
ン5とピン9の間に挿入して、遅延1が割付けられる。
この挿入ゲートにより、シミュレーション上余分の演算
処理が必要となり、その分処理時間が増大することにな
る。
【0008】また、第2の方法においては、図2に示さ
れる論理回路の場合を例として扱う場合に、4ゲートを
一つのゲートとして記述するための記述変換処理が必要
となる。例えば、特開平3−152673号公報による
提案の場合には、3入力/3出力の組合わせ全てをRO
M内の記憶領域に保存しておき、それぞれの組合わせに
対応した形で遅延データを持たせることが必要となる。
それ以外の方法においても、4ゲートとして保持されて
いる回路の接続情報を、1ゲートとして扱う場合には、
必らず接続の変換または書換えが生じることになり、処
理時間の増大を招く結果となる。
れる論理回路の場合を例として扱う場合に、4ゲートを
一つのゲートとして記述するための記述変換処理が必要
となる。例えば、特開平3−152673号公報による
提案の場合には、3入力/3出力の組合わせ全てをRO
M内の記憶領域に保存しておき、それぞれの組合わせに
対応した形で遅延データを持たせることが必要となる。
それ以外の方法においても、4ゲートとして保持されて
いる回路の接続情報を、1ゲートとして扱う場合には、
必らず接続の変換または書換えが生じることになり、処
理時間の増大を招く結果となる。
【0009】従って、前記第1の方法および第2の方法
ともに、回路規模の増大するに伴なってモデル化および
変換が実用上困難な状況になってきている。そこで、本
発明においては、既存の論理接続と入力ピンから出力ピ
ンまでの遅延データベースを基に、ピンtoピンの遅延
シミュレーションを実現することを、解決すベき課題と
している。
ともに、回路規模の増大するに伴なってモデル化および
変換が実用上困難な状況になってきている。そこで、本
発明においては、既存の論理接続と入力ピンから出力ピ
ンまでの遅延データベースを基に、ピンtoピンの遅延
シミュレーションを実現することを、解決すベき課題と
している。
【0010】なお、既存の論理接続と入力ピンから出力
ピンへの遅延データベースを基に、ピンtoピンの遅延
シミュレーションを実現する方法としては、他に特開平
3−250371号公報による提案があるが、この提案
は、下記の点において問題がある。即ち、特開平3−2
50371号公報においては、内部論理マクロ内のイベ
ント伝播と内部論理マクロ間のイベント伝播を制御する
タイムホイールが、それぞれ個別に持たれているが、こ
のことにより、処理上におけるオーバーヘッドが生じ、
シミュレーション時間が増大する傾向となる。また、ブ
ロックの遅延を、予め内部論理マクロの入力端子に記憶
させておく方法がとられてはいるが、回路が大きくな
り、パスが複雑化するにつれて対応できなくなったり、
遅延の検索に要する時間がネックになる危険性が介在し
ているという欠点がある。
ピンへの遅延データベースを基に、ピンtoピンの遅延
シミュレーションを実現する方法としては、他に特開平
3−250371号公報による提案があるが、この提案
は、下記の点において問題がある。即ち、特開平3−2
50371号公報においては、内部論理マクロ内のイベ
ント伝播と内部論理マクロ間のイベント伝播を制御する
タイムホイールが、それぞれ個別に持たれているが、こ
のことにより、処理上におけるオーバーヘッドが生じ、
シミュレーション時間が増大する傾向となる。また、ブ
ロックの遅延を、予め内部論理マクロの入力端子に記憶
させておく方法がとられてはいるが、回路が大きくな
り、パスが複雑化するにつれて対応できなくなったり、
遅延の検索に要する時間がネックになる危険性が介在し
ているという欠点がある。
【課題を解決するための手段】本発明の論理シミュレー
ション方法は、論理回路と等価な論理回路モデルを計算
機上に構築し、前記論理回路に対する入力検査系列信号
を上記論理回路モデルに印加し、論理シミュレーション
により、その動作結果を表示出力する論理シミュレーシ
ョン方法において、前記入力検査系列信号の変化に対応
して、前記論理回路モデルに含まれる内部論理マクロの
ピンにおける残存イベントの有無を判定する第1の処理
ステップと、前記第1の処理ステップにおいて、内部論
理マクロのピンに残存イベントが存在する場合に、当該
残存イベントを抽出する第2の処理ステップと、前記第
2の処理ステップにおいて抽出されたイベントに対応し
て、所定の論理接続情報を参照して、内部論理マクロ内
の対象とする論理回路要素による演算処理を行う第3の
処理ステップと、前記第3の処理ステップの演算処理に
よるイベントの発生の有無を判定し、イベントの発生が
ない場合には前記第1の処理ステップに戻る第4の処理
ステップと、前記第4の処理ステップにおいてイベント
の発生があった場合に、所定のBOUNDARY情報を
参照して、当該イベント発生のピンが、前記内部論理マ
クロの出力ピンに対応するピンであるか否かを判定する
第5の処理ステップ、前記第5の処理ステップにおい
て、前記内部論理マクロの出力ピンに対応するピンでは
ないと判定された場合に、対応するイベントを登録処理
して前記第1の処理ステップに戻る第6の処理ステップ
と、前記第5の処理ステップにおいて、前記内部論理マ
クロの出力ピンに対応するピンであると判定された場合
に、対応するピン同士間の遅延値を所定の遅延データベ
ースを参照して検索する第7の処理ステップと、前記第
7の処理ステップの検索により求められた遅延値に従っ
てスケジューリング処理を行って論理シミュレーション
結果を出力するとともに、処理後において前記第1の処
理ステップに戻る第8の処理ステップとを少なくとも有
し、前記第1の処理ステップにおいて残存イベントが存
在せず、且つ残存スケジュールデータも存在しない場合
には処理を終了となる。
ション方法は、論理回路と等価な論理回路モデルを計算
機上に構築し、前記論理回路に対する入力検査系列信号
を上記論理回路モデルに印加し、論理シミュレーション
により、その動作結果を表示出力する論理シミュレーシ
ョン方法において、前記入力検査系列信号の変化に対応
して、前記論理回路モデルに含まれる内部論理マクロの
ピンにおける残存イベントの有無を判定する第1の処理
ステップと、前記第1の処理ステップにおいて、内部論
理マクロのピンに残存イベントが存在する場合に、当該
残存イベントを抽出する第2の処理ステップと、前記第
2の処理ステップにおいて抽出されたイベントに対応し
て、所定の論理接続情報を参照して、内部論理マクロ内
の対象とする論理回路要素による演算処理を行う第3の
処理ステップと、前記第3の処理ステップの演算処理に
よるイベントの発生の有無を判定し、イベントの発生が
ない場合には前記第1の処理ステップに戻る第4の処理
ステップと、前記第4の処理ステップにおいてイベント
の発生があった場合に、所定のBOUNDARY情報を
参照して、当該イベント発生のピンが、前記内部論理マ
クロの出力ピンに対応するピンであるか否かを判定する
第5の処理ステップ、前記第5の処理ステップにおい
て、前記内部論理マクロの出力ピンに対応するピンでは
ないと判定された場合に、対応するイベントを登録処理
して前記第1の処理ステップに戻る第6の処理ステップ
と、前記第5の処理ステップにおいて、前記内部論理マ
クロの出力ピンに対応するピンであると判定された場合
に、対応するピン同士間の遅延値を所定の遅延データベ
ースを参照して検索する第7の処理ステップと、前記第
7の処理ステップの検索により求められた遅延値に従っ
てスケジューリング処理を行って論理シミュレーション
結果を出力するとともに、処理後において前記第1の処
理ステップに戻る第8の処理ステップとを少なくとも有
し、前記第1の処理ステップにおいて残存イベントが存
在せず、且つ残存スケジュールデータも存在しない場合
には処理を終了となる。
【0011】なお、前記第7の処理ステップにおいて
は、対応するピン同士間の遅延値を、ハッシュテーブル
を介して所定の遅延データベースを参照して検索するよ
うにしてもよい。
は、対応するピン同士間の遅延値を、ハッシュテーブル
を介して所定の遅延データベースを参照して検索するよ
うにしてもよい。
【0012】
【実施例】次に、本発明について図面を参照して説明す
る。
る。
【0013】図1は本発明の一実施例における処理手順
を示す流れ図である。以下、図2の論理回路に対して、
入力信号として、図5(a)の入力1および図5(b)
の入力2が印加される場合を例として、本実施例による
処理手順について説明する。なお、図5(c)、
(d)、(e)、(f)、(g)、(h)および(i)
は、それぞれ、入力1および入力2の印加に対応するピ
ン1、2、3、4、5、6および8における信号のタイ
ミング図であり、図4は、それぞれ、これらのピン1、
2、3、4、5、6および8に対応する変化時刻、ピン
の状態値、BOUNDARY情報および伝播元の情報を
格納するピンテーブルを示す図である。このピンテーブ
ルの中のBOUNDARY情報には、内部論理マクロ2
2の入力ピンおよび出力ピンの区別を含む情報が格納さ
れている。また、伝播元には、最新イベントが、内部論
理マクロ22のどの入力ピンを経由してきたかを示す情
報が、当該シミュレーションを進めながら格納される。
なお、図4のピンテーブルにおいて、BOUNDARY
欄の「入力」は内部論理マクロ22の入力ピンを表わし
ており、「出力」は出力ピンを表わし、「−」はそれ以
外のものを表わしている。このBOUNDARY情報
は、論理シミュレーションの前処理である回路接続展開
処理より得られた情報である。
を示す流れ図である。以下、図2の論理回路に対して、
入力信号として、図5(a)の入力1および図5(b)
の入力2が印加される場合を例として、本実施例による
処理手順について説明する。なお、図5(c)、
(d)、(e)、(f)、(g)、(h)および(i)
は、それぞれ、入力1および入力2の印加に対応するピ
ン1、2、3、4、5、6および8における信号のタイ
ミング図であり、図4は、それぞれ、これらのピン1、
2、3、4、5、6および8に対応する変化時刻、ピン
の状態値、BOUNDARY情報および伝播元の情報を
格納するピンテーブルを示す図である。このピンテーブ
ルの中のBOUNDARY情報には、内部論理マクロ2
2の入力ピンおよび出力ピンの区別を含む情報が格納さ
れている。また、伝播元には、最新イベントが、内部論
理マクロ22のどの入力ピンを経由してきたかを示す情
報が、当該シミュレーションを進めながら格納される。
なお、図4のピンテーブルにおいて、BOUNDARY
欄の「入力」は内部論理マクロ22の入力ピンを表わし
ており、「出力」は出力ピンを表わし、「−」はそれ以
外のものを表わしている。このBOUNDARY情報
は、論理シミュレーションの前処理である回路接続展開
処理より得られた情報である。
【0014】以下に、図1、図2および図5を参照し、
内部論理マクロに注目して、信号印加によるシミュレー
ション手順について説明する。図2に示される論理回路
例において、入力1および入力2が、それぞれ時刻T1
において印加される場合について考えるものとする(図
5参照)。これにより、処理ステップ101において
は、入力1の印加に対応して、インバータ21を経由し
て内部論理マクロ22の入力ピン1には、時刻T1 にお
いてRISEイベントが生じ(図5(c)の500を参
照)、また入力2の印加に対応して、内部論理マクロ2
2の入力ピン2には、時刻T2 においてRISEイベン
トが生じる(図5(d)の501を参照)。この時点に
おいて、処理ステップ102においてはイベント残存の
有無のチェックが行われる。この例においては、時刻T
1 および時刻T2 においてRISEイベントが登録され
ているので、YES即ち残存イベントありと判定され
て、処理ステップ106に移行してイベント取り出し処
理が行われる。この場合、まず早い時刻T1 におけるR
ISEイベントが取り出される。このイベントの伝播先
は論理接続情報により与えられるが、本例においては当
該伝播先は図2より明らかなようにゲートAであるた
め、次の処理ステップ107においては、ゲートAによ
る論理ゲート演算が行われる。次いで処理ステップ10
8においては、イベント発生の有無がチェックされる
が、本例においては、ゲートAに対する入力値は、この
RISEイベントにより、0と0の組み合わせから0と
1の組み合わせに変化するが、処理ステップ106にお
ける演算結果は0であり、ゲートAのピン4における状
態値は変化することがなくイベントは消滅することにな
るため、イベントの発生なしと判定されて処理ステップ
102に戻る。次に、前記処理ステップ106におい
て、時間遅れの時刻T2 におけるRISEイベントが取
り出される。この場合には、このイベントによるゲート
Aに対する入力値の組み合わせは1と1となり、処理ス
テップ107における演算処理の結果、ピン4には時刻
T3 においてRISEイベントが発生する(図5(f)
の502を参照)。即ち、処理ステップ108において
イベント発生ありと判定されて、処理ステップ109に
移行する。処理ステップ109においては、前記BUN
DARY情報を参照して、ピン4が内部論理マクロ22
の出力ピンではないため、当該イベントは出力情報では
ないものと判定され、処理ステップ110において、当
該イベントに対応するイベント登録処理が行われる。こ
のイベント登録処理においては、変化時刻(T3 )およ
び状態値変化(RISE)等の情報が格納されるととも
に、併せて、ゲートAの入力元であるピン1およびピン
2の変化時刻が比較されて、その変化時刻の遅い方の入
力元であるピン2が、ピン4のイベントのトリガ−であ
ると判定されて、このイベントの伝播先として2が格納
される。この場合に、ピン2は内部論理マクロ22の入
力ピンであるため、そのまま格納される(図4の401
を参照)。そして、処理ステップ102のイベント残存
有無をチェックする処理に戻る。
内部論理マクロに注目して、信号印加によるシミュレー
ション手順について説明する。図2に示される論理回路
例において、入力1および入力2が、それぞれ時刻T1
において印加される場合について考えるものとする(図
5参照)。これにより、処理ステップ101において
は、入力1の印加に対応して、インバータ21を経由し
て内部論理マクロ22の入力ピン1には、時刻T1 にお
いてRISEイベントが生じ(図5(c)の500を参
照)、また入力2の印加に対応して、内部論理マクロ2
2の入力ピン2には、時刻T2 においてRISEイベン
トが生じる(図5(d)の501を参照)。この時点に
おいて、処理ステップ102においてはイベント残存の
有無のチェックが行われる。この例においては、時刻T
1 および時刻T2 においてRISEイベントが登録され
ているので、YES即ち残存イベントありと判定され
て、処理ステップ106に移行してイベント取り出し処
理が行われる。この場合、まず早い時刻T1 におけるR
ISEイベントが取り出される。このイベントの伝播先
は論理接続情報により与えられるが、本例においては当
該伝播先は図2より明らかなようにゲートAであるた
め、次の処理ステップ107においては、ゲートAによ
る論理ゲート演算が行われる。次いで処理ステップ10
8においては、イベント発生の有無がチェックされる
が、本例においては、ゲートAに対する入力値は、この
RISEイベントにより、0と0の組み合わせから0と
1の組み合わせに変化するが、処理ステップ106にお
ける演算結果は0であり、ゲートAのピン4における状
態値は変化することがなくイベントは消滅することにな
るため、イベントの発生なしと判定されて処理ステップ
102に戻る。次に、前記処理ステップ106におい
て、時間遅れの時刻T2 におけるRISEイベントが取
り出される。この場合には、このイベントによるゲート
Aに対する入力値の組み合わせは1と1となり、処理ス
テップ107における演算処理の結果、ピン4には時刻
T3 においてRISEイベントが発生する(図5(f)
の502を参照)。即ち、処理ステップ108において
イベント発生ありと判定されて、処理ステップ109に
移行する。処理ステップ109においては、前記BUN
DARY情報を参照して、ピン4が内部論理マクロ22
の出力ピンではないため、当該イベントは出力情報では
ないものと判定され、処理ステップ110において、当
該イベントに対応するイベント登録処理が行われる。こ
のイベント登録処理においては、変化時刻(T3 )およ
び状態値変化(RISE)等の情報が格納されるととも
に、併せて、ゲートAの入力元であるピン1およびピン
2の変化時刻が比較されて、その変化時刻の遅い方の入
力元であるピン2が、ピン4のイベントのトリガ−であ
ると判定されて、このイベントの伝播先として2が格納
される。この場合に、ピン2は内部論理マクロ22の入
力ピンであるため、そのまま格納される(図4の401
を参照)。そして、処理ステップ102のイベント残存
有無をチェックする処理に戻る。
【0015】処理ステップ102においてイベント残存
ありの判定を受けて、処理ステップ106においては、
今登録が行われたピン4のイベントが取り出され、次い
で処理ステップ107において、論理接続情報により、
ゲートBおよびゲートDによる演算処理が行われるが、
この演算処理によりゲートDのピン5は変化することな
くイベントは消滅し、ゲートBのピン6は、時刻T4 に
おいて1から0に変化する(図5(h)の503を参
照)。即ち、処理ステップ108においてイベント発生
ありと判定されて、処理ステップ109に移行する。処
理ステップ109においては、前記BUNDARY情報
を参照して、ピン6が内部論理マクロ22の出力ピンで
はないため、前述の場合と同様に、当該イベントは出力
情報ではないものと判定され、処理ステップ110にお
いて、当該イベントに対応するイベント登録処理が行わ
れる。なお、このゲートBは1入力であるため、ピン6
のイベントのトリガーがピン4であることは、変化時刻
情報を見るまでもないことである。図4より明らかなよ
うに、ピン4のBUNDARY情報は「−」であるた
め、伝播元情報に格納されている番号2がピン6の伝播
元情報にコピーされる(図4の402を参照)。
ありの判定を受けて、処理ステップ106においては、
今登録が行われたピン4のイベントが取り出され、次い
で処理ステップ107において、論理接続情報により、
ゲートBおよびゲートDによる演算処理が行われるが、
この演算処理によりゲートDのピン5は変化することな
くイベントは消滅し、ゲートBのピン6は、時刻T4 に
おいて1から0に変化する(図5(h)の503を参
照)。即ち、処理ステップ108においてイベント発生
ありと判定されて、処理ステップ109に移行する。処
理ステップ109においては、前記BUNDARY情報
を参照して、ピン6が内部論理マクロ22の出力ピンで
はないため、前述の場合と同様に、当該イベントは出力
情報ではないものと判定され、処理ステップ110にお
いて、当該イベントに対応するイベント登録処理が行わ
れる。なお、このゲートBは1入力であるため、ピン6
のイベントのトリガーがピン4であることは、変化時刻
情報を見るまでもないことである。図4より明らかなよ
うに、ピン4のBUNDARY情報は「−」であるた
め、伝播元情報に格納されている番号2がピン6の伝播
元情報にコピーされる(図4の402を参照)。
【0016】そして、再度処理ステップ102に戻り、
イベント残存の有無がチェックされる。イベント残存あ
りの判定を受けて、処理ステップ106においては、今
登録が行われたピン6のイベントが取り出され、次いで
処理ステップ107において、論理接続情報により、ゲ
ートCによる演算処理が行われるが、この演算処理によ
りゲートCのピン8は、時刻T5 において0から1に変
化する(図5(i)の504を参照)。即ち、処理ステ
ップ108においてイベント発生ありと判定されて、処
理ステップ109に移行する。処理ステップ109にお
いては、前記BUNDARY情報を参照して、ピン8が
内部論理マクロ22の出力ピンであるために(図4の4
03を参照)、当該イベントは出力情報であるものと判
定されて処理ステップ111に移行する、処理ステップ
111においては、入力元の変化時刻チェックにより、
ピン8のRISEイベントのトリガーがピン6のイベン
トであり、ピン6のイベントはピン2からイベントの伝
播によるものであることが伝播元情報により与えられる
(図4の403を参照)。よって、遅延データベースか
らピン2からピン8までの遅延データが参照される。こ
の場合に、本発明においては、この検索を高速にて行う
ために、ハッシュテーブル112を介して遅延データベ
ース113より当該遅延データが参照される。次いで処
理ステップ114においては、前記遅延データに従って
スケジューリングデータの処理が行われ、その処理後に
おいて所定のシミュレーション結果が出力される。
イベント残存の有無がチェックされる。イベント残存あ
りの判定を受けて、処理ステップ106においては、今
登録が行われたピン6のイベントが取り出され、次いで
処理ステップ107において、論理接続情報により、ゲ
ートCによる演算処理が行われるが、この演算処理によ
りゲートCのピン8は、時刻T5 において0から1に変
化する(図5(i)の504を参照)。即ち、処理ステ
ップ108においてイベント発生ありと判定されて、処
理ステップ109に移行する。処理ステップ109にお
いては、前記BUNDARY情報を参照して、ピン8が
内部論理マクロ22の出力ピンであるために(図4の4
03を参照)、当該イベントは出力情報であるものと判
定されて処理ステップ111に移行する、処理ステップ
111においては、入力元の変化時刻チェックにより、
ピン8のRISEイベントのトリガーがピン6のイベン
トであり、ピン6のイベントはピン2からイベントの伝
播によるものであることが伝播元情報により与えられる
(図4の403を参照)。よって、遅延データベースか
らピン2からピン8までの遅延データが参照される。こ
の場合に、本発明においては、この検索を高速にて行う
ために、ハッシュテーブル112を介して遅延データベ
ース113より当該遅延データが参照される。次いで処
理ステップ114においては、前記遅延データに従って
スケジューリングデータの処理が行われ、その処理後に
おいて所定のシミュレーション結果が出力される。
【0017】そして処理ステップ102に戻るが、この
時点においては残存イベントも存在せず、スケジューリ
ングデータも存在しないために、シミュレーション処理
は終了(EXIT104)する。
時点においては残存イベントも存在せず、スケジューリ
ングデータも存在しないために、シミュレーション処理
は終了(EXIT104)する。
【0018】
【発明の効果】以上説明したように、本発明は、論理回
路と等価な論理回路モデルを計算機上に構築し、前記論
理回路に対する入力検査系列信号を上記論理回路モデル
に印加し、論理シミュレーションにより、その動作結果
を表示出力する論理シミュレーション方法に適用され
て、内部論理マクロの回路内を伝播するイベントのピン
経過情報を有し、当該内部論理マクロの出力ピンの伝播
してくるイベントに対応して、前記ピン経過情報を参照
して前記内部論理マクロのピン間遅延データベースを検
索し、当該検索データを参照して遅延を割付けることに
より、ピンtoピンの遅延を誤差なく反映した論理シミ
ュレーションを行うことが可能になるとともに、既存の
論理回路接続を流用することができ、なお且つ余分な演
算処理が不要となるために、論理シミュレーションに要
する処理時間を圧縮することができるという効果があ
る。
路と等価な論理回路モデルを計算機上に構築し、前記論
理回路に対する入力検査系列信号を上記論理回路モデル
に印加し、論理シミュレーションにより、その動作結果
を表示出力する論理シミュレーション方法に適用され
て、内部論理マクロの回路内を伝播するイベントのピン
経過情報を有し、当該内部論理マクロの出力ピンの伝播
してくるイベントに対応して、前記ピン経過情報を参照
して前記内部論理マクロのピン間遅延データベースを検
索し、当該検索データを参照して遅延を割付けることに
より、ピンtoピンの遅延を誤差なく反映した論理シミ
ュレーションを行うことが可能になるとともに、既存の
論理回路接続を流用することができ、なお且つ余分な演
算処理が不要となるために、論理シミュレーションに要
する処理時間を圧縮することができるという効果があ
る。
【図1】本発明の一実施例における論理シミュレーショ
ンの流れ図である。
ンの流れ図である。
【図2】本実施例を適用する論理回路例を示す図であ
る。
る。
【図3】本実施例における遅延データベース例を示す図
である。
である。
【図4】本実施例を適用する論理回路例のピン情報テー
ブルを示す図である。
ブルを示す図である。
【図5】本実施例を適用する論理回路例の動作を示すタ
イミング図である。
イミング図である。
【図6】従来例における論理シミュレーションの流れ図
である。
である。
11 ハッシュテーブル 12 遅延データベース 21 インバータ 22 内部論理マクロ 101〜112、601〜610 処理ステップ
Claims (2)
- 【請求項1】 論理回路と等価な論理回路モデルを計算
機上に構築し、前記論理回路に対する入力検査系列信号
を上記論理回路モデルに印加し、論理シミュレーション
により、その動作結果を表示出力する論理シミュレーシ
ョン方法において、 前記入力検査系列信号の変化に対応して、前記論理回路
モデルに含まれる内部論理マクロのピンにおける残存イ
ベントの有無を判定する第1の処理ステップと、 前記第1の処理ステップにおいて、内部論理マクロのピ
ンに残存イベントが存在する場合に、当該残存イベント
を抽出する第2の処理ステップと、 前記第2の処理ステップにおいて抽出されたイベントに
対応して、所定の論理接続情報を参照して、内部論理マ
クロ内の対象とする論理回路要素による演算処理を行う
第3の処理ステップと、 前記第3の処理ステップの演算処理によるイベントの発
生の有無を判定し、イベントの発生がない場合には前記
第1の処理ステップに戻る第4の処理ステップと、 前記第4の処理ステップにおいてイベントの発生があっ
た場合に、所定のBOUNDARY情報を参照して、当
該イベント発生のピンが、前記内部論理マクロの出力ピ
ンに対応するピンであるか否かを判定する第5の処理ス
テップ、 前記第5の処理ステップにおいて、前記内部論理マクロ
の出力ピンに対応するピンではないと判定された場合
に、対応するイベントを登録処理して前記第1の処理ス
テップに戻る第6の処理ステップと、 前記第5の処理ステップにおいて、前記内部論理マクロ
の出力ピンに対応するピンであると判定された場合に、
対応するピン同士間の遅延値を所定の遅延データベース
を参照して検索する第7の処理ステップと、 前記第7の処理ステップの検索により求められた遅延値
に従ってスケジューリング処理を行って論理シミュレー
ション結果を出力するとともに、処理後において前記第
1の処理ステップに戻る第8の処理ステップと、 を少なくとも有し、前記第1の処理ステップにおいて残
存イベントが存在せず、且つ残存スケジュールデータも
存在しない場合には処理を終了とする論理シミュレーシ
ョン方法。 - 【請求項2】 前記第7の処理ステップにおいて、対応
するピン同士間の遅延値を、ハッシュテーブルを介して
所定の遅延データベースを参照して検索する請求項1記
載の論理シミュレーション方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6227821A JP2785708B2 (ja) | 1994-09-22 | 1994-09-22 | 論理シミュレーション方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6227821A JP2785708B2 (ja) | 1994-09-22 | 1994-09-22 | 論理シミュレーション方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0896016A true JPH0896016A (ja) | 1996-04-12 |
| JP2785708B2 JP2785708B2 (ja) | 1998-08-13 |
Family
ID=16866909
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6227821A Expired - Fee Related JP2785708B2 (ja) | 1994-09-22 | 1994-09-22 | 論理シミュレーション方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2785708B2 (ja) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS60178545A (ja) * | 1984-02-24 | 1985-09-12 | Hitachi Ltd | 網デ−タ処理方式 |
| JPH0195365A (ja) * | 1987-10-07 | 1989-04-13 | Fujitsu Ltd | クリティカルパスの解析処理方式 |
| JPH02122337A (ja) * | 1988-10-31 | 1990-05-10 | Pfu Ltd | アクセラレータ |
| JPH04112271A (ja) * | 1990-08-31 | 1992-04-14 | Fujitsu Ltd | 遅延解析方式 |
| JPH05108753A (ja) * | 1991-10-21 | 1993-04-30 | Oki Electric Ind Co Ltd | 論理シミユレーシヨン方式 |
-
1994
- 1994-09-22 JP JP6227821A patent/JP2785708B2/ja not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS60178545A (ja) * | 1984-02-24 | 1985-09-12 | Hitachi Ltd | 網デ−タ処理方式 |
| JPH0195365A (ja) * | 1987-10-07 | 1989-04-13 | Fujitsu Ltd | クリティカルパスの解析処理方式 |
| JPH02122337A (ja) * | 1988-10-31 | 1990-05-10 | Pfu Ltd | アクセラレータ |
| JPH04112271A (ja) * | 1990-08-31 | 1992-04-14 | Fujitsu Ltd | 遅延解析方式 |
| JPH05108753A (ja) * | 1991-10-21 | 1993-04-30 | Oki Electric Ind Co Ltd | 論理シミユレーシヨン方式 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2785708B2 (ja) | 1998-08-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7117466B2 (en) | System and method for correlated process pessimism removal for static timing analysis | |
| JP2563663B2 (ja) | 論理設計処理装置およびタイミング調整方法 | |
| US6536023B1 (en) | Method and system for hierarchical metal-end, enclosure and exposure checking | |
| JP3851357B2 (ja) | トランジスタ回路のタイミング特性抽出方法、タイミング特性ライブラリを記憶した記憶媒体、lsiの設計方法、及びゲート抽出方法 | |
| JPH1062494A (ja) | 順序回路の故障箇所推定方法 | |
| US6321173B1 (en) | System and method for efficient verification of functional equivalence between design models | |
| JP2785708B2 (ja) | 論理シミュレーション方法 | |
| US7328415B2 (en) | Modeling blocks of an integrated circuit for timing verification | |
| JP2853649B2 (ja) | 論理シミュレーション用モデルの作成方法 | |
| US6377909B1 (en) | Method and apparatus for preparing a logic simulation model and recording medium for storing the same | |
| US6041168A (en) | High-speed delay verification apparatus and method therefor | |
| JP3080037B2 (ja) | 論理シミュレーション用モデルの作成方法 | |
| JP2000214906A (ja) | テスト生成問題解決システム及びテスト生成問題解決方法 | |
| JP3105782B2 (ja) | 電子回路の論理生成方法 | |
| JPH11259555A (ja) | マクロの設計方法 | |
| JP3652220B2 (ja) | 論理回路検証装置及び論理回路検証方法及び論理回路検証プログラムを格納した記録媒体 | |
| JP2996153B2 (ja) | Asic検証方法 | |
| JPH02224070A (ja) | 論理回路の遅延時間解析装置 | |
| JPH0195365A (ja) | クリティカルパスの解析処理方式 | |
| JPH11145295A (ja) | 自動配置配線方法 | |
| JPH09269954A (ja) | 論理シミュレーションモデルの作成方法 | |
| JPH10340283A (ja) | Lsi設計検証方法及び装置 | |
| JPH05216952A (ja) | 論理シミュレーション方法 | |
| JPH0981613A (ja) | 設計支援装置及び設計支援方法 | |
| JPH01241677A (ja) | 回路変換方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19980428 |
|
| LAPS | Cancellation because of no payment of annual fees |