(57)【要約】【課題】ＡＬＰＧ機能を実ハードウェアに組みこむＤＵＴのテスト方式では、必要なＡＬＰＧ機能の変更と追加、及びその検証に迅速に対応することが困難であった。【解決手段】仮想ＡＬＰＧ機能と実ＡＬＰＧメモリテスト機能を具備し、ハードウェアシミュレータ上で動作する仮想ＡＬＰＧとハードウェアで実現する実ＡＬＰＧが、実時間は異なるが、テストプログラムを解釈し、プログラムの指定するＤＵＴに対するテストパターンを指定された内容で、指定された速度で発生して、仮想ＡＬＰＧと実ＡＬＰＧが同タイミングでパターンを発生する機能を有する仮想ＡＬＰＧ透過型半導体テスト装置とする。【選択図】図１
2008276608.tif 000002
【特許請求の範囲】
【請求項１】
仮想ＡＬＰＧ機能と実ＡＬＰＧメモリテスト機能を具備し、ハードウェアシミュレータ上で動作する仮想ＡＬＰＧとハードウェアで実現される実ＡＬＰＧが、実時間は異なるが、テストプログラムを解釈し、プログラムの指定するＤＵＴに対するテストパターンを指定された内容で、指定された速度で発生して、仮想ＡＬＰＧと実ＡＬＰＧが同タイミングでパターンを発生する機能を有していることを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項２】
仮想ＡＬＰＧ機能とテスト対象のＤＵＴモデルとが構築されたシミュレーション装置と、ハードウェアＡＬＰＧ機構とテスト対象のＤＵＴが搭載された実テスト装置とを備え、前記シミュレーション装置において前記仮想ＡＬＰＧ機能と前記テスト対象のＤＵＴモデルを用いて機能が検証された前記仮想ＡＬＰＧ機能を前記実テスト装置の前記ハードウェアＡＬＰＧ機構に反映し、前記ハードウェアＡＬＰＧ機構を用いて、前記テスト対象のＤＵＴのテストを行うことを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項３】
請求項２に記載の仮想ＡＬＰＧ透過型半導体テスト装置において、前記仮想ＡＬＰＧ機能と前記ハードウェアＡＬＰＧ機構とが、テストパターンを指定された内容で、指定された速度で、同タイミング発生することを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項４】
請求項１又は請求項２に記載の仮想ＡＬＰＧ透過型半導体テスト装置において、前記ハードウェアＡＬＰＧ機構は、ＰＬＤにより構成されることを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項５】
請求項４に記載の仮想ＡＬＰＧ透過型半導体テスト装置において、前記仮想ＡＬＰＧ機能が複数の仮想ＡＬＰＧ機能からなり、前記ハードウェアＡＬＰＧ機構が複数のＰＬＤにより構成されて、前記複数の仮想ＡＬＰＧ機能が前記複数のＰＬＤに反映されて、前記実テスト装置内に複数の異なるハードウェアＡＬＰＧ機構複数が構築されることを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項６】
請求項５に記載の仮想ＡＬＰＧ透過型半導体テスト装置において、前記実テスト装置内に複数のテスト対象のＤＵＴが搭載され、前記複数のハードウェアＡＬＰＧ機構により、前記複数のテスト対象のＤＵＴに対して、同時に並行してテストを行うことを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項７】
請求項６に記載の仮想ＡＬＰＧ透過型半導体テスト装置において、前記複数のテスト対象のＤＵＴが異なる種類のＤＵＴであり、前記複数のテスト対象のＤＵＴが異なる種類のＤＵＴ毎に、前記複数のハードウェアＡＬＰＧ機構が、同時に並行して、異なるテスト内容のテストを行うことを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【請求項８】
請求項４に記載の仮想ＡＬＰＧ透過型半導体テスト装置において、前記ＰＬＤにより構成される前記ハードウェアＡＬＰＧ機構は、パターンメモリ及びファイルメモリを含むＦＩＦＯメモリを備えており、または、ＰＬＤに制御される外部メモリによるＦＩＦＯメモリとしての機能、テスト対象のＤＵＴに対する入力及び出力のタイミングを調整することを特徴とする仮想ＡＬＰＧ透過型半導体テスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリやＬＳＩなどのＤＵＴ(Device Under Test)のテスト回路に関し、内蔵プログラムに従って所定のテストパターンを発生可能なＡＬＰＧ（Algorithmic Pattern Generator）テスト回路に関する。
【背景技術】
【０００２】
ＤＵＴのテスト方式としては、テスタ装置によりテストパターンデータを発生してそれをロジックＩＣへ入力し、ロジックＩＣから出力されたデータ信号と期待値信号とを比較して判定する方式、また、ＤＵＴ内に疑似乱数発生回路のようなランダムなテストパターンデータを発生するパターン発生回路を内蔵させたＢＩＳＴ（Built in self test）方式のテスト技術等が知られている。
【０００３】
特許文献１には、所定のアルゴリズムに従ってメモリ回路のテストのためのテストパターンを生成するとともにメモリ回路に書き込んだデータの読み出しを行なうマイクロ命令方式の制御部と、データの演算部、およびメモリ回路から読み出されたデータを判定して判定結果を出力するデータ判定手段などからなり、内蔵プログラムに従って所定のテストパターンを発生可能なＡＬＰＧテスト回路が提案されている。
【０００４】
また、特許文献２には、テスタ言語で記述されているテスト対象のＤＵＴに関するテストプログラムを解析して、実施しようとするテスト内容に応じたテスト回路（ＡＬＰＧ）の構成要素を抽出する、即ち、不用構成要素を削除して、ＨＤＬ（ハードウェア・ディスクリプション・ラングィッジ）により所望のテスト単位でのテストが可能なテスト回路構築データを生成する技術が提案されている。
【０００５】
図１７は、上記特許文献２のＡＬＰＧのテスト回路をＦＰＧＡ（フィールド・プログラマブル・ゲート・アレイ）内に構築する手順のフローチャートを示している。ステップＳ１４においてＦＰＧＡ上にＡＬＰＧが構築される。また、図１８は、上記特許文献２のＡＬＰＧテスト回路がテストボード５００上のＦＰＧＡ５１０内に構築され、テスト対象の被測定メモリ５５０をテストするテスト回路である。
【特許文献１】国際公開ＷＯ９８／４７１５２号
【特許文献２】特開２００２−１２３５６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の従来例では、ＤＵＴのテストを行うテスト手順やテストパターンを生成するＡＬＰＧ機能を作成しても、テストを行うには、上記のＡＬＰＧ機能をＦＰＧＡ（フィールド・プログラマブル・ゲート・アレイ）などの実際のハードウェアに組み込んで、実際のテスタ装置を構築し、実際のテスト対象のＤＵＴとともにテスト回路を構築する必要があった。
【０００７】
内蔵プログラムに従って所定のテストパターンを発生可能なＡＬＰＧテスト回路の場合には、種々のテスト対象のＤＵＴに対応して、内蔵プログラムを変更し、その際のＡＬＰＧのテストパターン発生の検証、ＡＬＰＧテスト回路の設計の検証などが必要である。また、ユーザの要求に応じて必要なＡＬＰＧ機能を追加して検証することが必要となる。しかしながら、従来例のＡＬＰＧ機能を実ハードウェアに組みこんでテストを行う方式では、必要なＡＬＰＧ機能の変更と追加、及びその検証に迅速に対応することが困難であった。
【課題を解決するための手段】
【０００８】
本発明の仮想ＡＬＰＧ透過型半導体テスト装置は、仮想ＡＬＰＧ機能と実ＡＬＰＧメモリテスト機能を具備しており、仮想ＡＬＰＧ（ハードウェアシミュレータ上で動作する）と実ＡＬＰＧ（ハードウェアで実現）が、実時間は異なるが、上位のパターンプログラムを解釈し、プログラムの指定するＤＵＴに対するテストパターンを指定された内容で、指定された速度で発生して、仮想ＡＬＰＧと実ＡＬＰＧが同タイミングでパターンを発生する機能を有していることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ＡＬＰＧ機能を有した仮想テスト機能が、並行して実現されており、これを設計環境に戻すことにより、パターン検証、設計検証が可能となるフィードバックシステムを構成することができる。
【００１０】
また、ＡＬＰＧの機能をユーザの要求に応じて追加することが出来、実テスト実行前に、ＤＵＴモデルともども検証することが出来る。検証後、ＡＬＰＧ機能をＰＬＤ(Programmable Logic Device)などのハードウェアにマッピングして、すぐに、実際のテスト対象のＤＵＴに対して、実テストを実行することが出来る。
【発明を実施するための最良の形態】
【００１１】
以下、図面を用いて、本発明の実施の形態について説明する。
【実施例１】
【００１２】
図１は、本発明の実施例１の仮想ＡＬＰＧ透過型の半導体テスト装置の概要図である。図１において、１はホスト計算機、２はシミュレーション装置、３は実テスタ装置、２１は仮想ＡＬＰＧ機能、２２はＤＵＴモデル、３１はハードウェアＡＬＰＧ機構、３２はＤＵＴを示す。
【００１３】
ＡＬＰＧ機能は、テスト対象のＤＵＴの実施しようとするテスト内容に応じて所定のテストパターンを発生可能なテスト回路を構成するものであり、ＨＤＬ（ハードウェア・ディスクリプション・ラングィッジ）により所望のテスト単位でのテスト内容を実行することができるように記述されたプログラムである。
【００１４】
図１において、ＡＬＰＧ機能のプログラムがシミュレーション装置２にローディングされ、シミュレーション装置２に仮想ＡＬＰＧ機能２１が構築される。また、シミュレーション装置２内には、テスト対象のＤＵＴに対応したＤＵＴモデル（仮想ＤＵＴ）が存在する。
【００１５】
図２は、本発明の実施例１の仮想ＡＬＰＧ透過型の半導体テスト装置の具体的なハードウェア構成を示す図である。
【００１６】
図２において、ホスト計算機１とシミュレーション装置２と実テスト装置３が接続されている。ＡＬＰＧ機能４は、シミュレーション装置２にローディングされて、仮想ＡＬＰＧ機能２１とＤＵＴモデル２２を構築する。
【００１７】
また、テストプログラム５はホスト計算機１にローディングされ、ホスト計算機１は、シミュレーション装置２と実テスト装置３に、テスト対象のＤＵＴに対応したプログラムコードを送信し、シミュレーション装置２と実テスト装置３からのフェイルログ情報を受信する。
【００１８】
実テスタ装置は、テスタボード上に、ハードウェア（ＰＬＤ）ＡＬＰＧ機構３１と実際のテスト対象のＤＵＴ３２が形成されており、実テストが実行される。
【００１９】
図３は、本発明の仮想ＡＬＰＧ透過型の半導体テスト装置において、仮想ＡＬＰＧ機能を構築する手順を示すフローチャートである。
【００２０】
図３のステップＳ３０１において、仮想ＡＬＰＧ機能を構築する手順が開始される。ステップＳ３０２において、ＡＬＰＧ機能のプログラム４がシミュレーション装置２にローディングされると、ステップＳ３０３において、シミュレーション装置２内に仮想ＡＬＰＧ機能２１が構築される。また、ステップＳ３０４において、シミュレーション装置２内には、テスト対象のＤＵＴに対応したＤＵＴモデル（仮想ＤＵＴ）が存在する。
【００２１】
図４は、仮想ＡＬＰＧ機能を用いて、ＡＬＰＧ機能の設計検証を行う手順を示すフローチャートである。
【００２２】
図４のステップＳ４０１において、仮想ＡＬＰＧ機能を用いて、ＡＬＰＧの設計検証の手順が開始される。ステップＳ４０２において、テストプログラム５がホスト計算機１にローディングされる。ステップＳ４０３において、ホスト計算機１は、ローディングされたテストプログラム５を解析してプログラムコードをシミュレーション装置２内に送信する。
【００２３】
ステップＳ４０４において、シミュレーション装置２の仮想ＡＬＰＧ機能２１は、プログラムコードを元に、ＤＵＴモデル２２（仮想ＤＵＴ）のテスト内容に対応したテストパターンを生成してＤＵＴモデル２２に入力する。
【００２４】
ステップＳ４０５において、ＤＵＴモデル２２は入力されたテストパターンに対応した応答データを出力する。
【００２５】
ステップＳ４０６において、シミュレーション装置２は、ＤＵＴモデル２２に入力したテストパターンとＤＵＴモデル２２からの応答データを比較し、誤りがあった場合には、フェイルログ情報をホスト計算機１に送信する。
【００２６】
ステップＳ４０７において、ホスト計算機１は、シミュレーション装置２の仮想ＡＬＰＧ機能からのフェイルログ情報を分析して、ＡＬＰＧ機能の設計検証を行う。
【００２７】
図５は、ＡＬＰＧ機能の設計検証が行われた仮想ＡＬＰＧ機能を実テスト装置３のハードウェアＡＬＰＧ機構３１にマッピングする手順を示すフローチャートである。
【００２８】
ステップＳ５０１において、仮想ＡＬＰＧ機能のマッピング機能が開始される。マッピング機能を行うには、例えば、ステップＳ５０２において、シミュレーション装置２の画面上に表示されるメニュー画面において、「ＡＬＰＧマッピング」のメニューを選択することにより行う。ステップＳ５０３において、実テスト装置３にマッピングする仮想ＡＬＰＧ機能を指定する。また、ステップＳ５０４において、マッピング先の実テスト装置３に搭載されているハードウェア（ＰＬＤ）を指定する。
【００２９】
そして、ステップＳ５０４において、メニュー画面での「マッピングの実行」を選択実行し、「仮想ＡＬＰＧ機能」のＨＤＬ言語の記述を、ハードウェア（ＰＬＤ）内の論理回路の各スイッチの設定に反映させて、ハードウェアＡＬＰＧ機構３１を構築する。
【００３０】
図６は、ハードウェアＡＬＰＧ機構３１が構築された実テスト装置３を用いて、実際のテスト対象のＤＵＴ３２の検証を行う手順を示すフローチャートである。
【００３１】
ステップＳ６０１において、実テスト装置３を用いた実際のＤＵＴ３２のテストが開始される。ステップＳ６０２において、テストプログラム５がホスト計算機１にローディングされる。ステップＳ６０３において、ホスト計算機１は、ローディングされたテストプログラム５を解析してプログラムコードを実テスト装置３に送信する。
【００３２】
ステップＳ６０４において、実テスト装置３のＡＬＰＧ機構３１は、プログラムコードを元に、テスト対象のＤＵＴ３２のテスト内容に対応したテストパターンを生成してＤＵＴ３２に入力する。
【００３３】
ステップＳ６０５において、ＤＵＴ３２は入力されたテストパターンに対応した応答データを出力する。ステップＳ６０６において、実テスト装置３のＡＬＰＧ機構３１は、ＤＵＴ３２に入力したテストパターンとＤＵＴ３２からの応答データを比較し、誤りがあった場合には、フェイルログ情報をホスト計算機１に送信する。
【００３４】
ステップＳ６０７において、ホスト計算機１は、実テスト装置３１のＡＬＰＧ機構３１からのフェイルログ情報を分析して、テスト対象であるＤＵＴ３２のテストを実行する。
【００３５】
以上のように、シミュレーション装置２上で、ＤＵＴモデル又は仮想ＡＬＰＧ機能２１の機能の検証を行うことができる。なお、シミュレーション装置２上で、ＤＵＴモデル又は仮想ＡＬＰＧ機能２１の機能の検証を行う場合に、テストパターンを指定された内容で、指定された速度で発生することができるようにし、仮想ＡＬＰＧと実ＡＬＰＧは同タイミングでパターンを発生する機能を備えるようにすることが望ましい。
【００３６】
また、ＰＬＤ（プログラマブル・ロジック・デバイス）は、任意の論理を構成可能な可変論理回路と、任意の可変論理回路間を、配線を介して接続可能にする可変スイッチアレイとが交互に配置されたような構成を有しており、ＡＬＰＧ機能のテスト回路のＨＤＬ記述をマッピングすることにより、ＰＬＤ内にスイッチング回路の論理回路を形成して、実ハードウェアのＡＬＰＧ機構を容易に構築することができる。
【実施例２】
【００３７】
図７は、本発明の実施例２の仮想ＡＬＰＧ透過型半導体テスト装置の概要図である。
図７の仮想ＡＬＰＧ透過型半導体テスト装置では、シミュレーション装置２において、複数の仮想ＡＬＰＧ機能２１を実現可能であり、また、複数のＤＵＴモデル２２を生成することができ、異なるＤＵＴモデル２２ｂに対して、異なる仮想ＡＬＰＧ機能２１の設計検証を行うことができる。
【００３８】
また、実テスト装置３のハードウェアＡＬＰＧ機構は、複数個のＰＬＤを備えており、シミュレーション装置２において、設計検証を終了した仮想ＡＬＰＧ機能２１を異なるＰＬＤにマッピングすることができる。この場合に、複数個のテスト対象のＤＵＴ３２の夫々に対して、１対１に対応するＰＬＤを用いて、異なったテストをＤＵＴ毎にパラレルに実行することができる。
【００３９】
各ＦＰＧＡに構築されるＡＬＰＧ機構３１は、パターンメモリ３３とフェイルメモリ３４を有するＦＩＦＯ（First In First Out）メモリと、演算機能３５、アドレス制御器３６、マッピング機構を備えている。
【００４０】
図８は、本発明の実施例２の仮想ＡＬＰＧ機能を構築する手順を示すフローチャートである。図８のステップＳ８０１において、仮想ＡＬＰＧ機能を構築する手順が開始される。ステップＳ８０１’において、構築するＡＬＰＧ機能を選択する。ステップＳ８０２において、ＡＬＰＧ機能のプログラム４がシミュレーション装置２にローディングされると、ステップＳ８０３において、シミュレーション装置２内に仮想ＡＬＰＧ機能２１が構築される。また、ステップＳ８０４において、シミュレーション装置２内には、テスト対象のＤＵＴに対応したＤＵＴモデル（仮想ＤＵＴ）が存在する。
【００４１】
ステップＳ８０５において、次のＡＬＰＧ機能の有無が判定される。次のＡＬＰＧ機能が有る場合には、ステップＳ８０１’に移行して、次の仮想ＡＬＰＧ機能の構築の手順を繰り返し、次のＡＬＰＧ機能が無い場合には、手順を終了する。
【００４２】
図９は、本発明の実施例２の仮想ＡＬＰＧ機能を用いてＡＬＰＧ機能の設計検証を行う手順を示すフローチャートである。
【００４３】
図９のステップＳ９０１において、仮想ＡＬＰＧ機能を用いて、ＡＬＰＧの設計検証の手順が開始される。ステップＳ９０１’において、構築するＡＬＰＧ機能を選択する。ステップＳ９０２において、テストプログラム５がホスト計算機１にローディングされる。ステップＳ９０３において、ホスト計算機１は、ローディングされたテストプログラム５を解析してプログラムコードをシミュレーション装置２内に送信する。
【００４４】
ステップＳ９０４において、シミュレーション装置２の仮想ＡＬＰＧ機能３１は、プログラムコードを元に、ＤＵＴモデル２２（仮想ＤＵＴ）のテスト内容に対応したテストパターンを生成してＤＵＴモデル２２に入力する。
【００４５】
ステップＳ９０５において、ＤＵＴモデル２２は入力されたテストパターンに対応した応答データを出力する。
【００４６】
ステップＳ９０６において、シミュレーション装置２は、ＤＵＴモデル２２に入力したテストパターンとＤＵＴモデル２２からの応答データを比較し、誤りがあった場合には、フェイルログ情報をホスト計算機１に送信する。
【００４７】
ステップＳ９０７において、ホスト計算機１は、シミュレーション装置２の仮想ＡＬＰＧ機能からのフェイルログ情報を分析して、ＡＬＰＧ機能の設計検証を行う。
【００４８】
ステップＳ９０８において、次のＡＬＰＧ機能の有無が判定される。次のＡＬＰＧ機能が有る場合には、ステップＳ９０１’に移行して、次の仮想ＡＬＰＧ機能の構築の手順を繰り返し、次のＡＬＰＧ機能が無い場合には、手順を終了する。
【００４９】
図１０は、本発明の実施例２の仮想ＡＬＰＧ機能を実テスト装置のハードウェアＡＬＰＧ機構にマッピングする手順を示すフローチャートである。
【００５０】
ステップＳ１００１において、仮想ＡＬＰＧ機能のマッピング機能が開始される。マッピング機能を行うには、ステップＳ１００２において、シミュレーション装置２の画面上に表示されるメニュー画面において、「ＡＬＰＧマッピング」のメニューを選択することにより行う。ステップＳ１００３において、実テスト装置３にマッピングする「仮想ＡＬＰＧ機能」を選択する。また、ステップＳ１００４において、マッピング先の実テスト装置３に搭載されているハードウェア（ＰＬＤ）を選択する。
【００５１】
そして、ステップＳ１００４において、メニュー画面での「マッピングの実行」を選択実行し、選択された「仮想ＡＬＰＧ機能」のＨＤＬ言語の記述を、ハードウェアないの選択されたＰＬＤ内の論理回路の各スイッチの設定に反映させて、複数のハードウェアＡＬＰＧ機構３１を構築する。
【００５２】
図１１は、本発明の実施例２のハードウェアＡＬＰＧ機構が構築された実テスト装置を用いて、テスト対象のＤＵＴの検証を行う手順を示すフローチャートである。
【００５３】
図１１において、ステップＳ１１０１において、実テスト装置３を用いた実際の装置ＤＵＴ３２のテストが開始されると、ステップＳ１１０２において、テストプログラム５がホスト計算機１にローディングされる。ステップＳ１１０３において、ホスト計算機１は、ローディングされたテストプログラム５を解析してプログラムコードを実テスト装置３に送信する。
【００５４】
ステップＳ１１０４１において、実テスト装置３のＰＬＤが指定される。異なるプログラムコードの送信に対しては、次の異なるＰＬＤが指定して、異なるＡＬＰＧ機構３１を構築して、同時かつ平行に複数のＤＵＴを検証することができる。
【００５５】
ステップＳ１１０４２において、ホスト計算機１から送信されたプログラムコードは、実テスト装置３の指定されたＰＬＤのパターンメモリ３３に一旦記憶された後、ステップＳ１１０４３において、演算機能３５によりパターンデータが生成され、ステップＳ１１０４２において、生成されたパターンデータが、Ｉ／Ｏ機構３７を介して、アドレス制御器３６によるアドレスで示される対応するＤＵＴに入力される。
【００５６】
ステップＳ１１０５１において、テスト対象のＤＵＴはパターンデータに対して応答し、ステップＳ１１０５２において、Ｉ／Ｏ機構３７を介して出力する。Ｉ／Ｏ機構３７を介して出力された応答データは、ステップＳ１１０５３において、一旦、フェイルメモリ３４に記憶された後、ステップＳ１１０６において、フェイルログ情報として、ホスト計算機１に送信される。
【００５７】
ステップＳ１１０７において、ホスト計算機１はテスト対象ＤＵＴの機能の検証を行う。
ステップＳ１１０４１において、異なるＰＬＤを指定して、異なるテスト対象のＤＵＴに対して、同時かつ平行に複数のＤＵＴを検証することができる。
【００５８】
ホスト計算機１は、異なるＰＬＤの処理の状態をポーリング（監視）し、プログラムをＰＬＤにコンフィギュレーションする処理を最適に設定して、複数のＤＵＴに対する処理の高速化を図っている。
【実施例３】
【００５９】
図１２は、本発明の実施例３の仮想ＡＬＰＧ透過型の半導体テスト装置の概要図である。図１２の仮想ＡＬＰＧ透過型半導体テスト装置では、シミュレーション装置２において、複数の異なるＤＵＴモデル２２毎に、それぞれ、異なる仮想ＡＬＰＧ機能、例えば、メモリテスト、ＤＦＴ（Design For Test）テスト、機能テスト等を実現して、異なるＤＵＴモデル２２ｂ毎に、異なる仮想ＡＬＰＧ機能２１の設計検証を行うことができる。
【００６０】
設計検証が行われた異なる仮想ＡＬＰＧ機能２１（例えば、メモリテスト、ＤＦＴテスト、機能テスト等）は、実テスト装置３の異なるＰＬＤにマッピングされ、異なるテスト用のＡＬＰＧ機構（メモリテスト、ＤＦＴテスト、機能テスト等）が構築される。
【００６１】
実テスト装置３には、異なるタイプの複数のＤＵＴ（例えば、メモリ装置、ＬＳＩ装置、ＣＰＵを搭載したＬＳＩ装置など）が、テスト対象のＤＵＴ３２として搭載されている。実施例３の仮想ＡＬＰＧ透過型の半導体テスト装置では、異なるタイプの複数のＤＵＴ毎に、異なるＡＬＰＧ機構により各種のテストを実施することができる。
【００６２】
図１３は、本発明の実施例３の仮想ＡＬＰＧ機能を構築する手順を示すフローチャートである。図１３のステップＳ１３０１において、仮想ＡＬＰＧ機能を構築する手順が開始される。ステップＳ１３０１’において、構築するＡＬＰＧ機能のテスト内容を選択する。ステップＳ１３０２において、ＡＬＰＧ機能のテスト内容に対応したプログラム４がシミュレーション装置２にローディングされると、ステップＳ１３０３において、シミュレーション装置２内に仮想ＡＬＰＧ機能２１が構築される。また、ステップＳ１３０４において、シミュレーション装置２内には、テスト内容に対応したテスト対象のＤＵＴに対応したＤＵＴモデル（仮想ＤＵＴ）データが存在する。
【００６３】
ステップＳ１３０５において、次のＡＬＰＧ機能のテスト内容の有無が判定される。次のＡＬＰＧ機能のテスト内容が有る場合には、ステップＳ１３０１’に移行して、次の仮想ＡＬＰＧ機能の構築の手順を繰り返し、次のＡＬＰＧ機能のテスト内容が無い場合には、手順を終了する。
【００６４】
図１４は、本発明の実施例３の仮想ＡＬＰＧ機能を用いてＡＬＰＧ機能の設計検証を行う手順を示すフローチャートである。
【００６５】
図１４のステップＳ１４０１において、仮想ＡＬＰＧ機能を用いて、ＡＬＰＧの設計検証の手順が開始される。ステップＳ１４０１’において、ＡＬＰＧ機能のテスト内容を選択する。ステップＳ１４０２において、テストプログラム５がホスト計算機１にローディングされる。ステップＳ１４０３において、ホスト計算機１は、ローディングされたテストプログラム５を解析してプログラムコードをシミュレーション装置２内に送信する。
【００６６】
ステップＳ１４０４において、シミュレーション装置２の仮想ＡＬＰＧ機能３１は、プログラムコードを元に、ＤＵＴモデル２２（仮想ＤＵＴ）のテスト内容に対応したテストパターンを生成してＤＵＴモデル２２に入力する。
【００６７】
ステップＳ１４０５において、ＤＵＴモデル２２は入力されたテストパターンに対応した応答データを出力する。
【００６８】
ステップＳ１４０６において、シミュレーション装置２は、ＤＵＴモデル２２に入力したテストパターンとＤＵＴモデル２２からの応答データを比較し、誤りがあった場合には、フェイルログ情報をホスト計算機１に送信する。
【００６９】
ステップＳ１４０７において、ホスト計算機１は、シミュレーション装置２の仮想ＡＬＰＧ機能からのフェイルログ情報を分析して、ＡＬＰＧ機能の設計検証を行う。
【００７０】
ステップＳ１４０８において、次のＡＬＰＧ機能のテスト内容の有無が判定される。次のＡＬＰＧ機能のテスト内容が有る場合には、ステップＳ１４０１’に移行して、次の仮想ＡＬＰＧ機能の構築の手順を繰り返し、次のＡＬＰＧ機能のテスト内容が無い場合には、手順を終了する。
【００７１】
図１５は、本発明の実施例２の仮想ＡＬＰＧ機能を実テスト装置のハードウェアＡＬＰＧ機構にマッピングする手順を示すフローチャートである。
【００７２】
ステップＳ１５０１において、仮想ＡＬＰＧ機能のマッピング機能が開始される。マッピング機能を行うには、ステップＳ１５０２において、シミュレーション装置２の画面上に表示されるメニュー画面において、「ＡＬＰＧマッピング」のメニューを選択することにより行う。ステップＳ１５０３において、実テスト装置３にマッピングする仮想ＡＬＰＧ機能のテスト内容を選択する。また、ステップＳ１５０４において、マッピング先の実テスト装置３に搭載されているハードウェア（ＰＬＤ）を選択する。
【００７３】
そして、ステップＳ１５０５において、メニュー画面での「マッピングの実行」を選択実行し、選択された「仮想ＡＬＰＧ機能」のテスト内容のＨＤＬ言語の記述を、ハードウェア内の選択されたＦＰＧＡ内の論理回路の各スイッチの設定に反映させて、複数のハードウェアＡＬＰＧ機構３２を構築する。
【００７４】
図１６は、本発明の実施例２のハードウェアＡＬＰＧ機構が構築された実テスト装置を用いて、テスト対象のＤＵＴの検証を行う手順を示すフローチャートである。
【００７５】
図１６のステップＳ１６０１において、実テスト装置３を用いた実際のＤＵＴ３２のテストが開始されると、ステップＳ１６０２において、テストプログラム５がホスト計算機１にローディングされる。ステップＳ１６０３において、ホスト計算機１は、ローディングされたテストプログラム５を解析してプログラムコードを実テスト装置３に送信する。
【００７６】
ステップＳ１６０４１において、実テスト装置３内ＡＬＰＧ機構のテスト内容が指定される。異なるプログラムコードの送信に対しては、次の異なるテスト内容を指定して、異なるテスト内容に対応したＡＬＰＧ機構３１を構築して、同時かつ平行に異なるテスト内容により複数のＤＵＴを検証することができる。
【００７７】
ステップＳ１６０４２において、ホスト計算機１から送信されたプログラムコードは、実テスト装置３の指定されたテスト内容に対応したＡＬＰＧ機構３１のパターンメモリ３３に一旦記憶された後、ステップＳ１６０４３において、演算機能３５によりパターンデータが生成され、ステップＳ１６０４２において、生成されたパターンデータが、Ｉ／Ｏ機構３７を介して、アドレス制御器３６によるアドレスで示される対応するテスト対象のＤＵＴに入力される。
【００７８】
ステップＳ１６０５１において、テスト対象のＤＵＴはパターンデータに対して応答し、ステップＳ１６０５２において、Ｉ／Ｏ機構３７を介して出力する。Ｉ／Ｏ機構３７を介して出力された応答データは、ステップＳ１６０５３において、一旦、フェイルメモリ３４に記憶された後、ステップＳ１６０６において、フェイルログ情報として、ホスト計算機１に送信される。
【００７９】
ステップＳ１６０７において、ホスト計算機１はテスト対象ＤＵＴの機能の検証を行う。
ステップＳ１６０４１において、異なるテスト内容に対応したＡＬＰＧ機構を指定して、異なるテスト対象のＤＵＴに対して、同時かつ平行に、異なるテスト内容により、複数のＤＵＴを検証することができる。
【００８０】
ホスト計算機１は、異なるテスト内容に対応するＡＬＰＧ機構の処理の状態をポーリング（監視）し、プログラムをＡＬＰＧ機構にコンフィギュレーションする処理を最適に設定して、複数のＤＵＴに対する複数のテスト内容の処理の高速化を図っている。
【図面の簡単な説明】
【００８１】
【図１】図１は、本発明の実施例１の仮想ＡＬＰＧ透過型の半導体テスト装置の概要図である。
【図２】図２は、本発明の実施例１の仮想ＡＬＰＧ透過型の半導体テスト装置の具体的なハードウェア構成を示す図である。である。
【図３】図３は、本発明の実施例１の仮想ＡＬＰＧ機能を構築する手順を示すフローチャートである。
【図４】図４は、本発明の実施例１の仮想ＡＬＰＧ機能を用いてＡＬＰＧ機能の設計検証を行う手順を示すフローチャートである。
【図５】図５は、本発明の実施例１の仮想ＡＬＰＧ機能を実テスト装置のハードウェアＡＬＰＧ機構にマッピングする手順を示すフローチャートである。
【図６】図６は、本発明の実施例１のハードウェアＡＬＰＧ機構が構築された実テスト装置を用いて、テスト対象のＤＵＴの検証を行う手順を示すフローチャートである。
【図７】図７は、本発明の実施例２の仮想ＡＬＰＧ透過型の半導体テスト装置の概要図である。
【図８】図８は、本発明の実施例２の仮想ＡＬＰＧ機能を構築する手順を示すフローチャートである。
【図９】図９は、本発明の実施例２の仮想ＡＬＰＧ機能を用いてＡＬＰＧ機能の設計検証を行う手順を示すフローチャートである。
【図１０】図１０は、本発明の実施例２の仮想ＡＬＰＧ機能を実テスト装置のハードウェアＡＬＰＧ機構にマッピングする手順を示すフローチャートである。
【図１１】図１１は、本発明の実施例２のハードウェアＡＬＰＧ機構が構築された実テスト装置を用いて、テスト対象のＤＵＴの検証を行う手順を示すフローチャートである。
【図１２】図１２は、本発明の実施例３の仮想ＡＬＰＧ透過型の半導体テスト装置の概要図である。
【図１３】図１３は、本発明の実施例３の仮想ＡＬＰＧ機能を構築する手順を示すフローチャートである。
【図１４】図１４は、本発明の実施例３の仮想ＡＬＰＧ機能を用いてＡＬＰＧ機能の設計検証を行う手順を示すフローチャートである。
【図１５】図１５は、本発明の実施例３の仮想ＡＬＰＧ機能を実テスト装置のハードウェアＡＬＰＧ機構にマッピングする手順を示すフローチャートである。
【図１６】図１６は、本発明の実施例３のハードウェアＡＬＰＧ機構が構築された実テスト装置を用いて、テスト対象のＤＵＴの検証を行う手順を示すフローチャートである。
【図１７】図１７は、従来例のＡＬＰＧテスト回路をＦＰＧＡ内に構築するフローチャートである。
【図１８】図１８は、従来例のＡＬＰＧテスト回路をテストボード上に構築したテスト回路である。
【符号の説明】
【００８２】
１      ホスト計算機
２      シミュレーション装置
３      実テスタ装置
４      ＡＬＰＧ機能
５      テストプログラム
２１    仮想ＡＬＰＧ機能
２２    ＤＵＴモデル
３１    ハードウェアＡＬＰＧ機構
３２    ＤＵＴ
３３    パターンメモリ
３４    フェイルメモリ
３５    演算機能
３６    アドレス制御器
３７    マッピング機構
【図１】
2008276608.tif 000003
【図２】
2008276608.tif 000004
【図３】
2008276608.tif 000005
【図４】
2008276608.tif 000006
【図５】
2008276608.tif 000007
【図６】
2008276608.tif 000008
【図７】
2008276608.tif 000009
【図８】
2008276608.tif 000010
【図９】
2008276608.tif 000011
【図１０】
2008276608.tif 000012
【図１１】
2008276608.tif 000013
【図１２】
2008276608.tif 000014
【図１３】
2008276608.tif 000015
【図１４】
2008276608.tif 000016
【図１５】
2008276608.tif 000017
【図１６】
2008276608.tif 000018
【図１７】
2008276608.tif 000019
【図１８】
2008276608.tif 000020