(57)【要約】【課題】試験パターンの実行に要する時間を削減するとともに、試験パターンの作成に要する時間を削減すること。【解決手段】検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成装置であって、試験命令と観測点とを対応付けて記憶する記憶部と、試験命令を複数選択することによって試験パターンを生成する試験パターン生成部と、検査対象となるハードウェアにおいて、生成された試験パターンを実行し、各観測点について検査が行われたか否かの情報を収集する試験パターン実行部と、各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、試験結果記憶部が記憶する情報に基づいて、１以上の試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成部と、を備えることを特徴とする。【選択図】図２
2011064635.tif 000002
【特許請求の範囲】
【請求項１】
検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成装置であって、
前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、
前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成部と、
前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行部と、
前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、
前記試験結果記憶部が記憶する情報に基づいて、１以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成部と、
を備えることを特徴とする試験パターン生成装置。
【請求項２】
前記試験パターン生成部は、試験パターンの生成処理を複数回繰り返し実行し、１回目の生成処理においては、前記試験命令記憶部に記憶される全ての試験命令の中から複数の試験命令を選択することによって試験パターンを生成し、２回目以降の生成処理においては、前記試験結果記憶部に記憶される情報に基づき、過去の生成処理において生成された試験パターンの実行によって未だに検査が行われていない観測点に対応する試験命令の中から複数の試験命令を選択することによって試験パターンを生成することを特徴とする請求項１に記載の試験パターン生成装置。
【請求項３】
検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成方法であって、前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、を備える試験パターン生成装置が、前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成ステップと、
前記試験パターン生成装置が、前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行ステップと、
前記試験パターン生成装置が、前記試験結果記憶部が記憶する情報に基づいて、１以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成ステップと、
を備えることを特徴とする試験パターン生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードウェアの動作を検証するための技術に関する。
【背景技術】
【０００２】
コンピューターシステムの出荷検査では、試験プログラムを実行してハードウェアの信頼性を確認することが行われている。ところが、今日のハードウェアは構成が非常に複雑になってきており、試験プログラムをどの程度実行すれば十分に信頼性の確認ができるか判断することが困難になっている。そこで従来は、複雑なハードウェアの各機能について網羅的に信頼性の確認を実行できるように、可能な限り多種の試験プログラムを含んだテストパターンを準備し、このようなテストパターンを実行することによってハードウェアの信頼性を確保していた。そのため、ハードウェアの構成が複雑化するほど、テストパターンに含まれる試験プログラムの数が増加し、その実行に要する時間が長くなり出荷検査の効率を低下させてしまうという問題があった。
このような問題に対し、故障検出率を低下させずに、ＬＳＩテスタ用テストパターンを削減することが可能なテストパターン作成装置が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−０３７２４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示された技術によってテストパターンの実行に要する時間を削減できたとしても、今度はテストパターンの作成に多くの時間を要してしまうという問題があった。
【０００５】
上記事情に鑑み、本発明は、試験パターン（テストパターン）の実行に要する時間を削減するとともに、試験パターンの作成に要する時間を削減することができる試験パターン生成装置及び試験パターン生成方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成装置であって、前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成部と、前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行部と、前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、前記試験結果記憶部が記憶する情報に基づいて、１以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成部と、を備えることを特徴とする。
【０００７】
本発明の一態様は、検査対象となる複数のハードウェア部分毎に予め観測点が設けられたハードウェアの検査に用いられる試験パターンを生成する試験パターン生成方法であって、前記検査に用いられる試験命令と、各試験命令によって検査が行われる前記ハードウェア部分に設けられた観測点とを対応付けて記憶する試験命令記憶部と、前記各観測点について検査が行われたか否かの情報を記憶する試験結果記憶部と、を備える試験パターン生成装置が、前記試験命令記憶部に記憶される試験命令を複数選択することによって、複数の試験命令の組み合わせである試験パターンを生成する試験パターン生成ステップと、前記試験パターン生成装置が、前記検査対象となるハードウェアにおいて、前記試験パターン生成部によって生成された試験パターンを実行し、前記各観測点について検査が行われたか否かの情報を収集する試験パターン実行ステップと、前記試験パターン生成装置が、前記試験結果記憶部が記憶する情報に基づいて、１以上の前記試験パターンの組み合わせを所定の基準を満たすように生成する最適パターン生成ステップと、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明により、試験パターンの実行に要する時間を削減するとともに、試験パターンの作成に要する時間を削減することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】試験パターン生成装置のシステム構成を表すシステム構成図である。
【図２】試験命令テーブルの概略を表す図である。
【図３】試験結果テーブルの概略を表す図である。
【図４】試験パターン生成装置の処理の流れを表すフローチャートである。
【図５】変形例の試験パターン生成装置の処理の流れを表すフローチャートである。
【発明を実施するための形態】
【００１０】
試験パターン生成装置１は、ハードウェアの検査に用いられる試験パターン（テストパターン）を生成する装置であり、実際に試験パターンを実行した際に検査対象となるハードウェアから得られる試験結果に応じて最適な試験パターンを生成する。なお、試験命令とは、ハードウェアの検査に用いられる一つの命令を表し、試験パターンとは、複数の試験命令が組み合わされたものを表す。また、試験パターン生成装置１が最終的に出力する試験パターン（後述する最適パターン）は、１又は複数の試験パターンで構成される。
【００１１】
検査対象となるハードウェアには、予め複数の観測点が設けられる。各観測点は、例えばレジスタによって構成され、予め所定の値が記憶される。各レジスタは、自身が設けられたハードウェア部分について試験パターンの実行によって検査が行われると、記憶している値が書き換えられる。一方、検査が行われなかったハードウェア部分に設けられたレジスタでは、記憶している値は書き換えられない。試験パターン生成装置１は、試験パターンの実行後に、値が書き換えられたレジスタと書き換えられていないレジスタとの集計をとることによって、網羅率を算出すると共に、検査が行われていないハードウェア部分を特定する。なお、網羅率とは、検査対象となっているハードウェア上の全観測点のうち、試験パターンの実行によって検査が行われたハードウェア部分に対応する観測点の割合を表す値である。
【００１２】
図１は、試験パターン生成装置１のシステム構成を表すシステム構成図である。試験パターン生成装置１は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、試験パターン生成プログラム（テストパターン生成プログラム）を実行することによって、網羅率目標値設定部１０１、試験命令記憶部１０２、試験パターン生成部１０３、試験パターン実行部１０４、試験結果記憶部１０５、終了判定部１０６、最適パターン生成部１０７を備える装置として機能する。なお、試験パターン生成装置１の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）等のハードウェアを用いて実現されても良い。
【００１３】
網羅率目標値設定部１０１は、使用者や他の情報処理装置からの入力を受け付け、網羅率の目標値（以下、「網羅率目標値」という。）を設定する。試験命令記憶部１０２は、磁気記憶装置や半導体記憶装置などの記憶装置を用いて構成され、試験命令テーブルを記憶する。試験パターン生成部１０３は、試験命令記憶部１０２に記憶されている試験命令テーブルから複数の試験命令を選択して組み合わせることによって試験パターン（テストパターン）を生成する。試験パターン実行部１０４は、試験パターン生成部１０３によって生成された試験パターンを実行し、試験の結果（試験結果）を試験結果記憶部１０５に書き込む。試験結果記憶部１０５は、磁気記憶装置や半導体記憶装置などの記憶装置を用いて構成され、試験結果テーブルを記憶する。終了判定部１０６は、試験結果記憶部１０５に記憶される試験結果に基づいて網羅率を算出し、網羅率目標値と網羅率とを比較することによって試験パターン生成処理の終了判定を行う。最適パターン生成部１０７は、試験結果記憶部１０５に記憶される試験結果に基づいて、最適な試験パターン（以下、「最適パターン」という。）を生成する。
【００１４】
図２は、試験命令テーブルの概略を表す図である。試験命令テーブルは、試験命令毎に、当該試験命令の実行によって検査が行われるハードウェア部分を表す観測点の識別情報（以下、「観測点識別情報」という。）を有する。図２の場合、例えば試験命令Ｉ−１０１０を含む試験パターンが実行されると、少なくとも観測点Ａについて検査を行うことができる。また、例えば試験命令Ｉ−１０１１を含む試験パターンが実行されると、少なくとも観測点Ｄについて検査を行うことができる。なお、一つの試験命令によって複数のハードウェア部分について検査が行われる場合には、試験命令テーブルは一つの試験命令に対応付けて複数の観測点識別情報を記憶する。
【００１５】
図３は、試験結果テーブルの概略を表す図である。試験結果テーブルは、試験パターン毎に、当該試験パターンの実行によって実際に検査が行われたハードウェア部分を表す観測点についての情報（以下、「ハードウェアトレース情報」という。）を有する。図３の場合、試験パターン１が実行されたことによって、観測点Ａに対応するハードウェア部分の検査が行われ、観測点Ｂ〜Ｄに対応するハードウェア部分については検査が行われなかったことを表す。同様に、図３の場合、試験パターン２が実行されたことによって、観測点Ｂ及びＣに対応するハードウェア部分の検査が行われ、観測点Ａ及びＤに対応するハードウェア部分については検査が行われなかったことを表す。
【００１６】
図４は、試験パターン生成装置１の処理の流れを表すフローチャートである。以下、試験パターン生成装置１の処理の流れについて説明する。まず、網羅率目標値設定部１０１が網羅率目標値の入力を受け付けて値の設定を行う（ステップＳ１００）。次に、試験パターン生成部１０３が、試験パターンを自動的に生成する（ステップＳ１０１）。このとき、試験パターン生成部１０３は、１サイクル目の生成処理であるため、試験命令記憶部１０２に記憶されている試験命令から複数の試験命令をランダムに選択することによって試験パターンを生成する。また、試験パターン生成部１０３が選択する試験命令の数は、予め固定値として設定されても良いし、予め設定された一定範囲の値の中からその都度選択されても良いし、他の方法によって決定されても良い。なお、２サイクル目以降の生成処理については後述する。
【００１７】
次に、試験パターン実行部１０４は、検査対象となっているハードウェアにおいて、試験パターン生成部１０３によって生成された試験パターンを実行する（ステップＳ１０２）。試験パターンの実行により、検査対象となっているハードウェアに実装されている観測点のうち、試験パターンの実行によって検査が行われたハードウェア部分の観測点のみ、保持する値が変更される。次に、試験パターン実行部１０４は、保持する値が変更された観測点を確認し（ステップＳ１０３）、値が変更された観測点と試験パターンとを対応付けて試験結果記憶部１０５に書き込む（ステップＳ１０４）。
【００１８】
次に、終了判定部１０６は、試験結果記憶部１０５に記憶される情報に基づいて、検査対象となっているハードウェアに対して実行された全ての試験パターンによって値が変更された観測点の数が、検査対象となっているハードウェアに実装された全ての観測点の数に占める割合（網羅率）を算出する。そして、終了判定部１０６は、算出された網羅率の値が、網羅率目標値設定部１０１において設定されている網羅率目標値を超えたか否か判定する（ステップＳ１０５）。
【００１９】
網羅率が網羅率目標値を超えていない場合（ステップＳ１０５−ＮＯ）、終了判定部１０６は処理を継続すべきと判定する。この場合、試験パターン生成装置１はステップＳ１０１以降の処理を２サイクル目以降の処理として繰り返し実行する。具体的には、試験パターン生成部１０３は新たな試験パターンを生成する（ステップＳ１０１）。試験パターン生成部１０３は、２サイクル目以降の生成処理では、試験命令記憶部１０２及び試験結果記憶部１０５の記憶内容に基づいて、過去のサイクルの試験パターンの実行によって未だ検査が行われていないハードウェア部分の観測点に対応する試験命令を優先的に選択して試験パターンを生成する。
【００２０】
例えば、試験パターン生成部１０３は、試験結果記憶部１０５を参照し、過去のサイクルの試験パターンの実行によって未だ検査が行われていないハードウェア部分の観測点に対応する試験命令の全てを選択候補として決定する。次に、試験パターン生成部１０３は、選択候補の中から複数の試験命令をランダムに選択することによって新たな試験パターンを生成する。そして、試験パターン実行部１０４は新たに生成された試験パターンについてステップＳ１０２以降の処理を実行し、終了判定部１０６は再び終了判定を行う。
【００２１】
一方、網羅率が網羅率目標値を超えている場合（ステップＳ１０５−ＹＥＳ）、終了判定部１０６は処理を終了しても良いと判定する。次に、最適パターン生成部１０７は、試験結果記憶部１０５に記憶される試験結果テーブルの内容に基づいて、最適パターンを生成する（ステップＳ１０６）。最適パターンとは、上述したように１以上の試験命令の組み合わせによって構成される。また、最適パターンに含まれる試験パターンの組み合わせは、この組み合わせによって実現される網羅率が網羅率目標値を超えるように選択される。例えば、最適パターン生成部１０７は、網羅率目標値を達成できる試験パターンの組み合わせのうち、最も試験パターン数が少なくなる組み合わせを選択し、選択された試験パターンの組を最適パターンとして生成する。例えば、図３において、網羅率目標値が１００％に設定されており試験パターン４まで実行が終了していると仮定すると、最適パターン生成部１０７は試験パターン１、２、４の組み合わせを最適パターンとして選択する。
【００２２】
このとき、最適パターン生成部１０７は、他の基準に基づいて最適パターンを生成しても良い。最適パターン生成部１０７は、網羅率目標値を達成できる試験パターンの組み合わせのうち、最も試験命令の数が少なくなるような試験パターンの組み合わせを選択して最適パターンを生成するように構成されても良い。この場合、試験結果テーブルは、図３に示される項目に加えてさらに、各試験パターンに含まれる試験命令の数を示す項目を有し、試験パターン実行部１０４は試験結果テーブルに対し各試験パターンに含まれる試験命令の数を書き込むように構成される。
【００２３】
また、最適パターン生成部１０７は、網羅率目標値を達成できる試験パターンの組み合わせのうち、最も試験パターンの実行時間が短くなるような試験パターンの組み合わせを選択して最適パターンを生成するように構成されても良い。この場合、試験結果テーブルは、図３に示される項目に加えてさらに、各試験パターンの実行に要した時間を示す項目を有し、試験パターン実行部１０４は、試験結果テーブルに対し各試験パターンの実行に要した時間を書き込むように構成される。
【００２４】
次に、終了判定部１０６は、さらに効率化を進めるか否かを判定する。この判定は、例えば使用者によってさらに効率化を進める旨の入力を受け付けたか否かに応じて行われても良いし、最適パターン生成部１０７によって生成された最適パターンに基づいて行われても良い。より具体的には、例えば予め試験パターンの数についての目標値が設定されており、終了判定部１０６は、最適パターン生成部１０７によって生成された最適パターンに含まれる試験パターンの数が目標値以下である場合には効率化を進めないと判定し、目標値よりも多い場合には効率化を進めると判定しても良い。
【００２５】
終了判定部１０６がさらに効率化を進めると判定した場合（ステップＳ１０７−ＹＥＳ）、試験パターン生成装置１は、ステップＳ１０１以降の処理を繰り返し実行する。ただし、効率化を進めると判定された後の処理においては、試験パターン生成部１０３は、試験結果記憶部１０５の記憶内容にかかわらずランダムに試験パターンを生成する。すなわち、試験パターン生成部１０３は、過去のサイクルの試験パターンの実行結果にかかわらず、１サイクル目の場合と同じように試験パターンを生成する。例えば、網羅率目標値が１００％に設定されており、図３において試験パターン４までが既に終了しており、効率化を進めると判定された後に試験パターン５が実行されたと仮定すると、最適パターン生成部１０７は、これまで最適パターンとして選択されていた試験パターン１、２、４の組み合わせを破棄し、試験パターン１、５の組み合わせを新たな最適パターンとして選択する。
【００２６】
一方、終了判定部１０６が効率化を進めないと判定した場合（ステップＳ１０７−ＮＯ）、最適パターン生成部１０７は、自身が生成した最新の最適パターンを出力する（ステップＳ１０８）。以上で、試験パターン生成装置１の処理は終了する。
【００２７】
このように構成された試験パターン生成装置１では、最適パターン生成部１０７によって最適な試験パターンの組み合わせ（最適パターン）が生成される。具体的には、網羅率目標値を達成できる試験パターンの組み合わせのうち、例えば試験パターン数が最も少ない組み合わせや、試験命令数が最も少ない組み合わせや、試験に要した時間の合計が最も少ない組み合わせのものが生成される。
【００２８】
また、このように構成された試験パターン生成装置１では、試験パターン生成部１０３は、過去のサイクルの試験パターンの実行によって未だ検査が行われていないハードウェア部分の観測点に対応する試験命令を優先的に選択して試験パターンを生成する。そのため、より少ないサイクルで網羅率目標値を達成し処理を終了することが可能となる。したがって、最適パターンの生成に要する処理時間を短縮することが可能となる。
【００２９】
＜変形例＞
図５は、変形例の試験パターン生成装置１の処理の流れを表すフローチャートである。図５において、図４と同じ処理については図４と同じ符号を付して説明を省く。変形例の試験パターン生成装置１では、ステップＳ１００において網羅率目標値が設定された後、試験パターン生成部１０３は、検査対象となっているハードウェアについて過去に試験パターンの実行を行ったことがあるか否か判定する（ステップＳ２０１）。この判定処理は、例えば試験結果テーブルに検査対象となったハードウェアの識別情報を記憶しておいたうえで、現在検査対象となっているハードウェアの識別情報の入力を受け付け、両者が一致するか否かに応じて判定される。過去に試験パターンの実行を行ったことがないハードウェアである場合（ステップＳ２０１−ＮＯ）、試験パターン生成部１０３は１サイクル目の処理としてステップＳ１０１以降の処理を開始する。一方、過去に試験パターンの実行を行ったことがあるハードウェアである場合（ステップＳ２０１−ＹＥＳ）、試験パターン生成部１０３は、過去に行われた試験パターンの実行結果（試験結果）を試験結果記憶部１０５から読み出し、その情報に基づいて２サイクル目の処理としてステップＳ１０１以降の処理を開始する。
【００３０】
このように構成された試験パターン生成装置１の変形例では、過去の試験結果を再利用することによって、より少ないサイクルで網羅率目標値を達成し処理を終了することが可能となる。したがって、最適パターンの生成に要する処理時間を短縮することが可能となる。また、過去の試験結果において既に網羅率目標値が達成されていたとしても、その試験結果の情報を再利用することによってより効率化された最適パターンを短時間で生成することが可能となる。
【００３１】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００３２】
１…試験パターン生成装置，  １０１…網羅率目標値設定部，  １０２…試験命令記憶部，  １０３…試験パターン生成部，  １０４…試験パターン実行部，  １０５…試験結果記憶部，  １０６…終了判定部，  １０７…最適パターン生成部
【図１】
2011064635.tif 000003
【図２】
2011064635.tif 000004
【図３】
2011064635.tif 000005
【図４】
2011064635.tif 000006
【図５】
2011064635.tif 000007