[go: up one dir, main page]

JP2009229304A - 試験システム及びモジュール制御方法 - Google Patents

試験システム及びモジュール制御方法 Download PDF

Info

Publication number
JP2009229304A
JP2009229304A JP2008076536A JP2008076536A JP2009229304A JP 2009229304 A JP2009229304 A JP 2009229304A JP 2008076536 A JP2008076536 A JP 2008076536A JP 2008076536 A JP2008076536 A JP 2008076536A JP 2009229304 A JP2009229304 A JP 2009229304A
Authority
JP
Japan
Prior art keywords
module
modules
test
slave
resource
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.)
Withdrawn
Application number
JP2008076536A
Other languages
English (en)
Inventor
Hironori Maeda
裕紀 前田
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.)
Advantest Corp
Original Assignee
Advantest Corp
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 Advantest Corp filed Critical Advantest Corp
Priority to JP2008076536A priority Critical patent/JP2009229304A/ja
Publication of JP2009229304A publication Critical patent/JP2009229304A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

【課題】マスタ・スレーブ方式のモジュール制御において、モジュール制御ドライバ等が、リソースとポート番号との関係を含むスレーブ・モジュールのリソース定義を特定可能な試験システムを提供する。
【解決手段】被試験デバイス112に試験信号を供給可能な複数のモジュール108と、複数のモジュール108それぞれのリソースとポート番号に関する情報を含むモジュール設定ファイル130と、モジュール設定ファイル130に含まれる情報に基づいて複数のモジュール108のリソースとポート番号との関係を特定し、ポート番号を利用して、複数のモジュール108の各々のリソースを個別に制御することのできるモジュール制御ドライバ105と、を備える。
【選択図】図7

Description

本発明は自動試験装置の技術分野に関する。特に、本発明は、自動試験装置におけるスレーブ・モジュールの制御技術に関する。
従来、自動試験装置(以下「ATE」という。)は、ATEメーカー各社各様の仕様で提供されていたため、ピン構成や測定ユニット等の構成の自由度が低く、また、試験プログラム資産の再利用が困難であった。このような背景から、デバイスの機能に応じて最適な構成にシステムを変更できるようなスケーラブルで柔軟なATEを実現すべく、標準化されたインタフェースを持つオープン・アーキテクチャATEが提案されている。
例えば、OPENSTAR(登録商標)は、このようなオープン・アーキテクチャATEの規格の一つである(非特許文献1参照)。OPENSTARシステムは、スケーラブルでかつ柔軟なモジュラー構造のATEプラットフォームを提供することを目的とし、そのための標準規格を定めている。サード・ベンダ等が提供する計測機器(モジュール)は、OPENSTAR標準が定めるハードウェアとソフトウェアの要件を満たすことで、OPENSTARシステムに組み込むことが可能である。
「Semiconductor Test Consortium」、[online]、[平成20年3月24日検索]、インターネット<URL:http://www.semitest.org/jp/home>
ところで、従来のOPENSTARシステムの標準規格では、モジュール毎にモジュール制御ドライバを備えることが前提とされている。しかし、複数の共通モジュールをシステムに組み込んだとき、これら複数の共通モジュールをそれぞれ別のモジュール制御ドライバで制御するのはオーバースペックの場合がある。そこで、複数の共通モジュールのうち一つをマスタ・モジュールとし、残りをスレーブ・モジュールとして、マスタ・モジュールが備えるモジュール制御ドライバによって、複数の共通モジュールを全て制御するマスタ・スレーブ方式によるモジュール制御手法が知られている。
図10は、従来のモジュール制御手法を示すブロック図である。図10(A)は、従来のOPENSTARシステムの標準規格に基づいて、モジュール毎にモジュール制御ドライバを備える一例を示すブロック図である。このとき、各モジュール108はそれぞれモジュール制御ドライバ105を備え、各モジュール108は、それぞれ対応するモジュール制御ドライバ105によって制御される。
また、図10(B)は、従来のマスタ・スレーブ方式によるモジュール制御手法の一例を示すブロック図である。同図では、モジュールAがモジュール制御ドライバ105を備え、マスタ・モジュール108Mとして機能する。そして、モジュールBはスレーブ・モジュール108Sとして機能するものであり、モジュール制御ドライバを備えない。そして、モジュール制御ドライバAによって、モジュールBも制御される。
マスタ・スレーブ方式では、ハードウェアの側面から見ると、スレーブ・モジュール108Sは、後述するモジュール接続イネーブラ106の一つのバスポートに接続された通常のモジュールの実体である。しかし、ソフトウェアの側面から見ると、スレーブ・モジュール108Sは、マスタ・モジュール108Mの背後に隠れる形になっている。すなわち、スレーブ・モジュール108Sは、モジュール制御ドライバを保有しないで、マスタ・モジュール108Mのモジュール制御ドライバ105に、スレーブ・モジュール108Sの制御を委ねている。
図11は、従来のマスタ・スレーブ方式によるモジュール制御における、リソースとポート番号との関係の一例を示す概略図である。同図に示す例では、一つのマスタ・モジュール108Mが一つのスレーブ・モジュール108Sを備え、各モジュールは、ロードボード114に接続されるピン128を備える。また、各モジュールは、システム内でのアドレスとして使用されるポート番号を備え、マスタ・モジュール108Mのポート番号は「10」であり、スレーブ・モジュール108Sのポート番号は「11」であるものとする。
このとき、従来のマスタ・スレーブ方式によるモジュール制御では、スレーブ・モジュール108Sのリソース(ポート番号とチャネルの組)は、マスタ・モジュール108Mのポート番号「10」に基づいて、P10.9、P10.10、・・・、P10.16と表される。このように、実際はスレーブ・モジュール108Sによって提供されるリソースであっても、従来のモジュール制御モデルでは、スレーブ・モジュール108Sが自身のポート番号(この例では「11」)に基づいてリソースを定義することが許されていない。その結果、ソフトウェア的には、モジュール制御ドライバ105及びサイトコントローラ104のいずれからも、スレーブ・モジュール108Sは存在しないものとして扱われる。すなわち、従来のモジュール制御モデルでは、スレーブ・モジュール108Sをマスタ・モジュール108Mと明確に区別して制御することができない。
また、リソースの設定は固定的なものではなく、システム・インテグレータはリソースを任意に割り当てることができる。例えば、図11では、ポート番号が「10」のモジュールをマスタ・モジュール108Mとしたが、ポート番号「11」のモジュールがモジュール制御ドライバ105を備えるものとして、マスタとスレーブの関係を、図11の例とは逆に設定することも可能である。このとき、各モジュールのリソースは、P11.1、P11.9などと表されることになる。
以上のように、従来のマスタ・スレーブ方式によるモジュール制御では、スレーブ・モジュール108Sがマスタ・モジュール108Mとソフトウェア的に区別されることなく扱われ、かつ、リソースの割り当ても任意に行われる。このため、モジュール制御ドライバ105は、リソースとモジュールのポート番号との関係が分からないと、所望のモジュールを制御することができない。つまり、図11に示す例において、モジュール制御ドライバ105は、リソースP10.1からP10.16の各リソースに関係するモジュールのポート番号を知り得ない限り、それぞれのリソースを制御できない。しかし、各リソースとモジュールのポート番号との関係は、システム・インテグレータのみが知り得るものである。そのため、ATEに何らかの形でリソースとポート番号との関係が提供されない限り、モジュール制御ドライバ105とサイトコントローラ104のいずれも、リソースとポート番号との関係を知ることができない。
本発明は、かかる事情に鑑みてなされたものであり、マスタ・スレーブ方式のモジュール制御において、モジュール制御ドライバ又はサイトコントローラが、リソースとポート番号との関係を含むスレーブ・モジュールのリソース定義を特定することのできる試験システムを提供することを目的とする。
本発明に係る試験システムの幾つかの態様は、被試験デバイスに試験信号を供給可能な複数のモジュールと、複数のモジュールそれぞれのリソースとポート番号に関する情報を含むモジュール設定ファイルと、モジュール設定ファイルに含まれる情報に基づいて複数のモジュールのリソースとポート番号との関係を特定し、ポート番号を利用して、複数のモジュールの各々のリソースを個別に制御することのできるモジュール制御ドライバと、を備える。
好適には、複数のモジュールは、一つのマスタ・モジュールと、一以上のスレーブ・モジュールとを含み、モジュール制御ドライバは、一つのマスタ・モジュールと一以上のスレーブ・モジュールとを制御する、
また、好適には、モジュール設定ファイルは、各モジュールのポート番号と、各モジュールがマスタ・モジュール又はスレーブ・モジュールのいずれであるかに関する情報と、モジュールがスレーブ・モジュールの場合には、当該モジュールのマスタ・モジュールに関する情報と、を含む。
さらに好適には、ポート番号に換えて、複数のモジュールのそれぞれを識別可能な任意の識別子を利用する。また、試験システムは、オープン・アーキテクチャに基づくシステムであり、二以上のモジュールは、オープン・アーキテクチャの標準仕様に準拠するものであることが好ましい。
また、本発明に係る試験システムのモジュール制御方法の幾つかの態様は、被試験デバイスに試験信号を供給可能な複数のモジュールと、複数のモジュールを制御可能なモジュール制御ドライバとを備える試験システムを用いて、複数のモジュールそれぞれのリソースとポート番号に関する情報を含むモジュール設定ファイルを読み出すステップと、モジュール設定ファイルに規定された内容に基づいて、複数のモジュールのリソース定義を特定して、モジュール制御ドライバに実装するステップと、モジュール設定ドライバが、ポート番号を利用して、複数のモジュールの各々のリソースを個別に制御するステップと、を備える。
本発明のプログラムは、本発明のモジュール間通信方法の各処理ステップをコンピュータに実行させることを特徴とする。本発明のプログラムは、CD−ROM等の光学ディスク、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークなどを介してダウンロードすることにより、コンピュータにインストール又はロードすることができる。
なお、本明細書等において、「手段」又は「部」とは、単に物理的手段を意味するものではなく、その手段又は部が有する機能をソフトウェアによって実現する場合も含む。また、1つの手段又は部が有する機能が2つ以上の物理的手段により実現されても、2つ以上の手段又は部の機能が1つの物理的手段により実現されてもよい。
また、本明細書等において、ベンダ等が提供する計測機器のハードウェアを「モジュール」といい、そのハードウェアを対象とするベンダ等のソフトウェアを「モジュール・ソフトウェア」と呼ぶ。
さらに、再構成可能なオープン・アーキテクチャATEは、試験システムに対する操作の統一だけでなく、目的の試験に最適なモジュールを、モジュール・ソフトウェアとともに、ユーザ自身が既存のシステムにプラグ・アンド・プレイ方式で導入可能なプラットフォームを提供する。また、モジュールのベンダに対しては、そのようなモジュール・ソフトウェアの開発を可能にする開発環境を提供する。
本発明によると、マスタ・スレーブ方式のモジュール制御において、モジュール制御ドライバ又はサイトコントローラが、リソースとポート番号との関係を含むスレーブ・モジュールのリソース定義を特定できるように、試験システムのフレームワークを拡張している。これにより、スレーブ・モジュールのポート番号に基づいたリソース定義の設定ができるようになる。また、本発明では、従来からリソース記述に用いられているモジュール設定ファイルを使用して、スレーブ・モジュールのポート番号とリソースとの関係を記述しているので、従来のリソース記述を承継でき、直感的でリーズナブルである。
以下、本発明の実施の形態について詳細に説明する。なお、同一の要素には同一の符号を付し、重複する説明を省略する。また、以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。さらに、本発明は、その要旨を逸脱しない限り、さまざまな変形及び応用が可能である。
図1は、本発明の一実施形態による試験システム100のシステムアーキテクチャを示す。試験システム100は、試験信号を生成して被試験デバイス(Device under Test。以下「DUT」という。)112に供給し、DUT112が試験信号に基づいて動作した結果出力する結果信号が期待値と一致するか否かに基づいてDUT112の良否を判断する。なお、本実施形態に係る試験システム100は、オープン・アーキテクチャにより実現されるものとして説明するが、本発明は、オープン・アーキテクチャの試験システムに限定されるものではない。
本実施形態では、システムコントローラ(SysC)102がネットワークを介して複数のサイトコントローラ(SiteC)104に接続される。システムコントローラ102は、エンド・ユーザが通常作業を行うホストコンピュータであり、試験システム100全体を管理する役割を果たす。また、システムコントローラ102は、サイトコントローラ104に対する処理の要求の発行や、サイトコントローラ104間の処理の調停を行う。ユーザのアプリケーションや標準のGUIツールは、システムコントローラ102上で動作し、サイトコントローラ104と通信を行って機能を実現する。
また、システムコントローラ102は、サイトコントローラ104上でモジュール108の制御を行うモジュール・ソフトウェアや、ユーザの試験プログラムやパターン・プログラムなどを保管するストレージを備える。これらは、必要に応じてサイトコントローラ104に送られ、実行される。
各サイトコントローラ104は、試験サイト110に配置される1つ又は複数のモジュール108を制御して試験を実行するために、モジュール接続イネーブラ106を通して、モジュール108に接続される。この試験は、ユーザの作成する試験プログラムに基づいて実行される。なお、サイトコントローラ104は、一つのDUT112を試験する試験サイト110を複数個、同時に制御するようにしてもよい。
サイトコントローラ104の主な役割として、次の3つが挙げられる。まず、試験プログラムが指定する試験サイト110の構成に従い、モジュール接続イネーブラ106を構成し、サイトコントローラ104とモジュール108間のバス107の接続を確立する。また、試験サイト110内のモジュール108の制御を行うモジュールソフトウェアを実行する。さらに、試験プログラムを実行し、各試験サイト110のDUT112の試験を実行する。
なお、動作環境によっては、システムコントローラ102は、サイトコントローラ104の動作とは別のCPU(中央演算装置)上に配置することができる。別法では、システムコントローラ102及びサイトコントローラ104は、共通のCPUを共有することができる。同様に、各サイトコントローラ104は、その専用のCPU上に配置することができるし、また、同じCPU内の別個のプロセス又はスレッドとして配置することもできる。
モジュール接続イネーブラ106は、サイトコントローラ104とモジュール108とのバス107の接続を任意に構成することのできるスイッチである。モジュール接続イネーブラ106は、接続されるハードウェアモジュール108の構成を変更できるようにするとともに、データ転送用(パターンデータのロード用、応答データの収集用、制御用等)のバスとしての役割も果たす。実現可能なハードウェアの実装形態は、専用接続、交換接続、バス接続、リング接続及びスター接続を含む。モジュール接続イネーブラ106は、たとえばスイッチマトリクスとして実装することができる。
モジュール108は、DUT112に試験信号を供給する計測機器のハードウェアである。本実施形態においては、モジュール108として、オープン・アーキテクチャに基づく各種のモジュールを用いることができる。また、モジュール・ハードウェア108を動作させるためのソフトウェアをモジュール・ソフトウェアという。モジュール・ソフトウェアは、デバイス測定時にモジュール108の制御をつかさどるモジュール・ドライバ、モジュール108の校正と診断を行う校正診断ソフトウェア、モジュール108の動作をソフトウェアでエミュレートするエミュレーション・ソフトウェア、モジュール108固有のパターン・コンパイラ、およびGUIツールなどを含む。
各試験サイト110は、それぞれ一つのDUT112に関連付けられる。DUT112は、ロードボード114を通して、対応する試験サイト110のモジュール108に接続される。
図2は、試験サイト110及びロードボード114のハードウェアの概略構成と各種設定用ファイルとの関係の一例を示す図である。図2に示すように、モジュール108は、試験システム100のテストヘッド132内のモジュール・スロットに差し込まれる。
試験サイト110の構成は、テキスト形式で記述されるソケットファイル118で指定される。このソケットファイル118には、DUT112ごとに、DUTソケット120のDUTピン122とロードボード114上のコネクタピン124との接続が記述される。コネクタピン124は、ブロック番号とコネクタ番号が付けられており、例えば、「12.3」のように、「(ブロック番号).(コネクタ番号)」の形式で表記される。ロードボード114のコネクタピン124は、テスタ・インタフェース・ユニット(Tester Interface Unit。以下「TIU」という。)126を介してモジュール108のピン128と接続される。
一方、ロードボード114は試験対象となるデバイスによって異なる場合が多い。そのため、モジュール・ソフトウェアが個々のロードボード114の実装に依存しないようにするためには、試験システム100において、モジュール108が実装するピン128そのものを定義できるようにし、それをもとにモジュール108の制御ができるようにしなければならない。本試験システム100では、これはモジュール設定ファイル(Module Configuration File。以下「MCF」という。)130によって達成される。
MCF130には、モジュール108のリソースとロードボード114のコネクタピン124との接続関係が指定される。これにより、論理的なピンの表現であるリソースと、モジュール108の物理ピン128、さらにはそれが接続されているロードボード114のコネクタピン124との関係が定められる。MCF130は、システムだけが設定可能であることが望ましい。
なお、本実施形態において、モジュール108の機能は、主にモジュール108の全体的な制御に関わる機能を提供するモジュール・オブジェクトと、モジュールのピン毎の機能を提供するリソース・オブジェクトによって表現される。本実施形態に係る試験システム100では、これらは全て、MCF130に記述される内容に従って、実際のハードウェアのエンティティと対称に結び付けられる。なお、これらのソフトウェアのオブジェクトを提供するモジュール・ソフトウェアを、ここではモジュール・ドライバと呼ぶ。
また、本実施形態において、リソースとは、試験システム100のモジュール108が備える物理的なピン128とその機能とを、オブジェクトで抽象化して表現したものである。モジュール108の一つの物理ピン128は、一つのリソースとして表現されてもよいし、機能的に分割された複数のリソースとして表現されてもよい。
リソースの機能的な分類はリソース・タイプと呼ばれ、その機能の定義はモジュール108のベンダが提供するリソース定義ファイルによって示される。論理的なピンを指すリソースは、リソース・タイプと、モジュール108内でピン128を特定する番号(リソースID)と、試験システム100内でモジュール108を特定するバス107のポート番号との3つ組で表現される。リソース・タイプとリソースIDの組と、それに対応するモジュール108内の物理ピン128の関係は固定的であるため、リソースが与えられたときに、それを物理的なピン128に対応付けることが可能となる。なお、リソースが物理ピン128と対応付けられることはアーキテクチャ上必須ではなく、モジュール108の持つ機能を仮想的なピンに見立てて表現し、制御することも可能である。
図3は、試験システム100のソフトウェア・アーキテクチャ200の一例を示す。ソフトウェア・アーキテクチャ200は分散オペレーティングシステムを表しており、関連するハードウェアシステム要素102、104、108に対応する、システムコントローラ・ソフトウェア220(以下、単に「システムコントローラ220」ともいう。)、少なくとも1つのサイトコントローラ・ソフトウェア240(以下、単に「サイトコントローラ240」ともいう。)及び少なくとも1つのモジュールを含むテストヘッド・ソフトウェア260(以下、単に「テストヘッド260」ともいう。)のための構成要素を有する。
一つの例示的な選択として、試験システム100は、ソフトウェアのプラットフォームとしてMicrosoft Windows(登録商標)を使用し、実装言語としてANSI/ISO標準C++を使用することができる。プラットフォームの全てのシステム・インタフェースもまた、C++のクラスまたはインタフェースとして提供され、ユーザの試験プログラムやモジュール・ソフトウェアはC++で実装することができる。
システムコントローラ220は、ユーザのための一次的なインタラクションポイントであり、サイトコントローラ240へのゲートウェイと、マルチサイト/DUT環境におけるサイトコントローラ240の同期とを提供する。ユーザアプリケーション及びツールは、グラフィカルユーザインターフェース(GUI)に基づくものでも、そうでないものでも、システムコントローラ220上で実行される。
また、システムコントローラ220は、テストプラン、試験パターン及び試験パラメータファイルを含む、全てのテストプラン関連情報のためのリポジトリとしての役割も果たす。これらのファイルを記憶するメモリは、システムコントローラ220に対してローカルに存在することができるか、又は、ネットワークを介してシステムコントローラ220に接続されることができる。
さらに、システムコントローラ220は、フレームワーククラス221と、システムツール222と、外部ツール223と、サイトコントローラへの標準インタフェース224と、通信ライブラリ230とを含む。
システムコントローラ220に関連するフレームワーククラス221は、オブジェクトと対話するための仕組みを提供し、標準インタフェース224の参照インプリメンテーションを提供する。また、サイトコントローラ240へのゲートウェイを提供し、且つマルチサイト/DUT環境におけるサイトコントローラ240の同期を提供するソフトウェア構成要素を構成する。実効的には、フレームワーククラス221は、システムコントローラ220をサポートするOSとしての役割を果たすことができる。
第三者の開発者は、標準システムツール222に加えて、又は、標準システムツール222に換えて、一以上のツール223を提供することができる。システムコントローラ220上の標準インタフェース224は、テスタ及び試験オブジェクトにアクセスするためにそれらのツールが用いるインタフェースを含む。ツール(アプリケーション)222、223によって、テスタ及び試験オブジェクトをインタラクティブに、且つバッチで制御できる。また、標準インタフェース224は、システムコントローラ220上で実行されるフレームワークオブジェクトへのオープンインタフェースや、サイトコントローラ240に基づくモジュール・ソフトウェアがパターンデータにアクセスし、それらを検索できるようにするインタフェース等を含む。
システムコントローラ220上に存在する通信ライブラリ230は、ユーザアプリケーション及び試験プログラムに対してトランスペアレントであるように、サイトコントローラ240と通信するための仕組みを提供する。
サイトコントローラ240は、試験機能の大部分が提供される。サイトコントローラ240は、テストプラン(試験プログラム)241と、試験クラス242と、サイトコントローラフレームワーククラス243と、特定モジュール拡張インタフェース244と、標準インタフェース245と、モジュール・ソフトウェア・インプリメンテーション246と、バックプレーン通信ライブラリ247と、バックプレーンドライバ248とを含む。
テストプラン241はユーザによって記述される。テストプランプログラムは、C++のようなオブジェクト指向コンポーネントを用いて、標準的なコンピュータ言語において直に記述するか、又は、C++コードを生成するための、さらに高いレベルの試験プログラミング言語において記述することができ、後に実行可能な試験プログラムにコンパイルすることができる。
テストプラン241は、標準的な又はユーザによって供給される試験クラス242及び/又はそのサイトコントローラ240に関連するフレームワーククラス243を用いることにより試験オブジェクトを作成し、標準インタフェース245を用いてハードウェアを構成し、テストプランフローを規定する。テストプランはいくつかの基本的なサービスをサポートし、デバッグサービス(たとえば、ブレークポイント生成)のような、下層のオブジェクトのサービスへのインタフェースを提供し、下層のフレームワーク及び標準クラスにアクセスできるようにする。
試験クラス242は、標準試験インタフェースの1つのインプリメンテーションであり、テストプランプログラムにおいて指定される。各試験クラスは通常、特定のタイプのデバイス試験、又はデバイス試験のための設定を実装する。
フレームワーククラス243は、共通の試験関連動作を実装する1組のクラス及びメソッドである。フレームワーククラス243は、実効的には、各サイトコントローラ240をサポートするローカルOSとしての役割を果たすことができる。
モジュール・ソフトウェアは、テストの実行時に必要に応じて動的に試験システム100のプロセスにロードできるように、DLL(Dynamic Link Library)形式であることが望ましい。これは、テストプラン241が指定する試験サイト110の構成に応じて、試験システム100が実行時に動的に制御対象のモジュール261を決定するからである。また、全てのモジュール・ソフトウェアは、モジュール261の機能に応じて、システムOSが規定するモジュール・ソフトウェアの標準インタフェース245を実装することが求められる。
特定モジュール拡張インタフェース244は、必要に応じてモジュール固有のより複雑で専門的な機能を持つインタフェース階層をモジュール・ソフトウェアに付加して実装する。例えば、C++では、標準インタフェース245を継承するインタフェースクラスをモジュール・ソフトウェアで定義することによって、インタフェースを拡張することができる。
標準インタフェース245は、システムフレームワークが規定する必要最小限の、一般的で普遍的に適用可能なインタフェースである。標準インタフェース245を用いて、全てのオブジェクトを画一的に扱うことができる。これにより、システムOSを変更することなく、新しいモジュールのソフトウェアをシームレスに、プラグ・アンド・プレイ方式でシステムに導入することが可能となる。
一例として、標準インタフェース245は、C++の純粋仮想インタフェースクラスとして定義される。このとき、ユーザ向けの機能を定義するサブクラスと、システムだけが使用する機能を定義するサブクラスと、リソースの機能を定義するサブクラスとによって構成されることが好ましい。また、標準インタフェース245の階層は、モジュールの最も基本的な機能を定義する階層、パターン・プログラムを実行する機能を持つモジュールを表現する階層、複数のピン間で共有されるテスト周期という概念を導入する階層、デジタル・モジュール特有の機能を加える階層、の4階層により構成されることが好ましい。このとき、各モジュール・ドライバは、モジュールの機能に応じて、4階層のインタフェースのいずれかを実装する。しかし、標準インタフェース245の構成は、これらの構成に限定されるものではない。
バックプレーン通信ライブラリ247は、バックプレーンにわたる標準的な通信のためのインタフェースを提供し、それによりテストヘッド260内のモジュール108と通信するために必要な機能を提供する。これにより、ベンダ固有のモジュール・ソフトウェアが、バックプレーンドライバ248を用いて、対応するモジュール108と通信できる。バックプレーン通信プロトコルはパケットに基づくフォーマットを用いることができる。
テストヘッド260は、デバイスに対する測定機能が提供される。テストヘッド260は、モジュール261と、TIU262と、ロードボード263と、DUT264とを含む。
また、ソフトウェア・アーキテクチャ200は、ソフトウェアの名目的な供給元に基づいて、システムフレームワーク290、ユーザコンポーネント292、テスタオペレーティングシステム294、モジュール・ハードウェア・ベンダコンポーネント296、及び、ツール・ソフトウェア・ベンダコンポーネント298に分類することができる。
システムフレームワーク290は、試験システム100の開発ベンダにより供給され、フレームワーククラス221と、標準インタフェース224と、フレームワーククラス243と、標準インタフェース245と、バックプレーン通信ライブラリ247とを含む。
ユーザコンポーネント292は、試験を実施するユーザによって供給され、テストプラン241と、テストクラス242と、ロードボード263と、DUT264とを含む。
テスタオペレーティングシステム294は、基本的な接続性及び通信のためのソフトウェアインフラストラクチャとして供給され、システムツール222と、通信ライブラリ230と、バックプレーンドライバ248とを含む。
モジュール・ハードウェア・ベンダコンポーネント296は、モジュール108の開発元によって供給され、特定モジュール拡張インタフェース244と、モジュール・ソフトウェア・インプリメンテーション246と、モジュール261と、TIU262を含む。
ツール・ソフトウェア・ベンダコンポーネント298は、外部ツールの開発元によって供給され、外部ツール223を含む。
次に、図2に示すハードウェアの概略構成に基づいて、各種設定ファイルについて具体的に説明する。
図4は、MCF130の一例を示す図である。図4に示すMCF130は、図2に示すハードウェア概略構成を記述した場合の例である。「Resource」キーワードの後に続く「OAI.Digital.dpin」はリソース・タイプの名前である。また、バス107のポート番号とリソースIDの組は、「P(ポート番号).(リソースID)」という形式(例えば、「P8.1」)で表記される。
図5は、ソケットファイル118の一例を示す図である。図5に示すように、本実施形態における試験システム100では、ソケットファイル118によって各サイトコントローラ104に接続するモジュール108と各試験サイト110の構成が決定され、それに従ってモジュール接続イネーブラ106を再構成することで、サイトコントローラ104とモジュール108間のバス107の接続とモジュール108の制御が確立される。このようなモジュール構成の表現方式とバス構成の自由度の高さは、システムのモジュラリティとスケーラビリティの確保に大きく貢献し、モジュール108のプラグ・アンド・プレイの実現を支える。
図6は、リソース定義ファイルの一例として、図2に示すリソース・タイプ「OAI.Digital.dpin」の定義の一部を示す図である。図6に示すように、リソースの属性は、型と属性名の対で指定される。例えば、図6において、「VIH」という属性は、「Voltage」という型を持つ。リソースの属性に対する設定値は、例えば、「属性名=値」という形で指定される。このように、モジュール108のハードウェアに強く依存するリソースの機能を、名前と型という極めて一般性のある表現形式で扱うことにより、ベンダは自由にリソースの機能を表現することができ、また、システムフレームワークは、モジュール108の機能に依存せずにリソースを画一的に扱うことが可能になる。これにより、システムの高い適用性と柔軟性が実現される。
次に、以上のように構成される試験システム100を用いたマスタ・スレーブ方式によるモジュール制御手法について説明する。
図7は、本発明に係るマスタ・スレーブ方式によるモジュール制御を実現する概略構成の一例を示すブロック図である。同図は、マスタ・モジュールとして機能するモジュールA 108Mと、スレーブ・モジュールとして機能するモジュールB 108Sとを備える場合の一例である。本発明においては、モジュール制御ドライバ105によって、マスタ・モジュール108Mとスレーブ・モジュール108Sが制御される。そのため、マスタ・モジュール108Mが提供するリソースのみならず、スレーブ・モジュール108Sによって提供されるリソースも、モジュール制御ドライバ105によって定義され、実装される。
このとき、本発明では、MCF130内に新たにマスタ・スレーブ定義部140を設け、このマスタ・スレーブ定義部140において、マスタ・モジュール108Mのリソース定義とスレーブ・モジュール108Sのリソース定義とが記述される点に特徴を有する。モジュール制御ドライバ105は、このMCF130内のマスタ・スレーブ定義部140を読み込んで、マスタ・モジュール108M及びスレーブ・モジュール108Sの備えるリソース定義を特定し、実装する。ここで、スレーブ・モジュール108Sのリソース定義は、スレーブ・モジュール108Sのポート番号とスレーブ・モジュール108Sの提供するリソース(ピン128等)との関係を含む。
このように、モジュール制御ドライバ105は、MCF130を読み込んで、マスタ・スレーブ定義部140の内容を参照することによって、どのモジュールがスレーブ・モジュール108Sであって制御可能であるか、制御可能なスレーブ・モジュール108Sがどのような種類のリソースを提供しているか、また、スレーブ・モジュール108Sの制御法などを、特定することができる
なお、従来のATEでは、本実施形態のMCF130に対応するモジュール設定ファイルを備えているが、当該ファイルにおいて、スレーブ・モジュールのリソースをマスタ・モジュールのリソースと区別して定義することができないため、ATEは、スレーブ・モジュールのポート番号とリソースとの関係を特定することができない。
具体的には、マスタ・スレーブ定義部140は、例えば、各モジュールのポート番号と当該モジュールがスレーブ・モジュールであるか否かが記述される。また、スレーブ・モジュールの場合には、当該スレーブ・モジュールのマスタ・モジュールとして機能するモジュールのポート番号が対応付けられている。これにより、スレーブ・モジュール108Sのポート番号とスレーブ・モジュール108Sの提供するリソースとの関係を特定することができるようになる。
例えば、図7に示す例では、MCF130内のマスタ・スレーブ定義部140において、モジュールAのポート番号が10であること(1行目)、並びに、モジュールBのポート番号が11であること(2行目)、モジュールBがスレーブ・モジュールとして機能すること(3行目)、及び、モジュールBのマスタ・モジュールはポート番号10で表されるモジュールであること(4行目)が定義されている。
なお、試験システム100がサポートする全てのリソースの種類は、マスタ・スレーブ定義部140で特定されることが好ましい。
図8は、本発明に係るマスタ・スレーブ方式によるモジュール制御における、リソースとポート番号との関係の一例を示す概略図である。同図に示す例では、図11の例と同様に、一つのマスタ・モジュール108Mが一つのスレーブ・モジュール108Sを備え、各モジュールは、ロードボード114に接続されるピン128を備える。また、各モジュールは、システム内でのアドレスとして使用されるポート番号を備え、マスタ・モジュール108Mのポート番号は「10」であり、スレーブ・モジュール108Sのポート番号は「11」であるものとする。
このとき、本発明に係るマスタ・スレーブ方式によるモジュール制御では、スレーブ・モジュール108Sのリソース(ポート番号とチャネルの組)は、スレーブ・モジュール108S自身のポート番号「11」に基づいて、P11.1、P11.2、・・・、P11.8と表される。このように、本発明に係るモジュール制御モデルでは、スレーブ・モジュール108Sのリソースを、マスタ・モジュール108Mのポート番号に拘束されることなく、スレーブ・モジュール108S自身のポート番号に基づいて定義することができる。スレーブ・モジュール108Sのリソースが、スレーブ・モジュール108Sのポート番号に基づいて表現されるので、マスタ・モジュール108Mは、リソースを参照すれば、制御対象のスレーブ・モジュール108Sのポート番号を特定することができるようになる。このため、モジュール制御ドライバ105又はサイトコントローラ104は、スレーブ・モジュール108Sをマスタ・モジュール108Mと明確に区別して制御できる。
図9は、本実施形態に係るマスタ・スレーブ方式によるモジュール制御処理の流れを示すフローチャートである。まず、システム・インテグレータ等によって、試験システム100に新たにモジュール108が組み込まれると(S301)、システム・インテグレータ等は、組み込んだモジュール108のポート番号、及び、スレーブ・モジュールか否か等のモジュール情報を、MCF130内のマスタ・スレーブ定義部140に、新たに書き加える(S302)。その後、サイトコントローラ104は、所定の時点でMCF130を読み出して(S303)、マスタ・スレーブ定義部140に定義された内容に基づいて、モジュール制御ドライバ105にリソース定義を実装する(S304)。こうして、モジュール制御ドライバ105は、スレーブ・モジュールのリソースとポート番号との関係等を特定できるようになる。
以上のように、本試験システム100では、MCF130内のマスタ・スレーブ定義部140にモジュールのリソース定義を規定しておき、サイトコントローラ104は、MCF130を読み込んで、当該マスタ・スレーブ定義部140に規定された内容に基づいて、モジュール制御ドライバ105に、スレーブ・モジュールを制御するためのリソース定義を実装する。これにより、モジュール制御ドライバ105は、マスタ・モジュールのみならず、スレーブ・モジュールのリソースとポート番号との関係等を特定できるようになる。
なお、本発明は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。例えば、上述の各処理ステップは処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
例えば、本実施形態では、スレーブ・モジュールのリソース定義として、リソースとポート番号との関係を例示したが、ポート番号に換えて、当該スレーブ・モジュールを一意に識別可能な任意の識別子を利用可能であることは言うまでもない。
本発明の一実施形態による試験システム100のシステムアーキテクチャを示す。 試験サイト110及びロードボード114のハードウェアの概略構成と各種設定用ファイルとの関係の一例を示す図である。 試験システム100のソフトウェア・アーキテクチャ200の一例を示す。 モジュール設定ファイル(MCF)130の一例を示す図である。 ソケットファイル118の一例を示す図である。 リソース定義ファイルの一例として、図2に示すリソース・タイプ「OAI.Digital.dpin」の定義の一部を示す図である。 マスタ・スレーブ方式によるモジュール制御を実現する概略構成の一例を示すブロック図である。 マスタ・スレーブ方式によるモジュール制御における、リソースとポート番号との関係の一例を示す概略図である。 マスタ・スレーブ方式によるモジュール制御処理の流れを示すフローチャートである。 従来のモジュール制御手法を示すブロック図である。(A)は、モジュール毎にモジュール制御ドライバを備える一例を示すブロック図である。(B)は、従来のマスタ・スレーブ方式によるモジュール制御手法の一例を示すブロック図である。 従来のマスタ・スレーブ方式によるモジュール制御における、リソースとポート番号との関係の一例を示す概略図である。
符号の説明
100 試験システム
102 システムコントローラ
104 サイトコントローラ
105 モジュール制御ドライバ
106 モジュール接続イネーブラ
107 バス
108 モジュール
108M マスタ・モジュール
108S スレーブ・モジュール
110 試験サイト
112 被試験デバイス(DUT)
114 ロードボード
118 ソケットファイル
120 ソケット
122 ピン
124 コネクタピン
126 テスタ・インタフェース・ユニット(TIU)
128 ピン
130 モジュール設定ファイル(MCF)
132 テストヘッド

Claims (8)

  1. 被試験デバイスに試験信号を供給可能な複数のモジュールと、
    前記複数のモジュールそれぞれのリソースとポート番号に関する情報を含むモジュール設定ファイルと、
    前記モジュール設定ファイルに含まれる情報に基づいて前記複数のモジュールのリソースとポート番号との関係を特定し、ポート番号を利用して、前記複数のモジュールの各々のリソースを個別に制御することのできるモジュール制御ドライバと、
    を備える試験システム。
  2. 前記複数のモジュールは、一つのマスタ・モジュールと、一以上のスレーブ・モジュールとを含み、
    前記モジュール制御ドライバは、前記一つのマスタ・モジュールと前記一以上のスレーブ・モジュールとを制御する、
    ことを特徴とする請求項1記載の試験システム。
  3. 前記モジュール設定ファイルは、
    各モジュールのポート番号と、
    各モジュールがマスタ・モジュール又はスレーブ・モジュールのいずれであるかに関する情報と、
    モジュールがスレーブ・モジュールの場合には、当該モジュールのマスタ・モジュールに関する情報と、
    を含むことを特徴とする請求項2記載の試験システム。
  4. 前記ポート番号に換えて、前記複数のモジュールのそれぞれを識別可能な任意の識別子を利用することを特徴とする請求項1乃至3のいずれかに記載の試験システム。
  5. 前記試験システムは、オープン・アーキテクチャに基づくシステムであり、
    前記二以上のモジュールは、前記オープン・アーキテクチャの標準仕様に準拠するものである、
    ことを特徴とする請求項1乃至4のいずれかに記載の試験システム。
  6. 被試験デバイスに試験信号を供給可能な複数のモジュールと、前記複数のモジュールを制御可能なモジュール制御ドライバとを備える試験システムにおいて、前記複数のモジュールの各々のリソースを個別に制御する方法であって、
    前記複数のモジュールそれぞれのリソースとポート番号に関する情報を含むモジュール設定ファイルを読み出すステップと、
    前記モジュール設定ファイルに規定された内容に基づいて、前記複数のモジュールのリソース定義を特定して、前記モジュール制御ドライバに実装するステップと、
    前記モジュール設定ドライバが、ポート番号を利用して、前記複数のモジュールの各々のリソースを個別に制御するステップと、
    を備える試験システムのモジュール制御方法。
  7. 請求項6に記載のモジュール制御方法をコンピュータに実行させるためのプログラム。
  8. 請求項7に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2008076536A 2008-03-24 2008-03-24 試験システム及びモジュール制御方法 Withdrawn JP2009229304A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008076536A JP2009229304A (ja) 2008-03-24 2008-03-24 試験システム及びモジュール制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008076536A JP2009229304A (ja) 2008-03-24 2008-03-24 試験システム及びモジュール制御方法

Publications (1)

Publication Number Publication Date
JP2009229304A true JP2009229304A (ja) 2009-10-08

Family

ID=41244869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008076536A Withdrawn JP2009229304A (ja) 2008-03-24 2008-03-24 試験システム及びモジュール制御方法

Country Status (1)

Country Link
JP (1) JP2009229304A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104198868A (zh) * 2014-09-23 2014-12-10 厦门雅迅网络股份有限公司 一种可灵活扩展和动态配置的智能工装
JP2020507764A (ja) * 2017-02-10 2020-03-12 チェックサム, エルエルシーChecksum, Llc プリント基板のための機能検査器、関連するシステム及び方法
CN111505426A (zh) * 2020-05-15 2020-08-07 许昌许继风电科技有限公司 一种主从式双驱动风电变桨系统测试装置及测试方法
CN113447791A (zh) * 2020-03-25 2021-09-28 北京确安科技股份有限公司 资源共享结构测试负载板的检测方法、装置及电子设备
CN114252758A (zh) * 2021-12-03 2022-03-29 杭州至千哩科技有限公司 Ate测试通道资源配置方法、装置、设备及存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104198868A (zh) * 2014-09-23 2014-12-10 厦门雅迅网络股份有限公司 一种可灵活扩展和动态配置的智能工装
JP2020507764A (ja) * 2017-02-10 2020-03-12 チェックサム, エルエルシーChecksum, Llc プリント基板のための機能検査器、関連するシステム及び方法
US11686759B2 (en) 2017-02-10 2023-06-27 Checksum, Llc Functional tester for printed circuit boards, and associated systems and methods
CN113447791A (zh) * 2020-03-25 2021-09-28 北京确安科技股份有限公司 资源共享结构测试负载板的检测方法、装置及电子设备
CN113447791B (zh) * 2020-03-25 2023-04-07 北京确安科技股份有限公司 资源共享结构测试负载板的检测方法、装置及电子设备
CN111505426A (zh) * 2020-05-15 2020-08-07 许昌许继风电科技有限公司 一种主从式双驱动风电变桨系统测试装置及测试方法
CN111505426B (zh) * 2020-05-15 2022-03-22 许昌许继风电科技有限公司 一种主从式双驱动风电变桨系统测试装置及测试方法
CN114252758A (zh) * 2021-12-03 2022-03-29 杭州至千哩科技有限公司 Ate测试通道资源配置方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
JP5022262B2 (ja) デバッグ中にツールを使用可能な試験システム及び方法
KR102100533B1 (ko) Fpga 블록 내에 패킷 형성을 위한 가속을 갖는 시험기
US10162007B2 (en) Test architecture having multiple FPGA based hardware accelerator blocks for testing multiple DUTs independently
JP4608516B2 (ja) モジュール式試験システムに試験モジュールを統合する方法およびモジュール式試験システム
US12079098B2 (en) Automated test equipment with hardware accelerator
JP3954639B2 (ja) 集積回路をテストする方法および装置
EP1610136B1 (en) Test emulator
US20080010524A1 (en) Test emulator, test module emulator and record medium storing program therein
JP2006518460A5 (ja)
CN1981203A (zh) 支持开放架构测试系统中的校准和诊断
JP2008519247A (ja) モジュール式試験システムをシミュレートする方法及びシステム
US7548828B2 (en) Automatic test equipment platform architecture using parallel user computers
JP2009229304A (ja) 試験システム及びモジュール制御方法
CN113391142A (zh) 使用主机总线适配器在自动化测试设备中提供协议灵活性
JP5269450B2 (ja) 試験システム及びバックアノテーション方法
CN100456043C (zh) 检测集成电路的方法和装置
JP2007057541A (ja) 試験エミュレート装置
TWI287639B (en) A distributed operating system for a semiconductor test system for testing at least one device under test
JP2009229305A (ja) 試験システム及びモジュール間通信方法
JP2005285092A (ja) 試験エミュレート装置
Schreier et al. Programming preliminaries.
Guide Designing Next Generation Test Systems

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20110607