JPH11143915A - サイクルベース・シミュレーション方法 - Google Patents
サイクルベース・シミュレーション方法Info
- Publication number
- JPH11143915A JPH11143915A JP9307258A JP30725897A JPH11143915A JP H11143915 A JPH11143915 A JP H11143915A JP 9307258 A JP9307258 A JP 9307258A JP 30725897 A JP30725897 A JP 30725897A JP H11143915 A JPH11143915 A JP H11143915A
- Authority
- JP
- Japan
- Prior art keywords
- latch
- description
- circuit
- cycle
- signal change
- 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
Abstract
(57)【要約】
【課題】 サイクルベース・シミュレータによるラッチ
の検証を可能にして回路検証のスループットを高める。 【解決手段】 信号変化の際に条件によって異なるラッ
チの動作を表す第1及び第2の記述103、104を用
意し、ステップ105で、回路記述101に基づいてデ
ータ又はゲート端子のいずれの信号変化が速いかを計算
し、該当する第1又は第2の記述103、104の何れ
かを選択する。ステップ106で、回路記述101中の
ラッチの記述を、選択したラッチの記述に置き換え、置
き換え後の回路記述107、用意したラッチの記述10
3、104を、サイクルベース・シミュレーション・ス
テップ108の入力とする。その後の論理シミュレーシ
ョンを不要にすることで、検証のスループットを向上さ
せる。
の検証を可能にして回路検証のスループットを高める。 【解決手段】 信号変化の際に条件によって異なるラッ
チの動作を表す第1及び第2の記述103、104を用
意し、ステップ105で、回路記述101に基づいてデ
ータ又はゲート端子のいずれの信号変化が速いかを計算
し、該当する第1又は第2の記述103、104の何れ
かを選択する。ステップ106で、回路記述101中の
ラッチの記述を、選択したラッチの記述に置き換え、置
き換え後の回路記述107、用意したラッチの記述10
3、104を、サイクルベース・シミュレーション・ス
テップ108の入力とする。その後の論理シミュレーシ
ョンを不要にすることで、検証のスループットを向上さ
せる。
Description
【0001】
【発明の属する技術分野】本発明は、サイクルベース・
シミュレーション方法に関し、特にマクロを有するゲー
トアレイのサイクルベース・シミュレーション方法に関
する。
シミュレーション方法に関し、特にマクロを有するゲー
トアレイのサイクルベース・シミュレーション方法に関
する。
【0002】
【従来の技術】従来、シミュレーション実行により回路
の動作の検証を行う方法として、論理機能のみを計算す
るサイクルベース・シミュレーション方法(日経エレク
トロニクス1996年9−2号、1996年9月2日発
行)が挙げられる。
の動作の検証を行う方法として、論理機能のみを計算す
るサイクルベース・シミュレーション方法(日経エレク
トロニクス1996年9−2号、1996年9月2日発
行)が挙げられる。
【0003】図7(a)〜(c)は夫々、従来のサイク
ルベース・シミュレーション方法で検証されるラッチ、
その真理値、及び、信号のタイミングチャートを示す。
ラッチ601は、入力端子としてデータ端子D及びゲー
ト端子Gと出力端子Qとを持ち、真理値表602に示す
動作をする。つまり、Dが0でGが1のときにはQは
0、D及びGが1のときにはQは1、Gが0のときには
Dの値に拘らずQは以前の値を保持する。波形603及
び波形604は、それぞれラッチ601の入力D及びG
に与えられた入力の信号変化を示し、波形605及び波
形606は、ラッチ601の入力D及びGの信号変化に
対する出力Qの信号変化を示したものである。ここで、
波形605は、Dの信号がGの信号より後に変化すると
考えた時のQの出力信号の変化を示しており、波形60
6は、DがGより先に変化すると考えた時のQの出力信
号の変化を示している。
ルベース・シミュレーション方法で検証されるラッチ、
その真理値、及び、信号のタイミングチャートを示す。
ラッチ601は、入力端子としてデータ端子D及びゲー
ト端子Gと出力端子Qとを持ち、真理値表602に示す
動作をする。つまり、Dが0でGが1のときにはQは
0、D及びGが1のときにはQは1、Gが0のときには
Dの値に拘らずQは以前の値を保持する。波形603及
び波形604は、それぞれラッチ601の入力D及びG
に与えられた入力の信号変化を示し、波形605及び波
形606は、ラッチ601の入力D及びGの信号変化に
対する出力Qの信号変化を示したものである。ここで、
波形605は、Dの信号がGの信号より後に変化すると
考えた時のQの出力信号の変化を示しており、波形60
6は、DがGより先に変化すると考えた時のQの出力信
号の変化を示している。
【0004】基本クロックの立上り607で、ラッチ6
01のD及びG双方の入力信号が0→1に変化する場合
に、DがGより後に変化したと考えるとQの出力信号は
1である。また、この立上り607では、DがGより先
に変化したと考えても、Qの出力信号は1になる。しか
し、基本クロックの立上り608で、ラッチ601の
D、G両方の入力信号が1→0に変化した場合には、D
がGより後に変化したと考えると、ラッチ601は、D
が変化する以前のQの値を保持し、Qの出力信号は1の
まま変化しない。逆に、DがGより先に変化したと考え
ると、Dが変化したことよりQの出力信号は1→0に変
化し、その後Gの信号変化により値を保持するため、Q
の出力信号は結果的に1→0に変化することになる。こ
のような場合でも、従来のサイクルベース・シミュレー
ション方法では、遅延を考慮しないため、DがGより先
に信号変化したか、後に信号変化したかの判断がされ
ず、常にどちらか一方の動作でのみシミュレーションが
行われる。
01のD及びG双方の入力信号が0→1に変化する場合
に、DがGより後に変化したと考えるとQの出力信号は
1である。また、この立上り607では、DがGより先
に変化したと考えても、Qの出力信号は1になる。しか
し、基本クロックの立上り608で、ラッチ601の
D、G両方の入力信号が1→0に変化した場合には、D
がGより後に変化したと考えると、ラッチ601は、D
が変化する以前のQの値を保持し、Qの出力信号は1の
まま変化しない。逆に、DがGより先に変化したと考え
ると、Dが変化したことよりQの出力信号は1→0に変
化し、その後Gの信号変化により値を保持するため、Q
の出力信号は結果的に1→0に変化することになる。こ
のような場合でも、従来のサイクルベース・シミュレー
ション方法では、遅延を考慮しないため、DがGより先
に信号変化したか、後に信号変化したかの判断がされ
ず、常にどちらか一方の動作でのみシミュレーションが
行われる。
【0005】図8は、図7のラッチを検証する従来のサ
イクルベース・シミュレーションにおけるステップ及び
データの流れを示すフローチャートである。サイクルベ
ース・シミュレーション・ステップ108は、ラッチを
含む回路記述101を入力とし、ステップ701は、ラ
ッチ以外の回路についてシミュレーション結果の判定を
行なう機能を有する。論理シミュレーション・ステップ
702は、遅延及びタイミング制約を考慮したシミュレ
ーションを実行するもので、ラッチを含む回路記述10
1及び各ゲートの遅延情報102を入力とする。
イクルベース・シミュレーションにおけるステップ及び
データの流れを示すフローチャートである。サイクルベ
ース・シミュレーション・ステップ108は、ラッチを
含む回路記述101を入力とし、ステップ701は、ラ
ッチ以外の回路についてシミュレーション結果の判定を
行なう機能を有する。論理シミュレーション・ステップ
702は、遅延及びタイミング制約を考慮したシミュレ
ーションを実行するもので、ラッチを含む回路記述10
1及び各ゲートの遅延情報102を入力とする。
【0006】ラッチを含む回路を、サイクルベース・シ
ミュレーションを用いて検証する場合には、まず、ラッ
チを含む回路記述101を入力とし、サイクルベース・
シミュレーション・ステップ108を実行する。サイク
ルベース・シミュレーション・ステップ108では、ラ
ッチについては正しい検証が行われないので、ステップ
701で、ラッチ以外の回路についてのシミュレーショ
ン結果の判定を行なう。ラッチ以外の回路について、シ
ミュレーション結果がOKとなったら、ラッチの動作を
正しくシミュレーションするために、各ゲートの遅延情
報102、ラッチを含む回路記述101を入力とし、遅
延及びタイミング制約を考慮した論理シミュレーション
・ステップ702を実行し、ラッチを含む回路の検証を
行う必要があった。
ミュレーションを用いて検証する場合には、まず、ラッ
チを含む回路記述101を入力とし、サイクルベース・
シミュレーション・ステップ108を実行する。サイク
ルベース・シミュレーション・ステップ108では、ラ
ッチについては正しい検証が行われないので、ステップ
701で、ラッチ以外の回路についてのシミュレーショ
ン結果の判定を行なう。ラッチ以外の回路について、シ
ミュレーション結果がOKとなったら、ラッチの動作を
正しくシミュレーションするために、各ゲートの遅延情
報102、ラッチを含む回路記述101を入力とし、遅
延及びタイミング制約を考慮した論理シミュレーション
・ステップ702を実行し、ラッチを含む回路の検証を
行う必要があった。
【0007】
【発明が解決しようとする課題】上記のように、従来の
シミュレーションでは、ラッチを含む回路の動作を、サ
イクルベース・シミュレータにて正確に検証できないた
め、別に論理シミュレーションを実行しなければなら
ず、シミュレーションに多大の時間を要するという問題
がある。つまり、サイクルベース・シミュレーションを
採用すると、全ての信号が同時に変化し、ラッチのデー
タ端子とゲート端子とが同時に変化するという仮定を行
うため、以前の値を保持するというラッチの動作におい
て、データ端子とゲート端子の信号変化時刻の前後関係
によって決まる値を確定できないという問題である。
シミュレーションでは、ラッチを含む回路の動作を、サ
イクルベース・シミュレータにて正確に検証できないた
め、別に論理シミュレーションを実行しなければなら
ず、シミュレーションに多大の時間を要するという問題
がある。つまり、サイクルベース・シミュレーションを
採用すると、全ての信号が同時に変化し、ラッチのデー
タ端子とゲート端子とが同時に変化するという仮定を行
うため、以前の値を保持するというラッチの動作におい
て、データ端子とゲート端子の信号変化時刻の前後関係
によって決まる値を確定できないという問題である。
【0008】ここで、ラッチを含む回路の検証を全て論
理シミュレーションによって行うことも考えられるが、
論理シミュレーションはサイクルベース・シミュレーシ
ョンに比して多大の時間がかかるため、全てを論理シミ
ュレーションによって検証するのは実用的ではない。
理シミュレーションによって行うことも考えられるが、
論理シミュレーションはサイクルベース・シミュレーシ
ョンに比して多大の時間がかかるため、全てを論理シミ
ュレーションによって検証するのは実用的ではない。
【0009】従って、本発明の目的は、クロックの変化
時における回路の論理機能のみをシミュレーションする
サイクルベース・シミュレーション方法において、ラッ
チを含む回路の動作を正確に且つ簡易に再現するための
手段を提供することにある。
時における回路の論理機能のみをシミュレーションする
サイクルベース・シミュレーション方法において、ラッ
チを含む回路の動作を正確に且つ簡易に再現するための
手段を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するため
に、本発明のサイクルベース・シミュレーション方法
は、回路の論理機能をシミュレーションするサイクルベ
ース・シミュレーション方法において、クロックの変化
時における回路の構成要素の動作を表す記述を複数用意
し、シミュレーションを実行する際に複数の記述の内の
1つを選択して用いることを特徴とする。
に、本発明のサイクルベース・シミュレーション方法
は、回路の論理機能をシミュレーションするサイクルベ
ース・シミュレーション方法において、クロックの変化
時における回路の構成要素の動作を表す記述を複数用意
し、シミュレーションを実行する際に複数の記述の内の
1つを選択して用いることを特徴とする。
【0011】本発明のサイクルベース・シミュレーショ
ン方法によると、ラッチの検証をサイクルベース・シミ
ュレーションのみで行うことができ、ラッチを含む論理
回路やラッチを含むマクロの検証が論理シミュレーショ
ンを用いないで可能となるため、検証のスループットが
向上する。
ン方法によると、ラッチの検証をサイクルベース・シミ
ュレーションのみで行うことができ、ラッチを含む論理
回路やラッチを含むマクロの検証が論理シミュレーショ
ンを用いないで可能となるため、検証のスループットが
向上する。
【0012】本発明のサイクルベースシミュレーション
方法の好ましい実施形態例では、ラッチの動作を表す記
述について、データ端子とゲート端子の入力信号が同じ
クロック時点で変化する際に、データ端子の信号変化が
ゲート端子の信号変化より早い場合の動作を表す第1の
記述と、データ端子の信号変化がゲート端子の信号変化
より遅い場合の動作を表す第2の記述との2種類の記述
を有する。さらに、検証回路中のラッチが、どちらの記
述の動作をするのが正しいのかを判断する手段を備え、
検証回路記述中のラッチの動作を表す記述を、選択結果
に従って置き換える手段を備えている。
方法の好ましい実施形態例では、ラッチの動作を表す記
述について、データ端子とゲート端子の入力信号が同じ
クロック時点で変化する際に、データ端子の信号変化が
ゲート端子の信号変化より早い場合の動作を表す第1の
記述と、データ端子の信号変化がゲート端子の信号変化
より遅い場合の動作を表す第2の記述との2種類の記述
を有する。さらに、検証回路中のラッチが、どちらの記
述の動作をするのが正しいのかを判断する手段を備え、
検証回路記述中のラッチの動作を表す記述を、選択結果
に従って置き換える手段を備えている。
【0013】
【発明の実施の形態】図1は、本発明の一実施形態例の
サイクルベース・シミュレーション方法における動作及
びデータの流れを示すフローチャートである。同図にお
いて、ステップ105では、ラッチを含む全体回路を記
述する回路記述101と、回路中の各ゲートの遅延情報
102とを入力とし、ラッチの動作を表す記述として用
意した2つの記述103及び104の何れかを選択して
実行する。2つの記述には、データ端子の信号変化がゲ
ート端子の信号変化より早いときの動作を記述する第1
の記述103と、データ端子の信号変化がゲート端子の
信号変化より遅いときの動作を記述する第2の記述10
4とが含まれる。
サイクルベース・シミュレーション方法における動作及
びデータの流れを示すフローチャートである。同図にお
いて、ステップ105では、ラッチを含む全体回路を記
述する回路記述101と、回路中の各ゲートの遅延情報
102とを入力とし、ラッチの動作を表す記述として用
意した2つの記述103及び104の何れかを選択して
実行する。2つの記述には、データ端子の信号変化がゲ
ート端子の信号変化より早いときの動作を記述する第1
の記述103と、データ端子の信号変化がゲート端子の
信号変化より遅いときの動作を記述する第2の記述10
4とが含まれる。
【0014】ステップ105に後続するステップ106
では、回路記述101に含まれる各ラッチの動作記述
を、ステップ105によって選択されたラッチの記述に
置き換える。サイクルベース・シミュレーション・ステ
ップ108は、ステップ106で得られた置換え後の回
路記述107を入力として実行される。
では、回路記述101に含まれる各ラッチの動作記述
を、ステップ105によって選択されたラッチの記述に
置き換える。サイクルベース・シミュレーション・ステ
ップ108は、ステップ106で得られた置換え後の回
路記述107を入力として実行される。
【0015】図1の動作を更に詳述する。まず、シミュ
レーションの実行に先立って、回路記述101と、回路
記述101に含まれる各ゲートの遅延情報102と、ラ
ッチの動作を表す記述として、データ端子の信号変化が
ゲート端子の信号変化より早い時の動作を記述する第1
の記述103と、データ端子の信号変化がゲート端子の
信号変化より遅い時の動作を記述する第2の記述104
とを用意する。
レーションの実行に先立って、回路記述101と、回路
記述101に含まれる各ゲートの遅延情報102と、ラ
ッチの動作を表す記述として、データ端子の信号変化が
ゲート端子の信号変化より早い時の動作を記述する第1
の記述103と、データ端子の信号変化がゲート端子の
信号変化より遅い時の動作を記述する第2の記述104
とを用意する。
【0016】各ゲートの遅延情報102とは、ゲート毎
に、そのゲートを信号が通過するのに要する時間の情報
である。ステップ105では、回路記述101と、各ゲ
ートの遅延情報102とから、回路記述101に含まれ
ているラッチについて、第1の記述103又は第2の記
述104の何れかを選択する。この選択結果に基づい
て、ステップ106で、回路記述101中のラッチの記
述を、選択した動作記述に書き換える。こうして書き換
えた回路記述107を、サイクルベース・シミュレーシ
ョン・ステップ108の入力とする。
に、そのゲートを信号が通過するのに要する時間の情報
である。ステップ105では、回路記述101と、各ゲ
ートの遅延情報102とから、回路記述101に含まれ
ているラッチについて、第1の記述103又は第2の記
述104の何れかを選択する。この選択結果に基づい
て、ステップ106で、回路記述101中のラッチの記
述を、選択した動作記述に書き換える。こうして書き換
えた回路記述107を、サイクルベース・シミュレーシ
ョン・ステップ108の入力とする。
【0017】図2は、図1のステップ105の詳細を示
す、図1と同様なフローチャートで、図3に例示する回
路についてシミュレーションを行う際の処理を示してい
る。図3の被検証回路では、フリップフロップ401、
フリップフロップ402及びフリップフロップ403
は、図4の真理値表503に示す通常の動作をし、バッ
ファ406、バッファ407及びバッファ408は、真
理値表501に示す通常の動作をし、インバータ404
及びインバータ405は、真理値表502に示す通常の
動作をし、ラッチ409及びラッチ410は、真理値表
504に示す通常の動作(図7と同じ動作)をする。各
ゲートの遅延値は、図5のリストに示す通りであり、各
ゲートの遅延情報102として与えられる。
す、図1と同様なフローチャートで、図3に例示する回
路についてシミュレーションを行う際の処理を示してい
る。図3の被検証回路では、フリップフロップ401、
フリップフロップ402及びフリップフロップ403
は、図4の真理値表503に示す通常の動作をし、バッ
ファ406、バッファ407及びバッファ408は、真
理値表501に示す通常の動作をし、インバータ404
及びインバータ405は、真理値表502に示す通常の
動作をし、ラッチ409及びラッチ410は、真理値表
504に示す通常の動作(図7と同じ動作)をする。各
ゲートの遅延値は、図5のリストに示す通りであり、各
ゲートの遅延情報102として与えられる。
【0018】図2において、ラッチを含む回路記述10
1と各ゲートの遅延情報102とに基づいて、ラッチの
動作を表す記述として、入力Dの信号変化が入力Gの信
号変化より早い第1の記述103と、入力Dの信号変化
が入力Gの信号変化より遅い第2の記述104を、以下
のように作成する。
1と各ゲートの遅延情報102とに基づいて、ラッチの
動作を表す記述として、入力Dの信号変化が入力Gの信
号変化より早い第1の記述103と、入力Dの信号変化
が入力Gの信号変化より遅い第2の記述104を、以下
のように作成する。
【0019】まず、遅延値計算ステップ201は、検証
回路中のラッチについて、フリップフロップの出力端子
または外部入力端子から、データ端子Dおよびゲート端
子Gに到着するまでの信号到着時間を計算する。検証回
路(図3)中のラッチ409は、フリップフロップ40
1のQからラッチ409のDまでの信号経路にはインバ
ータ404及びバッファ406があるため、データ端子
遅延計算結果202は、6+11=17nsとなる。フ
リップフロップ403のQからラッチ409のGまでの
信号経路にはバッファ407のみがあるため、ゲート端
子遅延計算結果203は、12nsとなる。
回路中のラッチについて、フリップフロップの出力端子
または外部入力端子から、データ端子Dおよびゲート端
子Gに到着するまでの信号到着時間を計算する。検証回
路(図3)中のラッチ409は、フリップフロップ40
1のQからラッチ409のDまでの信号経路にはインバ
ータ404及びバッファ406があるため、データ端子
遅延計算結果202は、6+11=17nsとなる。フ
リップフロップ403のQからラッチ409のGまでの
信号経路にはバッファ407のみがあるため、ゲート端
子遅延計算結果203は、12nsとなる。
【0020】まず、ラッチ409について、遅延値の大
小比較ステップ204で、データ端子遅延計算結果20
2(17ns)と、ゲート端子遅延計算結果203(1
2ns)とを比較し、データ端子遅延計算結果202
(17ns)が大きいと判断する。従って、ラッチ40
9の動作を表す記述として、Dの信号変化がGの信号変
化より遅い第2の記述104を選択する。続いて、ラッ
チ410についても、フリップフロップ402のQから
ラッチ410のGまでの信号経路がインバータ405の
みであるので、データ端子遅延計算結果202は、7n
sとなる。また、フリップフロップ403のQからラッ
チ410のGまでの信号経路がバッファ408のみとな
るため、ゲート端子遅延計算結果203は、13nsと
なる。データ端子遅延計算結果202(7ns)と、ゲ
ート端子遅延計算結果203(13ns)とを比較し、
ゲート端子遅延計算結果203(13ns)の方が大き
いと判断し、ラッチ410の動作を表す記述として、D
の信号変化がGの信号変化より早い第1の記述103を
選択する。
小比較ステップ204で、データ端子遅延計算結果20
2(17ns)と、ゲート端子遅延計算結果203(1
2ns)とを比較し、データ端子遅延計算結果202
(17ns)が大きいと判断する。従って、ラッチ40
9の動作を表す記述として、Dの信号変化がGの信号変
化より遅い第2の記述104を選択する。続いて、ラッ
チ410についても、フリップフロップ402のQから
ラッチ410のGまでの信号経路がインバータ405の
みであるので、データ端子遅延計算結果202は、7n
sとなる。また、フリップフロップ403のQからラッ
チ410のGまでの信号経路がバッファ408のみとな
るため、ゲート端子遅延計算結果203は、13nsと
なる。データ端子遅延計算結果202(7ns)と、ゲ
ート端子遅延計算結果203(13ns)とを比較し、
ゲート端子遅延計算結果203(13ns)の方が大き
いと判断し、ラッチ410の動作を表す記述として、D
の信号変化がGの信号変化より早い第1の記述103を
選択する。
【0021】上記選択結果から、ステップ106で、回
路記述中のラッチ記述を置き換える。具体的には、図6
に示すように、全ての回路記述101の内のラッチ40
9及び410の動作を表す記述部分301を、ラッチ4
09については第2の記述を、ラッチ410については
第1の記述を夫々選択し、記述部分302によって置き
換える。このようにして作成した置き換え後の回路記述
107と、データが早いラッチの記述103及びデータ
が遅いラッチの記述104とを用いてシミュレーション
を実行することにより、ラッチを含む回路(図3)の検
証を実施する。
路記述中のラッチ記述を置き換える。具体的には、図6
に示すように、全ての回路記述101の内のラッチ40
9及び410の動作を表す記述部分301を、ラッチ4
09については第2の記述を、ラッチ410については
第1の記述を夫々選択し、記述部分302によって置き
換える。このようにして作成した置き換え後の回路記述
107と、データが早いラッチの記述103及びデータ
が遅いラッチの記述104とを用いてシミュレーション
を実行することにより、ラッチを含む回路(図3)の検
証を実施する。
【0022】上記実施形態例により、ラッチを含む回路
の検証が、サイクルベース・シミュレータのみで実現で
きる。従って、従来は必要であった、遅延及びタイミン
グ制約を考慮した論理シミュレータの実行を不要とする
ことができる。ここで、サイクルベース・シミュレータ
自体には特別な工夫を要しない。これは、サイクルベー
ス・シミュレータに入力する回路記述の変更のみにより
実現しているためである。
の検証が、サイクルベース・シミュレータのみで実現で
きる。従って、従来は必要であった、遅延及びタイミン
グ制約を考慮した論理シミュレータの実行を不要とする
ことができる。ここで、サイクルベース・シミュレータ
自体には特別な工夫を要しない。これは、サイクルベー
ス・シミュレータに入力する回路記述の変更のみにより
実現しているためである。
【0023】上記実施形態例では、個々のラッチのデー
タ端子及びゲート端子への信号変化の前後の記述につい
て説明したが、個々のラッチに代えて、1又は複数のラ
ッチを含むマクロにおけるデータ端子及びゲート端子に
ついての記述を複数用意してもよい。
タ端子及びゲート端子への信号変化の前後の記述につい
て説明したが、個々のラッチに代えて、1又は複数のラ
ッチを含むマクロにおけるデータ端子及びゲート端子に
ついての記述を複数用意してもよい。
【0024】以上、本発明をその好適な実施形態例に基
づいて説明したが、本発明のサイクルベース・シミュレ
ーション方法は、上記実施形態例の構成にのみ限定され
るものではなく、上記実施形態例の構成から種々の修正
及び変更を施したものも、本発明の範囲に含まれる。
づいて説明したが、本発明のサイクルベース・シミュレ
ーション方法は、上記実施形態例の構成にのみ限定され
るものではなく、上記実施形態例の構成から種々の修正
及び変更を施したものも、本発明の範囲に含まれる。
【0025】
【発明の効果】以上、説明したように、本発明のサイク
ルベース・シミュレーション方法によると、ラッチへの
データ端子及びゲート端子への入力のいずれが速いかを
記述してシミュレーションを行うことにより、その後の
論理シミュレーションを要しないので、サイクルベース
・シミュレーションによる回路検証のスループットが向
上する効果がある。
ルベース・シミュレーション方法によると、ラッチへの
データ端子及びゲート端子への入力のいずれが速いかを
記述してシミュレーションを行うことにより、その後の
論理シミュレーションを要しないので、サイクルベース
・シミュレーションによる回路検証のスループットが向
上する効果がある。
【図1】本発明のサイクルベース・シミュレーション方
法の一実施形態例を示すフローチャート。
法の一実施形態例を示すフローチャート。
【図2】図1のフローチャートの詳細を特定の場合につ
いて示すフローチャート。
いて示すフローチャート。
【図3】図2のフローチャートによる検証対象回路のブ
ロック図。
ロック図。
【図4】図3の検証対象回路に含まれる各ゲートの真理
値表。
値表。
【図5】図3の検証対象回路中に含まれる各ゲートの遅
延情報。
延情報。
【図6】図3のラッチの動作を表す記述データの置換え
の詳細を示すリスト。
の詳細を示すリスト。
【図7】(a)〜(c)は夫々、一般的なラッチの回路
図、真理値表及び信号のタイミングチャート。
図、真理値表及び信号のタイミングチャート。
【図8】従来のサイクルベース・シミュレーションを示
すフローチャート。
すフローチャート。
101 ラッチを含む回路記述 102 各ゲートの遅延情報 103 データが早い第1の記述 104 データが遅い第2の記述 105 ラッチの動作を表す記述の選択ステップ 106 回路記述中のラッチ記述置き換えステップ 107 ラッチ記述置き換え後の回路記述 108 サイクルベース・シミュレーション・ステップ 201 遅延値計算ステップ 202 データ端子遅延計算結果 203 ゲート端子遅延計算結果 204 遅延値の大小比較ステップ 205 遅延値計算結果の判定ステップ 301 置き換え前のラッチの動作を表す記述を指し示
す記述 302 置き換え後のラッチの動作を表す記述を指し示
す記述 401 フリップフロップ 402 フリップフロップ 403 フリップフロップ 404 インバータ 405 インバータ 406 バッファ 407 バッファ 408 バッファ 409 ラッチ 410 ラッチ 501 バッファの真理値表 502 インバータの真理値表 503 フリップフロップの真理値表 504 ラッチの真理値表 601 ラッチ 602 ラッチの真理値表 603 Dの信号変化 604 Gの信号変化 605 DがGより後に変化する場合のQの信号変化 606 DがGより先に変化する場合のQの信号変化 607 1番目の基本クロックの立ち上がり 608 2番目の基本クロックの立ち上がり 701 ラッチ以外の回路のシミュレーション結果判定
ステップ 702 論理シミュレーション・ステップ
す記述 302 置き換え後のラッチの動作を表す記述を指し示
す記述 401 フリップフロップ 402 フリップフロップ 403 フリップフロップ 404 インバータ 405 インバータ 406 バッファ 407 バッファ 408 バッファ 409 ラッチ 410 ラッチ 501 バッファの真理値表 502 インバータの真理値表 503 フリップフロップの真理値表 504 ラッチの真理値表 601 ラッチ 602 ラッチの真理値表 603 Dの信号変化 604 Gの信号変化 605 DがGより後に変化する場合のQの信号変化 606 DがGより先に変化する場合のQの信号変化 607 1番目の基本クロックの立ち上がり 608 2番目の基本クロックの立ち上がり 701 ラッチ以外の回路のシミュレーション結果判定
ステップ 702 論理シミュレーション・ステップ
Claims (4)
- 【請求項1】 回路の論理機能をシミュレーションする
サイクルベース・シミュレーション方法において、クロ
ックの変化時における回路の構成要素の動作を表す記述
を複数用意し、シミュレーションを実行する際に複数の
記述の内の1つを選択して用いることを特徴とするサイ
クルベース・シミュレーション方法。 - 【請求項2】 前記構成要素がラッチであり、前記複数
の記述が、ラッチのデータ端子の信号変化がゲート端子
の信号変化よりも速い動作を記述する第1の記述と、デ
ータ端子の信号変化がゲート端子の信号変化よりも遅い
動作を記述する第2の記述とを含む、請求項1に記載の
サイクルベース・シミュレーション方法。 - 【請求項3】 ラッチを含む回路の動作を記述する回路
記述と、回路の各構成要素の遅延情報とから、ラッチの
データ端子及びゲート端子に達する信号の遅延時間を計
算して前記第1の記述及び第2の記述を作成するステッ
プと、前記回路記述の内のラッチの記述を該第1又は第
2の記述によって置き換えるステップとを含む、請求項
2に記載のサイクルベース・シミュレーション方法。 - 【請求項4】 前記構成要素が1つのラッチを含むマク
ロである、請求項1に記載のサイクルベース・シミュレ
ーション方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9307258A JPH11143915A (ja) | 1997-11-10 | 1997-11-10 | サイクルベース・シミュレーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9307258A JPH11143915A (ja) | 1997-11-10 | 1997-11-10 | サイクルベース・シミュレーション方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11143915A true JPH11143915A (ja) | 1999-05-28 |
Family
ID=17966949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9307258A Pending JPH11143915A (ja) | 1997-11-10 | 1997-11-10 | サイクルベース・シミュレーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11143915A (ja) |
-
1997
- 1997-11-10 JP JP9307258A patent/JPH11143915A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8719742B2 (en) | Conversion of circuit description to an abstract model of the circuit | |
US20050216247A1 (en) | Method and program for verifying logic circuit having asynchronous interface | |
US20070089076A1 (en) | Application of consistent cycle context for related setup and hold tests for static timing analysis | |
JP3904645B2 (ja) | ハードウェア/ソフトウェア協調シミュレーション装置 | |
US7254796B2 (en) | Method for synthesizing domino logic circuits cross reference to related patent application using partition | |
JP2000132416A (ja) | 半導体集積回路設計検証装置 | |
US6609233B1 (en) | Load sensitivity modeling in a minimal level sensitive timing abstraction model | |
US6141631A (en) | Pulse rejection circuit model program and technique in VHDL | |
US6028993A (en) | Timed circuit simulation in hardware using FPGAs | |
US20030088838A1 (en) | Black box timing model for latch-based systems | |
JPH11143915A (ja) | サイクルベース・シミュレーション方法 | |
US7225419B2 (en) | Methods for modeling latch transparency | |
KR100321780B1 (ko) | 칩의외부신호자동비교에의한칩기능검증방법 | |
JP3123982B2 (ja) | 論理シミュレーション方法 | |
JP2923893B1 (ja) | ハードウェア論理シミュレーション装置 | |
JPH11259554A (ja) | 論理回路のタイミング解析方法ならびに同方法を用いた論理合成システム、及び同方法がプログラムされ記録される記録媒体 | |
JP2563399B2 (ja) | 論理シュミレーション方法 | |
JP2996153B2 (ja) | Asic検証方法 | |
JP2819926B2 (ja) | 配線長余裕度検出システム | |
JP4209010B2 (ja) | クロック最適化装置 | |
JP3112808B2 (ja) | Asicエミュレーション方法および装置 | |
JPH0581368A (ja) | スキヤンパスにおける双方向端子のモード検証方法 | |
JPH11282885A (ja) | 遅延解析システム | |
JPH0721227A (ja) | 非同期論理回路の論理合成方法 | |
JPH09190461A (ja) | 多相クロック入力論理回路検証用シミュレータ |