JP2014106928A - 試験方法、試験プログラム、および、試験制御装置 - Google Patents

試験方法、試験プログラム、および、試験制御装置 Download PDF

Info

Publication number
JP2014106928A
JP2014106928A JP2012261729A JP2012261729A JP2014106928A JP 2014106928 A JP2014106928 A JP 2014106928A JP 2012261729 A JP2012261729 A JP 2012261729A JP 2012261729 A JP2012261729 A JP 2012261729A JP 2014106928 A JP2014106928 A JP 2014106928A
Authority
JP
Japan
Prior art keywords
test
instruction sequence
instruction
arithmetic
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012261729A
Other languages
English (en)
Other versions
JP5983362B2 (ja
Inventor
Shizuka Nishimaki
静香 西牧
Shinsuke Teranishi
信輔 寺西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012261729A priority Critical patent/JP5983362B2/ja
Priority to US14/068,019 priority patent/US20140149800A1/en
Publication of JP2014106928A publication Critical patent/JP2014106928A/ja
Application granted granted Critical
Publication of JP5983362B2 publication Critical patent/JP5983362B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273—Test methods
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26—Functional testing
    • G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】複数の演算器の間を接続する回路の故障の検出を効率的に行う。
【解決手段】
実施形態にかかる方法では、第1〜第3の演算器を有する装置の試験を行うことができる。実施形態にかかる方法では、第1の演算器と第2の演算器を接続する第1の回路を使用する処理を含む命令列である処理命令列を用いて、第2の演算器と第3の演算器を接続する第2の回路を使用する処理を含む試験命令列を生成する。ここで、試験命令列は、処理命令列の先頭に、処理命令列に含まれる命令の演算結果に変化を与えない命令列である追加命令列を追加したものである。処理命令列の先頭から試験命令列を装置に実行させることにより、前記第1の回路の故障の有無を判定する。また、追加命令列から試験命令列を装置に実行させることにより、第2の回路の故障の有無を検出する。
【選択図】図1

Description

この発明は、情報処理装置の試験方法に関する。
複数の演算器が並列に動作する情報処理装置で、先行して実行される演算命令のレジスタファイルへの書き込みが確定したあと、後続の演算命令の実行によりレジスタファイルを読み出す際に、レジスタ中の同じアドレスに対するアクセスが重複して発生する。レジスタ中の同じアドレスに対するアクセスが重複して行われる場合、レジスタの競合が発生し、後続の演算命令は、先行して実行される演算命令の書き込み処理が完了するのを待つので、並列処理の遅延が発生する。レジスタの競合を避けるため、情報処理装置にバイパス回路を採用することが知られている。バイパス回路によって、先行して実行される演算命令を実行する演算器がレジスタファイルへ演算結果を書き込む前に、後続の演算命令を実行する演算器が演算結果を使用できるようになる。
近年の回路の微細化や複雑化により、ハードウェアの故障は微細な電気条件によって発生することがある。また、特異な命令シーケンスで故障が発生するケースもある。バイパス回路が故障すると、並列処理の遅延、データの読み出し故障などが起こりうる。演算器周辺の故障を検出するため、ランダムな試験命令列を生成し、微細な電気条件によるノイズや特異な命令シーケンスで発生する故障を特定する。
関連する技術に、演算器のパイプライン機構を検証するために、パイプラインのインターロックを引き起こす命令列を生成する方法がある。インターロックを引き起こす試験命令列を自動的に生成するため、先行して実行される演算命令が使用するレジスタを、後続の演算命令に通知し、後続の演算命令が使用するレジスタを、先行して実行される演算命令が使用するレジスタと重複して使用させるように生成する技術が知られている。(例えば、特許文献1を参照)
特許公開2001−222442号
上述した従来の試験方法には、以下のような問題がある。
特定の試験命令列は、特定の演算器の間を接続する回路の故障を検出することができるものの、他の演算器の間を接続する回路の故障を検出できないという問題がある。そこで、他の演算器間を接続する回路に対して、故障の検出を行うためには、演算器の数に応じた複数の新しい試験命令列を作成しなければならない。新しく作成された試験命令列は、故障の検出に有効であるかどうかを判断しなければならず、検証に多くの人手と時間を費やしていた。
本発明は、1つの側面では、複数の演算器の間を接続する回路の故障を効率的に検出することを目的とする。
実施形態にかかる方法では、第1〜第3の演算器を有する装置の試験を行うことができる。実施形態にかかる方法では、第1の演算器と第2の演算器を接続する第1の回路を使用する処理を含む命令列である処理命令列を用いて、第2の演算器と第3の演算器を接続する第2の回路を使用する処理を含む試験命令列を生成する。ここで、試験命令列は、処理命令列の先頭に、処理命令列に含まれる命令の演算結果に変化を与えない命令列である追加命令列を追加したものである。処理命令列の先頭から試験命令列を装置に実行させることにより、前記第1の回路の故障の有無を判定する。また、追加命令列から試験命令列を装置に実行させることにより、第2の回路の故障の有無を検出する。
複数の演算器の間を接続する回路の故障を効率的に検出することができる。
試験方法の例である。 情報処理装置の例を示す図である。 情報処理装置のハードウェア構成の例を示す図である。 試験命令列を使用した第1の試験で行われる処理の例を説明するフローチャートである。 試験開始アドレスとしてメモリアドレス401を指定した試験の例を示す図である。 試験開始アドレスとしてメモリアドレス402を指定した試験の例を示す図である。 試験開始アドレスとしてメモリアドレス403を指定した試験の例を示す図である。 試験開始アドレスとしてメモリアドレス404を指定した試験の例を示す図である。 試験命令列を使用した第2の試験で行われる処理の例を説明するフローチャートである。 試験命令列の生成例を説明するフローチャートである。 試験命令列を使用した試験制御方法の例を説明するフローチャートである。 試験命令列の演算結果と予測値を比較する処理を説明するフローチャートである。 試験結果データの例である。
以下、本実施形態について、図面を参照しながら詳細に説明する。
図1は、試験方法の例である。図1(a)は、試験命令列100と、試験制御部101とを示す。試験命令列100は、メモリアドレス111、112にNOP命令を備え、メモリアドレス113〜118の各々に演算命令を備える処理命令列110と、メモリアドレス119にリターン命令とを備える命令列である。NOP命令は、何も処理を実行しない(No Operation)命令であり、また、他の演算命令に何ら影響を与えない演算命令である。メモリアドレス113〜118に格納された演算命令は、特定の演算器間で発生した故障を検出する演算命令列である。簡略化のため、特定の演算器間で発生した故障を検出する演算命令列のことを、「処理命令列」と称す。
パイプライン構造の複数の演算器は、互いにバイパス回路で接続されており、演算命令がレジスタ中の同じアドレスに対するアクセスを重複して行っても並列処理を円滑に行える。以下、処理命令列110の、メモリアドレス113とメモリアドレス117に格納されている演算命令の組み合わせで、レジスタ中の特定のアドレスへのアクセスが重複する場合を例として述べる。この場合、処理命令列110を含む命令列が実行されると、メモリアドレス113に格納された演算命令を実行する演算器と、メモリアドレス117に格納された演算命令を実行する演算器の間を接続する回路が使用される。
試験命令列は、処理命令列の先頭に、少なくとも1つのNOP命令を備えている。また、NOP命令は、処理命令列に干渉しない演算命令であって、処理命令列が使用しているレジスタと競合せず、処理命令列の演算結果に影響を与えない演算命令であれば、他の演算命令に代替してもよい。リターン命令は、処理命令列の演算結果を試験制御部に返し、また、処理を試験制御部に返す演算命令である。
試験制御部101は、試験命令列を複数の演算器に実行させる命令として、試験開始命令を出力する。試験開始命令は、試験命令列内の特定のメモリアドレスを、試験を開始するアドレスに指定する分岐命令を含む。以下、試験を開始するアドレスを「試験開始アドレス」と記載することがある。分岐命令は、試験命令列内の各NOP命令のメモリアドレスや、処理命令列の先頭のメモリアドレスを試験開始アドレスとして指定することができる。例えば、試験制御部101が試験開始アドレスとしてメモリアドレス113を指定すると、試験命令列100は、処理命令列110の先頭の演算命令から複数の演算器に実行される。試験制御部101が試験開始アドレスとしてメモリアドレス112を指定すると、メモリアドレス112に格納されているNOP命令以降の命令が複数の演算器に実行される。試験制御部101が、試験開始アドレスとしてメモリアドレス111を指定すると、メモリアドレス111に格納されているNOP命令以降の命令が複数の演算器に実行される。
図1の例では、試験命令列100は、分岐命令によって試験開始アドレスを指定することにより、1つの試験命令列を、以下の3つのパターンの命令列として使用できる。
(1)メモリアドレス113に格納されている処理命令列110の先頭の演算命令から複数の演算器に実行されるパターン
(2)メモリアドレス112に格納されているNOP命令から複数の演算器に実行されるパターン
(3)メモリアドレス111に格納されているNOP命令から複数の演算器に実行されるパターン
パターン(1)〜(3)の命令列において、処理命令列は、命令シーケンスを変更されない。
図1(b)に、演算器の割り当て状態の例を示す。演算器の割り当て状態は、試験命令列100を(1)〜(3)のパターンで実行した場合に、各メモリアドレスに格納されている演算命令が、パイプライン処理によって、演算器A〜Cのどの演算器に割り当てられたかを示した例である。
図1(b)のパターン(1)の列では、試験開始アドレスとしてメモリアドレス113が指定されている。このため、各メモリアドレスの演算命令は、以下の演算器に割り当てられる。パターン(1)の例では、メモリアドレス111,112に格納されているNOP命令は、演算器で実行されない。
メモリアドレス113の演算命令:演算器A
メモリアドレス114の演算命令:演算器B
メモリアドレス115の演算命令:演算器C
メモリアドレス116の演算命令:演算器A
メモリアドレス117の演算命令:演算器B
メモリアドレス118の演算命令:演算器C
メモリアドレス119のリターン命令:演算器A
パターン(2)の列では、試験開始アドレスとしてメモリアドレス112が指定されている。そこで、各メモリアドレスの演算命令は、以下の演算器に割り当てられる。パターン(2)の例では、メモリアドレス111に格納されているNOP命令は、演算器で実行されない。
メモリアドレス112のNOP命令:演算器A
メモリアドレス113の演算命令:演算器B
メモリアドレス114の演算命令:演算器C
メモリアドレス115の演算命令:演算器A
メモリアドレス116の演算命令:演算器B
メモリアドレス117の演算命令:演算器C
メモリアドレス118の演算命令:演算器A
メモリアドレス119のリターン命令:演算器B
パターン(3)の列では、試験開始アドレスとしてメモリアドレス111が指定されている。そこで、各メモリアドレスの演算命令は、以下の演算器に割り当てられる。
メモリアドレス111のNOP命令:演算器A
メモリアドレス112のNOP命令:演算器B
メモリアドレス113の演算命令:演算器C
メモリアドレス114の演算命令:演算器A
メモリアドレス115の演算命令:演算器B
メモリアドレス116の演算命令:演算器C
メモリアドレス117の演算命令:演算器A
メモリアドレス118の演算命令:演算器B
メモリアドレス119のリターン命令:演算器C
なお、試験開始アドレスを指定する分岐命令は、演算器に試験命令列を実行させる前に、実行中の演算命令を全てキャンセルする命令を含む。更に、パイプラインフラッシュをする命令を含む。これにより、試験命令列は毎回規定の演算器から処理を順に割り当てることができる。図1(b)の例では、パターン(1)〜(3)の先頭の演算命令は、演算器Aに割り当てられている。演算器Aのあとは、演算器B、Cの順に命令が割り当てられる。
メモリアドレス113とメモリアドレス117に格納されている演算命令は、パターン(1)の場合、太線枠で示すように演算器Aと演算器Bに割り当てられる。このため、パターン(1)の命令列を用いると、演算器A−B間のバイパス回路が使用される。バイパス回路に故障がない場合、処理命令列は正常に処理を終了し、特定の演算結果を試験制御部に返す。しかし、バイパス回路に故障が発生した場合、処理命令列は正常に処理を終了できず、異常値やエラー値を返す。例えば、演算器A−B間のバイパス回路が故障し、処理命令列を正常に処理できない場合に、処理命令列110の演算結果として特定のエラー値が出力される。処理命令列110の演算結果として予測される予測値と異なる演算結果が返ってきた場合に、演算器A−B間のバイパス回路が故障していると判断する。
次に、試験開始アドレスとしてメモリアドレス112が指定された場合、パターン(2)で説明したように、試験に使用される命令列は、処理命令列110の先頭に、メモリアドレス112に格納されたNOP命令を備える。メモリアドレス113とメモリアドレス117に格納されている演算命令は、パターン(2)の場合、点線枠で示すように演算器Bと演算器Cに割り当てられる。このため、パターン(2)の命令列が実行されると、演算器B−C間のバイパス回路が使用される。なお、パターン(2)は、パターン(1)と比べて、NOP命令が先頭に設置されているが、NOP命令は、処理命令列の演算結果に影響を与えない演算命令である。そのため、パターン(2)は、演算器B−C間のバイパス回路の故障を検出するのに有効な演算命令列である。
試験開始アドレスとしてメモリアドレス111が指定された場合、パターン(3)で説明したように、試験に使用される命令列は、処理命令列110の先頭に、メモリアドレス111、112に格納されたNOP命令を備える。メモリアドレス113とメモリアドレス117に格納されている演算命令は、パターン(3)の場合、一点鎖点枠で示すように演算器Cと演算器Aに割り当てられる。このため、パターン(3)の命令列が実行されると、演算器C−A間のバイパス回路が使用される。
図2は、情報処理装置の例を示す。図2は、試験制御部101、データベース260、複数の演算器270、レジスタ280を備える。試験制御部101は、試験命令列生成部210、試験開始アドレス設定部220、試験データ設定部230、試験命令列制御部240、試験結果出力部250を備える。複数の演算器は、バイパス回路271a〜271cを備える。なお、図2の例では、演算器の数は3であるが、情報処理装置に含まれる演算器の数は、実装に応じて任意に変更されるものとする。また、情報処理装置に含まれる演算器の数に応じて、演算器の間を接続するバイパス回路の数も変動するものとする。
試験命令列生成部210は、試験命令列を生成する。試験命令列は、処理命令列の先頭に少なくとも1つのNOP命令を備え、次に処理命令列と、リターン命令とを備える。試験命令列生成部210は、処理命令列をデータベース260より取得する。データベース260は、複数の処理命令列と、各処理命令列に対応した、回路が正常な場合の予測される演算結果である予測値とを保持している。また、データベース260は、予測値の代わりに、故障時の各処理命令列に対応した演算結果としてのエラー値を保持していてもよく、予測値とエラー値の両方を保持してもよい。予測値とエラー値は、処理命令列を演算器に実行させて得られた実際の演算結果と、予測値又はエラー値とを比較することで、回路が正常かどうかを判断するために使用される。また、データベース260は、処理命令列を実行する際の、試験に使用する所定の試験環境情報を保持してもよい。処理命令列と、予測値と、エラー値、試験環境情報は、試験に応じてオペレータによって設定されてもよい。
さらに、試験命令列生成部210は、情報処理装置の備える演算器の数を取得する。演算器の数は、NOP命令の最適な数を算出するために用いられる。試験命令列は、少なくとも1つのNOP命令を備えればよいが、演算器の総数よりも小さい数のNOP命令を有することが望ましい。例えば、図1(a)に示す試験命令列100からメモリアドレス111のNOP命令を削除し、試験命令列100´がメモリアドレス112のNOP命令と処理命令列の場合を考えたい。試験命令列100´は、NOP命令を1つしか有しないため、パターン(1)とパターン(2)の試験での命令列として、使用できるが、パターン(3)の試験には使用できない。そのため、図1(b)の演算器の割り当て状態120’は、パターン(3)の列を持たない。すると、試験命令列100´は、パターン(1)のように、演算器A−B間のバイパス回路の故障の検出に有効であり、また、パターン(2)のように、演算器B−C間のバイパス回路の故障の検出に有効である。しかしながら、演算器C−A間のバイパス回路の故障の検出に有効ではない。よって、演算器間を網羅して故障を検出するためには、試験命令列100は、演算器A〜Cの3つの演算器に対してパターン(1)〜(3)の試験を行うのが好ましい。そのためには、2つのNOP命令を備えた試験命令列が好ましい。同様に、演算器がn個のケースは、パターン(1)〜(n)の試験を行うのが好ましい。ここで、nは、2以上の整数である。すると、n−1個のNOP命令を備えた試験命令列を使用するのが好ましい。しかしながら、試験時間を短縮したい場合や、既に特定の演算器間には故障がないことが判明している場合は、演算器間を網羅して試験を行わない。この場合、実施したい試験に応じて、NOP命令の数を調整した試験命令列を使用すればよい。
情報処理装置が備える演算器の数、及び、データベース260は、メモリ装置又は記憶装置に記憶される。情報装置が備える演算器の数は、データベース260に含まれてもよい。また、試験制御部101も、メモリ装置又は記憶装置に記憶される。
試験開始アドレス設定部220は、試験開始アドレスの初期値としてメモリアドレスを設定する。試験開始アドレスの初期値は、分岐命令で指定される試験開始アドレスのメモリアドレスを指し、所定のメモリや記憶装置に記憶される。
つぎに、試験データ設定部230は、試験に使用するデータを設定する。試験データ設定部230は、試験命令列生成部210で生成された試験命令列を所定のメモリや記憶装置に格納する。また、試験データ設定部230は、演算器の数、予測値、所定の試験環境情報、試験番号などを所定のメモリや記憶装置やレジスタに設定する。また、後述するが、試験データ設定部230は、試験開始アドレスが変更された場合、変更後の試験開始アドレスを設定する。
試験命令列制御部240は、試験開始命令を出力し、試験命令列を複数の演算器270に実行させる。その後、複数の演算器270から演算結果を受信する。更に、試験命令列制御部240は、受信した演算結果を予測値と比較し、比較結果を試験結果出力部250に出力する。また、詳細は後述するが、試験命令列制御部240は、次に試験命令列を実行するときの試験開始アドレスを算出する。試験開始命令は、分岐命令を含む。試験開始命令を受けた複数の演算器は、試験命令列を分岐命令で指定された試験開始アドレスより、各演算器に処理を割り当て、演算命令を実行する。次に、試験命令列制御部240は、試験命令列が各演算器で実行された演算結果を受信し、データベース260より取得した予測値と比較する。受信した演算結果が、予測値と一致した場合、所定の演算器間の回路は正常に動作していると判断できる。また、受信した演算結果が予測値と一致しない場合は、所定の演算器間の回路は故障していると判断される。試験命令列制御部240は、回路が正常かどうか判断した比較結果を試験結果出力部250に出力する。試験結果出力部250は、試験命令列制御部240から比較結果を受信し、試験結果を出力する。
複数の演算器270は、演算器A〜Cを備え、演算器A〜Cの各々はバイパス回路271a〜271cで接続されている。演算器A−B間は、バイパス回路271aで接続されており、演算器B−C間は、バイパス回路271b、演算器C−A間は、バイパス回路271cで接続されている。試験命令列制御部240の試験開始命令によって、各演算器は、試験命令列100のうちの割り当てられた命令を処理する。例えば、図1(a)に示す試験命令列100がパターン(1)で実行されると、バイパス回路271aに故障が発生しているかが判定されることになる。同様に、パターン(2)の実行により、バイパス回路271bの故障の有無が判定され、パターン(3)の実行により、バイパス回路271cの故障の検出が行われる。レジスタ280は、試験命令列が実行される際に、適宜使用される。
図3は、情報処理装置のハードウェア構成の例である。図3は、情報処理装置300と、ディスプレイ装置307を有する。情報処理装置300は、プロセッサメモリ302、入力装置インターフェース303、バス304、記憶装置305、出力装置インターフェース306を備える。図3の例では、プロセッサは、CPU(Central Processing Unit)301であるが、情報処理装置は、実装に応じた任意の制御回路を備えていても良い。CPU301は、バス304を介して、メモリ302、入力装置インターフェース303、記憶装置305、出力装置インターフェース306と相互に接続されている。CPU301は、記憶装置305に格納されたプログラム、又は、メモリ302にロードされたプログラムを実行する。記憶装置305は、磁気ディスク装置、光ディスク装置、光磁気ディスク装置あるいは半導体記憶装置を含み、コンピュータ読み取り可能な記録媒体を扱うドライブ装置も含む。ドライブ装置が扱う記録媒体としては、磁気テープ、メモリカード、光ディスク(CD-ROM、DVD-ROMなど)、光磁気ディスク(MO、MDなど)といった、任意のコンピュータ読み取り可能な記録媒体を使用することができる。記憶装置305は、実施例に係る各処理を行うプログラム、及び、実施例において使用する各種データを格納している。
次に、図3のハードウェア構成を、図2の構成に基づいて説明する。複数の演算器270は、CPU301に該当し、レジスタ280は、CPU301に含まれる。試験制御部101の処理を実現するために使用されるプログラムは、メモリ302又は記憶装置305に記憶される。更に、試験制御部101は、試験命令列生成部210、試験開始アドレス設定部220、試験データ設定部230、試験命令列制御部240、試験結果出力部250を備え、CPU301によって実現される。試験命令列生成部210は、試験命令列を生成する際に、データベース260から処理命令列や予測値などの各種情報を取得する。データベース260は、記憶装置に記憶されていてもよく、入力装置インターフェース303を介した不図示の外部記憶装置であってもよい。また、処理命令列や予測値などの各種情報を、キーボードやマウスといった入力装置インターフェース303を使用して、オペレータによって入力されてもよい。試験結果出力部250は、演算結果を出力する際に、出力装置インターフェース306を介して、ディスプレイ装置307にその演算結果を表示する。
図4は、試験命令列を使用した第1の試験で行われる処理の例を説明するフローチャートである。第1の試験は、1つの試験開始アドレスを指定して試験命令列を処理する試験である。第1の試験で行われる一連の処理の例を、ステップS101〜S107に示す。試験制御部が、ステップS101〜S104と、ステップS106〜S107とを行い、複数の演算器が、ステップS105を処理する。
試験命令列生成部210は、試験命令列を生成する(ステップS101)。試験開始アドレス設定部220は、試験開始アドレスの初期値として用いるメモリアドレスを設定する(ステップS102)。試験データ設定部230は、試験に使用するデータを設定する(ステップS103)。試験に使用するデータは、試験命令列、演算器の数、予測値、所定の試験環境情報、試験番号などである。試験命令列制御部240は、試験開始アドレスを指定し、試験開始命令を出力する(ステップS104)。第1の試験では、試験開始アドレスとして、S102で設定された試験開始アドレスの初期値が使用される。複数の演算器270は、試験開始アドレスから試験命令列を実行する(ステップS105)。なお、試験命令列が複数の演算器で実行されている間は、他の演算命令の割り込みがないことが好ましい。そのため、試験開始命令を受信すると、複数の演算器は実行中の演算命令をキャンセルし、試験命令列の実行を優先して行う。また、試験制御部は、試験開始命令を出力した後は、演算結果を受信するまで処理を行わない。試験命令列制御部240は、演算結果を受信し、演算結果を予測値と比較する(ステップS106)。試験結果出力部250は、ステップS106から比較結果を取得し、比較結果を試験結果として出力する(ステップS107)。
第2の試験の例を、図5A〜Dと図6で説明する。第2の試験の説明では、1つの試験命令列が出力されてから、試験命令列から得られる複数のパターンの命令列が実行され、試験結果が複数のパターンについてまとめて得られる場合について述べる。また、第2の試験の説明では、演算器A〜Dの4つの演算器を備える情報処理装置での試験を例として説明する。
以下の説明では図5Aに示す試験命令列が生成されるものとする。試験命令列生成部210は、処理命令列をデータベース260から取得して、メモリアドレス404〜411に格納したとする。さらに、試験命令列生成部210は、演算器の数が4であることから、処理命令列の先頭に付加するNOP命令の数を3に決定したとする。すると、個々で生成される図5Aに示すとおりになる。図5Aの例では、試験命令列400は、メモリアドレス401〜403にNOP命令と、処理命令列である演算命令をメモリアドレス404〜411に備え、メモリアドレス412にリターン命令を備える。図5Aに示す試験命令列400では、メモリアドレス404とメモリアドレス409に格納された命令を実行する演算器が、レジスタ中の同じアドレスに対するアクセスを重複して行うものとする。また、分岐命令は、試験命令列内の各NOP命令のメモリアドレスや、処理命令列の先頭のメモリアドレスを試験開始アドレスとして指定することができる。よって、試験命令列400は、試験開始アドレスとして、メモリアドレス401〜404を指定することができる。第2の試験では、メモリアドレス401〜404が試験開始アドレスとして一度ずつ指定されることにより、以下の4つのパターンの命令列を用いた試験が行われる。
(i)メモリアドレス401に格納されているNOP命令から複数の演算器に実行されるパターン
(ii)メモリアドレス402に格納されているNOP命令から複数の演算器に実行されるパターン
(iii)メモリアドレス403に格納されているNOP命令から複数の演算器に実行されるパターン
(iv)メモリアドレス404に格納されている処理命令列の先頭の演算命令から複数の演算器に実行されるパターン(メモリアドレス401,402、403に格納されているNOP命令は、演算器で実行されない)
図6は、試験命令列を使用した第2の試験で行われる処理の例を説明するフローチャートである。第2の試験は、パターン(i)、パターン(ii)、パターン(iii)、パターン(iv)の順番で、試験を連続して行う。
<1回目の試験:パターン(i)>
最初の処理として、試験命令列生成部210は、試験命令列400を生成する(ステップS201)。試験命令列400は、パターン(i)〜(iv)で共通して使用する試験命令列である。そのため、2回目以降の試験では、試験命令列400を再度生成する処理を有さない。試験開始アドレス設定部220は、試験開始アドレスの初期値としてメモリアドレス401を設定する(ステップS202)。試験データ設定部230は、試験に使用するデータを設定する(ステップS203)。試験に使用するデータは、試験命令列400、演算器の数、予測値、所定の試験環境情報、試験番号などである。試験命令列制御部240は、試験開始アドレスとしてメモリアドレス401を指定し、試験開始命令を出力する(ステップS204)。複数の演算器270は、試験開始アドレスから試験命令列を実行する(ステップS205)。パターン(i)の試験では、試験命令列400の各演算命令は、図5Aに示すように演算器A〜Dに割り当てられる。メモリアドレス404とメモリアドレス409に格納された命令を実行する演算器が、レジスタ中の同じアドレスに対するアクセスを重複して行う。そのため、パターン(i)の試験は、演算器D−A間のバイパス回路を使用している。試験命令列制御部240は、パターン(i)の演算結果を受信し、演算結果を予測値と比較処理を行い、演算器D−A間のバイパス回路が故障しているかを判断する(ステップS206)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスを算出する(ステップS207)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスをメモリアドレス402とする。試験命令列制御部240は、演算器数と同じ回数の試験を実行したかを判断する(ステップS208)。パターン(i)は1回目の試験であるため、演算器数と同じ4回の試験を実行しておらず、ステップS208では、NOと判断され、処理をステップS203に返す。
<2回目の試験:パターン(ii)>
試験データ設定部230は、試験に使用するデータを設定する(ステップS203)。ここで設定されるデータは、1回目の試験のステップS207で算出された、次に実行する試験命令列の試験開始アドレスである。1回目の試験のステップS207の算出の結果、試験データ設定部230は、次に実行する試験命令列の試験開始アドレスとして、メモリアドレス402を設定する。なお、1回目の試験のステップS203で設定した試験命令列400、演算器の数、予測値、所定の試験環境情報は、2回目の試験でも同じものを使用する。試験命令列制御部240は、試験開始アドレスとしてメモリアドレス402を指定し、試験開始命令を出力する(ステップS204)。複数の演算器270は、試験開始アドレスから試験命令列を実行する(ステップS205)。パターン(ii)の試験では、試験命令列400の各演算命令は、図5Bに示すように、演算器A〜Dに割り当てられる。試験命令列400のメモリアドレス401に格納されているNOP命令は、演算器で実行されない。メモリアドレス404とメモリアドレス409に格納された命令を実行する演算器が、レジスタ中の同じアドレスに対するアクセスを重複して行う。そのため、パターン(ii)の試験は、演算器C−D間のバイパス回路を使用している。試験命令列制御部240は、パターン(ii)の演算結果を受信し、演算結果を予測値と比較することにより、演算器C−D間のバイパス回路が故障しているかを判断する(ステップS206)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスを算出する(ステップS207)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスをメモリアドレス403とする。試験命令列制御部240は、演算器数と同じ回数の試験を実行したかを判断する(ステップS208)。パターン(ii)は2回目の試験であるため、演算器数と同じ4回の試験を実行していない。このため、ステップS208では、NOと判断され、処理がステップS203から繰り返される。
<3回目の試験:パターン(iii)>
試験データ設定部230は、試験に使用するデータを設定する(ステップS203)。ここで設定されるデータは、2回目の試験のステップS207で算出された、次に実行する試験命令列の試験開始アドレスである。2回目の試験のステップS207の算出の結果、試験データ設定部230は、次に実行する試験命令列の試験開始アドレスとして、メモリアドレス403を設定する。なお、1回目の試験のステップS203で設定した試験命令列400、演算器の数、予測値、所定の試験環境情報は、3回目の試験でも同じものを使用する。試験命令列制御部240は、試験開始アドレスとしてメモリアドレス403を指定し、試験開始命令を出力する(ステップS204)。複数の演算器270は、試験開始アドレスから試験命令列を実行する(ステップS205)。パターン(iii)の試験では、試験命令列400の各演算命令は、図5Cに示すように、演算器A〜Dに割り当てられる。試験命令列400のメモリアドレス401、402に格納されているNOP命令は、演算器で実行されない。メモリアドレス404とメモリアドレス409に格納された命令を実行する演算器が、レジスタ中の同じアドレスに対するアクセスを重複して行う。そのため、パターン(iii)の試験は、演算器B−C間のバイパス回路を使用している。試験命令列制御部240は、パターン(iii)の演算結果を受信し、演算結果を予測値と比較することにより、演算器B−C間のバイパス回路が故障しているかを判断する(ステップS206)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスを算出する(ステップS207)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスをメモリアドレス404とする。試験命令列制御部240は、演算器数と同じ回数の試験を実行したかを判断する(ステップS208)。パターン(iii)は3回目の試験であるため、演算器数と同じ4回の試験を実行していない。このため、ステップS208では、NOと判断され、処理をステップS203から繰り返される。
<4回目の試験:パターン(iv)>
試験データ設定部230は、試験に使用するデータを設定する(ステップS203)。ここで設定されるデータは、3回目の試験のステップS207で算出された、次に実行する試験命令列の試験開始アドレスである。3回目の試験のステップS207の算出の結果、試験データ設定部230は、次に実行する試験命令列の試験開始アドレスとして、メモリアドレス404を設定する。なお、1回目の試験のステップS203で設定した試験命令列400、演算器の数、予測値、所定の試験環境情報は、4回目の試験でも同じものを使用する。試験命令列制御部240は、試験開始アドレスとしてメモリアドレス404を指定し、試験開始命令を出力する(ステップS204)。複数の演算器270は、試験開始アドレスから試験命令列を実行する(ステップS205)。パターン(iv)の試験では、試験命令列400の各演算命令は、図5Bに示すように、を演算器A〜Dに割り当てられる。試験命令列400のメモリアドレス401、402に格納されているNOP命令は、演算器で実行されない。メモリアドレス404とメモリアドレス409に格納された命令を実行する演算器が、レジスタ中の同じアドレスに対するアクセスを重複して行う。そのため、パターン(iv)の試験は、演算器A−B間のバイパス回路を使用している。試験命令列制御部240は、パターン(iv)の演算結果を受信し、演算結果を予測値と比較することにより、演算器A−B間のバイパス回路が故障しているかを判断する(ステップS206)。試験命令列制御部240は、次に実行する試験命令列の試験開始アドレスを算出する(ステップS207)。試験命令列制御部240は、演算器数と同じ回数の試験を実行したかを判断する(ステップS208)。パターン(iv)は4回目の試験であるため、演算器数と同じ4回の試験を実行している。そのため、ステップS208では、YESと判断され、処理をステップS209に移す。
試験結果出力部250は、全試験におけるステップS206の比較結果を受信し、試験結果として出力する(ステップS209)。ステップS209が終了すると、試験制御部は処理を終了する。
図6は、第2の試験の例として、パターン(i)を1回目の試験とし、パターン(ii)、パターン(iii)、パターン(iv)を順番に実行するように試験を行っているが、実施例は上記のものに限定されない。パターン(iv)の試験を1回目に行い、パターン(iii)、パターン(ii)、パターン(i)の順番に試験を実行してもよい。
図7は、試験命令列の生成例を説明するフローチャートである。図7では、図6のステップS201の処理を詳しく説明している。試験命令列生成部210は、試験を行う演算器の数を指すarithmetic_noを、データベース260より取得する(ステップS301)。取得したarithmetic_noは、所定のメモリや記憶装置に記憶される。試験命令列生成部210は、試験命令列の先頭のメモリアドレスを指すstart_address番地を取得する(ステップS302)。取得する試験命令列の先頭のメモリアドレスは、試験命令列を生成するために使用される任意のメモリアドレスである。取得したstart_address番地は、所定のメモリや記憶装置に記憶される。
ステップS303〜S305は、試験命令列にNOP命令を書き込む処理を示す。試験命令列生成部210は、arithmetic_noから1を減算し、減算された値が0より大きいかを判断する(ステップS303)。arithmetic_noから1を減算した値が0より大きい場合、試験命令列生成部210は、start_address番地に、NOP命令を書き込む(ステップS303でYES、ステップS304)。試験命令列制御部240は、start_address番地に1つのNOP命令の格納に使用されるメモリサイズを加算する。また、試験命令列制御部240は、arithmetic_noから1を減算する。試験命令列制御部240は、1つのNOP命令の格納に使用されるメモリサイズを加算したstart_address番地と、減算されたarithmetic_noを、ステップS303に返し、ステップS303以降の処理を繰り返す。
ステップS306〜S308は、試験命令列に処理命令列とリターン命令を書き込む処理を示す。arithmetic_noから1を減算した値が0になると、試験命令列制御部240は、データベース260から、処理命令列を取得する(ステップ303でNO、ステップS306)。試験命令列生成部210は、ステップS305で最後に算出されたstart_address番地に、処理命令列を書き込む(ステップS307)。試験命令列生成部210は、処理命令列の末尾にリターン命令を書き込む(ステップS308)。ステップS308が終了すると、試験命令列生成部210は処理を終了する。
図8は、試験命令列を使用した試験制御方法の例を説明するフローチャートである。図8では、図6のステップS202〜S208を詳しく説明している。
試験開始アドレス設定部220は、試験番号を指すTest_Noに0を設定する(ステップS401)。試験番号は、試験開始アドレスに対応づけて付与される番号である。試験開始アドレス設定部220は、試験開始アドレスの初期値としてメモリアドレスを指すtest_addressを設定する(ステップS402)。test_addressは、以下の数式1で算出される。
上記の数式で使用されるstart_addressは、ステップS302で取得されたstart_address番号である。また、上記の数式で使用されるarithmetic_noは、ステップS301で取得されたarithmetic_noである。
試験データ設定部230は、試験に使用するデータを設定する(ステップS403)。ここで設定されるデータは、演算器の数、予測値、所定の試験環境情報、試験番号である。試験命令列制御部240は、試験開始アドレスを指定し、試験開始命令を出力する(ステップS404)。複数の演算器270は、試験開始アドレスから試験命令列を実行する(ステップS405)。複数の演算器270は、ステップS405の演算結果を試験命令列制御部240に送る。試験命令列制御部240は、ステップS405の演算結果を複数の演算器270から受信する(ステップS406)。試験命令列制御部240は、受信した演算結果と予測値を比較し、比較結果を出力する(ステップS407)。試験命令列制御部240は、test_addressに1つのNOP命令の格納に使用されるメモリサイズを加算する(ステップS408)。試験命令列制御部240は、Test_Noに1を加算する(ステップS409)。試験命令列制御部240は、試験の回数が、演算器の数以下であるかを判断する(ステップS410)。試験データ設定部230は、試験に使用するデータを設定する(ステップS410がYES、ステップS403)。ステップS410でYESと判断されると、ステップS408で算出されたtest_addressと、ステップS409で算出されたTest_Noとが、試験データ設定部230で設定される。ステップS403の処理が実行されると、ステップS404〜S410の処理が繰り返される。一方、ステップS410でNoと判断されると、試験命令列制御部は、処理を終了する(ステップS410がNO、END)。
図9は、試験命令列の演算結果と予測値を比較する処理の例を説明するフローチャートである。このフローチャートは、図6のステップS206の処理を詳しく説明している。試験命令列制御部240は、試験命令列の演算結果を取得し、所定のメモリに格納する(ステップS501)。試験命令列制御部240は、データベース260から取得した予測値を所定のメモリより読み出す(ステップS502)。演算結果と予測値を比較する(ステップS503)。予測値は、情報処理装置の環境に応じた、レジスタ毎の予測値を含む。試験命令列制御部240は、ステップS503の比較によって、演算結果と予測値が一致したかを判断する(ステップS504)。演算結果と予測値が一致したと判定されると、試験命令列制御部240は、所定のメモリに、演算結果と予測値が一致したことを書き込む(ステップS504がYES、ステップS505)。一方、演算結果と予測値が一致なかった場合、試験命令列制御部240は、所定のメモリに演算結果と予測値が一致しなかったことを書き込む。また、不一致となったレジスタに対応した予測値と演算結果とを所定のメモリに書き込む(ステップS505がNO、ステップS506)。
図10は、試験結果データの例である。図10は、ステップS505と、ステップS506で所定のメモリに書き込まれた比較結果を、試験結果出力部250が、試験結果の例とする表示の一例である。図10は、最上段の行に試験番号を備え、2行目に各試験番号に対応した試験結果を示す。併せて、図10は、各試験番号に対応して、レジスタ毎にステップS504の比較結果を表している。
ステップS401において、Test_Noは、初期値として0が設定されている。図6で例示したパターン(i)〜パターン(iv)の連続した試験では、1回目の試験のパターン(i)は、Test_Noが0の列に、比較結果が表示される。次に、2回目の試験のパターン(ii)は、Test_Noが1の列に、3回目の試験のパターン(iii)は、Test_Noが2の列に、4回目の試験のパターン(iv)は、Test_Noが3の列に比較結果が表示されている。
図10では、Test_Noが1の列において、試験結果がNGと判断されている。そして、Test_Noが1の列を確認すると、レジスタ3においてNGとなっている。更に、レジスタ3には、予測値及び演算結果が表示されている。オペレータは、表示されている予測値及び演算結果を元に、故障が発生している回路を特定する。予めTest_Noが1の列が、演算器C−D間のバイパス回路の故障の検出を行うパターン(ii)の試験であると分かっている場合は、オペレータはTest_Noを参照することにより、故障が発生している回路を特定できる。また、演算器C−D間のバイパス回路が正常にも関わらず、レジスタ3がNGとある場合は、レジスタ3が破損していることも考えられる。
以上説明したように、実施形態にかかる方法では、特定の演算器間を接続するバイパス回路の試験に使用することができる命令列を処理命令列として使用する。さらに、処理命令列と、処理命令列の演算に影響を与えない命令列を合わせて得られる命令列が、試験命令列として生成される。また、1つの試験命令列を使用するときに、試験を開始するアドレスを変動させることにより、試験対象とするバイパス回路を変更することができる。このため、実施形態にかかる方法を用いると、効率的に、演算器間のバイパス回路の故障の検出を行うことができる。
<その他>
なお、実施形態は上記に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
図6のフローチャートに示す、パターン(i)〜(iv)の連続した試験を、パターン(i)から順番に実施しているものの、パターン(i)〜(iv)の試験をランダムに1度ずつ試験するようにしてもよい。
図5では、演算器A−B間のバイパス回路、演算器B−C間のバイパス回路、演算器C−D間のバイパス回路、演算器D−A間のバイパス回路の故障の検出を行う図である。しかし、演算器は他の組み合わせでも、互いに回路で接続されており、図5の例は、故障の検出を行う演算器間の回路を限定するものではない。例えば、演算器A−C間のバイパス回路、演算器B−D間のバイパス回路についての故障の検出を行うようにしてもよい。その場合は、例えば、図5Aにおける、メモリアドレス405とメモリアドレス411に格納された命令を実行する演算器が、レジスタ中の同じアドレスに対するアクセスを重複して行うものとすればよい。
図6のステップS209や、図8のステップS410では、試験の回数を演算器の数と比較して、処理を次のステップに移すことを判断している。しかしながら、図6のステップS209や、図8のステップS410の判断基準は、試験の回数と演算器の数の比較に限定されない。図6のステップS209や、図8のステップS410は、試験の回数と、予め決定した所定の閾値とを比較するようにしてもよい。この場合、例えば、閾値は、追加されたNOP命令の数とすることができる。
図1、図5の例は、演算器の数を限定するものではない。同様に、図1、図5の例は、処理命令列が含む演算命令の数を限定するものではない。
100 試験命令列
101 試験制御部
110 処理命令列
111〜119 メモリアドレス
210 試験命令列生成部
220 試験開始アドレス設定部
230 試験データ設定部
240 試験命令列制御部
250 試験結果出力部
260 データベース
270 複数の演算器
271a〜271c バイパス回路
280 レジスタ
300 情報処理装置
301 CPU
302 メモリ
303 入力装置インターフェース
304 バス
305 記憶装置
306 出力装置インターフェース
307 ディスプレイ装置
400 試験命令列
401〜412 メモリアドレス

Claims (6)

  1. 第1〜第3の演算器を有する装置の試験方法であって
    前記第1の演算器と前記第2の演算器を接続する第1の回路を使用する処理を含む命令列である処理命令列の先頭に、前記処理命令列に含まれる命令の演算結果に変化を与えない命令列である追加命令列を追加することにより、前記第2の演算器と前記第3の演算器を接続する第2の回路を使用する処理を含む試験命令列を生成し、
    前記処理命令列の先頭から前記試験命令列を前記装置に実行させることにより、前記第1の回路の故障の有無を判定し、
    前記追加命令列から前記試験命令列を前記装置に実行させることにより、前記第2の回路の故障の有無を判定する
    処理を前記装置に行わせることを特徴とする試験方法。
  2. 前記装置は、
    前記処理命令列の実行によって得られると予測される予測値を記憶し、
    前記処理命令列の先頭から前記試験命令列を実行することにより得られる第1の演算結果が前記予測値と異なると、前記第1の回路に故障があると判定し、
    前記追加命令列の先頭から前記試験命令列を実行することにより得られる第2の演算結果が前記予測値と異なると、前記第2の回路に故障があると判定する
    ことを特徴とする請求項1に記載の試験方法。
  3. 前記追加命令列は、1つ以上の命令を含み、
    前記装置は、
    前記試験命令列の実行を開始するアドレスである開始アドレスの初期値を、前記処理命令列の先頭に割り当てられたアドレスの番地に設定し、
    前記試験命令列を実行すると、次に前記試験命令列を実行するときの開始アドレスを、前記試験命令列の実行のときに用いた開始アドレスに割り当てられた前記追加命令列中の1つの命令の格納に使用されるメモリサイズを減算して得られる番地に変更し、
    前記試験命令列を実行した回数が、前記追加命令列に含まれている命令の数以下の所定の閾値に達すると処理を終了する
    ことを特徴とする請求項1または2に記載の試験方法。
  4. 前記追加命令列は、1つ以上の命令を含み、
    前記装置は、
    前記試験命令列の実行を開始するアドレスである開始アドレスの初期値を、前記試験命令列の先頭に割り当てられたアドレスの番地に設定し、
    前記試験命令列を実行すると、次に前記試験命令列を実行するときの開始アドレスを、前記試験命令列の実行のときに用いた開始アドレスに割り当てられた前記追加命令列中の1つの命令の格納に使用されるメモリサイズを加算して得られる番地に変更し、
    前記試験命令列を実行した回数が、前記追加命令列に含まれている命令の数以下の所定の閾値に達すると処理を終了する
    ことを特徴とする請求項1または2に記載の試験方法。
  5. 第1〜第3の演算器を有する装置の試験プログラムであって
    前記第1の演算器と前記第2の演算器を接続する第1の回路を使用する処理を含む命令列である処理命令列の先頭に、前記処理命令列に含まれる命令の演算結果に変化を与えない命令列である追加命令列を追加することにより、前記第2の演算器と前記第3の演算器を接続する第2の回路を使用する処理を含む試験命令列を生成し、
    前記処理命令列の先頭から前記試験命令列を前記装置に実行させることにより、前記第1の回路の故障の有無を判定し、
    前記追加命令列から前記試験命令列を前記装置に実行させることにより、前記第2の回路の故障の有無を判定する
    処理を前記装置に行わせることを特徴とする試験プログラム。
  6. 第1〜第3の演算器を有する装置の試験制御装置であって
    前記第1の演算器と前記第2の演算器を接続する第1の回路を使用する処理を含む命令列である処理命令列の先頭に、前記処理命令列に含まれる命令の演算結果に変化を与えない命令列である追加命令列を追加することにより、前記第2の演算器と前記第3の演算器を接続する第2の回路を使用する処理を含む試験命令列を生成する生成部と、
    前記処理命令列の先頭から前記試験命令列を前記装置に実行させることにより、前記第1の回路の故障の有無を判定し、前記追加命令列から前記試験命令列を前記装置に実行させることにより、前記第2の回路の故障の有無を判定する制御部
    を備えることを特徴とする試験制御装置。
JP2012261729A 2012-11-29 2012-11-29 試験方法、試験プログラム、および、試験制御装置 Expired - Fee Related JP5983362B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012261729A JP5983362B2 (ja) 2012-11-29 2012-11-29 試験方法、試験プログラム、および、試験制御装置
US14/068,019 US20140149800A1 (en) 2012-11-29 2013-10-31 Test method and test control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012261729A JP5983362B2 (ja) 2012-11-29 2012-11-29 試験方法、試験プログラム、および、試験制御装置

Publications (2)

Publication Number Publication Date
JP2014106928A true JP2014106928A (ja) 2014-06-09
JP5983362B2 JP5983362B2 (ja) 2016-08-31

Family

ID=50774403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012261729A Expired - Fee Related JP5983362B2 (ja) 2012-11-29 2012-11-29 試験方法、試験プログラム、および、試験制御装置

Country Status (2)

Country Link
US (1) US20140149800A1 (ja)
JP (1) JP5983362B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408309A (zh) * 2018-10-18 2019-03-01 北京海泰方圆科技股份有限公司 多终端的测试方法及装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9411699B1 (en) * 2015-11-20 2016-08-09 International Business Machines Corporation Prioritization metrics for efficient post-Si failure localization
US9934118B2 (en) * 2016-01-22 2018-04-03 International Business Machines Corporation Reducing SPQL tester time for the critical paths stress test
US10467114B2 (en) * 2016-07-14 2019-11-05 International Business Machines Corporation Hierarchical data processor tester
CN109165123A (zh) * 2018-08-02 2019-01-08 佛山鑫达智汇科技有限公司 矿机故障的检测方法、检测装置、服务器和存储介质
US10901878B2 (en) * 2018-12-19 2021-01-26 International Business Machines Corporation Reduction of pseudo-random test case generation overhead
US11314584B1 (en) * 2020-11-25 2022-04-26 International Business Machines Corporation Data quality-based confidence computations for KPIs derived from time-series data
US12619509B1 (en) * 2023-11-09 2026-05-05 Synopsys, Inc. Integrated circuit test pattern interleaving
KR20250081430A (ko) * 2023-11-29 2025-06-05 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342055A (ja) * 1992-06-05 1993-12-24 Fujitsu Ltd パイプライン動作検証用命令列の自動生成方式
JPH06187190A (ja) * 1992-12-15 1994-07-08 Fujitsu Ltd 先行制御機構の試験方法
JPH09282166A (ja) * 1996-04-09 1997-10-31 Hitachi Ltd パイプライン演算装置
JP2013206293A (ja) * 2012-03-29 2013-10-07 Fujitsu Semiconductor Ltd リコンフィグ可能な集積回路装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600788A (en) * 1994-01-19 1997-02-04 Martin Marietta Corporation Digital test and maintenance architecture
JP3502216B2 (ja) * 1995-07-13 2004-03-02 富士通株式会社 情報処理装置
JP2001188691A (ja) * 1999-12-28 2001-07-10 Toshiba Corp 検証プログラム自動生成方法及び検証プログラム自動生成プログラムを記録したコンピュータ読み取り可能な記録媒体
KR100358919B1 (ko) * 2000-11-18 2002-10-31 주식회사 메모리앤테스팅 마스터-슬레이브방식을 이용한 반도체칩 검사장치
US7725793B2 (en) * 2007-03-21 2010-05-25 Advantest Corporation Pattern generation for test apparatus and electronic device
WO2008125998A1 (en) * 2007-04-12 2008-10-23 Nxp B.V. Analog circuit testing and test pattern generation
JP4855355B2 (ja) * 2007-07-18 2012-01-18 株式会社日立製作所 フェールオーバにおける引き継ぎ先を自律的に変更する計算機システム及び方法
JP2012099035A (ja) * 2010-11-05 2012-05-24 Fujitsu Ltd プロセッサの動作検証方法、プロセッサの動作検証装置、及びプロセッサの動作検証プログラム
JP2013120558A (ja) * 2011-12-08 2013-06-17 Fujitsu Ltd 情報処理装置、試験方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342055A (ja) * 1992-06-05 1993-12-24 Fujitsu Ltd パイプライン動作検証用命令列の自動生成方式
JPH06187190A (ja) * 1992-12-15 1994-07-08 Fujitsu Ltd 先行制御機構の試験方法
JPH09282166A (ja) * 1996-04-09 1997-10-31 Hitachi Ltd パイプライン演算装置
JP2013206293A (ja) * 2012-03-29 2013-10-07 Fujitsu Semiconductor Ltd リコンフィグ可能な集積回路装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408309A (zh) * 2018-10-18 2019-03-01 北京海泰方圆科技股份有限公司 多终端的测试方法及装置

Also Published As

Publication number Publication date
US20140149800A1 (en) 2014-05-29
JP5983362B2 (ja) 2016-08-31

Similar Documents

Publication Publication Date Title
JP5983362B2 (ja) 試験方法、試験プログラム、および、試験制御装置
US9990458B2 (en) Generic design rule checking (DRC) test case extraction
JP6995451B2 (ja) 回路適正化装置及び回路適正化方法
JP2014507710A (ja) 処理装置、トレースユニット、および診断装置
WO2020137566A1 (ja) テスト環境決定装置及びテスト環境決定方法
JP2018160191A (ja) ハードウェア試験装置及びハードウェア試験方法
US20080209375A1 (en) Variable Threshold System and Method For Multi-Corner Static Timing Analysis
US7380104B2 (en) Method and apparatus for back to back issue of dependent instructions in an out of order issue queue
JP2011138211A (ja) 故障制御装置、プロセッサコア、演算処理装置、情報処理装置および擬似故障制御方法
JP6903249B2 (ja) テストケース生成装置、テストケース生成方法、およびテストケース生成プログラム
WO2019077738A1 (ja) データ検証装置、データ検証方法及びデータ検証プログラム
US8739091B1 (en) Techniques for segmenting of hardware trace and verification of individual trace segments
JP2012198065A (ja) 半導体集積回路、試験方法、情報処理装置、及びプログラム
US9588179B2 (en) Scheme for masking output of scan chains in test circuit
JP4461934B2 (ja) キャッシュメモリ試験システム、試験方法、試験プログラム
JP6912104B2 (ja) 試験装置、試験方法及びコンピュータプログラム
JP6318976B2 (ja) デバッグ回路、デバッガ装置、半導体装置及びデバッグ方法
JP5017396B2 (ja) 情報処理装置およびプログラムの検証方法
US20190384610A1 (en) Arithmetic processing apparatus and control method
WO2020262257A1 (ja) バグ同定支援装置、バグ同定支援方法及びプログラム
JP2007058450A (ja) 半導体集積回路
JP2016009232A (ja) フォーマル検証装置およびプログラム
JP2015036839A (ja) プロセッサ試験命令列生成方法、生成プログラム、及び生成装置
JP7497582B2 (ja) 情報処理装置,試験プログラムおよび試験方法
WO2021246050A1 (ja) 検証処理装置、検証処理方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160606

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160705

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160718

R150 Certificate of patent or registration of utility model

Ref document number: 5983362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees