(57)【要約】    【課題】  入力データとクロック信号とが同時に変化するファンクションテスト用テストパターンのパターン数を削減する編集を行うテストパターン編集装置を提供する。    【解決手段】  ＬＳＩのファンクションテスト用の情報を有していてインターフェイス部１０を介して入力するテストパターン１１を編集するテストパターン編集装置１００において、テストパターン１１に、所定の冗長パターンを挿入することで、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンをテストパターン１１から作成するテストパターン変形処理部２０と、変形テストパターンの複数の規則パターンをそれぞれ１つの単位パターンにまとめることによって、パターン数を削減する編集を行うパターン数削減編集部５０とを備えることを特徴とする。【選択図】      図１
2006184020.tif 000002
【特許請求の範囲】
【請求項１】
ＬＳＩのファンクションテストに用いるテストパターンを編集するテストパターン編集装置において、
前記テストパターンに、所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成する手段と、
前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめる手段とを含むことを特徴とするテストパターン編集装置。
【請求項２】
前記テストパターンは、前記ファンクションテストについて、少なくとも入力するデータと、印加するクロック信号との情報を含み、
前記規則パターンを、
前記テストパターンに前記所定の冗長パターンを挿入することで、同一種類の前記クロック信号あたりの１組のアップエッジとダウンエッジとで前記入力するデータが異なる前記クロック信号の前記１組のアップエッジとダウンエッジとが、それぞれ振り分けられることによって作成されたパターンとすることを特徴とする請求項１に記載のテストパターン編集装置。
【請求項３】
前記テストパターンは、前記ファンクションテストについて、さらに、入力データに対応して得られる期待値の情報を含み、
前記規則パターンを、前記所定の冗長パターンを挿入することにより、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとが少なくとも１回ずつ、かつ、同一種類の前記解析するタイミングが同じ周期で訪れるパターンとすることを特徴とする請求項２に記載のテストパターン編集装置。
【請求項４】
前記規則パターンを、前記テストパターンの先頭に位置する前記単位パターンから、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとが出揃う前記単位パターンまでとすることを特徴とする請求項３に記載のテストパターン編集装置。
【請求項５】
前記規則パターンあたりの前記入力するデータの変化の回数と、前記クロック信号の変化の回数と、前記期待値変化の回数とで、全ての前記規則パターンのうち前記変化の回数が最も多いそれぞれの回数を、前記変形テストパターン内で繰り返す前記規則パターンの各タイミングの回数とすることを特徴とする請求項３又は請求項４に記載のテストパターン編集装置。
【請求項６】
前記テストパターンを解析することによって、前記各タイミングを算出する解析手段を有することを特徴とする請求項３から請求項５のいずれか１つに記載のテストパターン編集装置。
【請求項７】
前記規則パターンを、入力するデータの変化の有無を解析するタイミングと、クロック信号の印加の有無を解析するタイミングと、期待値の変化の有無を解析するタイミングとを示すパラメータによって示される各タイミングと一致するタイミングからなるパターンとすることを特徴とする請求項１から請求項６のいずれか１つに記載のテストパターン編集装置。
【請求項８】
前記変形テストパターンと、変形前の前記テストパターンとが同じ動作をするか否かを検証する検証手段を有し、
前記検証手段によって、同じ動作をすると検証された場合に、前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめることを特徴とする請求項１から請求項７のいずれか１つに記載のテストパターン編集装置。
【請求項９】
コンピュータ処理装置上で実行され、ＬＳＩのファンクションテストに用いるテストパターンを編集するテストパターン編集プログラムにおいて、
前記コンピュータ処理装置に、
前記テストパターンに所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成する機能と、
前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめる機能とを持たせることを特徴とするテストパターン編集装置。
【請求項１０】
前記テストパターンは、前記ファンクションテストについて、少なくとも入力するデータと、印加するクロック信号との情報を含み、
前記コンピュータ処理装置に、
前記規則パターンを、
前記テストパターンに前記所定の冗長パターンを挿入することで、同一種類の前記クロック信号あたりの１組のアップエッジとダウンエッジとで前記入力するデータが異なる前記クロック信号の前記１組のアップエッジとダウンエッジとを、それぞれ振り分けることによって作成するパターンとする機能を持たせることを特徴とする請求項９に記載のテストパターン編集プログラム。
【請求項１１】
前記テストパターンは、前記ファンクションテストについて、さらに、入力データに対応して得られる期待値の情報を含み、
前記コンピュータ処理装置に、
前記規則パターンを、前記所定の冗長パターンを挿入することにより、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとを少なくとも１回ずつ、かつ、同一種類の前記解析するタイミングを同じ周期で訪れるパターンとする機能を持たせることを特徴とする請求項１０に記載のテストパターン編集プログラム。
【請求項１２】
前記コンピュータ処理装置に、
前記規則パターンを、前記テストパターンの先頭に位置する前記単位パターンから、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとが出揃う前記単位パターンまでとする機能を持たせることを特徴とする請求項１１に記載のテストパターン編集プログラム。
【請求項１３】
前記コンピュータ処理装置に、
前記規則パターンあたりの前記入力するデータの変化の回数と、前記クロック信号の変化の回数と、前記期待値変化の回数とで、全ての前記規則パターンのうち前記変化の回数が最も多いそれぞれの回数を、前記変形テストパターン内で繰り返す前記規則パターンの各タイミングの回数とする機能を持たせることを特徴とする請求項１１又は請求項１２に記載のテストパターン編集プログラム。
【請求項１４】
前記コンピュータ処理装置に、
前記テストパターンを解析することによって、前記各タイミングを算出する解析機能を持たせることを特徴とする請求項１１から請求項１３のいずれか１つに記載のテストパターン編集プログラム。
【請求項１５】
前記コンピュータ処理装置に、
前記規則パターンを、入力するデータの変化の有無を解析するタイミングと、クロック信号の印加の有無を解析するタイミングと、期待値の変化の有無を解析するタイミングとを示すパラメータによって示される各タイミングと一致するタイミングからなるものとする機能を持たせることを特徴とする請求項９から請求項１４のいずれか１つに記載のテストパターン編集プログラム。
【請求項１６】
前記コンピュータ処理装置に、
前記変形テストパターンと、変形前の前記テストパターンとが同じ動作をするか否かを検証する検証機能と、
前記検証機能によって、同じ動作をすると検証した場合に、前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめる機能とを持たせることを特徴とする請求項９から請求項７のいずれか１５つに記載のテストパターン編集プログラム。
【請求項１７】
ＬＳＩのファンクションテストに用いるテストパターンを編集するテストパターン編集方法において、
前記テストパターンに所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成するステップと、
前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめるステップとを有することを特徴とするテストパターン編集方法。
【請求項１８】
前記テストパターンは、前記ファンクションテストについて、少なくとも入力するデータと、印加するクロック信号との情報を含み、
前記規則パターンを、
前記テストパターンに前記所定の冗長パターンを挿入することで、同一種類の前記クロック信号あたりの１組のアップエッジとダウンエッジとで前記入力するデータが異なる前記クロック信号の前記１組のアップエッジとダウンエッジとを、それぞれ振り分けることによって作成するパターンとするステップを有することを特徴とする請求項１７に記載のテストパターン編集方法。
【請求項１９】
前記テストパターンは、前記ファンクションテストについて、さらに、入力データに対応して得られる期待値の情報を含み、
前記規則パターンを、前記所定の冗長パターンを挿入することにより、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとを少なくとも１回ずつ、かつ、同一種類の前記解析するタイミングを同じ周期で訪れるパターンとするステップを有することを特徴とする請求項１８に記載のテストパターン編集方法。
【請求項２０】
前記規則パターンを、前記テストパターンの先頭に位置する前記単位パターンから、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとが出揃う前記単位パターンまでとするステップを有することを特徴とする請求項１９に記載のテストパターン編集方法。
【請求項２１】
前記規則パターンあたりの前記入力するデータの変化の回数と、前記クロック信号の変化の回数と、前記期待値変化の回数とで、全ての前記規則パターンのうち前記変化の回数が最も多いそれぞれの回数を、前記変形テストパターン内で繰り返す前記規則パターンの各タイミングの回数とするステップを有することを特徴とする請求項１９又は請求項２０に記載のテストパターン編集方法。
【請求項２２】
前記テストパターンを解析することによって、前記各タイミングを算出する解析ステップを有することを特徴とする請求項１９から請求項２１のいずれか１つに記載のテストパターン編集方法。
【請求項２３】
前記規則パターンを、入力するデータの変化の有無を解析するタイミングと、クロック信号の印加の有無を解析するタイミングと、期待値の変化の有無を解析するタイミングとを示すパラメータによって示される各タイミングと一致するタイミングからなるものとするステップを有することを特徴とする請求項１７から請求項２２のいずれか１つに記載のテストパターン編集方法。
【請求項２４】
前記変形テストパターンと、変形前の前記テストパターンとが同じ動作をするか否かを検証する検証ステップと、
前記検証ステップによって、同じ動作をすると検証した場合に、前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめるステップとを有することを特徴とする請求項１７から請求２３のいずれか１つに記載のテストパターン編集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩのファンクションテストに関し、特に、ＬＳＩのファンクションテストに用いるテストパターンのパターン数の削減及びクロックサイクルの高速化を実現するテストパターン編集装置、テストパターン編集プログラム及びテストパターン編集方法に関する。
【背景技術】
【０００２】
従来のＬＳＩのファンクションテストに用いるテストパターンについて、ファンクションテストを高速に行うためのテストパターン作成方法の一例が、特許文献１に記載されている。
【０００３】
特許文献１に記載されている遅延故障テストパターン発生方法は、従来のＬＳＩの高速テストパターン作成方法の一例であって、以下のような動作によって動作してテストパターンを編集し、パターン数を圧縮（＝削減）する。
【０００４】
すなわち、この遅延故障テストパターン発生方法は、テストパターンについて、ファンクションテストに用いる１周期分のパターン数や入力データ及びクロック信号を読み込む。
【０００５】
次に、クロック信号と入力データとが同時に変化していなければパターンの圧縮ができると判断して、クロック信号の変化を「０」「１」「０」、もしくは「１」「０」「１」の３つのパターンで表現しているクロックパターンをまとめて１つの「Ｐ」、もしくは「Ｎ」のパルスパターンに編集する。
【０００６】
さらに、このパターンが高速に処理可能である旨を速度情報として設定してテストパターンを作成する。
【０００７】
そして、パターン数が削減された遅延故障テストパターンとして、このテストパターンからＬＳＩテスタ用のテスタオブジェクトを生成する。
【特許文献１】特開平８−３６０３２号公報  （８頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、上述した従来技術は、以下に述べるような問題点があった。
【０００９】
第１の問題点は、クロック信号の両エッジで入力データが異なるテストパターンの場合は、パターン数を削減できないことである。その理由は以下による。
【００１０】
クロック信号と入力データとが同時に変化していないという条件を有する従来技術の下では、許容される１周期あたりの入力データの変化が１回という制限があるからである。
【００１１】
また、クロック信号の両エッジで入力データが異なるテストパターンの場合は、１周期あたりの入力データの変化が複数回あるので、上記制限のある従来技術では、クロック信号の変化について、３つのパターンで表現するクロックパターンをまとめて１つのパルスパターンに編集することができないからである。
【００１２】
第２の問題点は、上記第１の問題点によってパターン数を削減できないことから、クロックサイクルを高速化できないことである。
【課題を解決するための手段】
【００１３】
上記目的を達成するための本発明は、ＬＳＩのファンクションテストに用いるテストパターンを編集するテストパターン編集装置において、前記テストパターンに、所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成し、前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめることを特徴とする。
【００１４】
そして、前記変形テストパターンの複数の前記規則パターンをそれぞれ１つの単位パターンにまとめることによって、前記テストパターンのパターン数が削減される。
【００１５】
また、ここで、前記テストパターンは、前記ファンクションテストについて、少なくとも入力するデータと、印加するクロック信号との情報を含み、前記所定の冗長パターンを挿入することにより、前記規則パターンを、同一種類の前記クロック信号あたりの１組のアップエッジとダウンエッジとで前記入力するデータが異なる前記クロック信号の前記１組のアップエッジとダウンエッジとを、それぞれ振り分けたパターンとすることを特徴とする。
【００１６】
従って、同一種類のクロック信号において、前記入力するデータが、規則パターンあたり１回しか変化しないことによって、前記規則パターンをそれぞれ１つの単位パターンにまとめることができる。
【００１７】
また、前記テストパターンは、前記ファンクションテストについて、さらに、入力データに対応して得られる期待値の情報を含み、前記所定の冗長パターンを挿入することにより、前記規則パターン毎に、前記入力するデータの変化の有無を解析するタイミングと、前記クロック信号の変化の有無を解析するタイミングと、前記期待値変化の有無を解析するタイミングとが少なくとも１回ずつ、かつ、同一種類の前記解析するタイミングが同じ周期で訪れることを特徴とする。
【００１８】
従って、各規則パターンが同じタイミングで構成されることによって、クロックサイクルの高速化が可能となる。
【００１９】
また、前記作成された変形テストパターンと、変更前のテストパターンとが同じ動作をする場合に、パターン数を削減することを特徴とするので、ファンクションテストの精度を維持できる。
【００２０】
以上のように、テストパターンに、所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成し、この複数の規則パターンをそれぞれ１つの単位パターンにまとめることにより、クロック信号の両エッジで入力データが異なる場合であっても、パターン数の削減及びクロックサイクルの高速化が可能となる。
【発明の効果】
【００２１】
本発明のテストパターン編集装置、テストパターン編集プログラム及びテストパターン編集方法によれば、以下の効果が達成される。
【００２２】
本発明によれば、ＬＳＩのファンクションテストをするテストパターンについて、パターン数の削減が可能となる。
【００２３】
その理由は、テストパターンに、所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成し、この複数の規則パターンをそれぞれ１つの単位パターンにまとめるからである。
【００２４】
また、本発明によれば、クロック信号の両エッジで入力データが異なるテストパターンであっても、パターン数の削減が可能となる。
【００２５】
その理由は、テストパターンは、ファンクションテストについて、少なくとも入力するデータと、印加するクロック信号との情報を含み、所定の冗長パターンを挿入することにより、規則パターンを、同一種類のクロック信号あたりの１組のアップエッジとダウンエッジとで入力するデータが異なるこのクロック信号の１組のアップエッジとダウンエッジとを、それぞれ振り分けたパターンとするからである。
【００２６】
さらに、本発明によれば、クロック信号の両エッジで入力データが異なるテストパターンであっても、クロックサイクルの高速化が可能となる。
【００２７】
その理由は、テストパターンは、ファンクションテストについて、さらに、期待値の情報を含み、所定の冗長パターンを挿入することにより、規則パターンを、入力するデータの変化の有無を解析するタイミングと、クロック信号の変化の有無を解析するタイミングと、期待値変化の有無を解析するタイミングとが少なくとも１回ずつ、かつ、同一種類の解析するタイミングが同じ周期で訪れるパターンとするからである。
【００２８】
さらにまた、本発明によれば、クロック信号の両エッジで入力データが異なるテストパターンであっても、パターン数を削減して行うファンクションテストの精度を維持できる。
【００２９】
その理由は、作成された変形テストパターンと、変更前のテストパターンとが同じ動作をする場合に、パターン数を削減するからである。
【実施例１】
【００３０】
以下、本発明の好適な実施例について図面を参照して詳細に説明する。
【００３１】
図１は、本発明の実施例１によるテストパターン編集装置１００の構成を示すブロック図である。
【００３２】
図１を参照すると、実施例１によるテストパターン編集システム１００は、ＬＳＩのファンクションテストに用いる情報を有しているテストパターンを編集し、ＬＳＩに入力可能なテストパターンであるパターンオブジェクトを生成するテストパターン編集装置であって、外部と接続するインターフェイス部１０と、テストパターン変形処理部２０と、記憶部３０と、変形テストパターン検証処理部４０と、パターン数削減編集部５０と、ＬＳＩテスタ用変換処理部６０と、各部を制御する制御部７０と、各部を連絡させるバス８０とを備えている。
【００３３】
ここで、テストパターンとは、ＬＳＩの機能動作をテストするテストパターンであり、ファンクションテストパターンとも呼ばれているものである。
【００３４】
インターフェイス部１０は、ＬＳＩのファンクションテストに用いる情報を有しているテストパターン１１と、クロック信号ピン名（外部入力ピン名）と、１つのテストレートあたりのクロック信号ピン毎のデータを入力するタイミング、クロック信号印加のタイミング及び期待値比較のタイミング（タイミングパターンという。）などとを示すパラメータ１２とを入力する。
【００３５】
このタイミングパターンは、各タイミングの周期を示すパターン数や、１つのテストレート中のデータの入力と、クロック信号の印加と、期待値比較との順番や、この順番が繰り返される全体のパターン数などを示す。
【００３６】
ここで、テストレートは、テストパターンの構成の基準となる１周期分のテストパターンのことである。
【００３７】
また、パラメータ１２は、入力データの変化の有無を解析するタイミングと、クロック信号の変化の有無を解析するタイミングと、期待値の変化の有無を解析するタイミング（解析用タイミングパターン）とを指定する。
【００３８】
この解析用タイミングパターンは、各解析用タイミングの周期を示すパターン数や、テストレートあたりの入力データの変化の有無の解析と、クロック信号の変化の有無の解析と、期待値の変化の有無の解析との順番や、この順番が繰り返される全体のパターン数などを示す。
【００３９】
テストパターン変形処理部２０は、インターフェイス部２１を介してテストパターン１１とパラメータ１２とを入力し、パラメータ１２が指定する解析用タイミングになるように、テストパターン１１を変形する。
【００４０】
この変形は、テストパターン１１に所定の冗長パターンを挿入することにより、所定の複数の単位パターン（所定の複数のシミュレーションの１パターン）からなる規則パターンが繰り返される変形テストパターンをテストパターン１１から作成することによって行う。
【００４１】
記憶部３０は、テストパターン編集プログラム２００、変形前のテストパターンであるテストパターン１１及びその動作を記憶している。
【００４２】
変形テストパターン検証処理部４０は、テストパターン変形処理部２０で変形されたテストパターンが、記憶部３０で記憶されているテストパターン１１と同じ動作をするかどうかを確認する。この確認は、シミュレーションによって行う。
【００４３】
パターン数削減編集部５０は、テストパターン変形処理部２０で変形され、変形テストパターン検証処理部４０で同じ動作を確認された変形後テストパターンについて、パラメータ１２が指定する解析用タイミングパターンに従って、変形テストパターンを構成する複数の規則パターンをそれぞれ１つの単位パターンにまとめることによりパターン数を削減する編集をする。
【００４４】
ＬＳＩテスタ用変換処理部６０は、テストパターンについてＬＳＩテスタ用の変換処理を行うものであり、パターン数削減編集部５０で編集された編集後のテストパーンから、ＬＳＩに入力可能なテストパターンであるパターンオブジェクト６１を生成し、ＬＳＩ用テスタに出力する。
【００４５】
図２は、テストパターン変形処理部２０の詳細な構成を示すブロック図である。
【００４６】
図２を参照すると、テストパターン変形処理部２０は、入力情報抽出部２１と、テストパターン解析部２２と、パターン変形部２３とを備えている。
【００４７】
入力情報抽出部２１は、インターフェイス部１０を介してテストパターン１１とパラメータ１２とを入力する。
【００４８】
そして、テストパターン１１及びパラメータ１２について、タイミングパターンと、クロック信号ピン名と、クロック信号ピンに対応し、１つのテストレートあたりの入力データの変化の有無を解析するタイミング、クロック信号の変化の有無を解析するタイミング、期待値の変化の有無を解析するタイミングの順番を示すパターンシーケンス１１ａ，１２ａとを抽出する。
【００４９】
テストパターン解析部２２は、入力情報抽出部２１で抽出したパターンシーケンス１１ａ，１２ａを解析し、両パターンシーケンスが一致するか否かの判定を行う。
【００５０】
両パターンシーケンスが一致していないと判定された場合、テストパターン１１に、所定の冗長パターンを挿入することで、同一種類のクロック信号あたりの１組のアップエッジとダウンエッジとで入力するデータが異なるクロック信号の前記１組のアップエッジとダウンエッジとを、それぞれ振り分けたパターンとすることで規則パターンを作成することにより、両パターンシーケンスを一致させる。
【００５１】
もしくは、パラメータ１２を変更して新たなパターンシーケンス１２ａを作成しすることによって、両パターンシーケンスを一致させてもよい。
【００５２】
パターン変形部２３は、テストパターン解析部２２で両パターンシーケンスが一致していると判定された場合、今度は、テストパターン１１について、テストレート毎に、入力データの変化のタイミングと、クロック信号の印加のタイミングと、期待値比較のタイミングとを、パラメータ１２が指定するパターン数によるタイミングに従うように変形する。
【００５３】
この変形は、所定の冗長パターンを挿入することにより、規則パターン毎に、入力するデータの変化の有無を解析するタイミングと、クロック信号の変化の有無を解析するタイミングと、期待値変化の有無を解析するタイミングとを少なくとも１回ずつ、かつ、同一種類の解析用タイミングを同じ周期で訪れさせることによって行う。
【００５４】
さらに、この規則パターンの構成のうち、テストパターンの先頭に位置する単位パターンから、入力するデータの変化の有無を解析するタイミングと、クロック信号の変化の有無を解析するタイミングと、期待値変化の有無を解析するタイミングとが出揃う単位パターンまでからなる複数の単位パターンを規則パターンとしてもよい。
【００５５】
また、規則パターン毎で入力するデータの変化の回数と、クロック信号の変化の回数と、期待値変化の回数とがそれぞれ一致していない場合は、全ての規則パターンのうち、変化の回数が最も多いそれぞれの回数を、変形テストパターン内で繰り返される規則パターンにおいて統一された各解析用タイミングの回数とする。
【００５６】
これらの変形によって、各規則パターンが同じ解析用タイミングで構成される。
【００５７】
パターン変形部２３は、以上のように処理することによって、パラメータ１２が指定する解析用タイミングに従って、テストパターン１１を変形し、この変形した変形後テストパターンを、変形テストパターン検証処理部４０に出力する。  
次に、テストパターン編集装置１００の動作を説明する。
【００５８】
図３は、実施例１によるテストパターン編集装置１００の動作を説明するためのフローチャートである。
【００５９】
図１、図２、及び図３を参照すると、最初に、テストパターン変形処理部２０の入力情報抽出部２１が、インターフェイス部１０を介して、テストパターン１１及びパラメータ１２を入力する（ステップ４０１、ステップ４０２：以下、ステップをＳとする。）
次に、パターン抽出部２１が、Ｓ４０１及びＳ４０２で入力されたテストパターン１１及びパラメータ１２から、タイミングパターンと、解析用タイミングパターンと、クロック信号ピン名と、パターンシーケンス１１ａ，１２ａなどとを抽出する（Ｓ４０３）。
【００６０】
次に、テストパターン解析部２２が、Ｓ４０３で抽出したパターンシーケンス１１ａ，１２ａを解析（Ｓ４０４）し、両パターンシーケンスが一致するか否かの判定を行う（Ｓ４０５）。
【００６１】
Ｓ４０５で一致していないと判定された場合、ＳＴＡＲＴに戻って、テストパターン１１、もしくはパラメータ１２の変更を行い、Ｓ４０１から繰り返し処理をする。
【００６２】
一方、Ｓ４０５で一致していると判定された場合、パターン変形部２３で、所定の冗長パターンを挿入することなどにより、パターンシーケンス１１ａの各順番のタイミングについて、パラメータ１２が指定するパターン数によるタイミングに従うように変更する（Ｓ４０６）。
【００６３】
以上の処理によって、テストパターン１１は、自己の解析用タイミングパターンが、パラメータ１２が指定する解析用タイミングパターンと一致するように変形されることとなる。
【００６４】
また、テストパターン１１に所定の冗長パターンを挿入することにより、所定の複数の単位パターンからなる規則パターンが繰り返される変形テストパターンを作成しているので、変形テストパターンの複数の規則パターンをそれぞれ１つの単位パターンにまとめることが可能な状態となっている。
【００６５】
次に、変形テストパターン検証処理部４０が、シミュレーションを行う（Ｓ４０７）。そして、上記Ｓ４０６で両解析用タイミングパターンが一致するように変形された変形後テストパターンが、変形前のテストパターン１１と同じ動作をするか否かを判定する（Ｓ４０８）。
【００６６】
シミュレーションの結果エラーがある場合は、同じ動作をしないものと判定し、ＳＴＡＲＴに戻って、テストパターン１１、もしくはパラメータ１２の変更を行い、Ｓ４０１から繰り返し処理をする。
【００６７】
シミュレーションの結果エラーが無い場合は、同じ動作をするものと判定され、パターン数削減編集部６０が、Ｓ４０６で生成された複数の単位パターンからなる規則パターンを１パターンにまとめ、テストパターン１１のパターン数を削減する編集を行う（Ｓ４０９）。
【００６８】
ＬＳＩテスタ用変換処理部６０は、Ｓ４０９で編集した編集後のテストパーンから、ＬＳＩ用テスタに入力可能なテストパターンであるパターンオブジェクト６１を生成する（Ｓ４１０）。
【００６９】
次に、実施例１について、具体例を用いて説明する。
【００７０】
図５は、ＬＳＩの一例を示す模式図である。
【００７１】
図５を参照すると、このＬＳＩは、内部エリア（ＣＯＲＥ）と、外部入力マクロ（ＩＭ）と、外部出力マクロ（ＯＭ）と、外部入力ピンと、外部出力ピンとを備えている。
【００７２】
また、図４は、内部エリアへ印加するクロック信号であるＣＬＫＡと、外部入力マクロ及び外部出力マクロへのそれぞれに印加するクロック信号であるＣＬＫＢと、外部入力ピンへの入力データであるＤＡＴＡｉｎと、外部出力ピンからの出力データであるＤＡＴＡｏｕｔとを示している。
【００７３】
図５は、図４のＬＳＩについての機能動作のテストであるファンクションテストに用いるテストパターン１１を示す図である。
【００７４】
図５を参照すると、テストパターン１１は、テストレートあたり８パターンからなる１つのクロックサイクルにおいて、ＤＡＴＡｉｎで示される入力データがＣＬＫＢの両エッジで異なっている。
【００７５】
すなわち、同一種類のクロック信号ＣＬＫＢあたりの１組のアップエッジとダウンエッジとで入力するデータが異なっている
一例として、６パターン目で「ａ」というデータが「ｂ」というデータに変化しているので、ＣＬＫＢの５パターン目の頭のエッジでは「ａ」というデータが入力されており、これと対になる７パターン目頭のエッジでは「ｂ」というデータが入力されている。
【００７６】
図５を参照すると、最初に、外部入力ピンにＤＡＴＡｉｎとして、１パターン目で「ａ」というデータを与えられている場合は、５パターン目のＣＬＫＢのアップエッジにより、「ａ’」というデータが外部入力マクロ（ＩＭ）に入力される。
【００７７】
次に、外部入力マクロ（ＩＭ）に入力された「ａ’」というデータは、１１パターン目のＣＬＫＡのアップエッジにより、「ａ’’」というデータとして内部エリア（ＣＯＲＥ）に入力される。
【００７８】
次に、内部エリア（ＣＯＲＥ）に入力された「ａ’’」というデータは、１３パターン目のＣＬＫＢのアップエッジにより、「ａ’’’」というデータとして外部出力マクロ（ＯＭ）に取り込まれる。
【００７９】
最後に、外部出力マクロ（ＯＭ）に入力された「ａ’’’」というデータは、外部出力ピンからＤＡＴＡｏｕｔとして「Ａ」というデータで１３パターン目から出力され、期待値比較をされる。
【００８０】
図６は、図５で示したテストパターン１１に対応するパラメータ１２を示す図である。
【００８１】
図６を参照すると、１，２行目に示されたＣＬＫレコードによって、ＣＬＫＡ、ＣＬＫＢのクロック信号ピン名（外部ピン名）の指定している。
【００８２】
また、３行目において、ＣＬＫＡの変化の有無を示す「ＣＬＫＡ」の解析のタイミングと、ＣＬＫＢの変化の有無を示す「ＣＬＫＢ」の解析のタイミングと、外部出力ピンの期待値の変化の有無を示す「ＯＵＴ」の解析のタイミングと、外部入力ピンの入力データの変化の有無を示す「ＩＮ」の解析のタイミングとが、ＳＥＱレコードでＣＬＫＡ、ＣＬＫＢ、ＯＵＴ、ＩＮの順番であることを指定している。
【００８３】
図５で示したテストパターン１１について、図７は、編集前のものを示す図であり、図８は、編集後のものを示す図である。
【００８４】
図７を参照し、パターンシーケンス１１ａについて、パラメータ１２で指定するパターンシーケンス１２ａ及びパターン数と一致する部分はそのままとする。
【００８５】
一方、パターンシーケンス１２ａと一致するが、パターン数と一致しない部分は、テストパターン１１を変形してパターン数を一致させ、テストパターンの規則化を行う。
【００８６】
ここで、パターンシーケンス１２ａは、図６のパラメータ１２で指定されるＣＬＫレコード及びＳＥＱレコードによって定まるものである。なお、説明簡便のため、ＣＬＫレコードについては、一致しているものとする。
【００８７】
また、ここで指定されるパターン数は、図７，図８から６パターンが認識されるので、パラメータ１２は、ＣＬＫＡ、ＣＬＫＢ、ＯＵＴ、ＩＮが、この順番で６パターン毎に繰り返されることを指定する（規則パターンのパターン数６）。
【００８８】
その理由は、ＳＥＱレコードの最後の「ＩＮ」が、テストパターン１１の先頭から数えて６パターン目に訪れているからである。
【００８９】
テストパターン１１のテストレートは８パターンからなるクロックサイクルであり、このうち、１〜６パターン目までは、パターンシーケンス１２ａ及び指定されたパターン数と一致するのでそのままとする。
【００９０】
すなわち、テストパターン１１とパラメータ１２とで解析用タイミングパターンが一致するのでそのままとする。
【００９１】
その理由は、ＳＥＱレコードに従って、パターン数６で、ＣＬＫＡの変化が２パターン目で解析され（変化有り）、ＣＬＫＢの変化が４パターン目で解析され（変化有り）、外部出力ピンの期待値の変化が５パターン目で解析され（変化有り）、入力データの変化が６パターン目で解析されている（変化有り）からである（図７，図８（１））。
【００９２】
一方、７〜８パターン目までは、パターンシーケンス１２ａと一致するが、指定されたパターン数６と一致しないので、テストパターン１１を変形し、テストパターンの規則化を行う。
【００９３】
この規則化は、テストレート毎に所定の冗長パターンを挿入することにより、指定されたパターン数に一致させることで行う。
【００９４】
７〜８パターン目については、最初にＣＬＫＡの変化がなく、すぐに７パターン目でＣＬＫＢの変化がある。従って、ＳＥＱレコード及び前述の１〜６パターン目までの解析用タイミングパターンにならい、ＣＬＫＢの変化が新たな規則パターンの４パターン目になるように、７パターン目の頭に冗長パターンとして４パターン分挿入して、指定されたパターン数６の新たな規則パターン（図８のパターンシーケンス）を作成する。
【００９５】
これによって、図８（１）と同様に、ＣＬＫＡの変化の有無を解析する（変化無し）タイミングが新たなパターンシーケンスの２パターン目になり、ＣＬＫＢの変化の有無を解析する（変化有り）タイミングが同４パターン目になり、外部出力ピンの期待値の変化の有無を解析する（変化無し）タイミングが同５パターン目になり、入力データの変化の有無を解析する（変化有り）タイミングが同６パターン目になる（図８（２））。
【００９６】
パターンシーケンス１２ａ及び指定されたパターン数と一致するか否かの判断をテストパターン１１の全ての部分について行うと、１〜６パターン目、９〜１４パターン目、１７〜２２パターン目ついては、パターンシーケンス１２ａ及びパターン数と一致すると判断してそのままとする（図８（１），（３），（５））。
【００９７】
すなわち、図８（３），（５）については、図８（１）と同様に、ＳＥＱレコードに従って、パターン数６毎に、パラメータ１２で指定した解析用タイミングパターンと一致することとなる。
【００９８】
図８（７）については、ＣＬＫＡが変化しているものの、ＣＬＫＢの変化、外部出力ピンの期待値の変化及び入力ピンの変化がないので、パターン数６に規則化されている。その結果、新たなパターンシーケンスの２パターン目にＣＬＫＡが変化し、他の条件もパラメータ１２で指定した解析用タイミングパターンと一致することとなる。
【００９９】
一方、７〜８パターン目、１５〜１６パターン目、２３〜２４パターン目については、パターンシーケンス１２ａと一致するが、パターン数と一致しないと判断する。
【０１００】
そこで、前述のように、６パターン目と７パターン目との間、１４パターン目と１５パターン目との間、２２パターン目と２３パターン目との間にそれぞれ冗長パターン（図８の規則化のためのパターン）として４パターン分挿入して、指定されたパターン数と一致させている（図８（２），（４），（６））。
【０１０１】
すなわち、図８（４），（６）については、図８（２）と同様に、ＳＥＱレコードに従って、パターン数６毎に、パラメータ１２で指定した解析用タイミングパターンと一致することとなる。
【０１０２】
実施例１は、次に、変形後テストパターンについて、変形テストパターン検証処理部４０でシミュレーションを行う。その結果、変形後テストパターンがテストパターン１１と同じ動作をした場合、規則化されたパターン数６毎に１セットとして、パターン数削減編集部５０で１パターンにまとめられる（図８（１）〜（７））。
【０１０３】
最後に、ＬＳＩテスタ用変換処理部６０によって、パターンオブジェクト６１をＬＳＩ用テスタに出力する。
【０１０４】
このようにすることで、テストレート毎に、繰り返しの基準パターン（規則パターン）となる６パターンを１パターンにまとめることができたので、ＬＳＩ用テスタに入力するテストパターンのパターン数を削減できた（図８（１）〜（７））。
【０１０５】
さらに、パターン数の削減により、編集前にテストレートあたり８パターンであったクロックサイクルが、２パターンに編集されたので、クロックサイクルを高速化することができた。
【０１０６】
以上述べたように、実施例１によるテストパターン編集装置１００は、クロック信号の両エッジで入力データが異なる場合であっても、テストパターン１１を編集することによって、パターン数を減少させたテストパターンの作成を可能とした。
【０１０７】
すなわち、テストパターン１１を編集することによって、パターン数がパターン数８からパターン数２に減少した。
【０１０８】
その理由は、所定の冗長パターン（パターン数４）を挿入することにより、テストパターン１１の各種情報の変化の有無を解析するタイミングである解析用タイミングパターンをパラメータ１２に従い一定のものに規則化することで、複数の単位パターンからなる規則パターン（パターン数６）を作成するので、テストパターンを構成している各規則パターンをそれぞれ１パターンにまとめるからである。
【０１０９】
さらにまた、ＬＳＩのファンクションテストをするテストパターンにおいて、クロック信号の両エッジで入力データが異なる場合であっても、クロックサイクルの高速化を可能とした。
【０１１０】
すなわち、テストパターン１１を編集することによって、クロックサイクルが、クロックサイクル数８からクロックサイクル数２に減少した。
【０１１１】
その理由は、以下の通りである。
【０１１２】
テストパターンに所定の冗長パターンを挿入することにより、規則パターン毎に、入力するデータの変化の有無を解析するタイミングと、クロック信号の変化の有無を解析するタイミングと、期待値変化の有無を解析するタイミングとが少なくとも１回ずつ、かつ、同一種類の解析するタイミングが同じ周期で訪れるので、各規則パターンが同じタイミングで構成されることになったからである。
【０１１３】
すなわち、複数の単位パターンからなる各規則パターンをそれぞれ同じ規則の下で新たな単位パターンにまとめることができたからである。
【０１１４】
また、入力するデータの変化と、クロック信号の変化と、期待値変化とが複雑なタイミングで訪れるテストパターンであっても、パターン数の削減及びクロックサイクルの高速化を可能とした。
【０１１５】
その理由は、テストパターンの先頭に位置する前記単位パターンから、入力するデータの変化の有無を解析するタイミングと、クロック信号の変化の有無を解析するタイミングと、期待値変化の有無を解析するタイミングとが出揃う単位パターンまでとすることで、規則パターンを、最小限の単位の１組の解析用タイミングから構成させることにより、複雑なタイミングで訪れるテストパターンを規則的により細分化できるからである。
【０１１６】
また、クロック信号の両エッジで入力データが異なるテストパターンであっても、精度を維持して、パターン数を削減して行うファンクションテストを可能とした。
【０１１７】
その理由は、作成された変形テストパターンと、変更前のテストパターンとが同じ動作をする場合に、パターン数を削減するからである。
【実施例２】
【０１１８】
図９〜図１１は、本発明の実施例２を示す図である。
【０１１９】
実施例２は、実施例１と同様に、同一種類のクロック信号ＣＬＫＡあたりの１組のアップエッジとダウンエッジとで入力するデータが異なっている。すなわち、７パターン目の頭と８パターン目の頭とにあるクロック信号のアップエッジとダウンエッジとで入力データが異なっている。
【０１２０】
図９は、実施例２によるテストパターンに対応するパラメータを示す図である。
【０１２１】
実施例１と異なる点は、ＣＬＫレコードが１種類である点、ＳＥＱレコードがＩＮ，ＣＬＫ，ＩＮ，ＯＵＴである点及び後述する図１０から判断し、指定されるパターン数がパターン数４である点である。すなわち、規則パターンのパターン数が４である。
【０１２２】
図１０は、実施例２による編集前のテストパターンの１テストレートを示す図である。
【０１２３】
実施例１と異なる点は、クロック信号が１種類である点及びクロックサイクルがパターン数９である点などである。
【０１２４】
図１１は、実施例２による編集後のテストパターンを示す図である。
【０１２５】
実施例１と異なる点は、２パターン目と３パターン目との間、５パターン目と６パターン目との間、８パターン目と９パターン目との間にそれぞれ１パターン分の冗長パターン（図１１の規則化のためのパターン）を挿入することで、規則パターン（図１１のパターンシーケンス）がパターン数２で構成されている点である。
【０１２６】
実施例２によれば、テストレートあたり、編集前にパターン数９であったものが、編集後はパターン数６に削減されている。
【０１２７】
実施例２によれば、印加されるクロック信号が１種類で、そのクロック信号の両エッジで入力データが異なる場合であっても、実施例１と同様にテストパターンを編集し、パターン数を減少させたテストパターンの作成を可能とした。
【０１２８】
本発明のテストパターン編集装置１００は、その動作をハードウェア的に実現することは勿論として、上記した各手段を実行するテストパターン編集プログラム２００をコンピュータ処理装置の制御部７０で実行することにより、ソフトウェア的に実現することができる。このテストパターン編集プログラム２００は、磁気ディスク、半導体メモリその他の記録媒体が挙げられる記憶部３０に格納され、その記憶部３０から制御部７０にロードされ、その動作を制御することにより、上述した各機能を実現する。
【０１２９】
以上好ましい複数の実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図面の簡単な説明】
【０１３０】
【図１】本発明の実施例１によるテストパターン編集装置１００の構成を示すブロック図である。
【図２】テストパターン編集装置１００のテストパターン変形処理部２０の構成を示すブロック図である。
【図３】本発明の実施例１によるテストパターン編集装置１００の動作を説明するためのフローチャートである。
【図４】本発明の実施例１によるＬＳＩの一例を示す模式図である。
【図５】本発明の実施例１によるテストパターン１１を示す図である。
【図６】テストパターン１１に対応するパラメータ１２を示す図である。
【図７】本発明の実施例１によるテストパターン１１について、編集前のテストパターンを示す図である。
【図８】本発明の実施例１によるテストパターン１１について、編集後のテストパターンを示す図である。
【図９】本発明の実施例２によるテストパターンに対応するパラメータを示す図である。
【図１０】本発明の実施例２による編集前のテストパターンを示す図である。
【図１１】本発明の実施例２による編集後のテストパターンを示す図である。
【符号の説明】
【０１３１】
１０：インターフェイス部
２０：テストパターン変形処理部
２１：入力情報抽出部
２２：テストパターン解析部
２３：パターン変形部
３０：記憶部
４０：変形テストパターン検証処理部
５０：パターン数削減編集部
６０：ＬＳＩテスタ用変換処理部
７０：制御部
８０：バス
１００：テストパターン編集装置
２００：テストパターン編集プログラム
【図１】
2006184020.tif 000003
【図２】
2006184020.tif 000004
【図３】
2006184020.tif 000005
【図４】
2006184020.tif 000006
【図５】
2006184020.tif 000007
【図６】
2006184020.tif 000008
【図７】
2006184020.tif 000009
【図８】
2006184020.tif 000010
【図９】
2006184020.tif 000011
【図１０】
2006184020.tif 000012
【図１１】
2006184020.tif 000013