JP2005321387A - テスト番号の競合を処理するための方法と装置 - Google Patents

テスト番号の競合を処理するための方法と装置 Download PDF

Info

Publication number
JP2005321387A
JP2005321387A JP2005120491A JP2005120491A JP2005321387A JP 2005321387 A JP2005321387 A JP 2005321387A JP 2005120491 A JP2005120491 A JP 2005120491A JP 2005120491 A JP2005120491 A JP 2005120491A JP 2005321387 A JP2005321387 A JP 2005321387A
Authority
JP
Japan
Prior art keywords
test
test number
database
contention
code
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.)
Pending
Application number
JP2005120491A
Other languages
English (en)
Inventor
Robert S Kolman
ロバート・エス・コルマン
Reid Hayhow
リード・ハイホウ
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.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of JP2005321387A publication Critical patent/JP2005321387A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31718Logistic aspects, e.g. binning, selection, sorting of devices under test, tester/handler interaction networks, Test management software, e.g. software for test statistics or test evaluation, yield analysis
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • G01R31/318357Simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】回路テストにおけるテスト番号の割り当てをそれらの衝突を回避して自動的に行う。
【解決手段】テスト番号の競合を処理するための装置(100)は、コンピュータ読み取り可能媒体に記憶されたプログラムコードを含む。コード(102)は、第1のテスト番号と第2のテスト番号との衝突に応答して、第1のテスト番号に関連する衝突トラッキング値に応じて第2のテスト番号を自動的に調節し、それによって、衝突を解消する。また、衝突に応答して、コード(102)は、衝突トラッキング値を更新する。テスト番号の衝突を処理するための他の方法(900)及び装置(200,300)も開示される。
【選択図】図1

Description

本発明は、テスト回路におけるテスト番号の設定に関する。
いくつかの形式の回路テストは技術者に多くのテスト結果を提供する。技術者がこれらのテスト結果を管理、参照するのを支援するために、各テスト結果にテスト番号を関連付けることができる。
テスト番号は重複しないのが好ましい。しかし、テスト番号を手動で割り当てるか、基本的な「自動」手段で割り当てる場合は、テスト番号の重複を避けたり、それを検出することが困難なことがある。
本発明の1つの態様は、テスト番号の競合(テスト番号の衝突)を処理する装置において具現化される。本装置は、コンピュータ読み取り可能媒体、およびコンピュータ読み取り可能媒体上に記憶されるプログラムコードを含む。プログラムコードは、第1のテスト番号と第2のテスト番号の間の競合に応答して、第1のテスト番号と関連付けられた競合トラッキング値に応じて第2のテスト番号を自動的に調節し、これによって競合を除去するためのコードを含む。プログラムコードはさらに、競合に応答して競合トラッキング値を更新するためのコードを含む。
本発明の別の態様はテスト番号を割り当てるための方法において具現化される。本方法によると、テストフローの実行中、現在のテストフローコンテキスト情報が維持される。テストフロー中のサブテストが実行されると、1)サブテストの識別子と2)現在のテストフローコンテキスト情報とを含むインデックス情報を使用して、テスト番号のデータベースにインデックスを付ける。インデックス情報に対応するテスト番号がデータベースに存在する場合は、そのテスト番号をサブテストの結果に割り当てる。インデックス情報に対応するテスト番号がデータベースに存在しない場合は、新しいテスト番号を以下のように生成する。現在のテストフローコンテキストの1つまたは複数のレベルに対して、1つまたは複数のテスト番号ファクタが指定されている場合は、テスト番号ファクタを使用して現在のテスト番号範囲に対するベース番号(または基数ともいう。以下同じ)を決定する。これ以外の場合は、ベース番号をデフォルトのベース番号に設定する。ついで、新しいテスト番号を、現在のテスト番号範囲内の次のテスト番号に設定する。新しいテスト番号を生成した後に、新しいテスト番号を使用して、テスト番号のデータベースにインデックスを付ける。新しいテスト番号がデータベースにエントリとして現われる場合は、上記のインデックス情報をエントリに関連づけられた一意的な識別子(または固有の識別子という。以下同じ)と比較する。インデックス情報が一意的な識別子と一致する場合は、その新しいテスト番号をサブテストに割り当てる。インデックス情報が一意的な識別子と一致しない場合は、1)新しいテスト番号によってインデックスが付けられた競合トラッキング値に応じて新しいテスト番号を自動的に調整し、2)調節された新しいテスト番号をサブテストに割り当て、3)競合トラッキング値を更新する。
本発明の他の実施形態も開示される。
本発明の例示であって現在のところ好ましい実施形態を図面に示す。
本明細書では、「テストフロー」という用語を、回路テストの間に実行されるサブテストのタイプ、または、数、順序を指定するために使用されるテストプログラムの任意の部分と定義する。「サブテスト」は、複数のテスト結果を生じるテストであってもよいが、好ましくは単一のテスト結果だけを生じるテストまたはテストの一部であると定義する。
技術者がサブテストの結果を管理、参照することを支援するために、各テスト結果をテスト番号と関連づけることができる。テスト番号は、1つのテスト結果と別のテスト結果を区別する役に立つばかりでなく、テスト番号を使用して、どのサブテストがどの結果を生成したかを決定することができる。
テスト番号を生成する時に、時々2つのテスト番号が「競合する」可能性がある。すなわち、テスト番号を割り当てるためのプロセスが、2つ以上の異なるサブテストの結果に同じテスト番号を割り当てようと試みる可能性がある。この結果、テスト番号データベースが曖昧になり、データベースが破損する可能性もある。図1は、テスト番号の競合を処理するための装置100を示す。装置100は、たとえば磁気ディスクまたは光ディスク、固定ディスクまたはリムーバブルディスク、ランダムアクセスメモリまたはリードオンリーメモリ(RAMまたはROM)などのコンピュータ読み取り可能媒体上に記憶されたプログラムコードで具体化される。いくつかの実施形態では、装置100のプログラムコードは、1つまたは複数のコンピュータシステムに関連づけられた種々のコンピュータ読み取り可能媒体の間で分散させてもよい。
図示のように、装置100は、第1のテスト番号と第2のテスト番号の間の競合に応答して、第1のテスト番号に関連づけられた競合トラッキング値に応じて第2のテスト番号を自動的に調節し、これによって競合を除去するためのコード102を含む。装置100はさらに、競合に応答して競合トラッキング値を更新するためのコード104を含む。
競合トラッキング値は種々に具現化することができるが、好ましくは競合カウント(たとえば第1のテスト番号との過去の競合のカウント値)、または競合トラッキング値に関連づけられたテスト番号を割り当てるために行われた試行回数のインジケータである。
装置100はさらに、テスト番号と、テスト番号に対応する競合トラッキング値のデータベース108を維持するコードための106を含む。このようなデータベースは例示として次のようなエントリを含むことができる。
Figure 2005321387
1実施形態では、コード106は、サブテストの結果に割り当てられたことのあるすべてのテスト番号について競合トラッキング値を初期化する。第2のテスト番号を調節するときに、コード106は調節された第2のテスト番号に対応する競合トラッキング値を初期化することができる。別の実施形態では、コード106は、以前に競合に関係したテスト番号に対する競合トラッキング値だけを初期化する。
さらに装置100は、第1のテスト番号と第2のテスト番号の競合を識別するためのコード110を含んでいてもよい。装置200(図2)に示すように、コード110は、第1のテスト番号に関連づけられた競合トラッキング値を参照することにより、単に競合を識別するものであってもよい。例えば、競合トラッキング値が第1のテスト番号を割り当てるためになされた試行の回数のインジケータである場合は、1に等しいかまたは1より大きい任意の値は、競合が存在し、第2のテスト番号を調節する必要があることを示す。
コード110の代替のバージョンを含む装置300を図3に示す。この代替バージョンであるコード110aは、まず第2のテスト番号を使用してテスト番号のデータベースにインデックスを付けることにより、第1のテスト番号と第2のテスト番号の間の競合を識別する。第2のテスト番号がデータベース内にエントリとして現われる場合は、コード110aは、エントリに関連づけられた一意的な識別子(すなわち、固有の識別子)と、1)第2のテスト番号が生成されたサブテストの識別子及び2)サブテストに関するテストフローコンテキスト情報を含むインデックス情報とを比較する。一意的な識別子がインデックス情報と一致しない場合は、コード110aは、テスト番号競合を識別し、調節されたテスト番号を生成する。装置300の1実施形態では、テスト番号、テスト番号に対応する一意的な識別子、テスト番号に対応する競合トラッキング値をすべて、同じデータベース内で維持する。しかし、テスト番号とテスト番号に対応する競合トラッキング値は、個別の競合マップに記憶してもよい。
装置300が一意的な識別子と「テストフローコンテキスト情報」との比較を必要とすることを考慮し、このような情報の生成、維持、使用について後で詳述する。しかし、競合トラッキング値を使用してテスト番号を調節することが可能ないくつかの代替の方法をまず説明する。
コード102の簡単な実施形態では、調節が必要なテスト番号に競合トラッキング値を、単に、加算、または、乗算、付加することができる。
コード102の別の実施形態では、競合トラッキング値を、テスト番号と少なくとも1つの「調節ファクタ」の両方と組み合わせることができる。例として、これらの値を互いに加算、乗算、付加することができる。コード102の特定の1実施形態では、少なくとも1つの調節ファクタは、10のファクタ(例えば、10の倍数である1,000または10,000など)を含み、コード102は、この10のファクタと競合トラッキング値を乗算することによってこの2つを組み合わせる。ついでこの結果を、調節を必要とするテスト番号に加算することができる。例えば、第1のテスト番号「235」と、これに関連づけられた競合トラッキング値「1」を考える。調節ファクタが「10,000,000」である場合は、番号「235」と競合する第1のテスト番号を調節して「10,000,235」にする。調節されたテスト番号「10,000,235」を生成した後、テスト番号「235」と関連づけられた競合トラッキング値を「2」にインクリメントする。ついで、テスト番号「235」と競合する第2のテスト番号を「20,000,235」に調節する。テスト番号「235」との別の競合が起きた場合には同様に処理して、「ベース」テスト番号と「調整された」テスト番号の次のような列を得ることができる。
Figure 2005321387
上記のテスト番号の列を生成した後、テスト番号と競合トラッキング値のデータベース108は、上記に示したようになる。
上記の競合テスト番号調節方法により、「ベース」テスト番号に関連して容易に区別できる一連の調節されたテスト番号が得られることが理解されるであろう。
1実施形態では、コード102が用いる調節ファクタ(複数可)は1つまたは複数のユーザによって指定されたファクタ(ユーザ指定ファクタ)を含んでいてもよい。
次に、上記の「テストフローコンテキスト情報」の生成、維持、使用について説明する。
テストフローコンテキスト情報は、テストプログラムのうち実行されている部分を画定することを補助する任意の情報を含んでいてもよい。例として、テストフローコンテキスト情報は、テストスーツ指定子(テストスーツとはテストの組のこと)、ポート指定子、ベクトルラベル、ベクトル指定子、ピン指定子などの情報を含むことができる。また、テストフローコンテキスト情報はテストフロー実行中に入力された、入れ子になったループなどの複数のループレイヤの各々に関してループ指定子および/またはループ反復指定子を含んでいてもよい。本明細書では、「指定子」という用語は、テストスーツ、ループ、他のテストフローコンテキストを指定するために使用することができるストリング、番号、その他の任意の手段を包含する。
図4は、テスト番号を割り当てる第1の例示的な方法400を示す。方法400によると、テストフローの実行中、現在のテストフローコンテキスト情報が維持される(402)。現在のテストフローコンテキストの1つまたは複数のレベルに対して1つまたは複数のテスト番号ファクタが指定されている場合は、方法400はテスト番号ファクタを使用して、現在のテスト番号範囲に対するベース番号(例えば開始番号または基準番号)を決定する(404)。そうでない場合は、ベース番号をデフォルトのベース番号に設定する。
方法400の1実施形態では、現在のテストフローコンテキストの種々のレベルに関して指定されている複数のテスト番号ファクタを、たとえば加算または乗算によってまとめる(集合化する)ことによってベース番号をコンパイル(例えば、編集したりまとめたり)する。例として、テスト番号ファクタは、ループレベル、テストスーツレベル、サブテストレベルのうち任意のものまたはすべてのものにおいて指定される、インクリメント(増分)または加数を含んでいてもよい。
方法400の別の実施形態では、ユーザはテストフローコンテキストごとに単一のベース番号を指定できるだけである。この実施形態では、現在のテスト番号範囲に対するベース番号は、ベース番号を単にユーザによって指定されたベース番号と等しくなるように設定することにより決定される。この方法では、テスト番号ファクタの集合はない。しかしユーザは、テストフロー内の種々のポイントにおいてベース番号を提供し、これによってたとえば、いくつかのテスト番号をグループ化することができる。さらに、ベース番号はコンテキストに関連して(例えば、テストフローの前後関係に関連して)設定されるので、それ以降のテストスーツに割り当てられるテスト番号は、それ以前のテストスーツに割り当てられたテスト番号に続いている必要はない。さらに、あるベース番号が1つのテストスーツに対して指定されている場合は、それは、次のテストスーツで使用するために自動的には保存されない。
テストフロー内のサブテストが実行されると、現在のテスト番号範囲中の次のテスト番号をサブテストの結果に割り当てる(406)。
図5は、テストフローコンテキスト情報を維持することができる例示的なテストフロー500を示す。例として、テストフロー500は、アジレント93000 SOCシリーズテスタ(米国カリフォルニア州パロアルト、アジレントテクノロジーズ社製造)のシステムオンチップテストフローであってもよい。テストフロー500は5つのテストスーツ502、504、506、508、510を含み、これらにはそれぞれAAA、BBB、CCC、DDD、EEEという名前が付いている。テストスーツ502から510は各々、いくつかのサブテストを含むかおよび/または指定する機能を有し、たとえば、テスト方法、テスト関数、ユーザプロシージャ(ユーザ手順)などの1つまたは複数のテストコントロールを含んでいてもよい。また、テストフロー500はそれぞれLoop_X、Loop_Yと名前がつけられた2つのループ512、514を含む。例として、各ループ512、514は、このループを3回(つまり1..3)繰り返すことを表している。
図6は、テストフロー500の実行中に方法400が維持することができるテストフローコンテキスト情報600の列を示す。最初のテストフローコンテキスト602は「AAA」だけ、または最初に遭遇したテストスーツの名前であることに注意されたい。テストスーツAAAが実行されると、テストフローコンテキストは「L1」に変わるが、これは、Loop_Xの第1の反復を示す。
テストスーツBBBに入ると、テストフローコンテキストは「BBB:L1」に変わる。読み取りやすくするために、図6に示すテストフローコンテキストでは、現在のテストスーツの名前を常にコンテキストの最初におくという慣例を採用していることに注意されたい。しかし、方法400では必ずしもこうする事は要求されないし、またその必要もない。
Loop_Yに最初に入ると、テストフローコンテキストは「L1:L1」に変わる。
したがって、Loop_XとLoop_Yのアイデンティティ(すなわち、どのループであるか)は、テストフローコンテキスト内で維持されるループ反復の回数と順序から推測される。しかし、コンテキストを「X1:Y1」と示すなどにより、特定的にループのアイデンティティを呼び出してもよい。
テストフロー500の種々のコンテキストをテスト番号ファクタと関連づける。すなわち、Loop_Xは加数10,000、テストスーツBBBは加数200、テストスーツCCCは加数220、Loop_Yは加数2000、テストスーツDDDはインクリメント5と関連づけられる。図6では、各テストフローコンテキストに隣接して、コンテキストの集合ベース番号を示す。したがって、テストスーツBBBのベース番号は10,200(10,000+200)、Loop_Xの第1の反復中のテストスーツCCCのベース番号は10,220(10,000+220)、Loop_Xの第1の反復中とLoop_Yの第1の反復中のテストスーツDDDのベース番号は12,000(10,000+2,000)、テストスーツEEEのベース番号は1200である。しかし、テストスーツAAAのベース番号は1、すなわちデフォルトのベース番号である。
たとえば、(Loop_Xに関連づけられた加数10,000などのように)テスト番号ファクタがループレベルで提供される場合は、ループのテスト番号ファクタはベース番号の繰り返し回数に因数分解することができる。例えば、Loop_Xの第2の反復およびLoop_Yの第3の反復中の、テストスーツDDDの実行を考える。このコンテキストのベース番号は(10,000*2)+(2,000*3)、すなわち26,000と計算することができる。
次に、図5に示すテストスーツ502から510の各々は、Subtest1、Subtest2、Subtest3であると識別される、3つのサブテストを含むと仮定する。各テストスーツ502から510の中に同じ名前のサブテストが現われることもあるが、これらが同じサブテストである必要はない(及び、同じサブテストでない可能性がある)ことに注意されたい。テストフロー500の実行中に、テストスーツAAAに割り当てられるテスト番号は1、2、3となる。Loop_Xの第1の反復中にテストスーツBBBに割り当てられるテスト番号は、10,200、10,201、10,202となる。同様に、Loop_Xの第1の反復中にテストスーツCCCに割り当てられるテスト番号は、10,220、10,221、10,222となる。Loop_XとLoop_Yの第1の反復中にテストスーツDDDに割り当てられるテスト番号は、12,000、12,005、12,010、すなわち5ずつインクリメントされた数になる。最後に、テストスーツEEEに割り当てられたテスト番号は整数1200、1201、1202を含む。
いくつかのテストフローに関しては、テストフローの異なるコンテキストが故意または偶然に、同じテスト番号範囲を共有しうることに注意されたい。しかし、他のテストスーツがすでにその範囲から番号を引き出しているかどうかにかかわらず、各サブテストはその範囲から「次の番号」を引き出すので、2つのテストスーツに割り当てられたテスト番号は競合しない。
さらに、2つ以上のテストスーツが同じベース番号を有することがあるばかりでなく、重複または間に挟まれたテスト番号範囲と関連づけられることもあることに注意されたい。たとえば、2つのテストスーツがそれぞれ1200と1201のベース番号、5のインクリメントに関連づけられている場合は、一方のテストスーツをテスト番号1200、1205、1210に関連づけ、他のテストスーツをテスト番号1201、1206、1211に関連づけることができる。また、ベース番号1200と1301、2のインクリメントにそれぞれ関連づけられたテストスーツからも、同様なテスト番号の重複が起きる場合がある。
現在のテスト番号範囲についてコンパイルされたベース番号が新しい場合は、そのベース番号を使用してテスト番号範囲のデータベース700中で新しいテスト番号範囲を初期化することができる。ついで、データベース700中の各テスト番号範囲について、そのテスト番号範囲から割り当てられたテスト番号をトラッキングする(突きとめる)ことができる。このための1つの方法は、各範囲702をその範囲から割り当てられた最大のテスト番号704と共に記憶することである。ついで、ある範囲から新しいテスト番号を割り当てるたびに、以前の最大のテスト番号をインクリメントすることができる。インクリメントは、ユーザがテストフローに割り当てたテストファクタに依存して、デフォルトのインクリメントであってもよいし、たとえば、現在のテストフローコンテキストのレベルと関連づけられたインクリメントなど、テストフローの特定のレベル(複数可)についてユーザが指定したインクリメントであってもよい。
テスト番号を結果に割り当てると、各テスト番号と、その導出元のベース番号(すなわち、このベース番号からテスト番号が得られる)を共に記憶することによって、テスト番号データベースをコンパイルする(たとえば、まとめる)ことができる。オプションとして、テスト結果、テスト番号、テスト番号の導出元のベース番号をすべて同じデータベース内に記憶するように、テスト番号データベースと結果データベースを統合することができる。このようなデータベース800の一部を図8に示す(図8において"pass"、"fail"は、それぞれ、「合格」、「不合格」を表す)。代替的には、テスト番号、テストフローコンテキスト情報、テスト番号の導出元のベース番号をすべて同じデータベースに記憶するように、テスト番号データベースをテストフローコンテキスト情報と統合することができる。このデータベースの形式を図10に示す。
データベース800または1000を記憶した後でこの後のテストフローを実行する前に、データベース800または1000を読み出して、その中に記憶された種々のベース番号を識別することができる。各識別されたベース番号について、テスト番号範囲を初期化し、データベース800または1000を解析して、テスト番号範囲からすでに得られているテスト番号の範囲を決定することができる。ついで、その後のテストフロー実行中に、初期化されたテスト番号範囲を使用して、初期化されたテスト番号範囲に対応する任意の新しいテスト番号を割り当てることができる。
1実施形態では、方法400は、Robert S.Kolmanらによる、「Method and Apparatus for Assigning Test Numbers」(代理人整理番号第10040433−1号。本出願と同日に提出された)という題名の米国特許出願に開示されているテスト番号を割り当てるための方法と組み合わせることができる。図9はこの組合せに従った、テスト番号を割り当てるための第2の例示的な方法900を示す。方法900では、テストフローの実行中、現在のテストフローコンテキスト情報を維持する(902)。テストフロー内のサブテストが実行されると、1)サブテストの識別子及び2)現在のテストフローコンテキスト情報を含むインデックス情報を使用してテスト番号のデータベースにインデックスを付ける(904)。インデックス情報に対応するテスト番号がデータベースに存在する場合は、そのテスト番号をサブテストの結果に割り当てる(906)。インデックス情報に対応するテスト番号がデータベースに存在しない場合は、新しいテスト番号を生成する(908)。新しいテスト番号は以下のように生成される。現在のテストフローコンテキストの1つまたは複数のレベルに対して1つまたは複数のテスト番号ファクタが指定されている場合は、そのテスト番号ファクタを使用して現在のテスト番号範囲に対するベース番号を決定する(910)。そうでない場合は、ベース番号をデフォルトのベース番号に設定する。次に、新しいテスト番号を、現在のテスト番号範囲の中の次のテスト番号に設定する(912)。
新しいテスト番号を生成した後(908)、新しいテスト番号を使用して、テスト番号のデータベースにインデックスを付ける(914)。新しいテスト番号がデータベースにエントリとして現われる場合は、上記のインデックス情報を、そのエントリに関連づけられた一意的な識別子と比較する(916)。インデックス情報が一意的な識別子と一致する場合は、新しいテスト番号をサブテストに割り当てる(918)。インデックス情報が一意的な識子と一致しない場合は、1)新しいテスト番号によってインデックスを付けられた競合トラッキング値に応じて新しいテスト番号を自動的に調節し(920)、2)調節された新しいテスト番号をサブテストに割り当て(920)、3)競合トラッキング値を更新する(920)。1実施形態では、装置300(図3)を使用して手順914から920を実行する。
再び例示的なテストフロー500に戻ると、テストフロー500の第1(または最初)のサブテストが実行されると、サブテストの識別子(Subtest1)と現在のテストフローコンテキスト情報(AAA)とを含むインデックス情報を使用してテスト番号のデータベースにインデックスを付ける。これがテストフロー500の第1(または最初)の実行である場合は、データベースは空であり、新しいテスト番号(例えば1)をSubtest1の結果に割り当てる。また、新しいテスト番号(1)とインデックス情報(AAA:Subtest1)をデータベース内で関連づける。テストフロー500の第1の実行中にこれらのステップは進行するが、各連続的なインデックスを使用するとデータベースの「ミス」が生じ、これによって、新しいテスト番号が生成され、これに関連づけられたインデックス情報(及び、おそらくは、新しいテスト番号の導出元のベース番号)がデータベースに追加される。したがって、テストフロー500の第1の実行の後に、図10に示すテスト番号のデータベース1000が生成され、図11に示す競合トラッキングテーブル1100も生成されている。競合トラッキングテーブル1100は、テスト番号のリスト(たとえば1102)、および、これらに対応する競合トラッキング値(たとえば1104。各々は新しいテスト番号が生成されると「1」に初期化することができる)を含むことに注意されたい。同時に、各々の新しく生成されたテスト番号は、対応するサブテストのテスト結果に割り当てられ、この結果、図12に示すテスト結果のデータベース1200が生成される。図12に示されたテスト結果はすべて「合格」または「不合格」の用語で表されているが、実際のテストを実行したテスト結果は、電圧測定値、電流測定値、インピーダンス測定値、その他の種類のテスト結果を追加または代替として含むことができる。
テストフロー200の次の実行中、おそらくは、テストフロー200の編集後に、上記のように競合トラッキングテーブル1100を使用して、競合するテスト番号が新しいテスト番号に自動的に調節されていることを確認することができる。
好ましくは、テストスーツ内の各サブテストには一意的なサブテスト名を提供し、十分なテストフローコンテキスト情報を維持して、テスト番号のデータベース1000への各インデックスが一意的なサブテスト識別子を確実に形成するようにする。また、データベース1000に入力された各々の新しいテスト番号が、データベース中の他のすべてのテスト番号と一意的に区別されることが望ましい。
本発明によるテスト番号の競合を処理するための装置(100)は、コンピュータ読み取り可能媒体に記憶されたプログラムコードを含む。コード(102)は、第1のテスト番号と第2のテスト番号との衝突(上記では「競合」と記載した)に応答して、第1のテスト番号に関連する衝突トラッキング値に応じて第2のテスト番号を自動的に調節し、それによって、衝突を解消する。また、衝突に応答して、コード(102)は、衝突トラッキング値を更新する。テスト番号の衝突を処理するための他の方法(900)及び装置(200,300)も開示される。
上記の方法のうち任意の方法を、プログラムコードを使用して実施できることに注意されたい。
本明細書において、本発明の例示的かつ現在のところ好ましい実施形態について詳述したが、本発明の概念を、種々の変形態様で具現化し、使用することができること、及び、添付の特許請求の範囲は、従来技術による限定を除いて、そのような変形態様も含むことが意図されていることを理解されたい。
テスト番号競合を処理するための例示的な装置を示す図である。 図1に示す装置の代替実施形態を示す図である。 図1に示す装置の代替実施形態を示す図である。 テスト番号を割り当てるための例示的な方法を示す図である。 例示的なテストフローを示す図である。 図5のテストフローのテストフローコンテキスト情報の列を示す図である。 テスト番号範囲の例示的なデータベースを示す図である。 図5のテストフロー実行中に形成されうる例示的なテスト番号データベースの一部を示す図である。 テスト番号を割り当てるための第2の例示的な方法を示す図である。 図5のテストフローの実行に応答して生成されうるテスト番号のデータベースを示す図である。 図5のテストフローの実行に応答して生成されうる例示的な競合トラッキングテーブルを示す図である。 図5のテストフローの実行に応答して生成されうるテスト結果のデータベースを示す図である。
符号の説明
100、200、300 装置
102〜106 コード
108 データベース

Claims (10)

  1. テスト番号の競合を処理するための装置(100)であって、
    コンピュータ読み取り可能媒体と、
    前記コンピュータ読み取り可能媒体上に記憶されたプログラムコード
    とを具備し、
    前記プログラムコードは、
    第1のテスト番号と第2のテスト番号の間の競合に応答して、前記第1のテスト番号に関連づけられた競合トラッキング値に応じて前記第2のテスト番号を自動的に調節し、それによって競合を除去するためのコード(102)と、
    前記競合に応答して、前記競合トラッキング値を更新するためのコード(104)とを含むことからなる、装置。
  2. テスト番号と、テスト番号に対応する競合トラッキング値のデータベース(108)を維持するためのコード(106)をさらに含む、請求項1に記載の装置(100)。
  3. 前記データベース(108)に維持された各競合トラッキング値は競合カウントである、請求項2に記載の装置(100)。
  4. 前記データベース(108)に維持された各競合トラッキング値は、前記競合トラッキング値に関連づけられたテスト番号を割り当てるために行われた試行の回数を示す、請求項2に記載の装置(100)。
  5. 前記コード(102)は、前記第2のテスト番号をi)少なくとも1つの調節ファクタとii)前記競合トラッキング値と組み合わせることによって、前記第2のテスト番号を自動的に調節する、請求項1に記載の装置(100)。
  6. 前記少なくとも1つの調節ファクタは10のファクタまたは10の倍数を含む、請求項5に記載の装置(100)。
  7. 前記少なくとも1つの調節ファクタはユーザ指定ファクタを含む、請求項5に記載の装置(100)。
  8. 前記コード(102)は、前記少なくとも1つの調節ファクタと競合トラッキング値の組み合わせを前記第2のテスト番号に加算する、請求項5に記載の装置(100)。
  9. 前記第1のテスト番号と前記第2のテスト番号の間の前記競合を識別するためのコード(110a)をさらに含み、
    前記コード(110a)は、前記第2のテスト番号が生成されると、
    前記第2のテスト番号を使用してテスト番号のデータベース(108)にインデックスを付け、
    前記第2のテスト番号が前記データベース(108)内のエントリとして現れる場合は、前記エントリに関連付けられた一意的な識別子を、i)前記第2のテスト番号が生成されたサブテストの識別子及びii)前記サブテストに関するテストフローコンテキスト情報(600)を含むインデックス情報と比較し、及び、
    前記一意的な識別子が前記インデックス情報に一致しない場合は、テスト番号の競合を識別する
    ことによって前記識別を行うことからなる、請求項1に記載の装置(100)。
  10. テスト番号を割り当てるための方法(900)であって、
    テストフロー(500)の実行中、現在のテストフローコンテキスト情報(600)を維持すること(902)と、
    前記テストフロー(500)内のサブテストが実行されると、i)前記サブテストの識別子とii)前記現在のテストフローコンテキスト情報(600)とを含むインデックス情報を使用して、テスト番号のデータベース(1000)にインデックスを付けること(904)と、
    前記インデックス情報に対応するテスト番号が前記データベース(1000)内に存在する場合は、前記テスト番号を前記サブテストの結果に割り当てること(906)と、
    前記インデックス情報に対応するテスト番号が前記データベース(1000)内に存在しない場合は、新しいテスト番号を生成すること(908)であって、
    前記現在のテストフローコンテキスト(600)の1つまたは複数のレベルに対して1つまたは複数のテスト番号ファクタが指定されている場合は、前記テスト番号ファクタを使用して現在のテスト番号範囲に対するベース番号を決定し、そうでない場合には、ベース番号をデフォルトのベース番号に設定し(910)、及び、
    前記新しいテスト番号を前記現在のテスト番号範囲内の次のテスト番号に設定すること(912)
    によって新しいテスト番号を生成すること(908)と、
    前記新しいテスト番号を使用して前記テスト番号のデータベース(1000)にインデックスを付けること(914)と、
    前記新しいテスト番号が前記データベース(1000)内にエントリとして現れる場合は、前記インデックス情報を前記エントリに関連づけられた一意的な識別子と比較すること(916)と、
    前記インデックス情報が前記一意的な識別子と一致する場合は、前記新しいテスト番号を前記サブテストに割り当てること(918)と、
    前記インデックス情報が前記一意的な識別子と一致しない場合は、i)前記新しいテスト番号(1102)によってインデックスをつけられた競合トラッキング値(1104)に応じて前記新しいテスト番号を自動的に調節し(920)、ii)前記調節された新しいテスト番号を前記サブテストに割り当て(920)、iii)前記競合トラッキング値(1104)を更新すること(920)
    を含む、方法。
JP2005120491A 2004-05-05 2005-04-19 テスト番号の競合を処理するための方法と装置 Pending JP2005321387A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/839,888 US7076388B2 (en) 2004-05-05 2004-05-05 Methods and apparatus for handling test number collisions

Publications (1)

Publication Number Publication Date
JP2005321387A true JP2005321387A (ja) 2005-11-17

Family

ID=35240496

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005120491A Pending JP2005321387A (ja) 2004-05-05 2005-04-19 テスト番号の競合を処理するための方法と装置

Country Status (4)

Country Link
US (1) US7076388B2 (ja)
JP (1) JP2005321387A (ja)
DE (1) DE102005008344A1 (ja)
TW (1) TW200537350A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7290189B2 (en) * 2005-03-28 2007-10-30 Verigy (Singapore) Pte. Ltd. Compilation of calibration information for plural testflows
WO2007142786A1 (en) * 2006-05-31 2007-12-13 Cts Corporation Ceramic monoblock filter with inductive direct-coupling and quadruplet cross-coupling
CN106126410B (zh) * 2016-05-26 2019-05-07 华为技术有限公司 代码冲突的提示方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4063220A (en) * 1975-03-31 1977-12-13 Xerox Corporation Multipoint data communication system with collision detection
JPS59202753A (ja) * 1983-05-02 1984-11-16 Toshiba Corp デ−タ通信システム
US5265123A (en) * 1990-02-15 1993-11-23 Advanced Micro Devices, Inc. Expandable repeater

Also Published As

Publication number Publication date
DE102005008344A1 (de) 2005-12-01
US7076388B2 (en) 2006-07-11
US20050251361A1 (en) 2005-11-10
TW200537350A (en) 2005-11-16

Similar Documents

Publication Publication Date Title
Pomeranz et al. Forward-looking fault simulation for improved static compaction
US8429574B2 (en) Dual-pattern coloring technique for mask design
CN105989044A (zh) 一种数据库校验方法及系统
US7712059B1 (en) Coverage metric and coverage computation for verification based on design partitions
US20140059026A1 (en) Test data generation and scale up for database testing using unique common factor sequencing
CN107133244B (zh) 一种数据库迁移的测试方法和装置
CN108875317A (zh) 软件克隆检测方法及装置、检测设备及存储介质
CN106557420B (zh) 测试db数据生成方法及装置
JP2005321387A (ja) テスト番号の競合を処理するための方法と装置
JP2007206069A (ja) 最も適合する試験結果タイプに基づいて自動的にデータをフォーマットする方法及び装置
CN101025746B (zh) 用于推断测试结果之间的关系的方法和设备
JP2005321398A (ja) コンテクスチュアル・テスト番号ファクタを使用してテスト番号を割り当てる方法および装置
JP2005321400A (ja) テスト番号の衝突を識別する方法と装置
JP2005321399A (ja) コンテクスチュアル・テスト番号ファクタを使用してテスト番号を割り当てる方法および装置
JP2005321396A (ja) テスト番号を割り当てるための方法および装置
CN112905169B (zh) 一种自动化定位命名空间引用问题的方法及装置
CN115658551B (zh) 代码测试方法、存储介质、电子设备和装置
JP2006155092A (ja) カバレッジ取得システム
CN111949505B (zh) 一种测试方法、装置及设备
KR20070101820A (ko) 테스트 결과 조정 시스템 및 방법
Pomeranz et al. Fault simulation under the multiple observation time approach using backward implications
JP2022001982A (ja) 状態遷移テスト実行プログラム、状態遷移テスト実行方法、及び情報処理装置
JP5448907B2 (ja) プログラム検証装置、プログラム検証方法、およびプログラム
JPH09330242A (ja) 情報処理装置のテスト命令列生成方式
JP2020137097A (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20071025

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071025

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110405

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110913