(57)【要約】【課題】テストパターンが既に生成されている順序回路に回路変更が行われた場合に、既に生成されたテストパターン、テストシーケンスを再利用することを可能にする。【解決手段】順序回路の自動テストパターン生成装置と、自動テストパターン生成装置により生成されたテストパターン、故障表、ネットリストを記録したデータベースと、データベースに各故障ごとに記録された各々のテストパターンと前記ネットリストの各回路ブロックとを関連付けするインデックスを作成するインデックス作成手段と、インデックスを用いてデータベースを検索するデータベース検索手段と、順序回路の一部が変更された場合に、データベース検索手段を用いてデータベースより既に生成されたテストパターンの一部を取得すると共に、自動テストパターン生成装置を用いて新しいテストパターンを生成するデータベース制御手段とを備える。【選択図】　　図１
2004045145.tif 000002
【特許請求の範囲】
【請求項１】
順序回路の自動テストパターン生成装置と、
前記テストパターン生成装置により生成されたテストパターン、故障表、ネットリストを記録したデータベースと、
前記データベースに各故障ごとに記録された各々のテストパターンと、前記ネットリストの各回路ブロックとを関連付けするインデックスを作成するインデックス作成手段と、
前記インデックスを用いて前記データベースを検索するデータベース検索手段と、
前記順序回路の一部が変更された場合に、前記データベース検索手段を用いて前記データベースより既に生成されたテストパターンの一部を取得すると共に、前記テストパターン生成装置を用いて新しいテストパターンを生成するデータベース制御手段と、
を備えることを特徴とする自動テストパターン生成システム。
【請求項２】
前記自動テストパターン生成システムは、前記データベースに記録されたテストパターン、故障表、ネットリストをネットワーク上の端末において参照可能に構成され、前記データベース制御手段は、前記テストパターン生成装置を用いたテストパターン生成を行う際に、前記データベース上の既に生成されたテストパターンをネットワークを介して検出することを特徴とする請求項１記載の自動テストパターン生成システム。
【請求項３】
前記データベース制御手段は、前記順序回路に変更が生じた場合に、前記データベースから再利用可能なテストパターンを取得すると共に、変更が必要なテストパターンのみについて前記テストパターン生成装置を用いたテストパターン生成を行うことを特徴とする請求項２記載の自動テストパターン生成システム。
【請求項４】
前記データベース制御手段は、前記順序回路で変更された回路素子の故障についてテストパターンを生成する際に、変更された回路素子と変更されていない回路素子の境界までのテストシーケンスを前記データベースから検出し、該テストシーケンスを再利用して、変更された回路素子の故障を検出するテストパターンを前記テストパターン生成装置により生成することを特徴とする請求項３記載の自動テストパターン生成システム。
【請求項５】
前記データベース制御手段は、新しい順序回路のテストパターンを生成する際に、前記データベースより既に生成されている回路情報を検出し、回路の一部が一致している場合、一致する回路ブロックに係る既に生成されたテストシーケンスを前記データベースから取得して、前記テストパターン生成装置を用いたテストパターン生成に利用することを特徴とする請求項４記載の自動テストパターン生成システム。
【請求項６】
前記データベース制御手段は、再生成されたテストパターン、テストシーケンスを全て前記データベースに新しく登録して記録するデータベース更新手段を有することを特徴とする請求項３乃至５のいずれか一項記載の自動テストパターン生成システム。
【請求項７】
前記データベース制御手段は、回路変更が行われた場合に、前記データベースから回路変更によって影響を受けるテストパターンと、回路変更によって影響を受けないテストパターンとを別々に検出し、影響を受けないテストパターンを再利用可能なテストパターンとして前記データベースから取得するテストパターン識別手段を有することを特徴とする請求項１記載の自動テストパターン生成システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＬＳＩ等の順序回路のテストパターンを生成する順序回路自動テストパターン生成装置を利用した自動テストパターン生成システムに関する。
【従来の技術】
順序回路の自動テストパターン生成は、故障表を予め作成して順序回路に存在する故障を仮定した後で、順序回路自動テストパターン生成装置（ＡＴＰＧ；Ａｕｔｏｍａｔｉｃ　Ｔｅｓｔ　Ｐａｔｔｅｒｎ　Ｇｅｎｅｒａｔｏｒ）を用いて自動的にテストパターン生成を行う。この順序回路自動テストパターン生成装置はコンピュータプログラム（ソフトウェア）として実現されるものであり、与えられた故障集合（故障表）に対して順序回路のためのテストパターンを求める操作（検出）が実行される。以下、この明細書では、この順序回路自動テストパターン生成装置を順序回路ＡＴＰＧという。
【０００２】
順序回路ＡＴＧＰは、与えられた故障表に基づいて対象故障を取得し、対象故障を活性化させるテストパターンと、対象故障を出力に伝播させるテストパターンとを生成する。ただし、順序回路であるため、入力信号のパターンの順序によって出力信号が変化することを考慮する。
【０００３】
また、順序回路のテストパターンを生成する手法として、故障を活性化させるテストパターンを記録しておき、検出が難しいテストパターンを検出する際に、そのテストパターンを利用して検出する手法がある。
【発明が解決しようとする課題】
しかしながら、従来の順序回路テストパターン生成手法では、順序回路ＡＴＰＧにより一度テストパターンを生成した順序回路について、回路の修正を行った場合、故障表を作り直すため、すでに生成したテストパターンを再利用することができなかった。
【０００４】
また、故障を活性化させるテストパターンや、故障を出力に伝播させるテストパターンの順序データベースを用いる従来の手法も、回路の変更が行われた場合には、テストパターンのシーケンス（順序）が変更されるため、最初からテストパターンを生成する必要があった。
【０００５】
さらに、新規に順序回路のテストパターンを生成する際に、回路の複雑さによっては、順序回路ＡＴＰＧを用いてテストパターン生成ができない場合や、テストパターン生成に膨大な時間がかかる等の問題があった。
【０００６】
本発明は、上記の点に鑑みてなされたものであり、テストパターンが既に生成されている順序回路に回路変更が行われた場合に、既に生成されたテストパターン、テストシーケンスを再利用することを可能とし、テストパターン生成にかかる時間を短縮できる自動テストパターン生成システムを提供することを目的とする。
【課題を解決するための手段】
上記課題を解決するため、請求項１に記載した発明は、自動テストパターン生成システムが、順序回路の自動テストパターン生成装置と、前記テストパターン生成装置により生成されたテストパターン、故障表、ネットリストを記録したデータベースと、前記データベースに各故障ごとに記録された各々のテストパターンと、前記ネットリストの各回路ブロックとを関連付けするインデックスを作成するインデックス作成手段と、前記インデックスを用いて前記データベースを検索するデータベース検索手段と、前記順序回路の一部が変更された場合に、前記データベース検索手段を用いて前記データベースより既に生成されたテストパターンの一部を取得すると共に、前記テストパターン生成装置を用いて新しいテストパターンを生成するデータベース制御手段とを備えることを特徴とする。　本発明では、データベースにネットリスト、故障表、自動テストパターン生成装置が生成したテストパターン、テストシーケンスを取り込み、データベースに各故障ごとに記録してある各々のデータを部品化することで順序回路自動テストパターン生成装置がテストパターン生成を行うときに、これらのデータにアクセスすることが可能になる。
【０００７】
請求項２に記載の発明は、請求項１記載の自動テストパターン生成システムにおいて、前記自動テストパターン生成システムが、前記データベースに記録されたテストパターン、故障表、ネットリストをネットワーク上の端末において参照可能に構成され、前記データベース制御手段が、前記テストパターン生成装置を用いたテストパターン生成を行う際に、前記データベース上の既に生成されたテストパターンをネットワークを介して検出することを特徴とする。本発明では、データベースをＮＦＳ（Ｎｅｔｗｏｒｋ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）等の形式で登録することで、データベースに対しネットワークを介して参照可能に構成し、順序回路自動テストパターン生成装置がこのデータベースからのデータを利用して順序回路のテストパターン生成を行うことが可能となる。
【０００８】
請求項３に記載した発明は、請求項２記載の自動テストパターン生成システムにおいて、前記データベース制御手段が、前記順序回路に変更が生じた場合に、前記データベースから再利用可能なテストパターンを取得すると共に、変更が必要なテストパターンのみについて前記テストパターン生成装置を用いたテストパターン生成を行うことを特徴とする。テストパターンがすでに生成されている回路について、回路に変更が生じた場合、本発明は、データベースに回路のネットリストと故障表、テストパターン、テストシーケンスの情報が、相互参照可能な形式で登録されているため、順序回路自動テストパターン生成装置は、回路の変更によって、影響を受ける故障を故障表から摘出し、その部分だけをテストパターン生成することが可能になる。このことにより、最初からテストパターンを作り直す必要がなくなり、テストパターン生成にかかる時間を短縮することが可能になる。
【０００９】
請求項４に記載した発明は、請求項３記載の自動テストパターン生成システムにおいて、前記データベース制御手段が、前記順序回路で変更された回路素子の故障についてテストパターンを生成する際に、変更された回路素子と変更されていない回路素子の境界までのテストシーケンスを前記データベースから検出し、該テストシーケンスを再利用して、変更された回路素子の故障を検出するテストパターンを前記テストパターン生成装置により生成することを特徴とする。本発明によれば、回路上で変更された素子の故障についてテストパターンを生成する際、変更されている素子と変更されていない素子の境界は、データベースのネットリストを比較した結果から得ることができるため、その結果から、対象故障のテストシーケンスの境界を識別し、その境界までのテストシーケンスを順序回路自動テストパターン生成装置に受け渡す事が可能となる。順序回路自動テストパターン生成装置は、そのシーケンスを利用して、変更されている素子の故障を検出するテストパターンを自動テストパターン生成装置処理することで、テストパターンの再利用と、テストパターン生成にかかる時間の短縮を行うことが可能となる。
【００１０】
請求項５に記載した発明は、請求項４記載の自動テストパターン生成システムにおいて、前記データベース制御手段が、新しい順序回路のテストパターンを生成する際に、前記データベースより既に生成されている回路情報を検出し、回路の一部が一致している場合、一致する回路ブロックに係る既に生成されたテストシーケンスを前記データベースから取得して、前記テストパターン生成装置を用いたテストパターン生成に利用することを特徴とする。本発明では、テストパターンを再利用することが可能でるため、新規に順序回路のテストパターンを生成する際、ネットワーク等を介して、データベースを参照することが可能なため、回路構成がまったく同じ部分については、データベースに登録されているテストパターンを再利用することが可能となる。また、回路構成が似ている部分については、そのテストシーケンスを利用し、テストパターン生成することが可能である。
【００１１】
請求項６に記載した発明は、請求項３乃至５のいずれか一項記載の自動テストパターン生成システムにおいて、前記データベース制御手段が、再生成されたテストパターン、テストシーケンスを全て前記データベースに新しく登録して記録するデータベース更新手段を有することを特徴とする。回路変更や、新規作成した回路のデータベースが更新されることで、順序回路自動テストパターン生成装置で利用可能なテストパターン、テストシーケンスは、本発明による装置を利用するたびに増えていくことになる。よって、品種が多ければ多いほど、順序回路自動テストパターン生成装置の効率は向上する。
【００１２】
請求項７に記載した発明は、請求項１記載の自動テストパターン生成システムにおいて、前記データベース制御手段が、回路変更が行われた場合に、前記データベースから回路変更によって影響を受けるテストパターンと、回路変更によって影響を受けないテストパターンとを別々に検出し、影響を受けないテストパターンを再利用可能なテストパターンとして前記データベースから取得するテストパターン識別手段を有することを特徴とする。データベースからテストパターン、テストシーケンスを検索する際、本発明によれば、ネットリスト、故障表、テストパターン、テストシーケンスに変更が生じた場合、履歴管理を行い、回路変更後にそれぞれに与える影響をインデックスで相互参照可能としているため、順序回路自動テストパターン生成装置がデータベースにアクセスし、テストパターン生成に必要な情報を検索する場合、このインデックスをたどれば、データベースの検索に要する時間を短縮することができる。
【発明の実施の形態】
以下、本発明の実施の形態を添付の図面を参照しながら具体的に説明する。
【００１３】
図１は本発明の自動テストパターン生成システムの一実施形態を示す。
【００１４】
図１に示したように、本発明の自動テストパターン生成システム１は、大別すれば、順序回路ＡＴＰＧ１０、データベース制御部２０、及びデータベース３０により構成されている。
【００１５】
順序回路ＡＴＰＧ１０としては、従来実用化されている順序回路ＡＴＰＧプログラム（ソフトウェア）を用いることができる。必要に応じて、適宜、順序回路のためのテストパターン生成プロセスを容易にするためのＡＴＰＧツールを含めて構成してもよい。
【００１６】
データベース３０には、ネットリスト３１と、故障表３２と、テストシーケンス３３と、テストパターン３４と、インデックス作成部３５と、インデックス３６とが形成されている。
【００１７】
故障表３２は、順序回路に存在する故障（故障集合）を仮定するために予め作成されたものである。順序回路ＡＴＰＧ１０は、この故障表３２に基づいて対象故障を取得して、対象故障を活性化させるテストパターンと、対象故障を出力に伝播させるテストパターンを生成する。
【００１８】
ネットリスト３１は、順序回路の回路構成を表現するための構造記述を特定の回路ブロック（セル）ライブラリを用いた繋がりとして記述したものである。構造記述とは、論理合成の結果として、論理ゲートの組み合わせ回路とデータ保持の記憶ゲートの繋がりとして記述されたものを意味する。ネットリスト３１の割り付けの際には、ライブラリに準備されている回路ブロック（セル）に応じた最適化がなされる。
【００１９】
また、順序回路ＡＴＰＧ１０により生成されるテストシーケンス、テストパターンが、このデータベース３０のテストシーケンス３３、テストパターン３４としてそれぞれ登録され、記録されている。
【００２０】
このデータベース３０には、ネットリスト３１、故障表３２、順序回路ＡＴＰＧ１０により生成されたテストパターン３４、テストシーケンス３３を相互に参照可能とするために、インデックス作成部３５が設けてある。インデックス作成部３５は、データベース３０に各故障ごとに記録された個々のテストパターンやテストシーケンスと、ネットリスト３１の各回路ブロックとを関連付けするインデックスを作成し、これらのインデックスとその対応するテストパターンやテストシーケンスのデータベース３０における格納箇所とインデックス３６に保持する。
【００２１】
この実施態様の自動テストパターン生成システム１は、データベース３０と、データベースを各故障ごとにインデックスを作成して部品化するインデックス作成部３５と、これらのデータベースを制御するデータベース制御部２０とを備え、これらの装置を利用して新しいテストパターンを生成する。
【００２２】
上記データベース３０は、ＮＦＳ（Ｎｅｔｗｏｒｋ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）などのネットワーク上で参照できる形式で登録してあり、ネットワーク上の任意のコンピュータ端末で参照可能にすることにより、順序回路ＡＴＰＧ１０がこれらのデータベースを用いて、順序回路のテストパターン、テストシーケンスを生成する。
【００２３】
図１の自動テストパターン生成システム１において、データベース制御部２０は、ネットリスト比較エンジン２１と、テストシーケンス識別エンジン２２と、テストパターン識別エンジン２３と、テストシーケンス再利用エンジン２４と、テストパターン再利用エンジン２５と、データベース検索エンジン２６と、データベース更新エンジン２７とが形成されている。各エンジンの機能については、後述する（図３乃至図６を参照）。
【００２４】
図１の自動テストパターン生成システム１において、データベース制御部２０は、テストパターンがすでに生成されている順序回路について、回路の変更が生じた場合、最初からテストパターンを作り直すのではなく、その順序回路上で変更された回路素子の故障について、データベース３０から変更前のネットリストと変更後のネットリストを比較し、回路変更によって影響を受ける故障の境界を識別する。その後、データベース３０から回路変更の影響を受けるテストパターンと、影響を受けないテストパターンを分別し、変更すべきテストパターンのみを順序回路ＡＴＰＧ１０で自動生成する。
【００２５】
データベース制御部２０は、この際に、ネットリストの比較結果から変更後と変更前のテストシーケンスを比較し、変更されている回路素子と変更されていない回路素子の境界までのテストシーケンスをデータベース３０から検索し、そのテストシーケンスを順序回路ＡＴＰＧ１０に引き渡す。順序回路ＡＴＰＧ１０は、受取ったテストシーケンスに基づいて、変更されている素子の故障を検出するテストパターンを自動生成する。順序回路ＡＴＰＧ１０が処理した結果は、データベース３０に再度、登録する。
【００２６】
また、データベース制御部２０は、新しく順序回路のためのテストパターンを生成する場合、登録されているデータベース３０から回路情報を検索し、新規回路と同じ構成である回路素子のテストパターンを利用する。全く同じ構成ではなくても、回路の一部が一致している場合、そのテストシーケンスを取り込み、順序回路ＡＴＰＧ１０によるテストパターン生成に利用する。
【００２７】
また、データベース制御部２０は、新しく生成されたテストパターン、テストシーケンス、故障表、ネットリストを、全てデータベース３０に再登録し、他の回路や、回路に修正を加えたときに再利用可能なものにする。
【００２８】
また、データベース制御部２０は、回路変更が行われたときに、変更によって影響を受ける故障をデータベース３０の故障表３２から取得し、変更が必要なテストパターンと、そのシーケンスを別のデータベースに登録する。また、回路の変更に対して全く影響を受けないテストパターンとそのシーケンスについても、別のデータベースに登録する。これらのデータベースに対し、インデックス作成部３５は、データ毎（テストパターン、テストシーケンス、故障表、ネットリスト）に相互参照可能とするインデックスを作成し、再度、順序回路ＡＴＰＧ１０によるテストパターン生成を行う際、データベース３０へのアクセスと検索が効率よく行えるようにする。
【００２９】
図２に、ネットワークを用いてデータベースを参照する場合のシステム構成の一例を示す。図２の例では、ネットワーク２上のコンピュータ端末（クライアント）４に、本発明に係るデータベース制御部２０と順序回路ＡＴＰＧ１０が配設してあり、ネットワーク２上の複数のサーバ６（例えば、複数の設計部門で利用されているサーバ）にそれぞれデータベース３０が接続されている。各データベース３０に記録されているデータ（テストパターン、テストシーケンス、故障表、ネットリスト）は、各部門に共通のデータであってもよいし、各部門ごとに異なるデータであってもよい。
コンピュータ端末４のユーザは、ネットワーク２を介してデータベース３０が登録されているサーバ６へアクセスし、テストパターン、テストシーケンスの再利用が可能なデータを検索する。再利用可能なテストパターン、テストシーケンスを記録してあるデータベース３０が見つかった場合は、そのデータベースのデータをダウンロードし、コンピュータ端末４上の順序回路ＡＴＰＧ１０に取り込む。
【００３０】
図３に、新規に設計された順序回路のテストパターン生成を行う際に、本発明の自動テストパターン生成システムが実行する制御フローを示す。
【００３１】
本発明の自動テストパターン生成システム１では、新しい順序回路に対してテストパターン生成を行う場合、図２のネットワーク上のデータベース３０を参照し、データベース３０からネットリスト３１の情報を取得し、その取得したネットリスト３１の情報に基づいて、新しい順序回路のテストパターン生成に利用可能なテストパターン、テストシーケンスを検索する。
【００３２】
図３の制御フローにおいて、各処理ステップのブロック内に記載されている括弧内の数字は、その処理手順の機能を実行するデータベース制御部２０の対応エンジンを示す。
【００３３】
図３の制御フローが開始すると、ステップＳ３１において、データベース検索エンジン２６は、まず、ネットワーク上のデータベース３０からネットリスト３１の情報を取得し、その取得したネットリスト３１の情報に基づいて、新しい順序回路のテストパターン生成に利用可能なテストパターン、テストシーケンスを検索する。ステップＳ３２において、ネットリスト比較エンジン２１は、データベース３０から取得したネットリスト３１や故障表３２の情報と、新しい順序回路のネットリストや故障表の情報とが一致するか比較を行う。
【００３４】
ステップＳ３３では、ステップＳ３２でネットリストを比較した結果がある程度一致しているか否かが判定される。この場合、全く同じ回路構成ではなくても、回路の一部が一致している場合、一致する（ＹＥＳ）と判定してもよい。一致しない（ＮＯ）と判定された場合は、上記ステップＳ３１に戻る。
【００３５】
上記ステップＳ３３で一致する（ＹＥＳ）と判定された場合には、ステップＳ３４において、ネットリスト比較エンジン２１の結果はテストパターン識別エンジン２３に渡され、テストパターン識別エンジン２３では、データベース３０のテストパターン３４から再利用可能なテストパターンを検出したか否かが判定される。検出した場合には、ステップＳ３５において、テストパターン識別エンジン２３は、その再利用可能なテストパターンをデータベース３０から取得（ダウンロード）する。
【００３６】
テストパターンが利用できない故障については、ステップＳ３６で、ネットリスト比較エンジン２１の結果はテストシーケンス識別エンジン２２に渡され、テストシーケンス識別エンジン２２では、データベース３０のテストシーケンス３３から再利用可能なテストシーケンスを検出したか否かが判定される。検出した場合には、ステップＳ３７において、テストシーケンス識別エンジン２２は、その再利用可能なテストシーケンスをデータベース３０から取得（ダウンロード）する。
【００３７】
ステップＳ３８では、テストパターン識別エンジン２３やテストシーケンス識別エンジン２２によって、データベース３０から一定の情報を取得したか否かが判定される。この判定の基準となる一定の情報とは、予めそのデータ量を設定しておいてもよいし、ユーザの判断で、新しい順序回路のテストパターン生成を考慮して任意に決めてもよい。一定の情報を取得していない（ＮＯ）と判定された場合は、上記ステップＳ３１に戻る。
【００３８】
上記ステップＳ３８で一定の情報を取得した（ＹＥＳ）と判定された場合、ステップＳ３９において、テストパターン再利用エンジン２５とテストシーケンス再利用エンジン２４は、取得したテストパターン、テストシーケンスを利用して、順序回路ＡＴＰＧ１０により新しいテストパターン、テストシーケンスの生成をそれぞれ行わせる。この処理を再利用処理という。
【００３９】
上記ステップＳ３９が完了すると、ステップＳ４０において、テストパターン再利用エンジン２５とテストシーケンス再利用エンジン２４は再利用処理の結果をデータベース更新エンジン２７に渡し、データベース更新エンジン２７は、新たに生成されたテストパターン、テストシーケンスを、故障表、ネットリストとともに、ネットワーク上のデータベース３０に送信して、新しいデータとして更新登録してデータベース３０に記録する。
【００４０】
次に、図４に、既にテストパターン生成が終了している順序回路を修正した場合のテストパターン生成を行う際に、本発明の自動テストパターン生成システムが実行する制御フローを示す。
【００４１】
本発明の自動テストパターン生成システム１では、修正した順序回路に対してテストパターン生成を行う場合、図２のネットワーク上のデータベース３０を参照し、修正前と、修正後のネットリストの情報を比較し、利用できるテストパターン、テストシーケンスを検索する。また、修正箇所について既にデータベース３０に類似している回路が無いか検索し、利用できる情報が見つかった場合は、その情報を再利用する。
【００４２】
図４の制御フローにおいて、各処理ステップのブロック内に記載されている括弧内の数字は、その処理手順の機能を実行するデータベース制御部２０の対応エンジンを示す。
【００４３】
図４の制御フローが開始すると、まず、ステップＳ４１において、ネットリスト比較エンジン２１は、データベース３０から取得したネットリスト３１や故障表３２の情報と、修正した順序回路のネットリストや故障表の情報とが一致するか比較を行う。
【００４４】
次に、ステップＳ４２において、ネットリスト比較エンジン２１の結果はテストパターン識別エンジン２３に渡され、テストパターン識別エンジン２３では、データベース３０のテストパターン３４から再利用可能なテストパターンを検出したか否かが判定される。検出した場合には、ステップＳ４３において、テストパターン識別エンジン２３は、その再利用可能なテストパターンをデータベース３０から取得（ダウンロード）する。
【００４５】
次に、ステップＳ４４で、ネットリスト比較エンジン２１の結果はテストシーケンス識別エンジン２２に渡され、テストシーケンス識別エンジン２２では、データベース３０のテストシーケンス３３から再利用可能なテストシーケンスを検出したか否かが判定される。検出した場合には、ステップＳ４５において、テストシーケンス識別エンジン２２は、その再利用可能なテストシーケンスをデータベース３０から取得（ダウンロード）する。
【００４６】
ステップＳ４６では、順序回路の修正箇所について既にデータベース３０に類似している回路がないか調べるために、データベース３０を検索するか否かが選択される。この選択は、ユーザの判断で行われる。
【００４７】
上記ステップＳ４６で修正箇所についてデータベース３０を検索することを選択しない場合（ＮＯ）には、ステップＳ４７において、テストパターン再利用エンジン２５とテストシーケンス再利用エンジン２４は、取得したテストパターン、テストシーケンスを利用して、順序回路ＡＴＰＧ１０により新しいテストパターン、テストシーケンスの生成をそれぞれ行わせる（再利用処理）。
【００４８】
上記ステップＳ４７が完了すると、ステップＳ４８において、テストパターン再利用エンジン２５とテストシーケンス再利用エンジン２４は再利用処理の結果をデータベース更新エンジン２７に渡し、データベース更新エンジン２７は、新たに生成されたテストパターン、テストシーケンスを、修正後の故障表、ネットリストとともに、ネットワーク上のデータベース３０に送信して、新しいデータとして更新登録してデータベース３０に記録する。
【００４９】
上記ステップＳ４６で修正箇所についてデータベース３０を検索することを選択した場合（ＹＥＳ）には、ステップＳ４９において、データベース検索エンジン２６は、ネットワーク上のデータベース３０からネットリスト３１の情報を取得し、その取得したネットリスト３１の情報に基づいて、修正箇所について既にデータベース３０に類似する回路がないか検索する。ステップＳ５０において、ネットリスト比較エンジン２１は、データベース３０から取得したネットリスト３１や故障表３２の情報と、修正した順序回路のネットリストや故障表の情報とが一致するか比較を行う。ステップＳ５０が終了すると、上記ステップＳ４２−Ｓ４５に戻り、再利用できる情報（再利用可能なテストパターン、テストシーケンス）が見つかった場合は、その情報を再利用する。
【００５０】
図５は、本発明に係るテストパターン識別エンジン２３の動作を説明するための図である。図５において、（Ａ）は順序回路の変更前のネットリストを示し、（Ｂ）は順序回路の変更後のネットリストを示す。（Ｂ）に示した回路は、（Ａ）に示した回路に対し入力ＰＩ３にインバータＮ１を新たに接続する変更（ＰＩ３にＮＯＴを追加）を行ったものである。図５（Ｃ）は、追加された回路素子であるインバータＮ１の影響を受けないネットを太線で示す。
【００５１】
図５の回路に対し、本発明のテストパターン識別エンジン２３は、インバータＮ１の入出力をトレースし、インバータＮ１の影響を受けない回路素子（ゲート）を検索する。その結果、ゲートＧ１、ゲートＧ３、ゲートＧ４、ゲートＦＦ１は、インバータＮ１の影響を受けないため、テストパターンの再利用が可能であると判断される。
【００５２】
図５（Ｃ）の太線で示したネット上に存在する回路素子（ゲート）のテストパターンは、テストパターン識別エンジン２３により検出され、再利用可能なテストパターン用のデータベースに登録される。この再利用可能テストパターンは、順序回路ＡＴＰＧ１０によるテストパターン生成に利用される。
【００５３】
再利用できないテストパターンについては、テストパターン再利用エンジン２５の再利用処理が実行される。図５の例では、ゲートＧ２、ゲートＧ５、ゲートＧ６、ゲートＦＦ２、ゲートＦＦ３が対象になる。
【００５４】
図６は本発明に係るテストシーケンス識別エンジン２２の動作を説明するための図である。図６において、（Ａ）は、図５で変更された回路要素（インバータＮ１）の影響を受ける故障のテストシーケンスに係るネットを太線で示し、（Ｂ）は、不定値Ｘでマスクされるテストシーケンスに係るネットを示す。図６の（Ｃ）は、不定値Ｘでマスクされるテストシーケンスのデータ例を示す。
【００５５】
テストシーケンス識別エンジン２２は、既にデータベース３０に存在するこれら回路素子（ゲート）のテストシーケンスと、図６（Ａ）の太線で示したインバータＮ１の影響を受けるテストシーケンスとを比較し、インバータＮ１の影響を受けるテストシーケンス中から、利用できないパターンの一部をマスクする。　図６（Ｂ）の回路では、インバータＮ１の入力になるＰＩ３の入力をマスクしている。順序回路ＡＴＰＧ１０は、マスクされた部分のテストパターンを自動テストパターン生成処理することで、インバータＮ１が挿入された後（回路の変更後）のテストパターンを検出する。
（付記１）
順序回路の自動テストパターン生成装置と、前記テストパターン生成装置により生成されたテストパターン、故障表、ネットリストを記録したデータベースと、　前記データベースに各故障ごとに記録された各々のテストパターンと、前記ネットリストの各回路ブロックとを関連付けするインデックスを作成するインデックス作成手段と、前記インデックスを用いて前記データベースを検索するデータベース検索手段と、前記順序回路の一部が変更された場合に、前記データベース検索手段を用いて前記データベースより既に生成されたテストパターンの一部を取得すると共に、前記テストパターン生成装置を用いて新しいテストパターンを生成するデータベース制御手段とを備えることを特徴とする自動テストパターン生成システム。
（付記２）
前記自動テストパターン生成システムは、前記データベースに記録されたテストパターン、故障表、ネットリストをネットワーク上の端末において参照可能に構成され、前記データベース制御手段は、前記テストパターン生成装置を用いたテストパターン生成を行う際に、前記データベース上の既に生成されたテストパターンをネットワークを介して検出することを特徴とする付記１記載の自動テストパターン生成システム。
（付記３）
前記データベース制御手段は、前記順序回路に変更が生じた場合に、前記データベースから再利用可能なテストパターンを取得すると共に、変更が必要なテストパターンのみについて前記テストパターン生成装置を用いたテストパターン生成を行うことを特徴とする付記２記載の自動テストパターン生成システム。
（付記４）
前記データベース制御手段は、前記順序回路で変更された回路素子の故障についてテストパターンを生成する際に、変更された回路素子と変更されていない回路素子の境界までのテストシーケンスを前記データベースから検出し、該テストシーケンスを再利用して、変更された回路素子の故障を検出するテストパターンを前記テストパターン生成装置により生成することを特徴とする付記３記載の自動テストパターン生成システム。
（付記５）
前記データベース制御手段は、新しい順序回路のテストパターンを生成する際に、前記データベースより既に生成されている回路情報を検出し、回路の一部が一致している場合、一致する回路ブロックに係る既に生成されたテストシーケンスを前記データベースから取得して、前記テストパターン生成装置を用いたテストパターン生成に利用することを特徴とする付記４記載の自動テストパターン生成システム。
（付記６）
前記データベース制御手段は、再生成されたテストパターン、テストシーケンスを全て前記データベースに新しく登録して記録するデータベース更新手段を有することを特徴とする請求項３乃至５のいずれか一項記載の自動テストパターン生成システム。
（付記７）
前記データベース制御手段は、回路変更が行われた場合に、前記データベースから回路変更によって影響を受けるテストパターンと、回路変更によって影響を受けないテストパターンとを識別し、影響を受けないテストパターンを再利用可能なテストパターンとして前記データベースから取得するテストパターン識別手段を有することを特徴とする付記１記載の自動テストパターン生成システム。
（付記８）
前記データベース制御手段は、回路変更が行われた場合に、前記データベースから回路変更によって影響を受けるテストシーケンスと、回路変更によって影響を受けないテストシーケンスとを識別し、影響を受けないテストシーケンスを再利用可能なテストシーケンスとして前記データベースから取得するテストシーケンス識別手段を有することを特徴とする付記１記載の自動テストパターン生成システム。
（付記９）
前記データベース制御手段は、新しい順序回路に対してテストパターン生成を行う場合に、前記データベースから取得した前記ネットリストの情報と、新しい順序回路のネットリストの情報とが一致するか比較を行うネットリスト比較手段を有することを特徴とする付記１記載の自動テストパターン生成システム。
（付記１０）
前記データベース制御手段は、回路変更が行われた順序回路に対してテストパターン生成を行う場合に、前記データベースから取得した変更前のネットリストの情報と、変更後のネットリストの情報とが一致するか比較を行うネットリスト比較手段を有することを特徴とする付記１記載の自動テストパターン生成システム。
【発明の効果】
上述したように、本発明のテストパターン生成システムによれば、ネットリスト、故障表、順序回路ＡＴＰＧにより生成されたテストパターン、テストシーケンスなどのデータベースに記録された情報がインデックスにより部品化されているため、順序回路の変更が生じた際に、順序回路ＡＴＰＧを用いたテストパターン生成を行うとき、データベース上の既に生成されているテストパターンやテストシーケンスを検出することが可能であり、既に生成されているテストパターンやテストシーケンスの一部を再利用することが可能である。従って、順序回路の変更が生じた際、順序回路ＡＴＰＧを用いたテストパターン生成を行う場合に要する処理時間を短縮することができ、ＬＳＩ等の順序回路のテストパターン生成に極めて有用である。
【図面の簡単な説明】
【図１】本発明の自動テストパターン生成システムの一実施形態を示すブロック図である。
【図２】ネットワークを用いて、データベースを参照する場合のシステム構成を示す図である。
【図３】新規に設計された順序回路のテストパターン生成を行う際の本発明の自動テストパターン生成システムが実行する制御フローを説明するためのフロー図である。
【図４】修正された順序回路のテストパターン生成を行う際の本発明の自動テストパターン生成システムが実行する制御フローを説明するためのフロー図である。
【図５】本発明に係るテストパターン識別エンジンの動作を説明するための図である。
【図６】本発明に係るテストシーケンス識別エンジンの動作を説明するための図である。
【符号の説明】
１　自動テストパターン生成システム
２　ネットワーク
４　コンピュータ端末（クライアント）
６　サーバ
１０　順序回路ＡＴＰＧ
２０　データベース制御部
２１　ネットリスト比較エンジン
２２　テストシーケンス識別エンジン
２３　テストパターン識別エンジン
２４　テストシーケンス再利用エンジン
２５　テストパターン再利用エンジン
２６　データベース検索エンジン
２７　データベース更新エンジン
３０　データベース
３１　ネットリスト
３２　故障表
３３　テストシーケンス
３４　テストパターン
３５　インデックス生成部
３６　インデックス
【図１】
2004045145.tif 000003
【図２】
2004045145.tif 000004
【図３】
2004045145.tif 000005
【図４】
2004045145.tif 000006
【図５】
2004045145.tif 000007
【図６】
2004045145.tif 000008