JP2006331212A - 論理シミュレーション方法及びその装置 - Google Patents
論理シミュレーション方法及びその装置 Download PDFInfo
- Publication number
- JP2006331212A JP2006331212A JP2005156019A JP2005156019A JP2006331212A JP 2006331212 A JP2006331212 A JP 2006331212A JP 2005156019 A JP2005156019 A JP 2005156019A JP 2005156019 A JP2005156019 A JP 2005156019A JP 2006331212 A JP2006331212 A JP 2006331212A
- Authority
- JP
- Japan
- Prior art keywords
- node
- value
- logic
- logic simulation
- indefinite
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【課題】 論理シミュレーションにおいて不定値が及ぼす悪影響を緩和する。
【解決手段】 1つの論理回路を2つの異なるレベルにて記述した高位レベル回路20中のノードOと低位レベル回路21中のノードFとの対応を決定し、論理シミュレーションにおいてノードOの期待値が“1”であり、ノードFが不定値(X)であることから、期待値エラーノード22の発生が検知されると、ノードFの不定値(X)の原因となる不定値ノードCに“0”と“1”を代入して、それぞれ論理シミュレーションを実施し、いずれの場合もノードFが“1”という同一の値を持つことを確認したうえ、期待値エラーノード(不定値ノード)22の値を固定値“1”に書き換える。これにより、ノードOとノードFとの間の期待値エラーが解消し、論理シミュレーションの継続実行が可能になる。
【選択図】 図7
【解決手段】 1つの論理回路を2つの異なるレベルにて記述した高位レベル回路20中のノードOと低位レベル回路21中のノードFとの対応を決定し、論理シミュレーションにおいてノードOの期待値が“1”であり、ノードFが不定値(X)であることから、期待値エラーノード22の発生が検知されると、ノードFの不定値(X)の原因となる不定値ノードCに“0”と“1”を代入して、それぞれ論理シミュレーションを実施し、いずれの場合もノードFが“1”という同一の値を持つことを確認したうえ、期待値エラーノード(不定値ノード)22の値を固定値“1”に書き換える。これにより、ノードOとノードFとの間の期待値エラーが解消し、論理シミュレーションの継続実行が可能になる。
【選択図】 図7
Description
本発明は、論理回路の動作を検証する論理シミュレーション方法及びその装置に関するものである。
従来の論理シミュレーションでは、論理シミュレーション実行中にあるノードに論理動作上の不定値が発生すると、このノードの論理値を入力とする論理素子も不定値を出力してしまうため、論理シミュレーションの続行が不可能となり、論理シミュレーションを停止しなければならないという問題があった。また、入力信号パターンを変更して再度論理シミュレーションを実行し直すことが必要で、論理シミュレーションの実行時間が増加するという問題もあった。
そこで、ある従来技術によれば、論理シミュレーション実行中に不定値の発生を検出した場合、論理シミュレーション結果が期待値に合致するように不定値検出ノードを論理値“0”(L:Low)又は論理値“1”(H:High)に固定するようにしていた(特許文献1参照)。
特開平5−46696号公報
1つの論理回路を2つの異なるレベルにて記述した高位レベル回路と低位レベル回路とにおいて、これらが同一の機能を有する回路であるにもかかわらず、不定値の影響で動作が異なるという問題が発生することがある。例えば、高位レベル回路で固定値“1”を持つノードに対応する低位レベル回路のノードが不定値となることがある。
本発明の目的は、論理シミュレーションにおいて不定値が及ぼす悪影響を緩和することにある。
上記課題を解決するため、本発明の第1の論理シミュレーション方法は、論理回路の論理シミュレーションにおいて、前記論理回路中の記憶素子又は出力端子にて不定値を持つ着目ノードを検出する第1の工程と、前記着目ノードの論理を決定する回路要素からなり、かつ前記論理回路中の記憶素子又は入力端子を入力とするコーン部にて、当該コーン部中の全ノードからなるノード集合を検出する第2の工程と、前記ノード集合の中で不定値を持つノードに対して0と1の全ての組み合わせの値を代入して論理シミュレーションを実施する第3の工程と、前記着目ノードの値が前記全ての組み合わせの値に対して同一の値となる場合には、当該同一の値を前記着目ノードの不定値に代えて当該着目ノードの期待値とする第4の工程とを備えることとしたものである。
また、本発明の第2の論理シミュレーション方法は、論理回路の論理シミュレーションにおいて、前記論理回路を2つの異なるレベルにて記述した高位レベル回路と低位レベル回路との各々に含まれる記憶素子又は出力端子の対応を決定する第1の工程と、前記第1の工程によって対応付けられた前記高位レベル回路の記憶素子又は出力端子の期待値が固定値であり、かつ前記低位レベル回路の記憶素子又は出力端子の期待値が不定値である着目ノードを検出する第2の工程と、前記低位レベル回路にて前記着目ノードの論理を決定する回路要素からなり、かつ前記低位レベル回路中の記憶素子又は入力端子を入力とするコーン部にて、当該コーン部中の全ノードからなるノード集合を検出する第3の工程と、前記ノード集合の中で不定値を持つノードに対して0と1の全ての組み合わせの値を代入して論理シミュレーションを実施する第4の工程と、前記低位レベル回路にて前記着目ノードの値が前記全ての組み合わせの値に対して同一の値となる場合には、当該同一の値を前記低位レベル回路における前記着目ノードの不定値に代えて当該着目ノードの期待値とする第5の工程とを備えることとしたものである。
本発明によれば、論理シミュレーションにおいて不定値が及ぼす悪影響が緩和されて、論理シミュレーションの継続した実行が保証でき、シミュレーション時間を削減することができる効果がある。
また、高位レベル回路と低位レベル回路との間での不定値が原因の期待値エラーを回避することができ、論理シミュレーション時間の削減と高品質な低位レベル回路を実現できる効果がある。
図1は、本発明に係る論理シミュレーション装置のハードウェア構成例を示すブロックである。図1において、27はキーボードであり、文字キー、数字キー、機能指示キー等を備えていて各種キー入力を行う。28はマウスであり、マウスカーソルの示す位置データを入力する。これらキーボード27及びマウス28等の入力装置によって、入力された論理回路の論理シミュレーションをするためのテストパターンを作成する際の指示、論理シミュレーション実行の指示、論理シミュレーション結果を比較検証する際の指示等の入力を行う。29は処理装置であり、CPU、メモリ(ROM及びRAM)等からなるマイクロコンピュータであって、この装置全体の制御を司るとともに、論理回路を論理シミュレーションするための論理演算の処理、論理シミュレーション結果を記憶装置30にファイル形式で記憶させる処理、記憶装置30に記憶されている論理シミュレーション結果を内部メモリに読み込む処理、論理シミュレーション結果を比較検証する際の処理、論理シミュレーション結果や比較検証の結果等を表示装置31に表示させるための処理等を行う。記憶装置30は、HDD(ハードディスク装置)等であって、論理回路や、論理回路の論理シミュレーション結果等を記憶する。表示装置31は、CRT、LCD等のディスプレイ装置であって、論理シミュレーション結果や比較検証の結果及び各種メッセージ等を表示する。
さて、論理シミュレーションは、論理積(AND)、論理和(OR)、排他的論理和(Ex−OR)、マルチプレクサ(MUX)等の真理値表をもとに実行される。図2(a)にAND素子、図2(b)にOR素子、図2(c)にEx−OR素子、図2(d)にMUX素子のそれぞれ真理値表を示す。これらの図中の「X」は不定値を表す。
《第1の実施形態》
図3は、本発明を適用する第1の回路例の模式図である。図3において、17は論理シミュレーション中のあるステップで不定値(X)が検出されたノード(着目ノード)である。18は、不定値検出ノード17の論理を決定するコーン部である。コーン部18の中で、ノードC、D、E、F、H、Kが不定値(X)を持つノードである。ノードA、Bは固定値“1”である。
図3は、本発明を適用する第1の回路例の模式図である。図3において、17は論理シミュレーション中のあるステップで不定値(X)が検出されたノード(着目ノード)である。18は、不定値検出ノード17の論理を決定するコーン部である。コーン部18の中で、ノードC、D、E、F、H、Kが不定値(X)を持つノードである。ノードA、Bは固定値“1”である。
さて、図2(d)に示したMUXでは、S端子に不定値(X)が入力されても、入力端子A及びBに“1”が入力されていれば、出力端子Yは“1”となる。しかし、図3中のANDとORとインバータとで構成されたMUX回路は、図2(d)のMUXと同じ機能を有するが、ノードCに不定値(X)が入力された場合は、ノードA及びBに“1”が入力されている場合でも、ノードFは不定値(X)となる。このようにあるノードに不定値(X)が発生すると、このノードの論理値を入力とする論理素子も不定値(X)を出力してしまうため、論理シミュレーションが暴走してしまい続行不可能となってしまう。
そこで、本発明の第1の実施形態によれば、図3においてノードFの不定値(X)の原因となる不定値ノードCに“0”と“1”を代入して、それぞれ論理シミュレーションを実施し、いずれの場合もノードFが“1”という同一の値を持つことを確認したうえ、不定値検出ノード17の値を固定値“1”に書き換えることとする。
図4は、このような処理を可能にするための、本発明の第1の実施形態に係る論理シミュレーション方法のフローチャートである。図4において、1は論理回路図及び入力信号パターンを入力する工程であり、2は工程1で入力された情報をもとに論理シミュレーションのステップ実行を行う工程である。ここでステップ実行とは、1サイクル分の論理シミュレーションを行うことを意味する。5は記憶素子(FF)又は出力端子において不定値(X)が発生したノードの集合Ψ1を検出する工程であり、6は不定値検出ノード集合Ψ1に属する各ノードの論理を決定するための、コーン部18の入力となる記憶素子又は入力端子までのノードの集合Φ1を検出する工程である。12は工程6により検出されたノード集合Φ1の中で、不定値(X)の発生原因となるノード集合をバックトレースにより検出する工程であり、8は工程12で検出されたノード集合に対して、0と1の全ての組み合わせの値を代入して論理シミュレーションをする工程である。9は、不定値検出ノード集合Ψ1に属するノードの値が前記全ての組み合わせの値に対して同一の値であるかを判定する工程である。32は、不定値検出ノード17の値を合致した期待値に書き換える工程である。3は全てのイベントが完了したかどうかを判定し、論理シミュレーションを終了する工程であり、4は論理シミュレーション結果及びメッセージを出力する工程である。
まず、図3の論理回路図及び論理回路図に入力する信号パターンが入力される(工程1)。次に、入力された論理回路図及び論理回路図に入力する信号パターンを用いて、論理シミュレーションのステップ実行が行われる(工程2)。ステップ実行が完了すると、記憶素子又は出力端子において不定値(X)が発生したかどうかを検出する工程5に進む。ここで不定値(X)が検出されない場合は、全てのイベントが完了したかどうかの判定を行う工程3に進む。全てのイベントが完了していない場合には、工程2に戻り、再度論理シミュレーションのステップ実行(工程2)を行う。工程5において不定値(X)が検出されない場合は、以下工程2→5→3→2と繰り返し、全てのイベントが完了した時点で、工程3から工程4に進み、論理シミュレーションの結果及びメッセージを出力し、論理シミュレーションを終了する。
ある繰り返しサイクル中の工程5において、図3に示したようにノード17に不定値(X)が検出されると、この不定値検出ノード17の論理を決定するコーン部18のノード集合Φ1(ノードA、B、C、D、E、F、G、H、I、J、K)を検出する工程6に進む。このとき、前述のとおりノードC、D、E、F、H、Kは不定値(X)であり、ノードA、Bは固定値“1”であったとする。工程6が完了し、ノード集合Φ1が検出されると、ノード集合Φ1の中で不定値検出ノード17の不定値(X)の発生原因となるノード集合をバックトレースにより検出する工程12に進む。ここで、ノード17の不定値(X)の発生原因となるノード集合のバックトレースによる検出は、不定値(X)を持つノードを駆動する論理素子の入力端子の中で不定値(X)を持つノードを検出する工程を繰り返し、ノード17の不定値(X)の発生原因となる論理素子、又はコーン部18の入力となる記憶素子又は入力端子を特定することにより行う。具体的には、図3の不定値(X)を持つノードFを駆動する論理素子の入力であるノードD、E(ノードD、Eは不定値)を検出し、これらノードD、Eを駆動する論理素子の入力であるノードA、B、Cの中で不定値(X)であるノードCを特定する。
次に、工程12にて検出されたノード集合に対して、0と1の全ての組み合わせの値を代入して論理シミュレーションをする工程8に進む。具体的には、ノードCに“0”と“1”を代入して、それぞれ論理シミュレーションのステップ実行を行う。ここで、ノードA、Bは固定値“1”であるので、ノードCが“0”の場合は、ノードDは“0”、ノードEは“1”となり、ノードFは“1”となる。一方、ノードCが“1”の場合は、ノードDは“1”、ノードEは“0”となり、ノードFはこの場合も“1”となる。次に、不定値検出ノード集合Ψ1に属するノードの値が前記全ての組み合わせの値に対して同一の値であるかを判定する工程9に進む。本例では、工程8で全ての組み合わせの値に対してノードFが“1”という同一の値を持ったことから、工程32に進んで不定値検出ノード17の値を固定値“1”に書き換えた後、工程3に進む。もし、工程9でノードFが同一の値を持たないことが判明したら、工程32を飛ばして工程3に進む。
以上のように論理シミュレーションを実施することによって、不定値(X)が発生しても論理シミュレーションの継続実行ができ、論理シミュレーションの実行時間を削減することができる。
なお、図5の工程10に示すように、コーン部18の不定値ノードのうち、“0”と“1”を代入するノードを、当該コーン部18の入力となる記憶素子又は入力端子のノードに限定することとしてもよい。上記のように不定値の発生原因をバックトレースにより検出する工程12に比べて、工程10における検出アルゴリズムは簡単であるという利点がある。また、図6の工程11に示すように、コーン部18中の全ての不定値ノードに“0”と“1”を代入することとしてもよい。
《第2の実施形態》
図7は本発明を適用する第2の回路例の模式図であり、図8は図7中の高位レベル回路20のRTL(Register Transfer Level)記述を表す図である。図7において、高位レベル回路20は、図8のRTL記述を模式的に示したものである。21は、当該高位レベル回路20を論理合成することで得られる低位レベル回路(ゲートレベル・ネットリスト)である。高位レベル回路20中のMUXが、低位レベル回路21では図3に示したようなANDとORとインバータとで構成された回路に変換されている。22は、論理シミュレーション中のある工程で、高位レベル回路20の記憶素子又は出力端子の期待値が固定値(0又は1)である一方、低位レベル回路21の記憶素子又は出力端子の期待値が不定値(X)となってしまった期待値エラーノード(着目ノード)である。23は期待値エラーノード22の論理を決定する高位レベル回路20のコーン部であり、24は期待値エラーノード22の論理を決定する低位レベル回路21のコーン部である。高位レベル回路のコーン部23の中で、ノードN、Q、Yが不定値(X)を持つノードである。ノードL、M、Oは固定値“1”である。また低位レベル回路のコーン部24の中で、ノードC、D、E、F、H、Kが不定値(X)を持つノードである。ノードA、Bは固定値“1”である。
図7は本発明を適用する第2の回路例の模式図であり、図8は図7中の高位レベル回路20のRTL(Register Transfer Level)記述を表す図である。図7において、高位レベル回路20は、図8のRTL記述を模式的に示したものである。21は、当該高位レベル回路20を論理合成することで得られる低位レベル回路(ゲートレベル・ネットリスト)である。高位レベル回路20中のMUXが、低位レベル回路21では図3に示したようなANDとORとインバータとで構成された回路に変換されている。22は、論理シミュレーション中のある工程で、高位レベル回路20の記憶素子又は出力端子の期待値が固定値(0又は1)である一方、低位レベル回路21の記憶素子又は出力端子の期待値が不定値(X)となってしまった期待値エラーノード(着目ノード)である。23は期待値エラーノード22の論理を決定する高位レベル回路20のコーン部であり、24は期待値エラーノード22の論理を決定する低位レベル回路21のコーン部である。高位レベル回路のコーン部23の中で、ノードN、Q、Yが不定値(X)を持つノードである。ノードL、M、Oは固定値“1”である。また低位レベル回路のコーン部24の中で、ノードC、D、E、F、H、Kが不定値(X)を持つノードである。ノードA、Bは固定値“1”である。
さて、上記のように1つの論理回路を2つの異なるレベルにて記述した高位レベル回路20と低位レベル回路21とにおいて、これらが同一の機能を有する回路であるにもかかわらず、不定値(X)の影響で動作が異なるという問題が発生する。具体的には、RTLとネットリストで出力端子の期待値が異なるという問題が発生する。このようにRTLとネットリストで期待値エラーが発生した場合、不定値が発生しない入力パターンに変更するか、ネットリスト中のANDとORとインバータとで構成されたMUX回路を、図2(d)の機能を持つ1つの論理セルに修正する等、期待値エラーの発生を回避する必要があり、設計工数が増加する。また、一般的に図2(d)の機能を持つ1つの論理セルよりも、ANDとORとインバータとで構成されたMUX回路の方が高速であるので、前者に修正すると性能の劣化を招いてしまう。
そこで、本発明の第2の実施形態によれば、図7においてノードFの不定値(X)の原因となる不定値ノードCに“0”と“1”を代入して、それぞれ論理シミュレーションを実施し、いずれの場合もノードFが“1”という同一の値を持つことを確認したうえ、期待値エラーノード(不定値ノード)22の値を固定値“1”に書き換えることとする。これにより、ノードOとノードFとの間の期待値エラーが解消する。
図9は、このような処理を可能にするための、本発明の第2の実施形態に係る論理シミュレーション方法のフローチャートである。図9において、13は高位レベル回路図、低位レベル回路図及び入力信号パターンを入力する工程であり、14は工程13で入力された高位レベル回路20と低位レベル回路21とに含まれる記憶素子又は出力端子の対応を決定する工程である。15は、工程14によって対応付けられた高位レベル回路20の記憶素子又は出力端子の期待値と、低位レベル回路21の記憶素子又は出力端子の期待値とが一致しないノードの集合Ψ2を検出する工程である。16は、ノード集合Ψ2に属する各ノードの論理を決定するための、低位レベル回路のコーン部24の入力となる記憶素子又は入力端子までのノードの集合Φ2を検出する工程であり、12は工程16により検出されたノード集合Φ2の中で、不定値(X)の発生原因となるノード集合をバックトレースにより検出する工程である。他の工程2、3、4、8、9、32は図4と同様なので、説明を省略する。
まず、図7の高位レベル回路図、低位レベル回路図及び信号パターンが入力される(工程13)。次に、入力された高位レベル回路図と低位レベル回路図との記憶素子又は出力端子の対応が決定される(工程14)。次に、入力された高位レベル回路図、低位レベル回路図及び入力信号パターンを用いて、高位レベル回路20と低位レベル回路21とのそれぞれにおいて、論理シミュレーションのステップ実行が行われる(工程2)。ステップ実行が完了すると、高位レベル回路20の記憶素子又は出力端子の期待値と、低位レベル回路21の記憶素子又は出力端子の期待値とが一致しないノードを期待値エラーノード22として検出する工程15に進む。工程15で期待値エラーノードが検出されない場合は、全てのイベントが完了したかどうかの判定を行う工程3に進む。全てのイベントが完了していない場合には、工程2に戻り、再度論理シミュレーションのステップ実行(工程2)を行う。工程15において期待値エラーノードが検出されない場合は、以下工程2→15→3→2と繰り返し、全てのイベントが完了した時点で、工程3から工程4に進み、論理シミュレーションの結果及びメッセージを出力し、論理シミュレーションを終了する。
ある繰り返しサイクル中の工程15において、図7に示したように期待値エラーノード22が検出されたものとする。このとき、前述のとおり高位レベル回路20のノードN、Q、Yと、低位レベル回路21のノードC、D、E、F、H、Kとは不定値(X)であり、高位レベル回路20のL、M、Oと、低位レベル回路21のノードA、Bとは固定値“1”であったとする。なお、図2(d)から判るとおり、高位レベル回路20中のMUXでは、ノードNに不定値(X)が入力されても、ノードL及びMに“1”が入力されているのでノードOは“1”である。
期待値エラーノード22に低位レベル回路21で不定値(X)が検出されると、この期待値エラーノード22の論理を決定するコーン部24のノード集合Φ2(A、B、C、D、E、F、G、H、I、J、K)を検出する工程16に進む。工程16が完了し、ノード集合Φ2が検出されると、このノード集合Φ2の中で、期待値エラーノード22の不定値(X)の発生原因となるノード集合をバックトレースにより検出する工程12に進む。ここでのバックトレースによる検出方法は、第1の実施形態と同様である。具体的には、図7の不定値(X)を持つノードFを駆動する論理素子の入力であるノードD、E(ノードD、Eは不定値)を検出し、これらノードD、Eを駆動する論理素子の入力であるノードA、B、Cの中で不定値(X)であるノードCを特定するのである。
次に、工程12にて検出されたノード集合に対して、0と1の全ての組み合わせの値を代入して論理シミュレーションをする工程8に進む。具体的には、ノードCに“0”と“1”を代入して、それぞれ論理シミュレーションのステップ実行を行う。ここで、ノードA、Bは固定値“1”であるので、ノードCが“0”の場合は、ノードDは“0”、ノードEは“1”となり、ノードFは“1”となる。一方、ノードCが“1”の場合は、ノードDは“1”、ノードEは“0”となり、ノードFはこの場合も“1”となる。次に、期待値エラーノード集合Ψ2に属するノードの値が前記全ての組み合わせの値に対して同一の値であるかを判定する工程9に進む。本例では、工程8で全ての組み合わせの値に対してノードFが“1”という同一の値を持ったことから、工程32に進んで低位レベル回路21の期待値エラーノード(不定値ノード)22の値を固定値“1”に書き換えた後、工程3に進む。もし、工程9でノードFが同一の値を持たないことが判明したら、工程32を飛ばして工程3に進む。
なお、工程32における書き換えによりノード22における期待値エラーが解消したことを更に確認するようにしてもよい。つまり、高位レベル回路20における着目ノード22の固定の期待値と、工程32によって書き換えられた低位レベル回路21における着目ノード22の期待値とが合致することを確認するのである。図7の例では両期待値が“1”で合致しているので、エラーが解消している。
以上のように論理シミュレーションを実施することによって、不定値(X)が発生しても論理シミュレーションの継続実行ができると同時に、高位レベル回路20と低位レベル回路21との期待値エラーを回避することが可能となり、論理シミュレーションの実行時間を削減することができる。
なお、図10の工程10に示すように、低位レベル回路のコーン部24中の不定値ノードのうち、“0”と“1”を代入するノードを、当該コーン部24の入力となる記憶素子又は入力端子のノードに限定することとしてもよい。上記のように不定値の発生原因をバックトレースにより検出する工程12に比べて、工程10における検出アルゴリズムは簡単であるという利点がある。また、図11の工程11に示すように、低位レベル回路のコーン部24中の全ての不定値ノードに“0”と“1”を代入することとしてもよい。
以上説明してきたとおり、本発明に係る論理シミュレーション方法及びその装置は、入力パターンの変更や、低位レベル回路の修正を不必要とする効果を有し、半導体装置の短期間設計及び高性能化を実現する技術等として有用である。
17 不定値検出ノード(着目ノード)
18 コーン部
20 高位レベル回路
21 低位レベル回路
22 期待値エラーノード(着目ノード)
23 高位レベル回路のコーン部
24 低位レベル回路のコーン部
18 コーン部
20 高位レベル回路
21 低位レベル回路
22 期待値エラーノード(着目ノード)
23 高位レベル回路のコーン部
24 低位レベル回路のコーン部
Claims (11)
- 論理回路の論理シミュレーションにおいて、
前記論理回路中の記憶素子又は出力端子にて不定値を持つ着目ノードを検出する第1の工程と、
前記着目ノードの論理を決定する回路要素からなり、かつ前記論理回路中の記憶素子又は入力端子を入力とするコーン部にて、当該コーン部中の全ノードからなるノード集合を検出する第2の工程と、
前記ノード集合の中で不定値を持つノードに対して0と1の全ての組み合わせの値を代入して論理シミュレーションを実施する第3の工程と、
前記着目ノードの値が前記全ての組み合わせの値に対して同一の値となる場合には、当該同一の値を前記着目ノードの不定値に代えて当該着目ノードの期待値とする第4の工程とを備えたことを特徴とする論理シミュレーション方法。 - 請求項1記載の論理シミュレーション方法において、
前記第3の工程は、前記ノード集合の中で不定値を持つノードのうち前記着目ノードの不定値の発生原因となるノードをバックトレースにより特定し、当該特定したノードのみに対して0と1の全ての組み合わせの値を代入する工程を有することを特徴とする論理シミュレーション方法。 - 請求項1記載の論理シミュレーション方法において、
前記第3の工程は、前記ノード集合の中で不定値を持つノードのうち前記コーン部の入力となる記憶素子又は入力端子のノードのみに対して0と1の全ての組み合わせの値を代入する工程を有することを特徴とする論理シミュレーション方法。 - 請求項1記載の論理シミュレーション方法において、
前記第3の工程は、前記ノード集合の中で不定値を持つ全てのノードに対して0と1の全ての組み合わせの値を代入する工程を有することを特徴とする論理シミュレーション方法。 - 論理回路の論理シミュレーションにおいて、
前記論理回路を2つの異なるレベルにて記述した高位レベル回路と低位レベル回路との各々に含まれる記憶素子又は出力端子の対応を決定する第1の工程と、
前記第1の工程によって対応付けられた前記高位レベル回路の記憶素子又は出力端子の期待値が固定値であり、かつ前記低位レベル回路の記憶素子又は出力端子の期待値が不定値である着目ノードを検出する第2の工程と、
前記低位レベル回路にて前記着目ノードの論理を決定する回路要素からなり、かつ前記低位レベル回路中の記憶素子又は入力端子を入力とするコーン部にて、当該コーン部中の全ノードからなるノード集合を検出する第3の工程と、
前記ノード集合の中で不定値を持つノードに対して0と1の全ての組み合わせの値を代入して論理シミュレーションを実施する第4の工程と、
前記低位レベル回路にて前記着目ノードの値が前記全ての組み合わせの値に対して同一の値となる場合には、当該同一の値を前記低位レベル回路における前記着目ノードの不定値に代えて当該着目ノードの期待値とする第5の工程とを備えたことを特徴とする論理シミュレーション方法。 - 請求項5記載の論理シミュレーション方法において、
前記第4の工程は、前記ノード集合の中で不定値を持つノードのうち前記低位レベル回路における前記着目ノードの不定値の発生原因となるノードをバックトレースにより特定し、当該特定したノードのみに対して0と1の全ての組み合わせの値を代入する工程を有することを特徴とする論理シミュレーション方法。 - 請求項5記載の論理シミュレーション方法において、
前記第4の工程は、前記ノード集合の中で不定値を持つノードのうち前記低位レベル回路にて前記コーン部の入力となる記憶素子又は入力端子のノードのみに対して0と1の全ての組み合わせの値を代入する工程を有することを特徴とする論理シミュレーション方法。 - 請求項5記載の論理シミュレーション方法において、
前記第4の工程は、前記ノード集合の中で不定値を持つ全てのノードに対して0と1の全ての組み合わせの値を代入する工程を有することを特徴とする論理シミュレーション方法。 - 請求項5〜8のいずれか1項に記載の論理シミュレーション方法において、
前記高位レベル回路における前記着目ノードの固定の期待値と、前記第5の工程によって書き換えられた前記低位レベル回路における前記着目ノードの期待値とが合致することを確認する第6の工程を更に備えたことを特徴とする論理シミュレーション方法。 - 論理回路の論理シミュレーション装置であって、
前記論理回路中の記憶素子又は出力端子にて不定値を持つ着目ノードを検出するための第1の手段と、
前記着目ノードの論理を決定する回路要素からなり、かつ前記論理回路中の記憶素子又は入力端子を入力とするコーン部にて、当該コーン部中の全ノードからなるノード集合を検出するための第2の手段と、
前記ノード集合の中で不定値を持つノードに対して0と1の全ての組み合わせの値を代入して論理シミュレーションを実施するための第3の手段と、
前記着目ノードの値が前記全ての組み合わせの値に対して同一の値となる場合には、当該同一の値を前記着目ノードの不定値に代えて当該着目ノードの期待値とするための第4の手段とを備えたことを特徴とする論理シミュレーション装置。 - 論理回路の論理シミュレーション装置であって、
前記論理回路を2つの異なるレベルにて記述した高位レベル回路と低位レベル回路との各々に含まれる記憶素子又は出力端子の対応を決定するための第1の手段と、
前記第1の手段によって対応付けられた前記高位レベル回路の記憶素子又は出力端子の期待値が固定値であり、かつ前記低位レベル回路の記憶素子又は出力端子の期待値が不定値である着目ノードを検出するための第2の手段と、
前記低位レベル回路にて前記着目ノードの論理を決定する回路要素からなり、かつ前記低位レベル回路中の記憶素子又は入力端子を入力とするコーン部にて、当該コーン部中の全ノードからなるノード集合を検出するための第3の手段と、
前記ノード集合の中で不定値を持つノードに対して0と1の全ての組み合わせの値を代入して論理シミュレーションを実施するための第4の手段と、
前記低位レベル回路にて前記着目ノードの値が前記全ての組み合わせの値に対して同一の値となる場合には、当該同一の値を前記低位レベル回路における前記着目ノードの不定値に代えて当該着目ノードの期待値とするための第5の手段とを備えたことを特徴とする論理シミュレーション装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005156019A JP2006331212A (ja) | 2005-05-27 | 2005-05-27 | 論理シミュレーション方法及びその装置 |
US11/439,224 US20060282250A1 (en) | 2005-05-27 | 2006-05-24 | Logic simulation method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005156019A JP2006331212A (ja) | 2005-05-27 | 2005-05-27 | 論理シミュレーション方法及びその装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006331212A true JP2006331212A (ja) | 2006-12-07 |
Family
ID=37525128
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005156019A Pending JP2006331212A (ja) | 2005-05-27 | 2005-05-27 | 論理シミュレーション方法及びその装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20060282250A1 (ja) |
JP (1) | JP2006331212A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8166427B1 (en) * | 2007-03-09 | 2012-04-24 | Altera Corporation | Tracing and reporting registers removed during synthesis |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862149A (en) * | 1995-08-29 | 1999-01-19 | Unisys Corporation | Method of partitioning logic designs for automatic test pattern generation based on logical registers |
US5910898A (en) * | 1995-12-14 | 1999-06-08 | Viewlogic Systems, Inc. | Circuit design methods and tools |
-
2005
- 2005-05-27 JP JP2005156019A patent/JP2006331212A/ja active Pending
-
2006
- 2006-05-24 US US11/439,224 patent/US20060282250A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20060282250A1 (en) | 2006-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7464015B2 (en) | Method and apparatus for supporting verification, and computer product | |
US7469393B2 (en) | Method and device for supporting verification, and computer product | |
JP2020149270A (ja) | 回路適正化装置及び回路適正化方法 | |
JPH07200642A (ja) | 半導体集積回路の遅延時間計算装置 | |
JP2000207440A (ja) | 半導体集積回路の設計検証装置、方法及び記憶媒体 | |
JP2003173270A (ja) | ソフトウェアデバッグ装置 | |
JP2020149312A (ja) | 回路設計支援方法、及び回路設計支援プログラム | |
JP2001357095A (ja) | 半導体装置設計支援装置 | |
JP2006331212A (ja) | 論理シミュレーション方法及びその装置 | |
JP2009181292A (ja) | Mc/dcパターン生成装置 | |
JP2007272288A (ja) | 消費電力算出プログラム、記録媒体、消費電力算出方法、および消費電力算出装置 | |
JP2005316595A (ja) | 回路記述間の等価性検証方法および回路記述間の等価性検証プログラム | |
JP2010257003A (ja) | 論理等価性検証システム、論理等価性検証方法、半導体集積回路の製造方法、制御プログラムおよび可読記憶媒体 | |
JP6193674B2 (ja) | 変換回路設計装置、変換回路設計プログラムおよび変換回路設計方法 | |
US8782579B2 (en) | Connection verification method, recording medium thereof, and connection verification apparatus | |
JP3110326B2 (ja) | 検証用テストパタン設計装置 | |
JP2002297412A (ja) | ハードウェア用テスト項目生成方法 | |
JP2924222B2 (ja) | 論理シミュレータ | |
JP2012160145A (ja) | 論理シミュレーション方法および論理シミュレーション装置 | |
JP2001067383A (ja) | 静的タイミング解析方法におけるフォールスパス検出方法およびフォールスパス検査方法 | |
JP2001202391A (ja) | 論理回路のシミュレーション方法 | |
JPH113361A (ja) | 論理回路検証装置、論理回路検証方法及び論理回路検証プログラムを格納したコンピュータ読み取り可能な記録媒体 | |
JP2019185215A (ja) | ベクタ生成装置及びベクタ生成用プログラム | |
JP2002207782A (ja) | 論理シミュレーション方法、および、論理シミュレーション用プログラムを記録する記録媒体 | |
JPH0619733A (ja) | シミュレーションのための入力パターン評価方法 |