(57)【特許請求の範囲】
【請求項１】
仮設計された集積回路の不具合を検査する集積回路の設計支援システムであって、
使用者が選定した仮設計集積回路の回路構成と実行シミュレーション結果とを検索対象として入力する検索対象入力手段と、
使用者が指定した前記実行シミュレーション過程における検索対象時刻を前記検索対象の検索範囲時限の開始時刻として入力する検索対象時刻指定手段と、
前記検索対象時刻以降で、前記検索対象に含まれるノード及びセルを検証し、不定値の出力の有無を検出する出力値検証手段と、
前記回路構成において前記検索対象時刻以降で前記不定値の出力を示すポートと該ポートの発生原因となった原因セルとを検索し、該検索の検索ルートに位置する全てのノード及び前記原因セルとを記憶する原因検索手段と、
前記原因検索手段による任意の一つのポートの検索過程において前記不定値の出力を示すノードが、前記記憶されたノードのいずれか一つと一致するノードであるか否かを検証する同一原因検索手段と、
前記同一原因検索手段において一致がとれた時に、前記不定値の出力を示すノードの原因セルが、前記記憶されたノードの原因セルと同じであることを記憶する同一原因記憶手段と、
前記不定値の出力を示す全てのポートの原因検索が完了した時点で、前記記憶された全てのノード及び原因セルを検索結果として表示する検索結果表示手段と、
を備えたことを特徴とする集積回路の設計支援システム。
【請求項２】
前記検索結果表示手段は、前記記憶された全てのノード及び原因セルを前記検索の流れに沿って表形式に配置することを特徴とする請求項１記載の集積回路の設計支援システム。
【請求項３】
仮設計された集積回路の不具合を検査する集積回路の設計支援方法であって、
コンピュータが、使用者が選定した仮設計集積回路の回路構成と実行シミュレーション結果とを検索対象として入力する検索対象入力ステップと、
コンピュータが、使用者が指定した前記実行シミュレーション過程における検索対象時刻を前記検索対象の検索範囲時限の開始時刻として入力する検索対象時刻指定ステップと、
コンピュータが、前記検索対象時刻以降で、前記検索対象に含まれるノード及びセルを検証し、不定値の出力の有無を検出する出力値検証ステップと、
コンピュータが、前記回路構成において前記検索対象時刻以降で前記不定値の出力を示すポートと該ポートの発生原因となった原因セルとを検索し、該検索の検索ルートに位置する全てのノード及び前記原因セルとを記憶手段に記憶する原因検索ステップと、
コンピュータが、前記原因検索ステップによる任意の一つのポートの検索過程において、前記不定値の出力を示すノードが、前記記憶されたノードのいずれか一つと一致するノードであるか否かを検証する同一原因検索ステップと、
コンピュータが、前記同一原因検索ステップにおいて一致がとれた時に、前記不定値の出力を示すノードの原因セルが、前記記憶されたノードの原因セルと同じであることを記憶手段に記憶する同一原因記憶ステップと、
コンピュータが、前記不定値の出力を示す全てのポートの原因検索が完了した時点で、前記記憶された全てのノード及び原因セルを検索結果として表示手段に表示する検索結果表示ステップと、
を有することを特徴とする集積回路の設計支援方法。
【請求項４】
前記検索結果表示ステップは、前記記憶された全てのノード及び原因セルを前記検索の流れに沿って表形式に配置することを特徴とする請求項３記載の集積回路の設計支援方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集積回路の設計支援システム及びその方法に関し、特に、回路要素の不定値出力を解消するための集積回路の設計支援システム及びその方法に関する。
【０００２】
【従来の技術】
従来、ＬＳＩ（集積回路）の回路設計において、不定値出力の原因を発見するには、シミュレーション結果の波形データから、不定値出力が発見されている回路上の接続点（以下、「ノード」と呼称する）の前段のノードを順次に遡って検索し、不定値ではない出力（以下、「非不定値出力」と呼称する）を伝達するノードに辿り着くまで検索を続けるといった作業を要する。
【０００３】
ここで、特に、複数の不定値出力が存在する場合に、その原因が同一セルに起因するものであるか否かは、複数のノードの全てに対して上記検索を実施してから解明していた。
【０００４】
【発明が解決しようとする課題】
ところが、複数の不定値出力が存在する場合は、複数のノードの各々について、上記従来方法による検索を実施していたのでは能率が悪い。即ち、設計対象となる回路の回路規模が増大するにつれて、不定値出力が存在する原因を従来方法で解明するのに、ＬＳＩの設計者は、多大の作業時間を費やさなければならないといった問題点を有していた。
【０００５】
また、それら複数の不定値出力が、同一原因によるものか否かの解明にも多大の作業時間を要していた。
本発明は、以上のような従来の集積回路の設計支援システムにおける問題点に鑑みてなされたものであり、複数の不定値出力ポートが存在する場合の検索と、それらが同一原因に起因するものであるか否かの検証とを効率的に行うことができる集積回路の設計支援システム装置を提供することを目的とする。
【０００６】
また、本発明の第２の目的は、複数の不定値出力ポートが存在する場合の検索と、それらが同一原因に起因するものであるか否かの検証とを効率的に行うことができる集積回路の設計支援方法を提供することにある。
【０００７】
【課題を解決するための手段】
本発明では上記の課題を解決するために、仮設計された集積回路の不具合を検査する集積回路の設計支援システムであって、使用者が選定した仮設計集積回路の回路構成と実行シミュレーション結果とを検索対象として入力する検索対象入力手段と、使用者が指定した前記実行シミュレーション過程における検索対象時刻を前記検索対象の検索範囲時限の開始時刻として入力する検索対象時刻指定手段と、前記検索対象時刻以降で、前記検索対象に含まれるノード及びセルを検証し、不定値の出力の有無を検出する出力値検証手段と、前記回路構成において前記検索対象時刻以降で前記不定値の出力を示すポートと該ポートの発生原因となった原因セルとを検索し、該検索の検索ルートに位置する全てのノード及び前記原因セルとを記憶する原因検索手段と、前記原因検索手段による任意の一つのポートの検索過程において、前記不定値の出力を示すノードが、前記記憶されたノードのいずれか一つと一致するノードであるか否かを検証する同一原因検索手段と、前記同一原因検索手段において一致がとれた時に、前記不定値の出力を示すノードの原因セルが、前記記憶されたノードの原因セルと同じであることを記憶する同一原因記憶手段と、前記不定値の出力を示す全てのポートの原因検索が完了した時点で、前記記憶された全てのノード及び原因セルを検索結果として表示する検索結果表示手段と、を備えたことを特徴とする集積回路の設計支援システムが提供される。
【０００８】
即ち、本発明では、使用者によって選定された仮設計集積回路の回路構成と該仮設計集積回路の実行シミュレーション結果とを総合し、さらに、使用者によって指定される検索対象時刻（上記仮設計集積回路のシミュレーション結果における検索範囲時限の開始時刻）とで検索対象とその時刻範囲を絞り、不定値を出力している出力ポートの各々について、その不定値出力の原因を解析する手段として、不定値出力ポートの最初のノードの前段方向に位置するノードが不定値出力ノードであるか否かを、次々と前段ノードを遡って検証する手段と、上記検証した前段方向の不定値出力ノードを全て記憶しておく手段と、非不定値出力ノードに突き当たった時に、この非不定値出力ノードの直後のセルを原因セルとして、記憶しておく手段と、他の不定値出力ポートの不定値出力の原因を上記と同様に解析する際に、任意の一つの不定値出力ノードについて、上記記憶されている不定値出力ノードのいずれか一つと同じものがあるか否かを検証する手段と、同じものが有る時に、不定値の出力を示すノードの原因セルが、記憶されたノードの原因セルと同じであることを記憶しておく手段とを備えることにより、複数の不定値出力ポートが存在する場合の検索と、それらが同一原因に起因するものであるか否かの検証とを効率的に行うことを可能にしている。
【０００９】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本発明の実施の形態に係る集積回路の設計支援システムの全体構成を示すブロック図である。
【００１０】
本実施の形態に係る集積回路の設計支援システムは、仮設計集積回路の回路構成を入力する回路構成入力部１と、前段工程によって得られた仮設計集積回路のシミュレーション結果を入力するためのシミュレーション結果入力部２と、シミュレーション過程の経過時間内で検索対象とすべき時間帯の開始時刻を指定する検索対象時刻指定部３と、上記時刻からの不定値出力の存在とその原因箇所を検索する原因検索部４と、上記検索した結果の入出力指令を発する入出力部５と、検索した結果を記憶する検索結果記憶装置６と、検索した結果を表示する検索結果表示装置７を備える。
【００１１】
以下、本実施の形態に係る集積回路の設計支援システムの機能を説明する。
まず、使用者は、制御部（図示は省略）に対して、ネットワーク構造の回路構成を持つ仮設計集積回路の回路構成を記録した回路構成ファイル（図示は省略）と、上記回路のシミュレーション結果（波形データ等）を記録したシミュレーション結果ファイル（図示は省略）との読み込みを、指定入力部（図示は省略）を介して指定する。
【００１２】
これにより、回路構成入力部１は、回路構成ファイルを、シミュレーション結果入力部２は、シミュレーション結果ファイルを、それぞれの内部領域に読み込む。
【００１３】
次に、使用者は、検索対象時刻指定部３に対して検索対象とすべき時間帯の開始時刻を指定入力部を介して指定する。検索対象時刻指定部３は、この指定を原因検索部４に伝達する。
【００１４】
なお、開始時刻の指定は、仮設計集積回路が初期化される以前に発生していた不定出力を検索の対象から除外するために有効である。
原因検索部４は、回路構成とシミュレーション結果を読み込み、開始時刻以降、不定値出力を発生させる原因となった箇所を下記の方法で検索する。
【００１５】
或るノードで不定値が出力されている場合、このノードの前段のノードを次々と遡って検証し、不定値を出力していないノードに達するまで検索する。これにより、この不定値を出力していないノードの直後に位置するセルを原因セルとして特定し、記憶する。
【００１６】
この際、上記の検索ルートに位置するノードを全て記憶しておき、他のノードを検索する場面において、記憶されているノードの各々との一致を検証することにより、検索済の検索ルートに入ったか否かを常に検証し、上記検索済の検索ルートに入ったならば、上記の他のノードは、過去に解析したノードと同一の原因に起因して不定値を出力しているノードであると判定する。
【００１７】
入出力部５は、検索結果（検索された不定値出力セル及び原因セルの識別名）を検索結果記憶装置６に記憶し、上記記憶させた検索結果を検索結果記憶装置６から入力して検索結果表示装置７に表示する。
【００１８】
なお、上記の各記憶は、原因検索部４の内部領域を使用して行うことも可能であるし、検索結果記憶装置６を使用して行うことも可能である。
また、検索結果表示装置７による表示は、検索の流れに沿って前記記憶したノード及び原因セルを配置した表形式とすることも可能である。
【００１９】
図２は、本発明の実施の形態に係る集積回路の設計支援システムの動作を示したフローチャートである。
以下、図１を参照しつつ、図２に示すフローチャートを使用して、本実施の形態に係る集積回路の設計支援システムの動作を説明する。
【００２０】
まず、ステップＳ１では、原因検索部４は、回路構成入力部１と、シミュレーション結果入力部２とを介して、仮設計集積回路の回路構成（ネットリスト）と、そのシミュレーション結果を読み込む。
【００２１】
ステップＳ２では、原因検索部４は、検索対象時刻指定部３を介して、検索対象とする時間帯の開始時刻を入力する。
ステップＳ３では、原因検索部４は、シミュレーション結果において開始時刻以降に、不定値を出力していて、かつ、原因箇所が未だ特定されていないノードが存在するか否かを検証する。その結果、上記に該当するノードが存在すればステップＳ４に進み、上記に該当するノードが存在しない場合はステップＳ７に移る。
【００２２】
ステップＳ４では、上記ノードの前段のノードが不定値を出力しているか否かを検証し、出力していればステップＳ５に進み、出力していなければステップＳ８に移る。
【００２３】
ステップＳ５では、上記ノードが既に記憶されているか否かを検証し、記憶されていなければステップＳ６に進み、記憶されていればステップＳ９に移る。
ステップＳ６では、原因検索部４は、検索対象時刻指定部３を介して、検索対象とする新たな時間帯の開始時刻を入力し、その後、ステップＳ４に戻る。
【００２４】
ステップＳ７では、入出力部５は、現在までの検索結果を検索結果表示装置７に送出し、検索結果表示装置７はこれを表示し、処理を終了する。
ステップＳ８では、原因検索部４は、注目しているノード、即ち、不定値を出力していて、かつ、原因箇所が未だ特定されていないノードの不定値出力の原因（即ち原因セル）を特定し、その識別名を記憶する。
【００２５】
ステップＳ９では、原因検索部４は、上記注目しているノードの不定値出力の原因（即ち原因セル）が、以前に発見されていた原因と同じ（同じセル）であることを記憶し、その後、ステップＳ３に戻る。なお、この記憶は原因検索部４の内部領域を使用して行うことも可能であるし、検索結果記憶装置６を使用して行うことも可能である。
【００２６】
図３は、本発明の実施の形態に係る集積回路の設計支援システムに入力される対象回路の回路構成の１例とシミュレーション結果とを纏めた回路図である。
図３の回路図で示す回路は、ノードｎ１〜ｎ１５と、セルｃ１〜ｃ１１を含む。
ここで、ノードｎ１〜ｎ１１が不定値出力であり、ｎ１２〜ｎ１５が非不定値出力であるものとする。
【００２７】
なお、図３の右端に示す符号ｘ１〜ｘ４は、不定値を示す。
図４は、本発明の実施の形態に係る集積回路の設計支援システムが図３に示す回路を対象として検索した時の検索過程を示す時系列チャートである。
【００２８】
図５は、本発明の実施の形態に係る集積回路の設計支援システムが図３に示す回路を対象として処理した時に表示される検索結果の１例を示す表図である。
以下、図３，４に示す検索対象から図５に示す検索結果を出力するまでの本発明の実施の形態に係る集積回路の処理の流れを説明する。
【００２９】
まず、不定値ｘ１を出力している出力ポートを取り上げ、不定値ｘ１を出力しているノードｎ１の前段に位置するノードｎ５が不定値出力ノードであるか否かを検証する。ここでは、ノードｎ５は不定値出力ノードである。もしも、ノードｎ５が既に検索済の不定値出力ノードであり、かつ記憶済のノード（即ち、原因セルを抱えたノード）であれば、これにより、注目しているノードｎ１の不定値の原因が突き止められたことになるが、ここでは、ノードｎ５は不定値出力ノードではあっても、新規に取り上げたノードであるので、ノードｎ５を記憶しておくに留める。
【００３０】
以下、非不定値出力ノードに突き当たるまで、ノードｎ５の前段の各ノード（ここでは、ノードｎ８，ｎ１０，ｎ１２，ｎ１３）の出力値を検証する。
非不定値出力ノード（ここでは、ノードｎ１２，ｎ１３）に突き当たったら、そのノードを入力にしているセルｃ１０が、この不定値ｘ１の出力の原因となったセル（原因セル）であることが確定するので、このセルのインスタンス名（本回路図での識別名）を記憶する。
【００３１】
次に、不定値ｘ２を出力している出力ポートを取り上げ、不定値ｘ２を出力しているノードｎ２の前段に位置するノードｎ５が不定値出力ノードであるか否かを検証する。ここでは、ノードｎ５は不定値出力ノードであり、しかも、不定値ｘ１の原因を調べた時に記憶済にしたノードであるので、不定値ｘ２は、不定値ｘ１を出力した原因セル（セルｃ１０）に起因する不定値であることが知れる。そこで、不定値ｘ２は、不定値ｘ１と同一原因（同一原因セル）に起因する不定値であることを記憶しておく。
【００３２】
残りの全ての出力ポート（不定値ｘ３，ｘ４を出力している出力ポート）についても、上記と同様の方法で調べる。
なお、図２のフローチャートで示した処理を実行するプログラムなど、本発明に係る集積回路の設計支援システムに上記の処理を行わせるためのプログラムは、半導体メモリを始め、ＣＤ−ＲＯＭや磁気テープなどのコンピュータ読み取り可能な記録媒体に格納して配付してもよい。そして、少なくともマイクロコンピュータ，パーソナルコンピュータ，汎用コンピュータを範疇に含むコンピュータが、上記の記録媒体から上記プログラムを読み出して、実行するものとしてもよい。
【００３３】
【発明の効果】
以上に説明したとおり、本発明では、仮設計集積回路の回路構成と該仮設計集積回路のシミュレーション結果を総合し、指定された検索対象時刻から不定値を出力している出力ポートの各々について、その不定値出力の原因を解析する際のルート上に位置するノードを記憶しておいて、他の不定値出力ポートの不定値出力の原因を解析する際に、ルート内に上記記憶されている不定値出力ノードと同じものがあるか否かを検証する手段を設けたので、複数の不定値出力ポートが存在する場合の検索を効率的に行うことができる。
【００３４】
また、不定値出力ノードの前段ノードを次々と遡って検証する手段により解明された原因セルの識別名も記憶しておくことにより、上記複数の不定値出力ポートの存在が、同一原因に起因するものであるか否かの検証を効率的に行うことができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る集積回路の設計支援システムの全体構成を示すブロック図である。
【図２】本発明の実施の形態に係る集積回路の設計支援システムの動作を示したフローチャートである。
【図３】本発明の実施の形態に係る集積回路の設計支援システムに入力される対象回路の回路構成の１例とシミュレーション結果とを纏めた回路図である。
【図４】本発明の実施の形態に係る集積回路の設計支援システムが図３に示す回路を対象として検索した時の検索過程を示す時系列チャートである。
【図５】本発明の実施の形態に係る集積回路の設計支援システムが図３に示す回路を対象として処理した時に表示される検索結果の１例を示す表図である。
【符号の説明】
１……回路構成入力部、２……シミュレーション結果入力部、３……検索対象時刻指定部、４……原因検索部、５……入出力部、６……検索結果記憶装置、７……検索結果表示装置
【図１】
0004341158.tif 000002
【図２】
0004341158.tif 000003
【図３】
0004341158.tif 000004
【図４】
0004341158.tif 000005
【図５】
0004341158.tif 000006