説明

試験パターン生成装置及び試験パターン生成方法

【課題】試験パターンの実行に要する時間を削減するとともに、試験パターンの作成に要する時間を削減すること。
【解決手段】検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成装置であって、試験命令と観測点とを対応付けて記憶する記憶部と、試験命令を複数選択することによって試験パターンを生成する試験パターン生成部と、検査対象となるハードウェアにおいて、生成された試験パターンを実行し、各観測点について検査が行われたか否かの情報を収集する試験パターン実行部と、各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、試験結果記憶部が記憶する情報に基づいて、1以上の試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成部と、を備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ハードウェアの動作を検証するための技術に関する。
【背景技術】
【0002】
コンピューターシステムの出荷検査では、試験プログラムを実行してハードウェアの信頼性を確認することが行われている。ところが、今日のハードウェアは構成が非常に複雑になってきており、試験プログラムをどの程度実行すれば十分に信頼性の確認ができるか判断することが困難になっている。そこで従来は、複雑なハードウェアの各機能について網羅的に信頼性の確認を実行できるように、可能な限り多種の試験プログラムを含んだテストパターンを準備し、このようなテストパターンを実行することによってハードウェアの信頼性を確保していた。そのため、ハードウェアの構成が複雑化するほど、テストパターンに含まれる試験プログラムの数が増加し、その実行に要する時間が長くなり出荷検査の効率を低下させてしまうという問題があった。
このような問題に対し、故障検出率を低下させずに、LSIテスタ用テストパターンを削減することが可能なテストパターン作成装置が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−037249号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に開示された技術によってテストパターンの実行に要する時間を削減できたとしても、今度はテストパターンの作成に多くの時間を要してしまうという問題があった。
【0005】
上記事情に鑑み、本発明は、試験パターン(テストパターン)の実行に要する時間を削減するとともに、試験パターンの作成に要する時間を削減することができる試験パターン生成装置及び試験パターン生成方法を提供することを目的としている。
【課題を解決するための手段】
【0006】
本発明の一態様は、検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成装置であって、前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成部と、前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行部と、前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、前記試験結果記憶部が記憶する情報に基づいて、1以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成部と、を備えることを特徴とする。
【0007】
本発明の一態様は、検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成方法であって、前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、を備える試験パターン生成装置が、前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成ステップと、前記試験パターン生成装置が、前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行ステップと、前記試験パターン生成装置が、前記試験結果記憶部が記憶する情報に基づいて、1以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成ステップと、を備えることを特徴とする。
【発明の効果】
【0008】
本発明により、試験パターンの実行に要する時間を削減するとともに、試験パターンの作成に要する時間を削減することが可能となる。
【図面の簡単な説明】
【0009】
【図1】試験パターン生成装置のシステム構成を表すシステム構成図である。
【図2】試験命令テーブルの概略を表す図である。
【図3】試験結果テーブルの概略を表す図である。
【図4】試験パターン生成装置の処理の流れを表すフローチャートである。
【図5】変形例の試験パターン生成装置の処理の流れを表すフローチャートである。
【発明を実施するための形態】
【0010】
試験パターン生成装置1は、ハードウェアの検査に用いられる試験パターン(テストパターン)を生成する装置であり、実際に試験パターンを実行した際に検査対象となるハードウェアから得られる試験結果に応じて最適な試験パターンを生成する。なお、試験命令とは、ハードウェアの検査に用いられる一つの命令を表し、試験パターンとは、複数の試験命令が組み合わされたものを表す。また、試験パターン生成装置1が最終的に出力する試験パターン(後述する最適パターン)は、1又は複数の試験パターンで構成される。
【0011】
検査対象となるハードウェアには、予め複数の観測点が設けられる。各観測点は、例えばレジスタによって構成され、予め所定の値が記憶される。各レジスタは、自身が設けられたハードウェア部分について試験パターンの実行によって検査が行われると、記憶している値が書き換えられる。一方、検査が行われなかったハードウェア部分に設けられたレジスタでは、記憶している値は書き換えられない。試験パターン生成装置1は、試験パターンの実行後に、値が書き換えられたレジスタと書き換えられていないレジスタとの集計をとることによって、網羅率を算出すると共に、検査が行われていないハードウェア部分を特定する。なお、網羅率とは、検査対象となっているハードウェア上の全観測点のうち、試験パターンの実行によって検査が行われたハードウェア部分に対応する観測点の割合を表す値である。
【0012】
図1は、試験パターン生成装置1のシステム構成を表すシステム構成図である。試験パターン生成装置1は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、試験パターン生成プログラム(テストパターン生成プログラム)を実行することによって、網羅率目標値設定部101、試験命令記憶部102、試験パターン生成部103、試験パターン実行部104、試験結果記憶部105、終了判定部106、最適パターン生成部107を備える装置として機能する。なお、試験パターン生成装置1の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)等のハードウェアを用いて実現されても良い。
【0013】
網羅率目標値設定部101は、使用者や他の情報処理装置からの入力を受け付け、網羅率の目標値(以下、「網羅率目標値」という。)を設定する。試験命令記憶部102は、磁気記憶装置や半導体記憶装置などの記憶装置を用いて構成され、試験命令テーブルを記憶する。試験パターン生成部103は、試験命令記憶部102に記憶されている試験命令テーブルから複数の試験命令を選択して組み合わせることによって試験パターン(テストパターン)を生成する。試験パターン実行部104は、試験パターン生成部103によって生成された試験パターンを実行し、試験の結果(試験結果)を試験結果記憶部105に書き込む。試験結果記憶部105は、磁気記憶装置や半導体記憶装置などの記憶装置を用いて構成され、試験結果テーブルを記憶する。終了判定部106は、試験結果記憶部105に記憶される試験結果に基づいて網羅率を算出し、網羅率目標値と網羅率とを比較することによって試験パターン生成処理の終了判定を行う。最適パターン生成部107は、試験結果記憶部105に記憶される試験結果に基づいて、最適な試験パターン(以下、「最適パターン」という。)を生成する。
【0014】
図2は、試験命令テーブルの概略を表す図である。試験命令テーブルは、試験命令毎に、当該試験命令の実行によって検査が行われるハードウェア部分を表す観測点の識別情報(以下、「観測点識別情報」という。)を有する。図2の場合、例えば試験命令I−1010を含む試験パターンが実行されると、少なくとも観測点Aについて検査を行うことができる。また、例えば試験命令I−1011を含む試験パターンが実行されると、少なくとも観測点Dについて検査を行うことができる。なお、一つの試験命令によって複数のハードウェア部分について検査が行われる場合には、試験命令テーブルは一つの試験命令に対応付けて複数の観測点識別情報を記憶する。
【0015】
図3は、試験結果テーブルの概略を表す図である。試験結果テーブルは、試験パターン毎に、当該試験パターンの実行によって実際に検査が行われたハードウェア部分を表す観測点についての情報(以下、「ハードウェアトレース情報」という。)を有する。図3の場合、試験パターン1が実行されたことによって、観測点Aに対応するハードウェア部分の検査が行われ、観測点B〜Dに対応するハードウェア部分については検査が行われなかったことを表す。同様に、図3の場合、試験パターン2が実行されたことによって、観測点B及びCに対応するハードウェア部分の検査が行われ、観測点A及びDに対応するハードウェア部分については検査が行われなかったことを表す。
【0016】
図4は、試験パターン生成装置1の処理の流れを表すフローチャートである。以下、試験パターン生成装置1の処理の流れについて説明する。まず、網羅率目標値設定部101が網羅率目標値の入力を受け付けて値の設定を行う(ステップS100)。次に、試験パターン生成部103が、試験パターンを自動的に生成する(ステップS101)。このとき、試験パターン生成部103は、1サイクル目の生成処理であるため、試験命令記憶部102に記憶されている試験命令から複数の試験命令をランダムに選択することによって試験パターンを生成する。また、試験パターン生成部103が選択する試験命令の数は、予め固定値として設定されても良いし、予め設定された一定範囲の値の中からその都度選択されても良いし、他の方法によって決定されても良い。なお、2サイクル目以降の生成処理については後述する。
【0017】
次に、試験パターン実行部104は、検査対象となっているハードウェアにおいて、試験パターン生成部103によって生成された試験パターンを実行する(ステップS102)。試験パターンの実行により、検査対象となっているハードウェアに実装されている観測点のうち、試験パターンの実行によって検査が行われたハードウェア部分の観測点のみ、保持する値が変更される。次に、試験パターン実行部104は、保持する値が変更された観測点を確認し(ステップS103)、値が変更された観測点と試験パターンとを対応付けて試験結果記憶部105に書き込む(ステップS104)。
【0018】
次に、終了判定部106は、試験結果記憶部105に記憶される情報に基づいて、検査対象となっているハードウェアに対して実行された全ての試験パターンによって値が変更された観測点の数が、検査対象となっているハードウェアに実装された全ての観測点の数に占める割合(網羅率)を算出する。そして、終了判定部106は、算出された網羅率の値が、網羅率目標値設定部101において設定されている網羅率目標値を超えたか否か判定する(ステップS105)。
【0019】
網羅率が網羅率目標値を超えていない場合(ステップS105−NO)、終了判定部106は処理を継続すべきと判定する。この場合、試験パターン生成装置1はステップS101以降の処理を2サイクル目以降の処理として繰り返し実行する。具体的には、試験パターン生成部103は新たな試験パターンを生成する(ステップS101)。試験パターン生成部103は、2サイクル目以降の生成処理では、試験命令記憶部102及び試験結果記憶部105の記憶内容に基づいて、過去のサイクルの試験パターンの実行によって未だ検査が行われていないハードウェア部分の観測点に対応する試験命令を優先的に選択して試験パターンを生成する。
【0020】
例えば、試験パターン生成部103は、試験結果記憶部105を参照し、過去のサイクルの試験パターンの実行によって未だ検査が行われていないハードウェア部分の観測点に対応する試験命令の全てを選択候補として決定する。次に、試験パターン生成部103は、選択候補の中から複数の試験命令をランダムに選択することによって新たな試験パターンを生成する。そして、試験パターン実行部104は新たに生成された試験パターンについてステップS102以降の処理を実行し、終了判定部106は再び終了判定を行う。
【0021】
一方、網羅率が網羅率目標値を超えている場合(ステップS105−YES)、終了判定部106は処理を終了しても良いと判定する。次に、最適パターン生成部107は、試験結果記憶部105に記憶される試験結果テーブルの内容に基づいて、最適パターンを生成する(ステップS106)。最適パターンとは、上述したように1以上の試験命令の組み合わせによって構成される。また、最適パターンに含まれる試験パターンの組み合わせは、この組み合わせによって実現される網羅率が網羅率目標値を超えるように選択される。例えば、最適パターン生成部107は、網羅率目標値を達成できる試験パターンの組み合わせのうち、最も試験パターン数が少なくなる組み合わせを選択し、選択された試験パターンの組を最適パターンとして生成する。例えば、図3において、網羅率目標値が100%に設定されており試験パターン4まで実行が終了していると仮定すると、最適パターン生成部107は試験パターン1、2、4の組み合わせを最適パターンとして選択する。
【0022】
このとき、最適パターン生成部107は、他の基準に基づいて最適パターンを生成しても良い。最適パターン生成部107は、網羅率目標値を達成できる試験パターンの組み合わせのうち、最も試験命令の数が少なくなるような試験パターンの組み合わせを選択して最適パターンを生成するように構成されても良い。この場合、試験結果テーブルは、図3に示される項目に加えてさらに、各試験パターンに含まれる試験命令の数を示す項目を有し、試験パターン実行部104は試験結果テーブルに対し各試験パターンに含まれる試験命令の数を書き込むように構成される。
【0023】
また、最適パターン生成部107は、網羅率目標値を達成できる試験パターンの組み合わせのうち、最も試験パターンの実行時間が短くなるような試験パターンの組み合わせを選択して最適パターンを生成するように構成されても良い。この場合、試験結果テーブルは、図3に示される項目に加えてさらに、各試験パターンの実行に要した時間を示す項目を有し、試験パターン実行部104は、試験結果テーブルに対し各試験パターンの実行に要した時間を書き込むように構成される。
【0024】
次に、終了判定部106は、さらに効率化を進めるか否かを判定する。この判定は、例えば使用者によってさらに効率化を進める旨の入力を受け付けたか否かに応じて行われても良いし、最適パターン生成部107によって生成された最適パターンに基づいて行われても良い。より具体的には、例えば予め試験パターンの数についての目標値が設定されており、終了判定部106は、最適パターン生成部107によって生成された最適パターンに含まれる試験パターンの数が目標値以下である場合には効率化を進めないと判定し、目標値よりも多い場合には効率化を進めると判定しても良い。
【0025】
終了判定部106がさらに効率化を進めると判定した場合(ステップS107−YES)、試験パターン生成装置1は、ステップS101以降の処理を繰り返し実行する。ただし、効率化を進めると判定された後の処理においては、試験パターン生成部103は、試験結果記憶部105の記憶内容にかかわらずランダムに試験パターンを生成する。すなわち、試験パターン生成部103は、過去のサイクルの試験パターンの実行結果にかかわらず、1サイクル目の場合と同じように試験パターンを生成する。例えば、網羅率目標値が100%に設定されており、図3において試験パターン4までが既に終了しており、効率化を進めると判定された後に試験パターン5が実行されたと仮定すると、最適パターン生成部107は、これまで最適パターンとして選択されていた試験パターン1、2、4の組み合わせを破棄し、試験パターン1、5の組み合わせを新たな最適パターンとして選択する。
【0026】
一方、終了判定部106が効率化を進めないと判定した場合(ステップS107−NO)、最適パターン生成部107は、自身が生成した最新の最適パターンを出力する(ステップS108)。以上で、試験パターン生成装置1の処理は終了する。
【0027】
このように構成された試験パターン生成装置1では、最適パターン生成部107によって最適な試験パターンの組み合わせ(最適パターン)が生成される。具体的には、網羅率目標値を達成できる試験パターンの組み合わせのうち、例えば試験パターン数が最も少ない組み合わせや、試験命令数が最も少ない組み合わせや、試験に要した時間の合計が最も少ない組み合わせのものが生成される。
【0028】
また、このように構成された試験パターン生成装置1では、試験パターン生成部103は、過去のサイクルの試験パターンの実行によって未だ検査が行われていないハードウェア部分の観測点に対応する試験命令を優先的に選択して試験パターンを生成する。そのため、より少ないサイクルで網羅率目標値を達成し処理を終了することが可能となる。したがって、最適パターンの生成に要する処理時間を短縮することが可能となる。
【0029】
<変形例>
図5は、変形例の試験パターン生成装置1の処理の流れを表すフローチャートである。図5において、図4と同じ処理については図4と同じ符号を付して説明を省く。変形例の試験パターン生成装置1では、ステップS100において網羅率目標値が設定された後、試験パターン生成部103は、検査対象となっているハードウェアについて過去に試験パターンの実行を行ったことがあるか否か判定する(ステップS201)。この判定処理は、例えば試験結果テーブルに検査対象となったハードウェアの識別情報を記憶しておいたうえで、現在検査対象となっているハードウェアの識別情報の入力を受け付け、両者が一致するか否かに応じて判定される。過去に試験パターンの実行を行ったことがないハードウェアである場合(ステップS201−NO)、試験パターン生成部103は1サイクル目の処理としてステップS101以降の処理を開始する。一方、過去に試験パターンの実行を行ったことがあるハードウェアである場合(ステップS201−YES)、試験パターン生成部103は、過去に行われた試験パターンの実行結果(試験結果)を試験結果記憶部105から読み出し、その情報に基づいて2サイクル目の処理としてステップS101以降の処理を開始する。
【0030】
このように構成された試験パターン生成装置1の変形例では、過去の試験結果を再利用することによって、より少ないサイクルで網羅率目標値を達成し処理を終了することが可能となる。したがって、最適パターンの生成に要する処理時間を短縮することが可能となる。また、過去の試験結果において既に網羅率目標値が達成されていたとしても、その試験結果の情報を再利用することによってより効率化された最適パターンを短時間で生成することが可能となる。
【0031】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0032】
1…試験パターン生成装置, 101…網羅率目標値設定部, 102…試験命令記憶部, 103…試験パターン生成部, 104…試験パターン実行部, 105…試験結果記憶部, 106…終了判定部, 107…最適パターン生成部

【特許請求の範囲】
【請求項1】
検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成装置であって、
前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、
前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成部と、
前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行部と、
前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、
前記試験結果記憶部が記憶する情報に基づいて、1以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成部と、
を備えることを特徴とする試験パターン生成装置。
【請求項2】
前記試験パターン生成部は、試験パターンの生成処理を複数回繰り返し実行し、1回目の生成処理においては、前記試験命令記憶部に記憶される全ての試験命令の中から複数の試験命令を選択することによって試験パターンを生成し、2回目以降の生成処理においては、前記試験結果記憶部に記憶される情報に基づき、過去の生成処理において生成された試験パターンの実行によって未だに検査が行われていない観測点に対応する試験命令の中から複数の試験命令を選択することによって試験パターンを生成することを特徴とする請求項1に記載の試験パターン生成装置。
【請求項3】
検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成方法であって、前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、を備える試験パターン生成装置が、前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成ステップと、
前記試験パターン生成装置が、前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行ステップと、
前記試験パターン生成装置が、前記試験結果記憶部が記憶する情報に基づいて、1以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成ステップと、
を備えることを特徴とする試験パターン生成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−64635(P2011−64635A)
【公開日】平成23年3月31日(2011.3.31)
【国際特許分類】
【出願番号】特願2009−217402(P2009−217402)
【出願日】平成21年9月18日(2009.9.18)
【出願人】(000168285)エヌイーシーコンピュータテクノ株式会社 (572)
【Fターム(参考)】