JP4933533B2 - サイトアウェアオブジェクト - Google Patents

サイトアウェアオブジェクト Download PDF

Info

Publication number
JP4933533B2
JP4933533B2 JP2008508894A JP2008508894A JP4933533B2 JP 4933533 B2 JP4933533 B2 JP 4933533B2 JP 2008508894 A JP2008508894 A JP 2008508894A JP 2008508894 A JP2008508894 A JP 2008508894A JP 4933533 B2 JP4933533 B2 JP 4933533B2
Authority
JP
Japan
Prior art keywords
site
ate
sites
data
active
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.)
Active
Application number
JP2008508894A
Other languages
English (en)
Other versions
JP2008539429A (ja
Inventor
フロトヤク,スティーヴン・ジェイ
スティムソン,ランドル・ビー
ソーントン,ダニエル・ピー
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.)
Teradyne Inc
Original Assignee
Teradyne 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 Teradyne Inc filed Critical Teradyne Inc
Publication of JP2008539429A publication Critical patent/JP2008539429A/ja
Application granted granted Critical
Publication of JP4933533B2 publication Critical patent/JP4933533B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/26Testing of individual semiconductor devices
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
    • H10P74/00

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

本発明は、概括的には、複数のデバイスを試験するのに使用される複数のサイトを有する自動試験装置(ATE)に関し、より詳細には、複数のデバイスを試験する際にATEによって使用されるサイトアウェアオブジェクトに関する。
[優先権の主張]
本願は、米国仮特許出願第60/676,005号及び米国特許出願公開第11/192,927号の優先権を主張する。これらの出願の双方の内容は、本明細書にすべてが述べられているように、参照により本出願に援用される。
ATEは、半導体、電子回路、プリント回路基板アセンブリ等のデバイスを試験する自動化された、通常はコンピュータ駆動の手法を指す。半導体デバイス等、ATEによって試験されるデバイスは、被試験デバイス(DUT)と呼ばれる。
現代のATEは、マルチサイト試験をサポートしている。マルチサイト試験をサポートしているATEは、スロット、すなわち「サイト」を含む。試験されるデバイスは、各サイトに挿入され、ATEは、そのサイトのデバイスに対して必要ないかなる試験も行う。コンピュータプログラムが、通常、試験に関与する。これらのコンピュータプログラムのコードを変更することなく複数のサイトでデバイスを試験する能力は、「サイト透明性」と呼ばれる。より詳細には、サイト透明性は、ユーザがこのようなタスクにほとんど責任を持つことがなく、そうすることが必要とされるまで、自身の試験がマルチサイトであることをかろうじて考慮する必要だけがあるような、サイト及びサイトデータの自動管理を指す。有効である場合、ユーザは、プログラミングのサイト次元性(site dimensionality)を意識し続けることはない。
サイト透明性によって、ユーザは、試験プログラムコードに対して大幅な変更を行うことなく、複数のデバイスを試験する構成にすることが可能になるので、サイト透明性はATEにおける重要な利点である。
本発明は、コンピュータプログラム製品を含み、サイトアウェア(site-aware)オブジェクトを実施する、装置及び方法を記載する。
一態様においては、本発明は、一般的にサイトを有する自動試験装置(ATE)と共に使用するための方法であって、サイトのそれぞれは被試験デバイス(DUT)を収容する方法を対象とする。その方法は、複数のサイトと共に使用するオブジェクトを定義し、オブジェクトは、複数のサイトの少なくともいくつかに関連するデータを含み、どのサイトがアクティブであるかを判断すること、及びATEによるDUTの試験中にオブジェクトを使用することを含む。この態様は、以下の特徴のうちの1つ又は複数も含むことができる。
ATEは、関連するATEソフトウェアサイト管理インフラストラクチャを備えることができ、それによって、サイトを管理する。オブジェクトは、ATEソフトウェアサイト管理インフラストラクチャと通信して、どのサイトがアクティブであるかを判断することができる。試験中のオブジェクトの使用は、オブジェクトを介してATEをプログラミングすること、ATEからの計器の読み取り値をオブジェクトに記憶すること、オブジェクトを使用して計器の読み取り値を処理すること、及び試験結果をオブジェクトに記録することのうちの1つ又は複数を含むことができる。処理は、計器の読み取り値を変更すること及び/又は読み取り値を試験サブシステムへ報告することを含むことができる。
オブジェクトは、プログラミング言語で定義されることができる。単一のデータエレメントが、プログラミング言語で取り扱われているように、オブジェクトは、プログラミング言語によって取り扱い可能である。データは、どのサイトがアクティブであるかを識別するブールデータを含むことができる。データはピンリストデータを含むことができる。ピンリストデータは、少なくとも1つのDUTの個々のピンにおける計器測定値に対応するピンデータを含むことができる。
オブジェクトは、プログラミング言語で定義することができ、方法はまた、プログラミング言語で演算を定義し、演算は、オブジェクトに特有のものであることを含むことができる。演算は、プログラミング言語のネイティブ変数に対して行われる数学演算に対応する数学的演算を含むことができる。
別の態様では、本発明は、一般に、サイトを有するATEと、ATEと通信する処理デバイスとを含むシステムを対象にする。ここで、サイトのそれぞれは、DUTを収容するように構成されている。処理デバイスは、上記態様の方法を遂行する命令を実行する。この態様は、上記態様と同じ特徴又は異なる特徴も含むことができる。
1つ又は2つ以上の例示の詳細は、添付図面及び以下の説明で述べられている。本発明のさらに別の特徴、態様、及び利点は、説明、図面、及び特許請求の範囲から明らかになるであろう。
異なる図における同じ参照符号は、同じ要素を示す。
図1は、複数のDUTを試験する際に使用されるシステム10を示している。システム10はATE12を含む。ATE12は、デバイスインターフェース基板(DIB)14を含む。DIB14は、ATEにデバイスを接続するのに使用される。DIB14は、複数のサイト16a〜16dを有する。DUTは、ATEを使用して試験を行うために各サイトに挿入することができる。図1には4つのサイトしか示されていないが、ATE12は、任意の個数のサイトを含むことができる。また、図1の例では、1スロットにつき1つのDUTがあるが、すべてのサイトが占有される必要はない。
各DUTは、ATEを使用して試験を行うことができるデバイスならば、どのタイプのデバイスであってもよい。DUTの例には、半導体デバイス及び電子アセンブリが含まれるが、これらに限定されるものではない。
ATE12は、デジタル信号プロセッサ(DSP)18等の内部処理デバイスを含む。DSP18は、ATEソフトウェア20、すなわち、実行可能コードから成るコンピュータプログラム(複数可)の全部又は一部を実行して、サイト16a〜16dのDUTを試験することができる。ATEソフトウェア20は、ATE12のメモリ(図示せず)に記憶することもできるし、後述するコンピュータ22等の外部処理デバイスから提供することもできる。ATEソフトウェア20は、サイト16a〜16dを管理するATEソフトウェアサイト管理インフラストラクチャ24を含む。
特に、ATEソフトウェアサイト管理インフラストラクチャは、ATEソフトウェア20とサイト16a〜16dとの間における情報の交換を制御する。この情報は、サイトのDUTからのデータ、及び/又は、サイトのDUTへ送信されるデータを含むことができる。DUTへのデータの例には、波形又は他の刺激等の試験データ、及び、DUTをプログラミングするためにATEソフトウェア20によって使用される構成データが含まれるが、これらに限定されるものではない(一実施形態では、DSPはDUTからの信号を処理するだけであることに留意されたい)。DUTからのデータの例には、サイトがアクティブであるか否かに関する表示、及び、DUTの個々のピンからの読み取り値を含む、サイトのDUTからの読み取り値が含まれるが、これらに限定されるものではない。サイトは、そのサイトがビンアウト(bin-out)し、そのサイトのDUTが必要なすべての試験を終えて合格したか又はDUTが1つ又は2つ以上の必要な試験に不合格であったことを意味する場合に、非アクティブであるとみなすことができることに留意されたい。いずれの場合も、それ以上試験は行われない。或いは、サイトは、そのサイトにDUTがない場合、又は、サイトが、試験を実行しているアドミニストレータによって非アクティブを指定された場合に非アクティブであるとみなすことができる。
ATE12は、コンピュータ22と通信する。コンピュータ22は、あらゆるタイプの処理デバイスとすることができる。このあらゆるタイプの処理デバイスには、従来のパーソナルコンピュータ(PC)、デスクトップデバイス若しくはハンドヘルドデバイス、マルチプロセッサコンピュータ、マイクロプロセッサベースの消費者用電子デバイス若しくはプログラマブル消費者用電子デバイス、ミニコンピュータ、メインフレームコンピュータ、及び/又はパーソナルモバイルコンピューティングデバイスが含まれるが、これらに限定されるものではない。図1の例では、コンピュータ22は、1つ又は2つ以上のプロセッサ(単に「プロセッサ26」と呼ばれる)及びメモリ28を含む。メモリ28は、試験ソフトウェア30を記憶する。試験ソフトウェア30は、ATE12でDUTを試験するためにプロセッサ26によって実行される。試験中、試験ソフトウェア30は、上述したATEソフトウェアサイト管理インフラストラクチャを含めて、ATEソフトウェア20と相互作用する。たとえば、試験ソフトウェア30は、サイト16a〜16dのDUTに試験データを提供し、且つ、このような試験の結果を試験ソフトウェア30又は指定されたサブシステムへ報告するようにATEソフトウェア20に命令することによって試験を制御することができる。このために、試験ソフトウェア30は、1つ又は2つ以上のグラフィカルユーザインターフェース(GUI)(図示せず)を生成することができる。このGUIを通じて、アドミニストレータは、ATE12における試験を制御することができる。
これまで、コンピュータ22の試験ソフトウェアは、手続き型開発環境(PDE:procedural development environment)と呼ばれる対話型グラフィカル環境と共に動作していた。PDEは、サイト透明性を実施するコードを含み、それによって、試験ソフトウェア開発者はプロセスフローに集中することが可能であった。その結果作成される試験ソフトウェアは、したがって、PDEに依存していた。一方、システム10は、PDEを含む必要がない。その代わり、試験ソフトウェア30は、試験中に、サイトアウェアオブジェクト(後述)を利用して、サイト透明性を実施する。
この実施形態では、試験ソフトウェア30は、ビジュアルベーシックフォーアプリケーション(Visual Basic for Application)(ビジュアルベーシック)で記述される。ビジュアルベーシックは、ベーシックと呼ばれる以前のDOSバージョンから発展した高水準プログラミング言語である。ビジュアルベーシックは、視覚的なイベント駆動型プログラミング言語である。これが、以前のベーシックとの主な相違である。ベーシックでは、プログラミングは、テキストのみの環境で行われ、プログラムは、シーケンシャルに実行される。ビジュアルベーシックでは、プログラミングは、オブジェクトを使用するグラフィカル環境で行われる。
オブジェクトは、データと、そのデータを操作するために実行されるコードとの双方を含む自己完結的エンティティである。ユーザは、ビジュアルベーシックにおいてオブジェクトをランダムに選択することができるので、各オブジェクトは、このような行動に対応できるように独立してプログラミングされる。ビジュアルベーシックプログラムは、このように、多数のサブプログラムから構成することができ、それらの多数のサブプログラムのそれぞれは、それ自身のプログラムコードを有し、独立して、且つ、他のサブプログラムと同時に実行することができる。
ATE12によって使用されるサイトアウェアオブジェクトは、マルチサイトデータを表すように設計されたデータオブジェクトである。このようなデータは、ATE計器をプログラミングし、測定された読み取り値を保持し、それらの読み取り値を操作し、且つ/又は、それらの読み取り値を、DUTの配置(dispositioning)(たとえば、区分け(ビンニング:binning))及び試験結果の記録(データログ)を担当するサブシステムへ報告するのに使用することができる。サイトアウェアオブジェクトという名前は、それらのサイトアウェアオブジェクトがATEソフトウェアサイト管理インフラストラクチャ24に内部接続され、したがって、ATEのシステムサイトの状況に対する経時的な変更、たとえば、毎時間、毎分、毎秒等に検出される定期的な変更を認識する(アウェア:aware)ということに起因している。サイトアウェアオブジェクトは、表面的には対立する2つのモデルをユーザに提供する。サイトアウェアオブジェクトは、サイトの概念を基本的に無視しつつ試験コードを書き込むことをユーザに可能にすると同時に、必要な時にサイト特有のデータにアクセスすることをユーザに可能にする。
図2を参照すると、この実施形態では、サイトアウェアオブジェクト32は、DIB14のサイト16a〜16dのそれぞれを識別するデータ34を含む。また、サイトアウェアオブジェクト34は、サイトのそれぞれにおけるDUTに関連するデータ36も含む。DUTに関連するデータは、読み取り値、試験結果等、DUTから受信されたデータの場合もあるし、プログラム情報、試験データ等、DUTへ転送するデータの場合もある。
サイトアウェアオブジェクト32は、サイトアウェアオブジェクト32が、サイトを、それらのサイトのDUTに関連するデータに関連させる意味でアレイに類似している。一方、サイトアウェアオブジェクト32は、試験中にどのサイトがアクティブ/非アクティブであるかを知っている点でアレイとは異なる。このために、サイトアウェアオブジェクト32は実行可能コード38も含む。実行可能コード38は、どのサイト16a〜16dがアクティブ/非アクティブであるかを判断するために、ATEソフトウェアサイト管理インフラストラクチャ24と通信し、それに応じて、自身の記憶データを更新し、そして、試験ソフトウェア30と通信するのに使用される。
この実施形態では、サイトアウェアオブジェクトは、ビジュアルベーシックで使用される。しかしながら、サイトアウェアオブジェクトは、ビジュアルベーシックの状況における使用に限定されるものではなく、あらゆるプログラミング言語で実施できることに留意されたい。一方、以下の説明は、ビジュアルベーシックと共に使用されるサイトアウェアオブジェクトに適用される。
ビジュアルベーシックでは、最も汎用の変数タイプはVariant(バリアント)である。この変数タイプは、ビジュアルベーシックプログラミング環境で使用できる他のあらゆる変数タイプを保持するように設計されている。この実施形態では、SiteVariant(サイトバリアント)と呼ばれるVariantに相当するサイトアウェアが定義される。SiteVariantは、あらゆるタイプのマルチサイト値を保持することができる。
SiteVariantオブジェクトの振る舞いは、以下のように要約することができる。SiteVariantオブジェクトは、複数のサイトのデータを含む。このデータは、単一の代入文で単一のスカラー値を代入される場合には、サイト一律(site-uniform)となることができ、測定によって返される場合には、サイト特有となることができる。SiteVariantオブジェクトは、「サイトアウェア」である。SiteVariantは、使用される時、試験プログラムが現在サイトループ(site-loop)にあるか否かが分かっている。サイトループでは、1つのサイトのみが現在選択されている。SiteVariantオブジェクトが、サイトループにある(且つ、単一のサイトが選択されている)とき、又は、サイト一律である(且つ、すべてのサイトについて単一のスカラー値を有する)とき、SiteVariantオブジェクトは、他のあらゆるビジュアルベーシックのスカラーと同様に使用することができる。そうではなく、SiteVariantがサイトループの外部にあり、サイト特有のデータを保持するとき、SiteVariantは、マルチサイトとして取り扱われる。以下のコードは、SiteVariantがマルチサイトデータを保持するか否か、及び、SiteVariantがサイトループの内部で使用されるのか、又は外部で使用されるのかに応じて、SiteVariantの2重機能を実例で説明するものである。以下の例のDebug.Printの使用は、単一のスカラー変数を必要とするあらゆる用法のプロキシである。この例では、YYのような2重文字の変数名は、その変数がマルチサイトデータを保持することを示している。Xのような単一文字の変数名は、スカラーを保持し、この例では、標準的なビジュアルベーシックのDouble(ダブル)と全く同様に機能する。
Figure 0004933533
SiteVariantは、サイト一律又はサイト特有のいずれかである。「サイト一律」は、すべてのサイトが、単一の代入による1つの共通値を共有することを意味する。「サイト特有」は、各サイトがそれ自身の値を有することを意味する。これらの用語は、単一の値を共有することを指し、値の数字が等しいことを指すものではないことに留意されたい。たとえば、サイトループがSiteDouble(サイトダブル)ですべてのサイトに5.0を代入していた場合、たとえすべてのサイトが同じ値を有していても、そのサイトループは依然としてサイト特有である。
より特有のオブジェクトタイプは、特有のビジュアルベーシックの変数タイプを保持するSiteVariantから派生することができる。これらのオブジェクトタイプは、ビジュアルベーシックにネイティブな変数タイプに対応することができる。これらのより特有のオブジェクトタイプの例には、SiteDouble、SiteBoolean(サイトブール)、SiteLong(サイトロング)、及びPinData(ピンデータ)が含まれる。オブジェクトタイプSiteDouble、SiteBoolean、及びSiteLongは、ネイティブなビジュアルベーシックのタイプDouble(ダブル)(64ビット精度浮動小数点数)、Boolean(ブール)(論理の真又は偽)、及びLong(ロング)(32ビット整数)にそれぞれ対応するSiteVariantデータを表す。PinDataは、ピン名及びチャネル識別子等のデバイスピンに関係する特性を含むようにSiteVariantを拡張する。PinDataは、マルチピン・マルチサイト計器読み取り値をカプセル化するPinListData(ピンリストデータ)収集クラスで使用される。すなわち、PinListDataは、複数のサイト及びアクティブなサイトについて、DUTの個々のピンと、それらの個々のピンのそれぞれの測定に関連するデータ値とを識別する。
より具体的には、PinListDataオブジェクトは、新しいSiteVariant使用モデルに統合されている。PinListDataオブジェクトは、ピン寸法をマルチサイトデータに追加する。したがって、PinListDataオブジェクトは、各ピン及び各サイトのデータを含むマトリックスと考えることができる。PinListDataオブジェクトは、各ピンにつき1つのPinDataオブジェクトを保持する。PinListDataの各ピンスライスは、ピン名を有するSiteVariantである。これは、PinDataオブジェクトと呼ばれる。実際には、単一のピンを含むどのPinListDataオブジェクトも、SiteVariantとして使用することもできるし、保持されたデータタイプが、そのより特有の派生物のデータタイプと一致した場合には、その派生物の1つとして使用することもできる。この理由により、ユーザは、PinListDataオブジェクトのドライバシンタックスが単一のピンを含む場合には、もはやPinListDataオブジェクトを使用する必要はない。たとえば、ユーザは、単一ピンの測定値をSiteDoubleに直接書き込むオプションを有する。PinListDataオブジェクトは、SiteVariantを保持するので、同じサイトアウェアの振る舞い及び同じサイト一律/サイト特有の属性を有する。PinListDataのレガシーシンタックスは、まだ機能するが、このシンタックスの多くは、SiteVariantモデルと一致するインターフェースの方が選ばれることにより、隠れている。単一のコールで複数のサイト及び複数のピンに対する数学処理を行うPinListData数学処理メソッドが提供される。以下のコードは、4つのサイトの3対のピンにメータ測定を行い、その後、すべてのサイトにおけるすべての対の間のデルタを単一の文でデータログするものである。
Figure 0004933533
上記オブジェクトタイプは、派生させることができる唯一のタイプではない。Variantに現れ得るどのタイプも、SiteVariantの派生物の基礎を形成することができる。これらのタイプには、ユーザ定義のタイプ及び非ネイティブのビジュアルベーシックのタイプが含まれ得るが、これらに限定されるものではない。
サイトアウェアオブジェクトは、可能な範囲内で、それらのサイトアウェアオブジェクトに対応するビジュアルベーシックのタイプの振る舞いを模倣する。したがって、SiteVariantのプログラミングモデルは、Variantのプログラミングモデルとほぼ同じであり、SiteDoubleのプログラミングモデルは、Doubleのプログラミングモデルとほぼ同じであり、他のものも同様である。オブジェクトタイプとネイティブタイプとの間の1つの相違は、オブジェクトタイプが定義されて割り当てられるということである。もう1つの相違は、ビジュアルベーシックでは、ネイティブタイプに対するほとんどの数学演算が、たとえば「+」、「−」、「*」、「/」といった記号演算子の使用を伴うことである。一方、サイトアウェアオブジェクトのプログラミングインターフェースは、これらの演算子に対応するメソッドを定義している。
より具体的には、ビジュアルベーシックプログラミング言語を使用すると、サイトアウェアオブジェクトで実行できる演算(たとえば、数学演算、論理演算等)を定義することが可能である。これらの演算は、ネイティブなビジュアルベーシック演算に対応するが、コードを使用して定義される。これは、サイトアウェアオブジェクトが、ネイティブなビジュアルベーシック変数とは異なる構造を有することから必要となる。例として、
y = x + 0.1
の加算演算は、ビジュアルベーシックのネイティブ変数「y」及び「x」に対して、0.1を「x」に加算し、且つ、その結果の値を「y」に代入するように実行することができる。同様の演算は、数学演算子「+」を使用せずに、サイトアウェアオブジェクト「X」及び「Y」についてもビジュアルベーシックで行うことができる。その代わり、関数「add」が、サイトアウェアオブジェクトと共に使用するためにビジュアルベーシックで定義され得る。この関数を使用すると、以下のように、サイトアウェアオブジェクト「X」の(1つのサイトについての)各データエントリーに0.1の値を加算して、それらの値を「Y」の対応するエントリーに代入することが可能である。
Y = X.add(0.1)
異なる関数を使用して、他の演算を定義することもできる。このような関数を使用すると、単一のネイティブデータエレメントがビジュアルベーシック(又は他のプログラミング言語)で取り扱われる場合に、サイトアウェアオブジェクトは、ビジュアルベーシック(又は他のプログラミング言語)により取り扱うことができる。この機能によって、サイトアウェアオブジェクトを本質的にビジュアルベーシックのオブジェクトとして取り扱うことが可能になり、それによって、プログラマは、ATE12の複数のサイトを考慮するように試みる代わりに、プロセスフローに集中することが可能になるので、この機能は、サイト透明性を促進させる。
上記演算定義は、サイトアウェアオブジェクトに対する固有の限定ではない。そうではなく、演算定義の必要性は、ビジュアルベーシックプログラミング環境の特徴である。ビジュアルベーシックプログラミング環境は、演算子の多重定義(operator overloading)をサポートしていない。異なるプログラミング環境では、サイトアウェアオブジェクトは、記号演算子のサポートを有する場合がある。
図3は、サイトアウェアオブジェクトと共にATE12を使用するためのプロセス40を示している。プロセス40は、サイト16a〜16dと共に使用するためのサイトアウェアオブジェクトを定義する(42)。サイトアウェアオブジェクトは、ユーザ入力に従って定義することができる。サイトアウェアオブジェクトは、サイト16a〜16dのDUTの試験中、ATE12によって使用される(44)。上述したように、サイトアウェアオブジェクトは、ATEソフトウェアサイト管理インフラストラクチャ24と通信して、どのサイトがアクティブであるかを判断する。詳細には、サイトアウェアオブジェクトは、特定のDUTが選択されていることの表示を受信し(46)、その表示をサイトアウェアオブジェクトに記憶する(48)。
試験中、サイトアウェアオブジェクトは、あらゆる目的に使用することができる。この目的には、ATEのプログラミング、ATEからの読み取り値のサイトアウェアオブジェクトへの記憶、試験結果のサイトアウェアオブジェクトへの記録、及びサイトアウェアオブジェクトを使用する読み取り値の処理が含まれるが、これらに限定されるものではない。読み取り値の処理には、読み取り値の変更及び/又は読み取り値の試験サブシステムへの報告が含まれる。
この実施形態では、SiteVariantオブジェクトは、ビジュアルベーシックのようなスカラー変数使用モデルとして提供される。これは、ビジュアルベーシックの特徴、すなわち、オプションのパラメータを有するデフォルトの隠れプロパティ、並びに、同じプロパティの異なるタイプのLet及びGetを行う能力の組み合わせを通じて達成される。各SiteVariantオブジェクトは、Long =-1として、オプションのパラメータSite(サイト)を有する隠れデフォルトプロパティ.Value()を有する。デフォルトのSiteパラメータは、サイトアウェアの作用を起動し、サイトループにおけるすべての選択されたサイト又は単一の選択されたサイトに対して操作を行う。以下の同等なシンタックスを比較する(X及びZはSiteDoubleである一方、yは通常のビジュアルベーシックのDoubleである)。
用法: 同等な用法
X = 5 X.Vaule(-1)=5
y = X y=X.Value(-1)
Z = X Z.Value(-1)=X
上記は、.Value及び−1が共にデフォルトであるので同等である。
.Valueプロパティを隠れデフォルトにすることは、この使用モデルの近道だけではなくそれ以上のものである。デフォルトメカニズムが、多様な作用を追加するのに使用される。これらのSiteVariantは、シンタックスに応じて数字又はオブジェクトとして機能する。ビジュアルベーシックは、指定されたプロパティもメソッドも有しないオブジェクトに遭遇すると、どのタイプがその用法で必要とされているかに応じて、そのオブジェクトをオブジェクトそのものとして解釈することもできるし、オブジェクトのデフォルトプロパティへのコールの結果として解釈することもできる。上記y=Xのラインでは、Doubleが左端に必要とされる。XはDoubleではないので、ビジュアルベーシックは、オブジェクトXのデフォルトプロパティを試み、デフォルトプロパティが確かにDoubleを返すことを見出す。他方、Z=Xのラインでは、Zのデフォルトプロパティがオブジェクト(Variant)を受け付け、その結果、ビジュアルベーシックは、オブジェクトであるXのZへの直接代入を行う。たとえ.Value()プロパティのGetバージョンがDoubleであっても、ビジュアルベーシックによって、.Value()プロパティのLetバージョンがVariantであることが可能になることから、この直接代入は可能である。デフォルト用法の簡易性及びそのビジュアルベーシックの変数との一貫性によって、.Valueプロパティを隠蔽することが可能になる。
本明細書で説明したプロセス及びサイトアウェアオブジェクトは、どの特定のハードウェアとの使用にも、どの特定のソフトウェアとの使用にも、どの特定のプログラミング言語との使用にも限定されない。これらのプロセス及びサイトアウェアオブジェクトは、どのコンピューティング環境又はどの処理環境においても適用性を見出すことができ、マシン可読命令を実行できるどのタイプのマシンとも適用性を見出すことができる。これらのプロセス及びサイトアウェアオブジェクトの全部又は一部は、デジタル電子回路機構で実施することもできるし、コンピュータのハードウェア、ファームウェア、ソフトウェアで実施することもできるし、それらの組み合わせで実施することもできる。
プロセス及びサイトアウェアオブジェクトの全部又は一部は、データ処理装置によって実行されるか又はデータ処理装置のオペレーションを制御するコンピュータプログラム製品、すなわち、情報担体に有形に具現化されたコンピュータプログラムとして実施することができる。この情報担体は、たとえば、マシン可読ストレージデバイス又は伝搬信号である。データ処理装置は、たとえば、プログラマブルプロセッサ、コンピュータ、又は複数のコンピュータである。コンピュータプログラムは、コンパイラ型言語又はインタープリタ型言語を含むあらゆる形のプログラミング言語で記述することができ、スタンドアロンプログラムとして、又は、モジュール、コンポーネント、サブルーチン、若しくはコンピューティング環境での使用に適した他のユニットとしての形を含むあらゆる形で配備することができる。コンピュータプログラムは、1つのサイトの1つのコンピュータ、又は、複数のサイトにわたって分散し通信ネットワークにより相互接続された複数のコンピュータで実行されるように配備することができる。
プロセス及びサイトアウェアオブジェクトに関連する方法ステップは、それらのプロセス及びサイトアウェアオブジェクトの機能を実行するために1つ又は2つ以上のコンピュータプログラムを実行する1つ又は2つ以上のプログラマブルプロセッサが実行することができる。また、方法ステップは、たとえばFPGA(フィールドプログラマブルゲートアレイ)及び/又はASIC(特定用途向け集積回路)といった専用論理回路機構によって実行することもでき、プロセス及びサイトアウェアオブジェクトは、そのような専用論理回路機構として実施することができる。
コンピュータプログラムの実行に適したプロセッサには、例として、汎用マイクロプロセッサ及び専用マイクロプロセッサの双方、並びに、あらゆる種類のデジタルコンピュータのあらゆる1つ又は2つ以上のプロセッサが含まれる。一般に、プロセッサは、読み出し専用ストレージエリア若しくはランダムアクセスストレージエリア又はその双方から命令及びデータを受け取る。コンピュータのエレメントは、命令を実行するためのプロセッサ、並びに、命令及びデータを記憶するための1つ又は2つ以上のストレージエリアデバイスを含む。一般に、コンピュータは、たとえば、磁気ディスク、光磁気ディスク、若しくは光ディスクといった、データを記憶するための1つ若しくは2つ以上のマスストレージデバイスも含むか、又は、そのようなマスストレージデバイスからのデータの受信若しくはそのようなマスストレージデバイスへのデータの転送若しくはそれらの双方を行うよう動作可能に結合されている。コンピュータプログラム命令及びデータを具現化するのに適した情報担体には、すべての形の不揮発性ストレージエリアが含まれる。このすべての形の不揮発性ストレージエリアには、例として、たとえばEPROM、EEPROM、及びフラッシュストレージエリアデバイスといった半導体ストレージエリアデバイス、内部ハードディスク又は着脱可能ディスクといった磁気ディスク、光磁気ディスク、並びにCD−ROMディスク及びDVD−ROMディスクが含まれる。
プロセス及びサイトアウェアオブジェクトの全部又は一部は、たとえばデータサーバといったバックエンドコンポーネントを含むコンピューティングシステム、又は、たとえばアプリケーションサーバといったミドルウェアコンポーネントを含むコンピューティングシステム、又は、たとえばグラフィカルユーザインターフェースを有するクライアントコンピュータといったフロントエンドコンポーネントを含むコンピューティングシステム、又は、このようなバックエンドコンポーネント、ミドルウェアコンポーネント、若しくはフロントエンドコンポーネントのあらゆる組み合わせを含むコンピューティングシステムで実施することができる。このシステムのコンポーネントは、たとえば通信ネットワークといったあらゆる形又は媒体のデジタルデータ通信によって相互接続することができる。通信ネットワークの例には、LAN、及び、たとえばインターネットといったWANが含まれる。
プロセス及びサイトアウェアオブジェクトに関連する方法ステップは、並べ替えることができ、且つ/又は、1つ若しくは2つ以上のこのようなステップは、本明細書で説明した結果と同じ結果又は類似の結果を達成するように省略することができる。
本明細書で説明したプロセスは、オブジェクト指向型プログラミングではなく、手続き型言語の状況で使用することができる。たとえば、サイトアウェアオブジェクトX、Yは、以下のように定義することができる。
X = Instrument.ReadMeasurement(PinA)
Y = X.Add(0.1)
C等の手続き型言語では、X、Yに対応するものは、以下のように、データ構造体(以下のX、Y)及び外部関数(Add())を使用して実施することができる。
X = ReadMeasurement(InstrumentID, PinA)
Y = Add(X, 0.1)
1つの相違は、手続き型言語では、X及びYがデータしか含まず、何らかの処理を実行するAdd()等の外部関数が存在するということである。
本明細書で説明したものと異なる実施形態のエレメントを組み合わせて、具体的に上述していない他の実施形態を形成することができる。本明細書で具体的に説明していない他の実施形態も、特許請求の範囲に含まれる。
ATEシステムのブロック図である。 サイトアウェアオブジェクトの図表である。 試験中にサイトアウェアオブジェクトを使用するためのプロセスのフローチャートである。

Claims (18)

  1. 複数の被試験デバイス(DUT)を収容する複数のサイトを有する自動試験装置(ATE)と共に使用するための方法であって、該方法は、
    前記複数のサイトと共に使用するオブジェクトを定義するステップであって、該オブジェクトは、前記複数のサイトに関連するデータを含み、前記複数のサイトのうちのアクティブなサイトにおけるアクティブ状態を判断し、所定の時間間隔に渡って前記アクティブなサイトにおけるアクティブ状態の変化を記録するものであり、該アクティブ状態は、前記アクティブなサイトと関連づけられた一つ又はそれ以上のDUTが試験に適していることを示す、ステップと、
    前記ATEにより実行される、アクティブなサイトと関連付けられたDUTの試験中に、前記オブジェクトを使用するステップと、
    を含む方法。
  2. 前記ATEは、関連するATEソフトウェアサイト管理インフラストラクチャを有することによって、前記複数のサイトを管理し、前記オブジェクトは、前記ATEソフトウェアサイト管理インフラストラクチャと通信して、どのサイトがアクティブであるかを判断する、請求項1に記載の方法。
  3. 前記試験中に前記オブジェクトを使用するステップは、
    前記オブジェクトを介して前記ATEをプログラミングすること、
    前記ATEからの計器の読み取り値を前記オブジェクトに記憶すること、
    前記オブジェクトを使用して前記計器の読み取り値を処理すること、及び
    試験結果を前記オブジェクトに記録すること、
    のうちの1つ又は複数を含む、請求項1に記載の方法。
  4. 前記処理することは、前記計器の読み取り値を変更すること及び/又は該読み取り値を試験サブシステムへ報告することを含む、請求項3に記載の方法。
  5. 前記オブジェクトは、プログラミング言語で定義され、該プログラミング言語により、単一のデータエレメントが該プログラミング言語で取り扱われるように取り扱われることが可能である、請求項1に記載の方法。
  6. 前記データは、どのサイトがアクティブであるかを識別するブールデータを含む、請求項1に記載の方法。
  7. 前記データは、ピンリストデータを含み、該ピンリストデータは、少なくとも1つのDUTの個々のピンにおける計器測定値に対応するピンデータを含む、請求項1に記載の方法。
  8. 前記オブジェクトはプログラミング言語で定義され、前記方法は、
    前記プログラミング言語で演算を定義し、該演算は前記オブジェクトに特有のものであるステップをさらに含む、請求項1に記載の方法。
  9. 前記演算は、前記プログラミング言語のネイティブ変数に対して行われる数学演算に対応する数学的演算を含む、請求項8に記載の方法。
  10. 複数の被試験デバイス(DUT)を収容する複数のサイトを有する自動試験装置(ATE)と、
    前記ATEと通信する処理デバイスと、
    を備えるシステムにおいて、前記処理デバイスは、
    前記複数のサイトと共に使用するオブジェクトを定義する命令であって、
    前記複数のサイトに関連するデータと、
    前記複数のサイトのうちのアクティブなサイトにおけるアクティブ状態を判断し、所定の時間間隔に渡る前記アクティブなサイトにおけるアクティブ状態の変化を記録するためのコンピュータ・コードであって、前記アクティブ状態が、前記アクティブなサイトと関連付けられた一つ又はそれ以上のDUTが試験に適していることを示すコンピュータ・コードと、
    を含むオブジェクトを定義する命令と、
    前記ATEにより実行される、アクティブなサイトと関連付けられたDUTの試験中に前記オブジェクトを使用する命令と、
    を実行する、システム。
  11. 前記ATEは、関連するATEソフトウェアサイト管理インフラストラクチャを備えることによって、前記複数のサイトを管理し、前記オブジェクトは、前記ATEソフトウェアサイト管理インフラストラクチャと通信して、どのサイトがアクティブであるかを判断する、請求項10に記載のシステム。
  12. 前記試験中に前記オブジェクトを使用することは、
    前記オブジェクトを介して前記ATEをプログラミングすること、
    前記ATEからの計器の読み取り値を前記オブジェクトに記憶すること、
    前記オブジェクトを使用して前記計器の読み取り値を処理すること、及び
    試験結果を前記オブジェクトに記録すること
    のうちの1つ又は複数を含む、請求項10に記載のシステム。
  13. 前記処理することは、前記計器の読み取り値を変更すること及び/又は該読み取り値を試験サブシステムへ報告することを含む、請求項12に記載のシステム。
  14. 前記オブジェクトは、前記処理デバイス上でプログラミングされるプログラミング言語で定義され、該プログラミング言語により、単一のデータエレメントが該プログラミング言語で取り扱われるように取り扱われることが可能である、請求項10に記載のシステム。
  15. 前記データは、どのサイトがアクティブであるかを識別するブールデータを含む、請求項10に記載のシステム。
  16. 前記データは、ピンリストデータを含み、該ピンリストデータは、少なくとも1つのDUTの個々のピンにおける計器測定値に対応するピンデータを含む、請求項10に記載のシステム。
  17. 前記オブジェクトは、前記処理デバイス上でプログラミングされるプログラミング言語で定義され、前記処理デバイスは、前記プログラミング言語で演算を定義する命令であって、該演算が前記オブジェクトに特有のものである命令を実行する、請求項10に記載のシステム。
  18. 前記演算は、前記プログラミング言語のネイティブ変数に対して行われる数学演算に対応する数学的演算を含む、請求項17に記載のシステム。
JP2008508894A 2005-04-29 2006-04-12 サイトアウェアオブジェクト Active JP4933533B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US67600505P 2005-04-29 2005-04-29
US60/676,005 2005-04-29
US11/192,927 US7253607B2 (en) 2005-04-29 2005-07-29 Site-aware objects
US11/192,927 2005-07-29
PCT/US2006/013546 WO2006118758A1 (en) 2005-04-29 2006-04-12 Site-aware objects

Publications (2)

Publication Number Publication Date
JP2008539429A JP2008539429A (ja) 2008-11-13
JP4933533B2 true JP4933533B2 (ja) 2012-05-16

Family

ID=37233857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008508894A Active JP4933533B2 (ja) 2005-04-29 2006-04-12 サイトアウェアオブジェクト

Country Status (6)

Country Link
US (1) US7253607B2 (ja)
EP (1) EP1875254A1 (ja)
JP (1) JP4933533B2 (ja)
KR (1) KR101094697B1 (ja)
CN (1) CN101166985B (ja)
WO (1) WO2006118758A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7487422B2 (en) * 2005-04-29 2009-02-03 Teradyne, Inc. Delayed processing of site-aware objects
US8131387B2 (en) 2007-08-09 2012-03-06 Teradyne, Inc. Integrated high-efficiency microwave sourcing control process
CN103969520A (zh) * 2013-01-30 2014-08-06 深圳伊欧陆微电子系统有限公司 一种硬件测试系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11190767A (ja) * 1997-12-26 1999-07-13 Ando Electric Co Ltd 基準電位検出装置
WO2004072669A1 (en) * 2003-02-14 2004-08-26 Advantest Corporation Method and apparatus for testing integrated circuits

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3796349A (en) * 1972-05-18 1974-03-12 R Weber Weighing dispenser
DE3475954D1 (en) * 1983-05-11 1989-02-09 Ishida Scale Mfg Co Ltd Hopper for use in an automatic weighing apparatus
DE3405997C2 (de) * 1984-02-20 1987-01-08 Zöller-Kipper GmbH, 6500 Mainz Vorrichtung zum Entleeren von Behältern, insbesondere von Müllbehältern in Sammelbehälter
US4630755A (en) * 1984-12-11 1986-12-23 Spiral Systems, Inc. Apparatus for precisely dispensing free flowing solids
GB8705451D0 (en) * 1987-03-09 1987-04-15 Driver Southall Combinational weighing systems
US4815258A (en) * 1988-02-08 1989-03-28 Jesperson Leslie S Fruit bin filler
US5044504A (en) * 1988-09-23 1991-09-03 Powell Machinery Inc. Self-singulating weight sizer
US6092640A (en) * 1992-12-22 2000-07-25 Horticultural Automation Limited Article grading apparatus
AUPM762094A0 (en) * 1994-08-24 1994-09-15 Colour Vision Systems Pty Ltd Conveying system for foodstuffs
GB9521252D0 (en) * 1995-10-17 1995-12-20 Bishopbarn Ltd Improvements in and relating to weighing machines
US5845234A (en) * 1997-04-22 1998-12-01 Integrated Measurement Systems, Inc. System and method for efficiently generating testing program code for use in automatic test equipment
US20010032807A1 (en) * 2000-02-28 2001-10-25 Powell Harry C. Fruit handling with color sorting
US6502013B1 (en) * 2000-03-08 2002-12-31 Al Pinhas Sosnik Method and apparatus for filling containers with a target weight of product
US6651821B2 (en) * 2000-04-17 2003-11-25 Mettler-Toledo, Inc. Tilting platform checkweighing device
US6466007B1 (en) * 2000-08-14 2002-10-15 Teradyne, Inc. Test system for smart card and indentification devices and the like
US6941232B2 (en) * 2003-01-28 2005-09-06 Texas Instruments Incorporated Method and apparatus for performing multi-site integrated circuit device testing
US7197417B2 (en) * 2003-02-14 2007-03-27 Advantest America R&D Center, Inc. Method and structure to develop a test program for semiconductor integrated circuits
US7437261B2 (en) * 2003-02-14 2008-10-14 Advantest Corporation Method and apparatus for testing integrated circuits
US7362089B2 (en) * 2004-05-21 2008-04-22 Advantest Corporation Carrier module for adapting non-standard instrument cards to test systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11190767A (ja) * 1997-12-26 1999-07-13 Ando Electric Co Ltd 基準電位検出装置
WO2004072669A1 (en) * 2003-02-14 2004-08-26 Advantest Corporation Method and apparatus for testing integrated circuits

Also Published As

Publication number Publication date
EP1875254A1 (en) 2008-01-09
CN101166985B (zh) 2010-09-29
KR101094697B1 (ko) 2011-12-20
CN101166985A (zh) 2008-04-23
KR20070121017A (ko) 2007-12-26
JP2008539429A (ja) 2008-11-13
US20060244474A1 (en) 2006-11-02
US7253607B2 (en) 2007-08-07
WO2006118758A1 (en) 2006-11-09

Similar Documents

Publication Publication Date Title
JP4608516B2 (ja) モジュール式試験システムに試験モジュールを統合する方法およびモジュール式試験システム
US6430741B1 (en) System and method for data coverage analysis of a computer program
Kim et al. SPLat: Lightweight dynamic analysis for reducing combinatorics in testing configurable systems
JP5933762B2 (ja) コード網羅率決定方法およびシステム
US9639453B2 (en) Method and system for determining functional tests to execute based on code coverage
US7917901B2 (en) Maintainable dynamic instrumentation technique for changing versions of software
JP2009544012A (ja) 試験システムで処理を実行するシステムおよび方法
JP2014532914A (ja) プログラム可能な試験機器
US20070250815A1 (en) Measuring code coverage
US6442725B1 (en) System and method for intelligent analysis probe
US7487422B2 (en) Delayed processing of site-aware objects
JP5269450B2 (ja) 試験システム及びバックアノテーション方法
JP4933533B2 (ja) サイトアウェアオブジェクト
Costiou et al. Lub: A pattern for fine grained behavior adaptation at runtime
JP2009229304A (ja) 試験システム及びモジュール制御方法
TWI402750B (zh) 具有軟體程式儲存於其中之電腦可讀取媒體及用以產生軟體程式的方法
WO2023238262A1 (ja) 情報処理装置、試験方法、及び試験プログラム
Lui et al. A generalized approach to real-time, non-intrusive instrumentation and monitoring of standards-based distributed middleware
US7254508B2 (en) Site loops
Hewardt et al. Advanced windows debugging
CN119416226B (zh) 嵌入式操作系统的内存漏洞检测方法,装置,设备及介质
CN120407024B (zh) 一种指令序列的验证方法、装置、电子设备和存储介质
Reschke et al. Toward Just-in-Time and Language-Agnostic Mutation Testing
CN119002892B (zh) 可编程逻辑单元仿真和代码生成系统、方法、介质装置及程序产品
Simbürger et al. BenchBuild: A large-scale empirical-research toolkit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101130

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110223

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110913

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: 20120202

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120216

R150 Certificate of patent or registration of utility model

Ref document number: 4933533

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150224

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250