JP2835567B2 - 対象の動作を時系列的に検証するシミュレータのためのバックトラッキング方式及びバックトラッキング方法 - Google Patents
対象の動作を時系列的に検証するシミュレータのためのバックトラッキング方式及びバックトラッキング方法Info
- Publication number
- JP2835567B2 JP2835567B2 JP29284793A JP29284793A JP2835567B2 JP 2835567 B2 JP2835567 B2 JP 2835567B2 JP 29284793 A JP29284793 A JP 29284793A JP 29284793 A JP29284793 A JP 29284793A JP 2835567 B2 JP2835567 B2 JP 2835567B2
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- time
- buffer memory
- memory means
- sampling
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 71
- 238000004088 simulation Methods 0.000 claims description 142
- 239000000872 buffer Substances 0.000 claims description 127
- 238000005070 sampling Methods 0.000 claims description 73
- 230000015654 memory Effects 0.000 claims description 50
- 241000282376 Panthera tigris Species 0.000 claims 1
- 238000012795 verification Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 3
- 238000012938 design process Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 239000012536 storage buffer Substances 0.000 description 2
- 239000007853 buffer solution Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Description
対象の動作を時系列的に検証するシミュレーションにお
いて、シミュレーションの状態を過去の任意の時点の状
態に戻すためのバックトラッキング方式に関する。
イプのシミュレータは、例えば論理回路設計の際に用い
る電気系論理シミュレータや、ソフトウェアのデバッキ
ング・ツール等の種々の用途に広く実用されている。
の動作を1クロックづつ進ませつつ、これを検証して行
くものである。このシミュレーションの過程では、対象
の動作に問題が発見された時、その問題が発生した時点
や原因を求明するために、対象の動作を過去の任意の時
点まで戻して再度動作を検証してみたいという要求があ
る。
レーションにおいて大変に便利な機能であるが、従来、
この機能を備えたシミュレータを少なくとも出願人及び
発明者は知らない。
能を従来のシミュレータが持たない主たる理由は、記憶
すべき情報量の膨大さにある。
は、過去の各クロックにおける対象の状態や動作を全て
保存しておく必要がある。しかし、例えばイベントドリ
ブン方式の電気系論理シミュレータでは、対象たる論理
回路内で動作する個々の論理素子の入出力を信号の流れ
に従って順次解決して行くという作業を各クロック毎に
行うが、対象回路は一般に複雑で非常に多数の論理素子
を含んでいるため、1クロック分の情報でさえ、これを
全て記録しておくことは現状のハード資源の性能上極め
て困難である。しかも、シミュレーションは何千、何万
というクロック数に亘って行われるから、バックトラッ
キングを行うことは全く無理である。
動作を動作記述言語で記述したものを検証するタイプの
シミュレータでは、イベントドリブン方式のシミュレー
タに比べて、クロック当りの情報量は大幅に少なくなく
なるので、これを記録しておくことは十分に可能であ
る。しかし、そうであっても、シミュレートする時間区
間の全範囲に亘る何千、何万クロック分の情報を全て記
録しておくことはやはり不可能である。
はバックトラッキング機能を備えていない。そのため、
過去の時刻を再現したい場合には、最初からシミュレー
ションをやり直さなければならない。
系列的に検証するシミュレータにおいて、シミュレート
する時間区間の全クロック数よりも大幅に少ない個数の
クロック分の情報を記録しておくだけで、シミュレーシ
ョンのバックトラッキングができるようにすることにあ
る。
ング方式は、各々一つのシミュレーションイメージが保
存できる複数のバッファメモリ手段と、シミュレーショ
ンの実行過程において、サンプリング時刻毎に、現時刻
のシミュレーションイメージを、前記所定個数のバッフ
ァメモリ手段の中から選択したの1個に保存するサンプ
リング手段と、バックトラッキングポイント時刻の指定
を受けて、前記バッファメモリ手段に保存されているシ
ミュレーションイメージの中から、前記バックトラッキ
ングポイント時刻に最も近く且つ以前であるサンプリン
グ時刻を持つシミュレーションイメージを読み出し、こ
の読み出したシミュレーションイメージを起点にして、
前記バックトラッキングポイント時刻に向かってシミュ
レーションを実行するバックトラッキング手段とを備え
る。本発明の一つの観点に従えば、サンプリング手段
は、現時刻のシミュレーションイメージを保存するバッ
ファメモリ手段として、最古のシミュレーションイメー
ジが保存されているバッファメモリ手段を選択する。本
発明の別の観点に従えば、サンプリング手段は、保存さ
れているシミュレーションイメージが古いほどそのサン
プリング時刻の間隔が長くなるように、現時刻のシミュ
レーションイメージを保存するためのバッファメモリ手
段を選択する。
時間間隔おきのサンプリング時刻毎に、その時刻のシミ
ュレーションの結果(シミュレーションイメージ)がバ
ッファメモリ手段に保存される。全てのバッファメモリ
手段が埋まると、それ以降のサンプリング時刻では、1
個のバッファメモリ手段が選択され、その内容が消去さ
れて、そこに現時刻のシミュレーションイメージが書き
込まれていく。
始から現時刻までの間の何ヶ所かのサンプリング時刻で
のシミュレーションイメージが、バッファメモリ手段に
保存されることになる。この状態でバックトラッキング
を行なう場合には、戻したい時刻(バックトラッキング
ポイント時刻)に最も近く且つそれより前のサンプリン
グ時刻を持つシミュレーションイメージがバッファメモ
リ手段から読み出され、これを起点としてバックトラッ
キングポイント時刻へ向かってシミュレーションが再実
行される。
れた対象動作のシミュレーションのバックトラッキング
に好適である。
は最新の複数時刻のイメージであることが望ましい。或
いは、保存されているシミュレーションイメージ間の時
間間隔は、古いものほど長く、新しいものほど短くなっ
ていることが望ましい。実際にバックトラッキングが所
望される場合、戻したい時刻は現在時刻に近い時刻であ
ることが多く、古い時刻に戻したい場合は少ないからで
ある。このような望ましい保存形態を実現するために、
好適な実施例では、シミュレーションイメージを書き込
むバッファメモリ手段の選択方法に工夫を持たせてい
る。
明する。
の一実施例が適用される電気系論理シミュレータを含ん
だLSI設計システムの機能の概略を示す。
スファイル1、論理検証部3及び論理合成部5から構成
される。
LSIの動作を動作記述言語(SFL)で記述したもの
である。
理設計の作業に利用されるもので、SFL構文解析トラ
ンスレータ31及び動作シミュレータ33を含む。SF
L構文解析トランスレータ31は、SFLソースファイ
ル1を読み込み、対象動作をSFLで正しく表現してい
るかをチェックし、エラーがあればこれを表示し、エラ
ーがなければソースファイル1を動作シミュレータ33
に渡す。
イルによって表現された動作が正しいか否かを1クロッ
クづつシミュレートして検証する。ここでは、シミュレ
ーションのホルト、リスタート、及び本発明に従うバッ
クトラックを行なうことが可能である。この検証の結
果、対象動作に問題が発見されれば、ユーザによって設
計修正が行われ、再び同様な処理が行なわれる。この繰
返しにより、最終的なソースファイル1が構築されて、
論理設計が完了する。
理合成の作業を行なうもので、ロジックシンセサイザ5
1と実部品回路オプチマイザ53とテスト合成部55を
含む。ロジックシンセサイザ51は、最終的なソースフ
ァイル1に基づき論理回路を生成する。実部品回路オプ
チマイザ53は、生成された論理回路に対する実部品の
マッピング及び回路の最適化を行なう。テスト合成部5
5は、テスト回路合成及びテストパターンの自動生成を
行なう。尚、論理合成部5は、本発明と直接の関連はな
いので、これ以上の説明は省略する。
シミュレータ33において具現化されている。
SFLソースファイル1からシミュレーションイメージ
を構築する。ここで、「シミュレーションイメージ」と
は、本実施例では、SFLソースファイル1が表現して
いる階層構造を、そのままツリー構造として内部展開し
たものを意味する。
ンイメージ」を、より一般的な意味として、「シミュレ
ーションにより得られる或時刻における対象の構成、動
作、状態等の事項に関する情報であって、バックトラッ
キングを行うために保存しておく必要のある事項を少な
くとも含む情報」という意味でも用いる。
ンイメージの一つの構成単位であるモジュールの一例を
示したものである。
対する又はこれを利用した動作が記述される。即ち、一
つのモジュールには、ツリー構造の要素として、具体的
なハードウェア部品(機能回路、レジスタ、端子、メモ
リ等)と、その動作を表現するための概念要素(ステー
ジ、タスク、状態、ステートメント等)とが含まれる。
又、より下層のモジュールであるサブモジュールが含ま
れることもある。
刻(シミュレーション時刻)において、各々値を持つ。
シミュレーションは、各シミュレーション時刻における
上記の様なツリー構造と各要素の値を確定する作業であ
る。従って、本実施例での「シミュレーションイメー
ジ」とは、換言すれば、個々のシミュレーション時刻に
おける上記の様なツリー構造とその各要素の値を意味す
る。そして、後述する「シミュレーションイメージの保
存」とは、ある特定のシミュレーション時刻におけるシ
ミュレーションイメージを記憶装置に保存することを意
味する。
造と各要素の持つ具体的な意味は、本発明の本質を左右
するものではないため、その説明は省略する。
ミュレーションの全体の流れを示す。
前準備を行なう(フェイズ100)。前準備には、SF
Lソースファイル1の読み込み、シミュレーション時刻
=0におけるシミュレーションイメージ(=オリジナル
・シミュレーションイメージ)の構築等が含まれる。
が設定するフェイズに入る(フェイズ200)。ここ
で、サンプリングとは、バックトラッキングを可能とす
るために、所定のシミュレーション時刻間隔(=サンプ
リング間隔)で、シミュレーションイメージを保存する
ことをいう。設定する条件は、サンプリング保存数(=
保存できるバッファの数)、サンプリング間隔、サンプ
リング方法(詳細は後述する)等である。尚、これらの
条件をユーザが設定しない場合は、予め決められている
デフォルト値が採用される。
ジを保存用バッファの一つに保存する(フェイズ30
0)。ここで、保存用バッファの物理的資源としては半
導体メモリ又はハードディスクが適当である。保存用バ
ッファは、ステップ200で設定されたサンプリング保
存数だけ用意される。
示するまでシミュレーションが続けられる(フェイズ4
00)。
クロックづつ更新しつつ、各時刻におけるシミュレーシ
ョンイメージを確定する(フェイズ500)。
時刻を前に戻したい(=バックトラッキング)とユーザ
が欲した場合は、ユーザからの戻したい時刻(=バック
トラッキングポイント時刻)の入力により、当該バック
トラッキングポイント時刻までシミュレーションが戻さ
れる(フェイズ600,700)。
0)をシミュレーション時刻の更新に注目して詳細に示
したものである。
ションの終了時刻(=シミュレーション停止時刻)を設
定した上で、シミュレーションの開始を指示する(ステ
ップ510)。
ン時刻を1クロック更新し、そしてシミュレーションイ
メージを更新する(ステップ520)。
が、図3のステップ200で設定されたサンプリング間
隔毎の時刻(=サンプリング時刻)と一致するか否かを
チェックし、一致すれば、当該時刻におけるシミュレー
ションイメージを保存用バッファの一つに保存する(ス
テップ530,540)。ここで、どのバッファに保存
するかを決める方法(=サンプリング方法)について2
種類の方法があり、図3のステップ200で一方の方法
が選択されている。
レーション停止時刻まで続けられる(ステップ55
0)。
ば、シミュレータ33は時刻更新を停止しユーザからの
コマンド待ち状態となる。そして、ユーザからコマンド
が入ると、コマンドにより要求された要素の値をディス
プレイ表示する等の検証処理を行なう(ステップ56
0)。
シミュレーションイメージの保存の2種類の異なる方式
を示す。この2種類の方式のどちらを選択するかについ
ては、図3のフェイズ200でユーザが決定する。
全て既に埋っている状態で、次にどれか1つのバッファ
内の古いイメージを消去して新しいイメージを保存する
際の方法を示したものである。従って、どちらの方式に
おいても、まだ空きのバッファが残っている時(=検証
作業が始って、まだサンプリング保存数まで保存回数が
至っていない時)は、空きバッファに順番にイメージを
保存して行くことになる。
て動作させる方式(以下、リングバッファ方式という)
である。図5において、まず、各バッファに保存されて
いるイメージのシミュレーション時刻に着目し、(時刻
0のオリジナルイメージを除いて)一番古いイメージを
格納しているバッファのポインタを、保存対象ポインタ
に設定する(ステップ541)。
ァに、現時刻のシミュレーションイメージを保存する
(ステップ542)。
新の、サンプリング間隔だけ互いに隔たったサンプリン
グ保存数分のシミュレーションイメージが、保存される
ことになる。
ほど長い時間間隔で、新しいイメージほど短い時間間隔
で保存されるようにしたもので、保存されたイメージの
時間間隔は現在から過去に向かって幾何級数的に増大し
ていく(以下、幾何級数方式という)。
バッファに着目し、それより2個後のバッファのポイン
タを、保存対象ポインタの候補とする(ステップ54
3)。ここで、最後に保存を行ったバッファより「N個
後(この実施例では、2個後)のバッファ」とは、「最
後の保存が行われる前の状態下で、保存されているイメ
ージのサンプリング時刻の古い順に全バッファをソート
した場合、そのバッファ列内において前記最後に保存を
行ったバッファよりもN個後に位置するバッファ」とい
う意味である。
保存されているシミュレーションイメージが、最後に保
存したイメージであるか否かをチェックし(ステップ5
44)、イエスの場合には、先頭のポインタを保存対象
ポインタに設定する(ステップ545)。ここで、「先
頭のポインタ」とは、「(時刻0のオリジナルイメージ
を除いて)一番古いイメージを格納しているバッファの
ポインタ」を意味する。
されているシミュレーションイメージが、最後に保存し
たイメージでない場合は、候補ポインタがそのまま保存
対象ポインタとなる(ステップ546)。
ァに、現時刻のシミュレーションイメージを保存する
(ステップ547)。
子を示すものである。図7において、横配列された四角
枠の列はサンプリング時刻の時系列を示し、左端の四角
枠はシミュレーション開始後最初のサンプリング時刻で
あり、右に行くほど時刻は新しくなる。例えば、サンプ
リング間隔が50クロックだとすると、一番左の四角枠
は50クロック目を意味し、次の四角枠は100クロッ
ク目を意味する。各四角枠内の丸数字(、、…)
は、各サンプリング時刻のイメージを保存したバッファ
の番号を示す(この例では、サンプリング保存数=
8)。従って、丸数字が書かれた四角枠は、その時刻の
イメージがその数字の番号のバッファに保存されている
ことを意味する。一方、黒丸が書かれた四角枠は、その
時刻のイメージが既に消去されていることを意味する。
また、空白の四角枠はそのサンプリング時刻がまだ到来
していないことを意味する。
ァが全て埋るまで、イメージが順番に保存される。バッ
ファが全て埋ると、図7(2)に示すように、まず、一
番古いイメージ(この場合)を消去し、現時刻のイメ
ージをバッファに保存する。
示すように、最後に保存したバッファより2個後のバ
ッファのイメージを消去して、このバッファに現時
刻のイメージを保存する。
すように繰り返される。その結果、現時点に近い時間領
域については、各サンプリング時刻のイメージが保存さ
れ、それより古い時間領域については、1バッファ置き
に保存イメージが間引かれて、2サンプリング間隔毎の
イメージだけがバッファに残される。
ファ置きの間引きが最後のバッファまで追い付くと、再
び、一番古いイメージ(この場合)を消去して、最新
のイメージをバッファに保存する。
保存したバッファより2個後のバッファを消去し、
これに最新のイメージを保存する。
示すように繰り返される。その結果、最新の時間区間に
ついては、各サンプリング時刻のイメージが保存され、
それより少し古い時間区間については、2サンプリング
間隔毎のイメージが残され、更にそれより古い時間区間
については、2サンプリング間隔毎のイメージから1バ
ッファ置きにイメージが間引かれて、4サンプリング間
隔毎のイメージだけが残される。
るほど幾何級数的に増大するサンプリング時間間隔をも
った8個のシミュレーションイメージが、8個のバッフ
ァに常に保存されることになる。
ラッキング処理の詳細を示す。この処理では、保存した
シミュレーションイメージを用いて、自動的に、ユーザ
の指定した過去のシミュレーション時刻までシミュレー
ションが戻される。
ラッキングポイント時刻:BTP)を設定する(ステッ
プ710)。
メージの内、BTPより以前で且つ最も新しい(=BT
Pに最も近い)サンプリング時刻を持つイメージをバッ
ファから読み出し、シミュレータ33にロードすること
により、当該サンプリング時刻での状態を再現する(ス
テップ720)。
で自動的にシミュレーション時刻を更新しつつ、シミュ
レーションを実行する(ステップ730)。
達したなら、当該時刻でのシミュレーションイメージを
ディスプレイに表示する(ステップ740)。
ックトラッキングの実際のイメージを示したものであ
る。
ーション時刻が18クロック目だとした時、1クロック
前の17クロック目をBTPとして指定した場合を想定
する。この場合、最後に保存したイメージが11クロッ
ク目のイメージだとした場合、図9(B)に示すよう
に、この11クロック目のイメージをシミュレータ33
にロードして、ここからBTP17クロック目までシミ
ュレーションを実行する。
ュレーションイメージからシミュレーションを開始して
BTPに至るようにしているため、従来の様に最初から
シミュレートし直す場合に比較して、短時間でBTPに
至ることが可能である。
メージの再ロードの詳細を示す。
メージの内、最も新しいイメージの時刻を比較対象時刻
とする(ステップ721)。
たBTPとを比較し、比較対象時刻がBTPよりも古け
れば、当該比較対象時刻のシミュレーションイメージが
保存されているバッファのポインタを、再ロード対象ポ
インタとする(ステップ726)。
ば、保存されているイメージの内、当該比較対象時刻よ
り一つ古い時刻のイメージの時刻を、新たな比較対象時
刻として設定し、この新たな比較対象時刻をBTPとの
比較の再度行なう(ステップ724,722)。
の中からBTPより古い時刻のイメージを新しいものか
ら順に探していく。そして、そのようなイメージが発見
されれば、そのイメージのバッファのポインタを再ロー
ド対象ポインタに設定する。しかし、その探していく過
程で、これ以上古い比較対象時刻が設定できなくなった
場合には(ステップ723)、時刻0のオリジナルイメ
ージが保存されているバッファのポインタを、再ロード
対象ポインタに設定する(ステップ725)。
れたなら、このポインタが指すバッファのイメージをシ
ミュレータ33にロードする(ステップ727)。
た。この実施例では、サンプリングの方式の一つとして
幾何級数方式を採用している。この方式は、既に説明し
たように、シミュレーション時刻が新しくなるほど密な
時間間隔でイメージが保存され、古くなるほど疎な時間
間隔でイメージが保存される。このことは、実際にBT
Pが指定される時刻領域は現時刻に近い新しい時刻領域
であることが多く、古い時刻がBTPとして指定される
ことは少ない、という実用上の事情に対応しており、こ
れにより、バックトラッキングの効率化が期待できる。
様で実施することができる。例えば、サンプリング方式
として、上述の幾何級数方式に類似した別の方式を採用
することもできる。
に古い順にソートしたバッファ列の中から一個置きにイ
メージを間引いていったが、n個置きに間引くようにし
てもよい。例えば、n=2(つまり、最後に保存したバ
ッファの3個後のバッファを選択する方式)とした場合
のサンプリングの様子を図11に示す。図11から分る
ように、n=2の場合も時刻が古くなる程保存イメージ
の時間間隔が長くなり、上述した幾何級数方式と同様の
効果が得られる。しかし、図7と比較して分るように、
n=2の場合は、時間間隔の疎密の変化が単調でなく、
且つ、古い時間領域と新しい領域との間の疎密の差が顕
著すぎる感があるので、n=1の方が優れていると考え
られる。
果を得るためのサンプリング方式をより一般的に表現す
れば、次のように表現できる。即ち、サンプリング時刻
が来たとき、この時のシミュレーションイメージを保存
するためのバッファを選択する際、或1つのバッファが
次の条件(A)及び(B)、(A) 古い順にソートしたバッフ
ァ列の中で、当該或1つのバッファの1個前のバッファ
と1個後のバッファとの間のサンプリング時間間隔が、
前記1個前のバッファとその更に1個前のバッファメモ
リ手段との間のサンプリング時間間隔より長くない、
(B) 同バッファ列の中で、前記1個前のバッファと前
記1個後のバッファとの間のサンプリング時間間隔が、
前記1個後のバッファとその更に1個後のバッファとの
間のサンプリング時間間隔より短くない、のうちの少な
くとも一方の条件を満たす場合に、当該或1つのバッフ
ァを選択する、という方式である。この方式の一つの典
型が上記幾何級数方式である。例えば、図7(11)の
場合を見てみると、選択されたバッファの1個前のバ
ッファと1個後のバッファとの間の時間間隔は、1
個前のバッファと更に1個前のバッファとの間の時
間間隔より長くはなく、且つ、1個後のバッファと更
に1個後のバッファとの間の時間間隔より短くない。
選択するサンプリング方式に属するものであれば、上記
幾何級数方式でなくても、時刻が古くなるほど保存イメ
ージの時間間隔が長くなるという性質が得られるので、
上記した幾何級数方式の利点と同様の利点が得られる。
は、上記実施例のように動作記述言語で記述された回路
動作のシミュレータへの適用に好適であるが、イベント
ドリブン方式のシミュレータに対しても、コンピュータ
の動作速度と記憶容量の問題が将来的に解決されれば十
分に適用可能であり、また、論理回路のシミュレータだ
けでなく他の対象のシミュレータに対しても、対象動作
を時系列的に検証して行くものであれば、適用すること
ができる。
離散的な幾つかのシミュレーション時刻のシミュレーシ
ョンイメージを保存しておき、バックトラッキングの際
には、戻したい時刻(BTP)よりも前で且つこれに最
も近い保存イメージをシミュレータにロードして、そこ
を起点にBTPまでシミュレートするようにしているた
め、制限された少ない個数のイメージを保存しておくだ
けで、効率的なバックトラッキングが可能である。
いイメージほど短くなるようなサンプリング方法を採用
した場合には、最も頻度の多い新しい時刻へのバックト
ラッキングが非常に短時間で行なえるので、バックトラ
ッキングの効率化が一層促進される。
タを備えたLSI設計システムの全体構成を示すブロッ
ク図。
ュレーションイメージの一例を示す図。。
ャート。
示したフローチャート。
リングバッファ方式で行なう場合の詳細動作を示すフロ
ーチャート。
幾何級数方式で行なう場合の詳細動作を示すフローチャ
ート。
図。
フローチャート。
ドの詳細動作を示すフローチャート。
るサンプリングの様子を示した図。
Claims (8)
- 【請求項1】 対象の動作を時系列的に検証するシミュ
レータのためのバックトラッキング方式において、 各々一つのシミュレーションイメージが保存できる複数
のバッファメモリ手段と、 シミュレーションの実行過程において、サンプリング時
刻毎に、現時刻のシミュレーションイメージを、前記複
数のバッファメモリ手段の中から選択した1個に保存す
るサンプリング手段と、 バックトラッキングポイント時刻の指定を受けて、前記
バッファメモリ手段に保存されているシミュレーション
イメージの中から、前記バックトラッキングポイント時
刻に最も近く且つ以前であるサンプリング時刻を持つシ
ミュレーションイメージを読み出し、この読み出したシ
ミュレーションイメージを起点にして、前記バックトラ
ッキングポイント時刻に向かってシミュレーションを実
行するバックトラッキング手段と、 を備え、 前記サンプリング手段が、前記現時刻のシミュレーショ
ンイメージを保存するためのバッファメモリ手段とし
て、最古のシミュレーションイメージが保存されている
バッファメモリ手段を選択する バックトラッキング方
式。 - 【請求項2】 対象の動作を時系列的に検証するシミュ
レータのためのバックトラッキング方式において、 各々一つのシミュレーションイメージが保存できる複数
のバッファメモリ手段と、 シミュレーションの実行過程において、サンプリング時
刻毎に、現時刻のシミュレーションイメージを、前記複
数のバッファメモリ手段の中から選択した1個に保存す
るサンプリング手段と、 バックトラッキングポイント時刻の指定を受けて、前記
バッファメモリ手段に保存されているシミュレーション
イメージの中から、前記バックトラッキングポイント時
刻に最も近く且つ以前であるサンプリング時刻を持つシ
ミュレーションイメージを読み出し、この読み出したシ
ミュレーションイメージを起点にして、 前記バックトラ
ッキングポイント時刻に向かってシミュレーションを実
行するバックトラッキング手段と、 を備え、 前記サンプリング手段が、保存されているシミュレーシ
ョンイメージが古いほど前記保存されているシミュレー
ションイメージ間のサンプリング時刻の間隔が長くなる
ように、前記現時刻のシミュレーションイメージを保存
するためのバッファメモリ手段を選択する バックトラッ
キング方式。 - 【請求項3】 請求項2記載の方式において、 前記サンプリング手段が、前記現時刻のシミュレーショ
ンイメージを保存するためのバッファメモリ手段とし
て、最後に保存が行われたバッファメモリ手段からN個
後のバッファメモリ手段を選択するバックトラッキング
方式。 - 【請求項4】 請求項3記載の方式において、 N=2であるバックトラッキング方式。
- 【請求項5】 請求項2記載の方式において、 前記サンプリング手段が、前記現時刻のシミュレーショ
ンイメージを保存するためのバッファメモリ手段とし
て、最後に保存が行われたバッファメモリ手段以外のバ
ッファメモリ手段を選択するバックトラッキング方式。 - 【請求項6】 請求項2記載の方式において、 前記サンプリング手段が、前記現時刻のシミュレーショ
ンイメージを保存するためのバッファメモリ手段を選択
する際、或1つのバッファメモリ手段が次の条件(A)
及び(B)、 (A)前記或1つのバッファメモリ手段の1個前のバッ
ファメモリ手段と1個後のバッファメモリ手段との間の
サンプリング時間間隔が、前記1個前のバッファメモリ
手段と更に1個前のバッファメモリ手段との間のサンプ
リング時間間隔より長くない、 (B)前記1個前のバッファメモリ手段と前記1個後の
バッファメモリ手段との間のサンプリング時間間隔が、
前記1個後のバッファメモリ手段と更に1個後のバッフ
ァメモリ手段との間のサンプリング時間間隔より短くな
い、 のうちの少なくとも一方の条件を満たす場合、前記或1
つのバッファメモリ手段を選択するバックトラッキング
方式。 - 【請求項7】 対象の動作を時系列的に検証するシミュ
レータのためのバックトラッキング方法において、 各々一つのシミュレーションイメージが保存できる複数
のバッファメモリ手段の中から1個を選択する選択過程
と、 シミュレーションの実行過程において、サンプリング時
刻毎に、現時刻のシミュレーションイメージを、前記選
択した1個のバッファメモリ手段に保存するサンプリン
グ過程と、 バックトラッキングポイント時刻の指定を受けて、前記
バッファメモリ手段に保存されているシミュレーション
イメージの中から、前記バックトラッキングポイント時
刻に最も近く且つ以前であるサンプリング時刻を持つシ
ミュレーションイメージを読み出し、この読み出したシ
ミュレーションイメージを起点にして、前記バックトラ
ッキングポイント時刻に向かってシミュレーションを実
行するバックトラッキング過程と、 を備え、 前記選択過程では、最古のシミュレーションイメージが
保存されているバッファメモリ手段を選択するバックト
ラッキング方法。 - 【請求項8】 対象の動作を時系列的に検証するシミュ
レータのためのバックトラッキング方法において、 各々一つのシミュレーションイメージが保存できる複数
のバッファメモリ手段の中から1個を選択する選択過程
と、 シミュレーションの実行過程において、サンプリング時
刻毎に、現時刻のシミュレーションイメージを、前記選
択した1個のバッファメモリ手段に保存するサンプリン
グ過程と、 バックトラッキングポイント時刻の指定を受けて、前記
バッファメモリ手段に保存されているシミュレーション
イメージの中から、前記バックトラッキングポイント時
刻に最も近く且つ以前であるサンプリング時刻を持つシ
ミュレーションイメージを読み出し、この読み出したシ
ミュレーションイメージを起点にして、前記バックトラ
ッキングポイント時刻に向かってシミュレーションを実
行するバ ックトラッキング過程と、 を備え、 前記選択過程では、保存されているシミュレーションイ
メージが古いほど前記保存されているシミュレーション
イメージ間のサンプリング時刻の間隔が長くなるよう
に、前記現時刻のシミュレーションイメージを保存する
ためのバッファメモリ手段を選択するバックトラッキン
グ方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29284793A JP2835567B2 (ja) | 1993-10-28 | 1993-10-28 | 対象の動作を時系列的に検証するシミュレータのためのバックトラッキング方式及びバックトラッキング方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29284793A JP2835567B2 (ja) | 1993-10-28 | 1993-10-28 | 対象の動作を時系列的に検証するシミュレータのためのバックトラッキング方式及びバックトラッキング方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07129540A JPH07129540A (ja) | 1995-05-19 |
JP2835567B2 true JP2835567B2 (ja) | 1998-12-14 |
Family
ID=17787140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29284793A Expired - Lifetime JP2835567B2 (ja) | 1993-10-28 | 1993-10-28 | 対象の動作を時系列的に検証するシミュレータのためのバックトラッキング方式及びバックトラッキング方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2835567B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007004400A (ja) * | 2005-06-22 | 2007-01-11 | Oki Data Corp | プログラム・デバッグ方法 |
JP5046081B2 (ja) * | 2006-07-19 | 2012-10-10 | 豊和工業株式会社 | 工程シミュレータ |
JP5288124B2 (ja) * | 2009-03-17 | 2013-09-11 | 日本電気株式会社 | 論理シミュレーションシステム、論理シミュレーション方法及び論理シミュレーションプログラム |
JP5444489B2 (ja) * | 2012-06-13 | 2014-03-19 | ファナック株式会社 | 数値制御装置のシミュレーション装置 |
-
1993
- 1993-10-28 JP JP29284793A patent/JP2835567B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH07129540A (ja) | 1995-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6339836B1 (en) | Automated design partitioning | |
US6289489B1 (en) | Method and apparatus for automatically cross-referencing graphical objects and HDL statements | |
US6321369B1 (en) | Interface for compiling project variations in electronic design environments | |
US7206967B1 (en) | Chip debugging using incremental recompilation and register insertion | |
US6678644B1 (en) | Integrated circuit models having associated timing exception information therewith for use with electronic design automation | |
US5615356A (en) | Method and apparatus for interactively displaying signal information during computer simulation of an electrical circuit | |
US5838949A (en) | System and method for execution-sequenced processing of electronic design simulation results | |
US6438731B1 (en) | Integrated circuit models having associated timing exception information therewith for use in circuit design optimizations | |
WO1990011569A1 (en) | Computer-aided engineering | |
JPH04303246A (ja) | データ処理システムにおける切貼りフィルタ | |
US5650946A (en) | Logic simulator which can maintain, store and use historical event records | |
US5912819A (en) | Method for designing an architectural system | |
EP1626359A2 (en) | Methods and systems for electronic device modelling | |
US20030172055A1 (en) | Array transformation in a behavioral synthesis tool. | |
JPH07249063A (ja) | 階層形チェックポイントを使用する論理シミュレータ | |
US20020053069A1 (en) | High-level synthesis method, high-level synthesis apparatus, method for producing logic circuit using the high-level synthesis method for logic circuit design, and recording medium | |
EP1850250A1 (en) | Method and system for renewing an index | |
US8321825B2 (en) | Method and system for synthesizing relative timing constraints on an integrated circuit design to facilitate timing verification | |
US6968428B2 (en) | Microprocessor cache design initialization | |
JP2835567B2 (ja) | 対象の動作を時系列的に検証するシミュレータのためのバックトラッキング方式及びバックトラッキング方法 | |
US6915248B1 (en) | Method and apparatus for transforming test stimulus | |
JPH08212106A (ja) | システム試験支援装置及びシステム試験支援方法 | |
JPH1040316A (ja) | 図式のテスト支援装置及びテスト支援方法 | |
JPH1010196A (ja) | 論理エミュレーション装置 | |
JPH0458070B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071009 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081009 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091009 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101009 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111009 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121009 Year of fee payment: 14 |