(57)【特許請求の範囲】
【請求項１】
集積回路のテストパターンを作成するために操作者によって操作されるテストパターン作成装置において、
集積回路の信号値から成るパターンである信号パターンと文字列とを対応づけるテーブルを記憶するためのテーブル記憶手段と、
操作者の操作に基づき、信号パターンと文字列とを対応づけて前記テーブル記憶手段に記憶させることにより該文字列をキーワードとして定義する定義手段と、
集積回路のテストパターンを記憶するためのパターン記憶手段と、
操作者の操作に基づいて集積回路の信号値または前記キーワードを順次入力し、入力された信号値または前記キーワードから成るパターンを集積回路のテストパターンとして前記パターン記憶手段に記憶させるパターン入力手段と、
前記パターン記憶手段に記憶されたテストパターンを表示する表示手段と、
操作者の操作に基づき、前記パターン記憶手段に記憶されたテストパターンに含まれる前記キーワードを前記テーブルによって対応づけられた信号パターンに変換する順変換手段と、
操作者の操作に基づき前記テストパターンを編集するために必要な情報を入力する編集入力手段と、
前記パターン記憶手段に記憶されているテストパターンを前記情報に基づいて編集する編集処理手段と、
操作者の操作に基づき、前記パターン記憶手段に記憶されているテストパターン内の領域をロック領域として設定するロック設定手段と、
前記編集入力手段によって入力された情報により前記ロック領域に対する編集が指示されている場合には、前記編集処理手段による該編集を抑止して、前記ロック領域の内容を保持するロック制御手段と、
を備えたことを特徴とするテストパターン作成装置。
【請求項２】
集積回路のテストパターンを作成するために操作者によって操作されるテストパターン作成装置において、
集積回路の信号値から成るパターンである信号パターンと文字列とを対応づけるテーブルを記憶するためのテーブル記憶手段と、
操作者の操作に基づき、信号パターンと文字列とを対応づけて前記テーブル記憶手段に記憶させることにより該文字列をキーワードとして定義する定義手段と、
集積回路のテストパターンを記憶するためのパターン記憶手段と、
操作者の操作に基づいて集積回路の信号値または前記キーワードを順次入力し、入力された信号値または前記キーワードから成るパターンを集積回路のテストパターンとして前記パターン記憶手段に記憶させるパターン入力手段と、
前記パターン記憶手段に記憶されたテストパターンを表示する表示手段と、
前記パターン記憶手段に記憶されたテストパターンに含まれる信号パターンのうち前記テーブル記憶手段に記憶された信号パターンと一致する信号パターンを、前記テーブルによって対応づけられた前記キーワードに変換する逆変換手段と、
操作者の操作に基づき前記テストパターンを編集するために必要な情報を入力する編集入力手段と、
前記パターン記憶手段に記憶されているテストパターンを前記情報に基づいて編集する編集処理手段と、
操作者の操作に基づき、前記パターン記憶手段に記憶されているテストパターン内の領域をロック領域として設定するロック設定手段と、
前記編集入力手段によって入力された情報により前記ロック領域に対する編集が指示されている場合には、前記編集処理手段による該編集を抑止して、前記ロック領域の内容を保持するロック制御手段と、
を備えたことを特徴とするテストパターン作成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集積回路のテストパターンを作成するために使用されるテストパターン作成装置に関する。
【０００２】
【従来の技術】
従来、ＬＳＩ（大規模集積回路）のテストパターンの作成においては、ＬＳＩの各ピンの信号の値を時間の経過に従って「１」または「０」の数字列で表し、このような数値列を、ＥＷＳ（エンジニアリング・ワークステーション）上で動作する汎用のテキスト・エディタによって入力し編集するということが行われていた。しかし、近年のＬＳＩの高集積化に伴って、ＬＳＩのピン数やテスト時間に対応するサイクル数が増大し、テストパターンが長大なものとなっている。このため、「１」と「０」の羅列によって各ピンの信号の時間的変化を把握し、ＬＳＩの動作を理解するのは困難な場合が多い。この結果、テストパターンの作成に大きな労力を要するとともに、テストパターンの作成においてミスが生じやすくなっている。また、同じパターンを多くの箇所に記述する必要が生じており、これを「１」と「０」によって記述することもミスを生じやすくしている。さらに、他人が作成したテストパターンや自分が過去に作成したテストパターンを利用して新たなテストパターンを作成する場合には、「１」と「０」から成る長大なテストパターンを読んで理解しなければならず、設計資源の再利用にも多大な時間が必要となっている。
【０００３】
これに対し特開平２−２０１５４５号公報には、ＣＰＵの動作を示すニモニック・コードをエディタから入力してテストパターンに変換することができるテストパターン作成装置が開示されている。このようなテストパターン作成装置によれば、テスト対象のＬＳＩの動作の理解が容易となり、テストパターンを効率よく作成することができる。
【０００４】
【発明が解決しようとする課題】
しかし、上記公報に開示されたテストパターン作成装置では、テストできるＬＳＩおよび作成できるテストパターンがＣＰＵのニモニック・コードによって限定される。また、既存のテストパターンを再利用する際には、「１」と「０」から成る既存のテストパターンをＣＰＵのニモニック・コードに変換して、テスト対象のＬＳＩの動作の理解を容易にすることが望ましいが、この点について前記公報は何ら言及していない。
【０００５】
ところで、ＬＳＩのテストパターンの作成においては、通常、既存のテストパターン（入力済みのテストパターン）に対する変更、追加、削除などの編集作業が必要となる。この場合、編集する必要のない部分や編集したくない部分を誤って編集し、その結果、誤りのあるテストパターンが作成されることがある。ＬＳＩの高集積化に伴うテストパターンの長大化により、テストパターンの把握やＬＳＩの動作の理解が困難となってきているため、このような編集対象の誤認の可能性は高くなっている。
【０００６】
本発明は以上のような問題を解決すべくなされたものであり、その目的は、ＣＰＵのニモニック・コードによる入力等というような限定によって汎用性を損なうことなく、集積回路のテストパターンを効率よくかつ誤りなく作成することができるテストパターン作成装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記課題を解決するために成された本発明に係る第１のテストパターン作成装置は、集積回路のテストパターンを作成するために操作者によって操作されるテストパターン作成装置であって、
集積回路の信号値から成るパターンである信号パターンと文字列とを対応づけるテーブルを記憶するためのテーブル記憶手段と、
操作者の操作に基づき、信号パターンと文字列とを対応づけて前記テーブル記憶手段に記憶させることにより該文字列をキーワードとして定義する定義手段と、
集積回路のテストパターンを記憶するためのパターン記憶手段と、
操作者の操作に基づいて集積回路の信号値または前記キーワードを順次入力し、入力された信号値または前記キーワードから成るパターンを集積回路のテストパターンとして前記パターン記憶手段に記憶させるパターン入力手段と、
パターン記憶手段に記憶されたテストパターンを表示する表示手段と、
操作者の操作に基づき、パターン記憶手段に記憶されたテストパターンに含まれる前記キーワードを前記テーブルによって対応づけられた信号パターンに変換する順変換手段と、
操作者の操作に基づき前記テストパターンを編集するために必要な情報を入力する編集入力手段と、
前記パターン記憶手段に記憶されているテストパターンを前記情報に基づいて編集する編集処理手段と、
操作者の操作に基づき、前記パターン記憶手段に記憶されているテストパターン内の領域をロック領域として設定するロック設定手段と、
前記編集入力手段によって入力された情報により前記ロック領域に対する編集が指示されている場合には、前記編集処理手段による該編集を抑止して、前記ロック領域の内容を保持するロック制御手段と、
を備えた構成としている。
このような構成によれば、操作者は、定義手段によって所定の信号パターンに対応づけてキーワードで定義しておき、信号値とともにこのキーワードを用いて、パターン入力手段によりテストパターンの入力を行うことができる。このようにして入力されたテストパターンは、パターン記憶手段に記憶されるとともに、表示手段に表示される。表示されるテストパターン（の一部）は、キーワードによって表現されており、操作者は、これを見てテストパターンの内容を把握し、集積回路の動作を理解する。また操作者は、必要に応じて順変換手段により、テストパターンに含まれるキーワードを信号パターンに変換する。
また、操作者は、ロック設定手段により、記憶手段に記憶されているテストパターンのうち編集すべきでない部分をロック領域とすることができる。このようなロック領域が設定された後は、操作者が誤って編集すべきでない部分（ロック領域）に対する編集を編集入力手段によって指示しても、その編集はロック制御手段によって抑止され、ロック領域の内容はそのまま保持される。
【０００８】
本発明に係る第２のテストパターン作成装置は、集積回路のテストパターンを作成するために操作者によって操作されるテストパターン作成装置であって、
集積回路の信号値から成るパターンである信号パターンと文字列とを対応づけるテーブルを記憶するためのテーブル記憶手段と、
操作者の操作に基づき、信号パターンと文字列とを対応づけてテーブル記憶手段に記憶させることにより該文字列をキーワードとして定義する定義手段と、
集積回路のテストパターンを記憶するためのパターン記憶手段と、
操作者の操作に基づいて集積回路の信号値または前記キーワードを順次入力し、入力された信号値または前記キーワードから成るパターンを集積回路のテストパターンとしてパターン記憶手段に記憶させるパターン入力手段と、
パターン記憶手段に記憶されたテストパターンを表示する表示手段と、
パターン記憶手段に記憶されたテストパターンに含まれる信号パターンのうちテーブル記憶手段に記憶された信号パターンと一致する信号パターンを、前記テーブルによって対応づけられた前記キーワードに変換する逆変換手段と、
操作者の操作に基づき前記テストパターンを編集するために必要な情報を入力する編集入力手段と、
前記パターン記憶手段に記憶されているテストパターンを前記情報に基づいて編集する編集処理手段と、
操作者の操作に基づき、前記パターン記憶手段に記憶されているテストパターン内の領域をロック領域として設定するロック設定手段と、
前記編集入力手段によって入力された情報により前記ロック領域に対する編集が指示されている場合には、前記編集処理手段による該編集を抑止して、前記ロック領域の内容を保持するロック制御手段と、
を備えた構成としている。
このような構成によれば、操作者は、信号値または定義手段によって定義したキーワードを用いて、パターン入力手段によりテストパターンの入力を行う。このようにして入力されたテストパターンは、パターン記憶手段に記憶されるとともに、表示手段に表示される。また操作者は、必要に応じて更に、定義手段によって所定の信号パターンをキーワードと対応づけてテーブル記憶手段に記憶しておき、逆変換手段により、パターン記憶手段に記憶されているテストパターンに含まれる所定の信号パターンをキーワードに変換する。この変換後のテストパターンは表示手段に表示され、操作者は、これを見てテストパターンの内容を把握し、集積回路の動作を理解する。
また、操作者は、ロック設定手段により、記憶手段に記憶されているテストパターンのうち編集すべきでない部分をロック領域とすることができる。このようなロック領域が設定された後は、操作者が誤って編集すべきでない部分（ロック領域）に対する編集を編集入力手段によって指示しても、その編集はロック制御手段によって抑止され、ロック領域の内容はそのまま保持される。
【００１０】
【発明の実施の形態】
＜実施形態の全体構成＞
図２は、本発明の一実施形態であるテストパターン作成装置のハードウェア構成を示す図である。本テストパターン作成装置のハードウェアは、ＣＰＵ、メモリ、およびハードディスクやフロッピーディスクなどの補助記憶装置から成る本体５４と、ディスプレイ５２と、キーボード５６と、マウス５８とから構成されるコンピュータ５０である。なお、マウス５８の代わりに他のポインティング・デバイスを用いた構成であってもよい。
【００１１】
上記構成のコンピュータ５０は、本体５４内のメモリに格納される所定のプログラムをＣＰＵが実行することにより、テストパターン作成装置として動作する。図１（ａ）は、このようなテストパターン作成装置の構成を概念的に示す機能ブロック図である。この図に示すように、本テストパターン作成装置は、概念的には、入力部１０、編集部２０、パターン記憶部３０、および表示部４０から構成される。入力部１０は、テストパターン作成者によるキーボード５６等の操作に基づいてテストパターンを入力し、入力したテストパターンをコンピュータ本体５４内のメモリによって構成されるパターン記憶部３０に格納する。また編集部２０は、テストパターン作成者によるキーボード５６やマウス５８の操作に基づいて、パターン記憶部３０に格納されているテストパターンに対する変更、追加、削除などの編集処理を行う。そして表示部４０は、ディスプレイ５２等から構成され、パターン記憶部３０に格納されたテストパターンを表示する。
【００１２】
＜テストパターンの入力＞
図１（ｂ）は、本テストパターン作成装置における入力部１０の構成を示す機能ブロック図である。入力部１０は、キーワード定義部１６、キーワード・テーブル１２、キーワード変換部１４、およびパターン入力部１８から構成され、「１」、「０」、不定状態「Ｘ」、高インピーダンス状態「Ｚ」の４種類の信号値から成るテストパターンを入力するために使用される。この入力部１０において、キーワード定義部１６は、キーボード５６等から入力された「１」、「０」、「Ｘ」、「Ｚ」の４種類の信号値から成るパターン（以下「信号パターン」という）と文字列であるキーワードとを対応づけてキーワード・テーブル１２に登録することにより、キーワードを定義する。パターン入力部１８は、キーボード５６等から信号値またはキーワードによって表現されたテストパターンを入力してパターン記憶部３０に格納する。キーワード変換部１４は、キーボード５６またはマウス５８によって入力されるコマンドに応じて、パターン記憶部３０に格納されているテストパターンに含まれているキーワードを信号パターンに変換し、または、そのテストパターンに含まれている所定の信号パターンをキーワードに変換する。
【００１３】
以下、上記構成の入力部１０の動作を図３に示すフローチャートを参照しつつ説明する。本実施形態では、入力部１０の動作が開始されると、コマンドの入力待ちの状態となる。この状態でステップＳ１０において、キーボード５６またはマウス５８によりコマンドが入力されると、ステップＳ１２〜Ｓ１８においてそのコマンドの種類が判定される。
【００１４】
ステップＳ１０において入力されたコマンドがキーワードを定義するためのコマンドである場合は、ステップＳ２０へ進み、キーワード定義部１６が、キーボード５６からキーワードおよびそれに対応づけるべき信号パターン（「１」、「０」、「Ｘ」、「Ｚ」から成るパターン）を入力し、ステップＳ２２において、これをキーワード・テーブル１２に登録する。その後、ステップＳ１０へ戻って再びコマンド待ちの状態となる。図４は、このようにしてキーワード・テーブル１２に登録されたキーワードおよび信号パターンの一例を示している。この例では、４つのキーワード「ＩＮＩＴ」、「ＡＤＤ」、「ＭＯＤＥａ」、「ＴＥＳＴ」が、信号パターン「１１１１」、「１１０１」、「００１１」、「０１０１」にそれぞれ対応づけられている。なお、キーワードに対応づける信号パターンとしては任意のものが可能であって、メモリによる制約を越えない限り、その長さも任意であり、また、隣接する複数のサイクルに亘る信号パターンであってもよい。
【００１５】
ステップＳ１０において入力されたコマンドがテストパターン入力のためのコマンドである場合には、ステップＳ２４へ進み、パターン入力部１８がキーボード５６などからテストパターンを入力してパターン記憶部３０に格納する。このときパターン入力部１８は、従来通り、信号値「１」、「０」、「Ｘ」、「Ｚ」で入力してもよいし、キーワード定義部１６によって定義されたキーワードで入力してもよい。通常は、信号値およびキーワードの双方を用いてテストパターンが入力される。ここで、「キーワードで入力」とは、例えば図５（ａ）の第２サイクルにおけるＤＡＴＡ０〜ＤＡＴＡ３の信号値として「ＩＮＩＴ」を、第４サイクルにおけるＤＡＴＡ０〜ＤＡＴＡ３の信号値として「ＭＯＤＥａ」を、第５サイクルにおけるＰＩＮＡ〜ＰＩＮＤの信号値として「ＴＥＳＴ」を、それぞれ入力することを意味する。ステップＳ２４においてテストパターンを入力した後は、ステップＳ１０へ戻って再びコマンド待ちの状態となる。前記図５（ａ）は、このようにして入力されたテストパターンの一例を示している。この例では、信号値「１」、「０」とともにキーワード「ＩＮＩＴ」、「ＭＯＤＥａ」、「ＴＥＳＴ」を用いて、テストパターンが入力されている。なお、キーワードの定義は、必ずしもテストパターンの入力作業の前に行う必要はなく、テストパターンの入力作業中において必要となったときに行ってもよい。
【００１６】
ステップＳ１０において入力されたコマンドがキーワード変換のためのコマンドである場合には、ステップＳ２６へ進む。キーワード変換には、テストパターン内のキーワードを信号パターンに変換する場合（順変換の場合）と、テストパターン内の信号パターンをキーワードに変換する場合（逆変換の場合）との２種類があり、順変換か逆変換かは本コマンドの入力時にオペランドの一つとして指定できるようになっている。
【００１７】
キーワード変換のコマンドにおいて順変換が指定された場合は次のように動作する。まずステップＳ２６において、キーワード・テーブル１２を検索することにより、パターン記憶部３０に格納されているテストパターン内における各キーワードにつき、それに対応づけられている信号パターンを得る。次にステップＳ２８において、テストパターン内の各キーワードを得られた信号パターンに置き換える。これにより、例えば、キーワードを含む図５（ａ）のテストパターンは、信号値のみから成る図５（ｂ）のテストパターンに変換され、これが表示部４０に表示される。なお、上記のキーワード変換では、キーワード・テーブル１２に登録された全てのキーワードを検索してテストパターン全体に対して順変換を行っているが、本実施形態では、キーワード変換の対象を次のようにして限定することもできる。
（１）テストパターン内においてマウス５８の操作によるラバーバンドで領域を指定し、その領域内のキーワードを信号パターンに変換する。ここで、「ラバーバンドで領域を指定」とは、マウス５８の左ボタンを押してそのままカーソルを移動させ、左ボタンを離すことで、左ボタンを押した位置と離した位置とによって決まる矩形領域を指定することを意味する。
（２）キーワード・テーブル１２に登録されているキーワードの中から一つまたは複数のキーワードを選択し、テストパターン内に存在する選択されたキーワードを全て信号パターンに変換する。
【００１８】
一方、キーワード変換のコマンドにおいて逆変換が指定された場合は次のように動作する。まずステップＳ２６において、キーワード・テーブル１２を検索することにより、パターン記憶部３０に格納されているテストパターンに含まれる信号パターンであってキーワード・テーブル１２に登録されたいずれかの信号パターンと一致するものがあるか否かを調べる。次にステップＳ２８において、キーワード・テーブル１２に登録された信号パターンと一致するものがあれば、テストパターン中のそのような信号パターンを全て対応するキーワードに置き換える。これにより、例えば、信号値のみから成る図５（ｂ）のテストパターンは、キーワードを含む図５（ａ）のテストパターンに変換され、これが表示部４０に表示される。なお、上記のキーワード変換では、キーワード・テーブル１２に登録された全ての信号パターンを検索してテストパターン全体に対して逆変換を行っているが、本実施形態では、キーワード変換の対象を次のようにして限定することもできる。
（１）テストパターン内においてマウス５８の操作によるラバーバンドで領域を指定し、その領域内の信号パターンのうちキーワード・テーブルに登録されている信号パターンをキーワードに変換する。
（２）キーワード・テーブル１２に登録されている信号パターンの中から一つまたは複数の信号パターンを選択し、テストパターン内に存在する選択された信号パターンを全てキーワードに変換する。
【００１９】
以上のようにしてキーワード変換（順変換または逆変換）が行われた後は、ステップＳ１０へ戻って再びコマンド待ちの状態となる。
【００２０】
ステップＳ１０において入力されたコマンドがテストパターン入力を終了するためのコマンドである場合には、入力部１０の動作が終了する。
【００２１】
なお、ステップＳ１０において入力されるコマンドは上記以外にも存在し、上記以外のコマンドについても、それぞれのコマンドに応じた処理が行われる（ステップＳ３０）。例えばセーブコマンドが入力されると、パターン記憶部３０に格納されているテストパターンをハードディスク等の補助記憶装置に保存するという処理が行われ、その後、ステップＳ１０へ戻って再びコマンド待ちの状態となる。
【００２２】
以上説明した入力部１０の動作からわかるように、本実施形態のテストパターン作成装置によれば、キーワードを定義しておくことにより（ステップＳ２０、Ｓ２２）、複数の信号値から成る信号パターンの代わりにキーワードを用いてテストパターンを入力することができるため（ステップＳ２４）、テストパターンの入力のための作業量を軽減することができ、同じ信号パターンを多くの箇所に記述する必要がある場合には特に効果的である。また、キーワードでテストパターン（の一部）を表現することにより、テストパターンの把握やＬＳＩの動作の理解が容易となる。この結果、入力ミスが減少するとともに、このようなキーワードを用いて表現されたテストパターンは再利用もしやすくなる。なお、作成済みのテストパターンをＬＳＩのテスト装置で使用する際には、キーワード変換（順変換）を行うことにより（ステップＳ２６、Ｓ２８）、信号値のみから成るテストパターンを容易に得ることができる。テストパターン内のキーワードの内容（信号パターン）の確認も、このキーワード変換により容易に行うことができる。
【００２３】
また、本実施形態のテストパターン作成装置では、所定の信号パターンを予めキーワードに対応づけておいて（ステップＳ２０、Ｓ２２）キーワード変換（逆変換）を行うことにより（ステップＳ２６、Ｓ２８）、信号値のみから成るテストパターンをキーワードを用いて表現し、これを表示部４０に表示することができる。これにより、他人が作成したテストパターンや自分が過去に作成したテストパターンを利用して新たなテストパターンを作成する場合に、テストパターンの理解が容易となり、設計資源を効率よく再利用できるようになる。
【００２４】
以上の説明では、本実施形態において使用するキーワードは信号パターンと１対１に対応しているものとしているが（図４参照）、一つのキーワードに対して複数の信号パターンを対応づけてもよく、また、複数のキーワードを一つの信号パターンに対応づけてもよい。
【００２５】
一つのキーワードに対して複数の信号パターンを対応づけている場合には、例えば次のような方法により、キーワードを最終的に一つの信号パターンに変換することができる（順変換）。
（１）キーワード変換の際に、変換対象のキーワードに対応づけられている全ての信号パターンを候補として表示し、操作者が選択できるようにする。
（２）キーワードを定義する際に、対応づける複数の信号パターンに優先度を付けておき、キーワード変換の際に、変換対象のキーワードに対応づけられた信号パターンのうち優先度の最も高い信号パターンに変換する。
（３）キーワードを定義する際に、信号名、サイクルＮｏ．などと組み合わせて定義しておき、キーワード変換の際に、テストパターンにおける変換対象のキーワードの位置に対応する信号名やサイクルＮｏ．などから変換後の信号パターンを一意的に決定する。
【００２６】
また、複数のキーワードを一つの信号パターンに対応づけている場合には、例えば次のような方法により、複数のキーワードが対応づけられた信号パターンを最終的に一つのキーワードに変換することができる（逆変換）。
（１）キーワード変換の際に、変換対象の信号パターンに対応づけられている全てのキーワードを候補として表示し、操作者が選択できるようにする。
（２）キーワードを定義する際に、信号パターンに対応づける複数のキーワードに優先度を付けておき、キーワード変換の際に、変換対象の信号パターンに対応づけられたキーワードのうち優先度の最も高いキーワードに変換する。
（３）キーワードを定義する際に、信号名、サイクルＮｏ．などと組み合わせて定義しておき、キーワード変換の際に、テストパターンにおける変換対象の信号パターンの位置に対応する信号名やサイクルＮｏ．などから変換後のキーワードを一意的に決定する。
【００２７】
＜テストパターンの編集＞
図１（ｃ）は、本テストパターン作成装置における編集部２０の構成を示す機能ブロック図である。編集部２０は、編集入力部２６、ロック設定部２２、および、ロック制御部２４を含む編集処理部２８から構成されている。この編集部２０において編集入力部２６は、キーボード５６やマウス５８からテストパターンを編集するための編集コマンドを入力し、編集処理部２８は、この編集コマンドに基づき、パターン記憶部３０に格納されているテストパターンに対する変更、追加、削除などの編集処理を行う。ロック設定部２２は、マウス５８による操作に基づき、パターン記憶部３０に格納されているテストパターンのうち編集すべきでない領域をロック領域として設定し、ロック制御部２４は、編集入力部２６によって入力された編集コマンドがロック領域に対する編集処理を指示しているか否かを検出し、ロック領域に対する編集処理を抑止する。
【００２８】
以下、上記構成の編集部２０の動作を図６および図７を参照しつつ説明する。図６は、テストパターンの入力を開始してから編集を開始するまでの手順を示すフローチャートである。このフローチャートにおけるステップＳ５０では、図３に示した前述のフローチャートに従ってテストパターンを入力する。図８は、ステップＳ５０において入力されパターン記憶部３０に格納されているテストパターンの一例を示している。ただし図８において、各ピン名の下に記載された「（Ｉ）」、「（Ｏ）」、「（Ｂ）」は、そのピンが入力ピン、出力ピン、入出力ピンであることをそれぞれ示す。そして、信号値の属性を明確にするために、入力ピンの信号値および入出力ピンの入力部分の信号値を「１」、「０」、「ｘ」、「ｚ」で表し、出力ピンの信号値および入出力ピンの出力部分の信号値を「Ｈ」、「Ｌ」、「Ｘ」、「Ｚ」で表すものとする。
【００２９】
上記のようなテストパターンが入力された後において、テストパターンにロックを掛けない場合は、このフローチャートを終了し、後述の編集が可能な状態となる（ステップＳ５２参照）。ロックを掛ける場合は、ステップＳ５４へ進み、ロック設定部２２が、テストパターン作成者のマウス５８の操作によるラバーバンドで指定されたテストパターン内の領域をロック領域として設定する。これにより、例えば図８に示したテストパターンのうち矩形で囲まれた領域がロック領域となる。
【００３０】
また本実施形態では、ロック領域の設定操作を容易にするために、上記の他に次のような種々のロック領域の設定方法が用意されている。他の第１の設定方法は、マウス５８の操作によるラバーバンドでサイクル領域を指定することによりロック領域を設定するという方法である。例えば図９に示すように、第３サイクル〜第５サイクルの領域をラバーバンドによって指定することにより、第３サイクル〜第５サイクルにおけるテストパターンの全て（斜線が付された領域）がロック領域となる。第２の設定方法は、ラバーバンドによってピン領域を指定することによりロック領域を設定するという方法である。例えば図１０に示すように、ＰＩＮ３〜ＰＩＮ６の領域をラバーバンドによって指定することにより、ＰＩＮ３〜ＰＩＮ６に対するテストパターンの全て（斜線が付された領域）がロック領域となる。第３の設定方法は、「入力」、「出力」、または「入出力」というピンの属性を指定することによりロック領域を設定するという方法である。例えば、ロック領域の指定として「入力」というピン属性を指定すると、図１１に示すように、入力ピンであるＰＩＮ０、ＰＩＮ１、ＰＩＮ５、ＰＩＮ８、ＰＩＮ９に対するテストパターンの全て（斜線が付された領域）がロック領域となる。第４の設定方法は、「入力」または「出力」という信号値の属性を指定することによりロック領域を設定するという方法である。例えば、ロック領域の指定として「入力」という信号値属性を指定すると、図１２に示すように、入力信号の値（「１」または「０」で表された信号値）から成るテストパターンの全て（斜線が付された領域）がロック領域となる。
【００３１】
本実施形態では、上記他の設定方法である第１〜第４の設定方法のうちの複数の方法を組み合わせてロック領域を設定することも可能である。例えば、「入力」というピン属性の指定とサイクル領域の指定とを組み合わせることにより、入力ピンの特定のサイクルにのみロックを掛けることができ、また、「入力」という信号値属性の指定と「出力」というピン属性の指定とを組み合わせることにより、入出力ピンの出力部分以外の領域にロックを掛けることができる。
【００３２】
また、ロック領域を設定する際に既に設定済みのロック領域が存在する場合の扱いに関し、二つのモードが用意されている。すなわち、新たにロック領域が設定されると、第１のモードでは、それ以前に設定されていたロック領域は解除されて新たに設定されたロック領域のみが有効となり、第２のモードでは、それ以前に設定されていたロック領域はそのまま有効であってこれに新たに設定されたロック領域が追加される。なお、既に設定済みのロック領域を解除するための操作を新たに設けてもよい。
【００３３】
上記のようにしてロック領域が設定された後は、ステップＳ５６において、ロック制御部２４が設定されたロック領域を表示部４０に表示させる。その後、このフローチャートを終了し、後述の編集が可能な状態となる。
【００３４】
次にテストパターンの編集時の動作について説明する。図７は、テストパターンの編集時における編集部２０の動作を示すフローチャートである。本実施形態においてテストパターンの編集が可能な状態となると、編集部２０は編集コマンドの入力待ちの状態となる。ステップＳ６０において、編集入力部２６が、キーボード５６またはマウス５８から編集コマンドを入力すると、ステップＳ６２へ進み、編集処理部２８が、入力された編集コマンドがテストパターンの編集を終了するための終了コマンドか否かを判定する。
【００３５】
ステップＳ６２において、入力された編集コマンドが終了コマンドでないと判定された場合は、ステップＳ６４へ進み、ロック制御部２４が、その編集コマンドによる編集がロック領域に対するものか否かを判定する。その結果、ロック領域に対するものでない場合は、ステップＳ６６へ進み、編集処理部２８がその編集コマンドに基づき、パターン記憶部３０に格納されているテストパターンに対する変更、追加、削除などの編集処理を行う。その後、ステップＳ６０へ戻って再び編集コマンド待ちの状態となる。
【００３６】
ステップＳ６４での判定の結果、編集がロック領域に対するものである場合には、ステップＳ６８へ進み、ロック制御部２４が表示部４０への表示または音声による警告を発した後、編集処理を行うことなくステップＳ６０へ戻り、再び編集コマンド待ちの状態となる。この場合、ステップＳ６８における警告により、テストパターンの作成者である操作者は、編集しようとした対象にはロックが掛かっていて編集できないことを認識する。
【００３７】
ステップＳ６２において、入力された編集コマンドが終了コマンドであると判定された場合は、テストパターンに対する編集動作を終了する。このような編集動作によってテストパターン作成が完了した後は、パターン記憶部３０に格納されているテストパターンがハードディスなどの補助記憶装置に保存される。
【００３８】
以上からわかるように本実施形態によれば、テストパターンのうち編集すべきでない領域をロック領域として設定することにより（ステップＳ５４）、編集操作を誤ってそのロック領域を編集しようとしても編集は行われず、そのロック領域のパターンはそのまま保持される。これにより、編集対象の誤認によって誤ったテストパターンが作成されるのを防止することができる。また、ロック領域内に対する編集操作が行われた場合は警告が発せられるため（ステップＳ６８）、この警告により操作者は誤った編集操作を行ったことを認識することができる。さらに、編集すべき部分以外の領域をロック領域とすることにより、テストパターン全体に対する単一の編集操作で編集すべき部分のみを選択的に編集することができ、これにより編集の作業効率を向上させることができる。
【００３９】
【発明の効果】
本発明に係る第１のテストパターン作成装置によれば、キーワードを定義しておくことにより、複数の信号値から成る信号パターンの代わりにキーワードを用いてテストパターンを入力することができるため、テストパターンの入力のための作業量を軽減することができ、同じ信号パターンを多くの箇所に記述する必要がある場合には特に効果的である。また、キーワードでテストパターン（の一部）を表現することにより、テストパターンの把握やテスト対象の集積回路の動作の理解が容易となる。この結果、入力ミスが減少するとともに、このようなキーワードを用いて表現されたテストパターンは再利用もしやすくなる。
また、テストパターンのうち編集すべきでない部分をロック領域として指定することにより、編集操作を誤ってそのロック領域を編集しようとしても編集は行われず、そのロック領域のパターンはそのまま保持される。これにより、編集対象の誤認によって誤ったテストパターンが作成されるのを防止することができる。また、編集すべき部分以外の領域をロック領域とすることにより、テストパターン全体に対する単一の編集操作で編集すべき部分のみを選択的に編集することができるため、編集の作業効率を向上させることができる。
【００４０】
本発明に係る第２のテストパターン作成装置によれば、所定の信号パターンを予めキーワードに対応づけておいてキーワード変換（逆変換）を行うことにより、テストパターンに含まれる信号パターンをキーワードを用いて表現し、これを表示手段に表示することができる。これにより、他人が作成したテストパターンや自分が過去に作成したテストパターンを利用して新たなテストパターンを作成する場合に、テストパターンの理解が容易となり、設計資源を効率よく再利用できるようになる。
また、テストパターンのうち編集すべきでない部分をロック領域として指定することにより、編集操作を誤ってそのロック領域を編集しようとしても編集は行われず、そのロック領域のパターンはそのまま保持される。これにより、編集対象の誤認によって誤ったテストパターンが作成されるのを防止することができる。また、編集すべき部分以外の領域をロック領域とすることにより、テストパターン全体に対する単一の編集操作で編集すべき部分のみを選択的に編集することができるため、編集の作業効率を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態であるテストパターン作成装置の構成を示す機能ブロック図。
【図２】本発明の一実施形態であるテストパターン作成装置のハードウェア構成を示す図。
【図３】入力部の動作を示すフローチャート。
【図４】キーワード・テーブルへの登録の内容を示す図。
【図５】入力部によって入力されたテストパターンの一例を示す図。
【図６】テストパターンの入力を開始してから編集を開始するまでの手順を示すフローチャート。
【図７】編集部の動作を示すフローチャート。
【図８】テストパターンにおけるロック領域の設定方法を説明するための図。
【図９】テストパターンにおけるロック領域の他の設定方法（サイクル領域の指定による方法）を説明するための図。
【図１０】テストパターンにおけるロック領域の他の設定方法（ピン領域の指定による方法）を説明するための図。
【図１１】テストパターンにおけるロック領域の他の設定方法（ピン属性の指定による方法）を説明するための図。
【図１２】テストパターンにおけるロック領域の他の設定方法（信号値属性の指定による方法）を説明するための図。
【符号の説明】
１０…入力部                    ２０…編集部
３０…パターン記憶部            ４０…表示部
１２…キーワード・テーブル        １４…キーワード変換部
１６…キーワード定義部          １８…パターン入力部
２２…ロック設定部              ２４…ロック制御部
２６…編集入力部                ２８…編集処理部
【図１】
0003602231.tif 000002
【図２】
0003602231.tif 000003
【図３】
0003602231.tif 000004
【図４】
0003602231.tif 000005
【図５】
0003602231.tif 000006
【図６】
0003602231.tif 000007
【図７】
0003602231.tif 000008
【図８】
0003602231.tif 000009
【図９】
0003602231.tif 000010
【図１０】
0003602231.tif 000011
【図１１】
0003602231.tif 000012
【図１２】
0003602231.tif 000013