(57)【要約】【課題】演算処理に応じてＤＳＰモジュールを逐次的に実行させるのか、並列的に実行させるかを最適に選択し、演算時間の短縮化を図ることを目的とする。【解決手段】複数のＣＰＵを備えるＤＳＰモジュール４と演算処理が記述されたテストプログラムに従ってＤＳＰモジュール４の制御を行うテスタコントローラ３とを備える半導体試験装置であって、テスタコントローラ３に備えられ、テストプログラムに記述されている演算処理に基づいて、ＤＳＰモジュール４に演算処理を逐次的に実行させるシングルモードと並列的に実行させるマルチモードとのうち何れか一方の動作モードを選択する動作モード選択部１５と、ＤＳＰモジュール４に備えられ、動作モード選択部１５の選択に基づいて１つのＣＰＵを逐次的に動作させるか２つ以上のＣＰＵを並列的に動作させるかの選択を行うＣＰＵ制御部２４と、を備えている。【選択図】  図１
2010216979.tif 000002
【特許請求の範囲】
【請求項１】
被試験デバイスの測定データに対して演算処理を行うための複数のＣＰＵを備えるＤＳＰモジュールと前記演算処理が記述されたテストプログラムに従って前記ＤＳＰモジュールの制御を行うテスタコントローラとを備える半導体試験装置であって、
前記テスタコントローラに備えられ、前記テストプログラムに記述されている前記演算処理に基づいて前記ＤＳＰモジュールに前記演算処理を逐次的に実行させるシングルモードと並列的に実行させるマルチモードとのうち何れか一方の動作モードを選択する動作モード選択部と、
前記ＤＳＰモジュールに備えられ、前記動作モード選択部の選択に基づいて前記複数のＣＰＵのうち１つのＣＰＵを逐次的に動作させるか２つ以上のＣＰＵを並列的に動作させるかの選択を行うＣＰＵ制御部と、
を備えたことを特徴とする半導体試験装置。
【請求項２】
前記ＤＳＰモジュールは、前記演算処理の演算時間を計測する演算時間計測部を備え、
前記動作モード選択部は、前記演算時間計測部により計測された前記シングルモードの演算時間と前記マルチモードの演算時間とのうち少ない方の演算時間の動作モードを選択すること
を特徴とする請求項１記載の半導体試験装置。
【請求項３】
前記動作モード選択部は、前記テストプログラムに記述された演算処理の演算量に基づいて前記シングルモードの演算時間と前記マルチモードの演算時間と前記マルチモードを選択した場合における前記演算処理のスケジューリング時間とを予測し、
前記マルチモードの演算時間と前記スケジューリング時間との合計が前記シングルモードの演算時間よりも長いときにはシングルモードを選択し、それ以外の場合はマルチモードを選択すること
を特徴とする請求項１記載の半導体試験装置。
【請求項４】
前記テストプログラムは複数の前記演算処理を有して構成され、前記動作モード選択部は各演算処理のそれぞれについて何れの動作モードを選択させるかを決定すること
を特徴とする請求項１乃至３の何れか１項に記載の半導体試験装置。
【請求項５】
被試験デバイスの測定データに対して演算処理を行うための複数のＣＰＵを備えるＤＳＰモジュールと前記演算処理が記述されたテストプログラムに従って前記ＤＳＰモジュールの制御を行うテスタコントローラとを用いて前記被試験デバイスの試験を行う半導体試験方法であって、
前記複数のＣＰＵのうち１つのＣＰＵを用いて逐次的に実行を行うシングルモードにより前記演算処理を行ったときの演算時間を計測する第１の計測ステップと、
前記複数のＣＰＵのうち２つ以上のＣＰＵを用いて並列的に実行を行うマルチモードにより前記演算処理を行ったときの演算時間を計測する第２の計測ステップと、
前記第１の計測ステップと前記第２の計測ステップとで計測された演算時間に基づいて、少ないほうの演算時間の動作モードを選択する選択ステップと、
この選択ステップで選択された動作モードにより前記ＤＳＰモジュールを動作させて前記演算処理を行う演算処理ステップと、
を有することを特徴とする半導体試験方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は被試験デバイスの試験を行う半導体試験装置および半導体試験方法に関し、特に被試験デバイスの測定データに対して所定の演算処理を行うＤＳＰモジュールとこのＤＳＰモジュールの制御を行うテスタコントローラとを備える半導体試験装置および半導体試験方法に関するものである。
【背景技術】
【０００２】
ＩＣやＬＳＩ、メモリ等の被試験デバイス（以下、ＤＵＴ：Device Under Test）の試験を行う半導体試験装置が従来から知られている。この種の半導体試験装置は、ＤＵＴに接続される測定モジュールとこの測定モジュールの制御を行うテスタコントローラとを備えており、テスタコントローラからの命令に基づいて測定モジュールがＤＵＴの試験を行う。測定モジュールにはＤＵＴから取り込んだ測定データに対して所定の演算処理を行うためのＤＳＰ（Digital Signal Processor）モジュールが接続されており、例えば最大値や最小値、平均値等の計算、ヒストグラムの作成等が行われる。
【０００３】
テスタコントローラにはテストプログラムが記憶されており、このテストプログラムに基づいて測定モジュール或いはＤＳＰモジュールの動作制御がなされる。この動作制御を行っている技術が例えば特許文献１に開示されている。この技術では、ＤＵＴのテスト結果に応じて演算処理手段をＰＣとＤＳＰとのうち何れか一方を選択することにより、演算時間の最適化を図っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−８４１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術は演算時間を自動的に最適化しており、ユーザによる設定作業を省略できる点で極めて高い効果を奏するものである。ここで、近年のＤＳＰモジュールには複数のＣＰＵが備えられるようになっており、並列的に演算処理を行うことが可能になってきている。並列的に演算処理を行うことで、演算時間が大幅に短縮されるようになる点で有利である。特に、近年のＤＵＴは高性能化・高集積化の傾向が著しく、ＤＳＰモジュールの演算量も膨大なものになっており、並列的に演算処理を行うことにより演算時間の短縮化を図るようにしている。
【０００６】
一方で、テストプログラムは多数の演算処理を有しており、非常に演算量が少ない演算処理もあり、このような場合には並列的に動作させるよりは、却って１つのＣＰＵにより逐次的に演算処理を行う方が演算時間を短縮化できる場合がある。従って、画一的に並列演算を行わせると、逆に全体としての処理時間が長くなるという問題がある。勿論、画一的に逐次処理を行わせるような場合には、演算量が膨大な場合には著しく処理時間が長くなる。そして、複数のＣＰＵを動作させることから、消費電力も大きくなる等といった問題が生じる。
【０００７】
そこで、本発明は、演算処理に応じてＤＳＰモジュールを逐次的に動作させるのか、並列的に動作させるかを選択し、演算時間の短縮化を図ることを目的とする。
【課題を解決するための手段】
【０００８】
以上の課題を解決するため、本発明の請求項１の半導体試験装置は、被試験デバイスの測定データに対して演算処理を行うための複数のＣＰＵを備えるＤＳＰモジュールと前記演算処理が記述されたテストプログラムに従って前記ＤＳＰモジュールの制御を行うテスタコントローラとを備える半導体試験装置であって、前記テスタコントローラに備えられ、前記テストプログラムに記述されている前記演算処理に基づいて前記ＤＳＰモジュールに前記演算処理を逐次的に実行させるシングルモードと並列的に実行させるマルチモードとのうち何れか一方の動作モードを選択する動作モード選択部と、前記ＤＳＰモジュールに備えられ、前記動作モード選択部の選択に基づいて前記複数のＣＰＵのうち１つのＣＰＵを逐次的に動作させるか２つ以上のＣＰＵを並列的に動作させるかの選択を行うＣＰＵ制御部と、を備えたことを特徴とする。
【０００９】
この半導体試験装置によれば、動作モード選択部は演算処理に基づいてシングルモードとマルチモードとの何れにするかを最適に選択しており、ＣＰＵ制御部は選択された動作モードで演算処理を行っていることから、演算処理に応じて最適な動作モードで動作させることができ、画一的にマルチモードに固定するよりも演算時間の短縮化を図れるようになる。
【００１０】
本発明の請求項２の半導体試験装置は、請求項１記載の半導体試験装置において、前記ＤＳＰモジュールは、前記演算処理の演算時間を計測する演算時間計測部を備え、前記動作モード選択部は、前記演算時間計測部により計測された前記シングルモードの演算時間と前記マルチモードの演算時間とのうち少ない方の演算時間の動作モードを選択することを特徴とする。
【００１１】
この半導体試験装置によれば、シングルモードとマルチモードとのそれぞれで演算時間を実測し、動作モード選択部は実測した演算時間に基づいて動作モードを選択している。演算時間を実測することにより、シングルモードとマルチモードとの何れが最適であるかを容易に認識できるようになり、これに基づいて動作モードを選択することで、演算時間の短縮化を図れるようになる。
【００１２】
本発明の請求項３の半導体試験装置は、請求項１記載の半導体試験装置において、前記動作モード選択部は、前記テストプログラムに記述された演算処理の演算量に基づいて前記シングルモードの演算時間と前記マルチモードの演算時間と前記マルチモードを選択した場合における前記演算処理のスケジューリング時間とを予測し、前記マルチモードの演算時間と前記スケジューリング時間との合計が前記シングルモードの演算時間よりも長いときにはシングルモードを選択し、それ以外の場合はマルチモードを選択することを特徴とする。
【００１３】
この半導体試験装置によれば、予測した演算時間やスケジューリング時間に基づいて動作モードを選択している。テストプログラムに記述されている演算処理から演算量を認識でき、これに基づいて演算時間やスケジューリング時間は簡単に予測できる。そして、予測されたこれらの時間に基づいて最適な動作モードを選択することができるようになる。なお、スケジューリング時間とは、並列的に動作する各ＣＰＵに対して演算処理を振り分けるために要する時間のことをいう。
【００１４】
本発明の請求項４の半導体試験装置は、請求項１乃至３の何れか１項に記載の半導体試験装置において、前記テストプログラムは複数の前記演算処理を有して構成され、前記動作モード選択部は各演算処理のそれぞれについて何れの動作モードを選択させるかを決定することを特徴とする。
【００１５】
この半導体試験装置によれば、複数の演算処理のそれぞれについてシングルモードとマルチモードとを最適に選択できるようになる。近年の被試験デバイスは演算処理が多項目化しており、その演算内容も演算処理によって大きく異なる。このため、演算処理によってはシングルモードが有利な場合とマルチモードが有利な場合とがあり、それぞれの演算処理の応じて最適な方を選択することにより、全体として大幅な時間短縮効果を得ることができるようになる。
【００１６】
本発明の請求項５の半導体試験方法は、被試験デバイスの測定データに対して演算処理を行うための複数のＣＰＵを備えるＤＳＰモジュールと前記演算処理が記述されたテストプログラムに従って前記ＤＳＰモジュールの制御を行うテスタコントローラとを用いて前記被試験デバイスの試験を行う半導体試験方法であって、前記複数のＣＰＵのうち１つのＣＰＵを用いて逐次的に実行を行うシングルモードにより前記演算処理を行ったときの演算時間を計測する第１の計測ステップと、前記複数のＣＰＵのうち２つ以上のＣＰＵを用いて並列的に実行を行うマルチモードにより前記演算処理を行ったときの演算時間を計測する第２の計測ステップと、前記第１の計測ステップと前記第２の計測ステップとで計測された演算時間に基づいて、少ないほうの演算時間の動作モードを選択する選択ステップと、この選択ステップで選択された動作モードにより前記ＤＳＰモジュールを動作させて前記演算処理を行う演算処理ステップと、を有することを特徴とする。
【発明の効果】
【００１７】
本発明は、ＤＳＰモジュールに複数のＣＰＵを備えているような場合に、演算処理に基づいてシングルモードかマルチモードかを選択しているため、最適な動作モードでＤＳＰモジュールを動作させることができ、画一的にマルチモード或いはシングルモードで動作させる場合と比較して演算時間の短縮化を図ることができるようになる。また、画一的にマルチモードで動作させている場合と比較して、消費電力も低下する。
【図面の簡単な説明】
【００１８】
【図１】本発明の半導体試験装置の概略構成を説明する図である。
【図２】本発明の処理の流れを説明するフローチャートである。
【図３】テストプログラムおよび動作モード選択部を説明するための図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態について図面を参照して説明する。図１において、本発明の半導体試験装置は、ＤＵＴ１と測定モジュール２とテスタコントローラ３とＤＳＰモジュール４とを備えて概略構成している。ＤＵＴ１は被試験デバイスであり、ＩＣやＬＳＩ、メモリ等の任意の半導体装置を適用できる。測定モジュール２はＤＵＴ２のテストを行うためのテスト部であり、ＡＤＣ５とキャプチャメモリ６とローカルメモリ７とを備えて概略構成している。ＡＤＣ５はＡＤ変換器であり、ＤＵＴ２から出力される測定データをアナログデータからデジタルデータに変換を行う。キャプチャメモリ６はＡＤＣ５により変換された測定データを記憶するメモリである。ローカルメモリ７はＤＳＰモジュール４による演算処理の結果を一時的に記憶するメモリである。
【００２０】
テスタコントローラ３はプログラム記憶部１１とＲＡＭ１２とＣＰＵ１３と命令送信部１４と動作モード選択部１５とを備えて概略構成している。プログラム記憶部１１はＤＵＴ２のテストを行うためのテストプログラムを記憶する記憶部である。図２（ａ）に示すように、テストプログラムにはｎ個の演算処理（ＤＳＰ（Ｃ−１）〜ＤＳＰ（Ｃ−ｎ））が記述されている。各演算処理はそれぞれ演算内容が異なり、演算量が多い演算処理もあれば少ない演算処理もある。どのような演算を行うかについては具体的にテストプログラムに記述されている。なお、テストプログラムにはＤＳＰの演算処理だけではなく、測定モジュール２によるＤＵＴ１のテスト手順等も記述されている。
【００２１】
ＲＡＭ１２はテストプログラムを読み込むメモリであり、ＣＰＵ１３はＲＡＭ１２に読み込まれたテストプログラムをＤＳＰモジュール４が実行可能なデータ形式（例えば、中間言語等）に変換を行う。このテストプログラムの変換を行ったデータを命令データとする。ＣＰＵ１３はテストプログラムに記述されているｎ個の演算処理を先頭から順番に或いは任意の順番で演算処理ごとに読み出して命令データを生成して命令送信部１４に出力している。そして、命令送信部１４は外部バスＢ２およびローカルバスＢ１を介してＤＳＰモジュール４に対して演算処理ごとに命令データの送信を行う。
【００２２】
動作モード選択部１５は、後述するＤＳＰモジュール４の動作モードをシングルモードとマルチモードとの何れかの動作モードに選択する選択部であり、ｎ個の演算処理ごとに何れかの動作モードを選択している。なお、シングルモードとはＤＳＰモジュール４を逐次的に動作させて演算処理を行わせる動作モードであり、マルチモードとはＤＳＰモジュール４を並列的に動作させて演算処理を行わせる動作モードである。詳細は後述する。動作モード選択部１５は、シングルモードで演算処理を行った場合の演算時間（シングルモード演算時間）とマルチモードで演算を行った場合の演算時間（マルチモード演算時間）と何れの動作モードを選択するかの情報（動作モード選択情報）とをテーブル形式で記憶している。図２（ｂ）は動作モード選択部１５が記憶するテーブルの一例を示しており、図中で「Ｓｉｎｇｌｅ」がシングルモード動作時間を、「Ｍｕｌｔｉ」がマルチモード動作時間を、動作モード選択情報を「ＳＥＬ」で示している。
【００２３】
前述したように、ＣＰＵ１３は演算処理ごとに命令データを生成しているが、命令データを生成する際に動作モード選択部１５に記憶されている動作モード選択情報を参照して、演算処理ごとに動作モード選択情報を命令データに付加している。命令データは複数ビットの信号から構成されるものであり、この命令データに動作モード選択情報として１ビットを付加するようにしてもよい。例えば、動作モード選択情報が「０」であればシングルモードを示し、「１」であればマルチモードを示すようにすれば、１ビットの情報付加により命令データに動作モード選択情報を持たせることができるようになる。
【００２４】
ＤＳＰモジュール４について説明する。ＤＳＰモジュール４はＤＵＴ２の測定データに対して所定の演算処理を施すための演算処理手段であり、ＣＰＵ（Ａ）２１とＣＰＵ（Ｂ）２２と命令受信部２３とＣＰＵ制御部２４と演算時間計測部２５とを備えて概略構成している。ＤＳＰモジュール４はキャプチャメモリ６とローカルバスＢ１を介して接続されており、キャプチャメモリ６に記憶されている測定データを読み込んで演算処理を行う。この演算処理としては、例えば最大値や最小値、平均値等の計算、ヒストグラムの作成等がある。そして、演算処理が行われたデータは、ローカルバスＢ１を介してローカルメモリ７に対して出力されて一時的に記憶される。
【００２５】
ＤＳＰモジュール４には２つのＣＰＵが備えられており、両者のうち何れか１つのＣＰＵのみで動作させることも可能であり、２つのＣＰＵを同時に動作させることも可能である。１つのＣＰＵのみを動作させて逐次的に演算処理を行う動作モードが前述したシングルモードであり、２つのＣＰＵを同時に動作させて並列的に演算処理を行う動作モードが前述したマルチモードである。なお、ＤＳＰモジュール４に備えられるＣＰＵの数は３つ以上であってもよい。マルチモードの場合は、３つ以上のＣＰＵを全て並列的に動作させてもよいし、そのうち一部のＣＰＵのみを動作させてもよい（ただし、２つ以上のＣＰＵを動作させる）。
【００２６】
命令受信部２３はテスタコントローラ３の命令送信部１４から送信された命令データを受信して、ＣＰＵ制御部２４に出力する。ＣＰＵ制御部２４は命令データに付加されている動作モード選択情報に基づいてシングルモードとマルチモードとのうち何れの動作モードで実行させるかを決定する。シングルモードの場合には、ＣＰＵ（Ａ）２１とＣＰＵ（Ｂ）２２とのうち何れか一方のＣＰＵに対してのみ命令データを出力する（ここでは、ＣＰＵ（Ａ）２１に出力しているものとする）。ＣＰＵ（Ａ）２１は入力した命令データを実行するが、この命令データは演算処理をデータ変換したものであるあるため、演算処理が行われる。そして、ここでは、シングルモードであるため、ＣＰＵ（Ａ）２１は逐次的に演算処理を行う。
【００２７】
一方、マルチモードで動作させる場合には、ＣＰＵ制御部２４はＣＰＵ（Ａ）２１とＣＰＵ（Ｂ）２２との両者に対して命令データを出力する。このときには、入力した命令データをできる限り均等に２つのＣＰＵに対して割り振るようになし、ＣＰＵ（Ａ）１１とＣＰＵ（Ｂ）１２とは割り振られた命令データをそれぞれ並列的に実行する。
【００２８】
演算時間計測部２５は演算時間を計測するためのタイマであり、ＣＰＵ制御部２４の制御により時間の計測を行う。なお、図１において、テスタコントローラ３に対して１枚の測定モジュール２が接続されているが、複数枚の測定モジュール２が接続されるものであってもよい。また、測定モジュール２のローカルバスＢ１にＤＳＰモジュール４が１つ接続されているが、複数のＤＳＰモジュール４を接続するようにしてもよい。また、１枚の測定モジュール２にＤＵＴ１が１つ接続されているものを例示しているが、１枚の測定モジュール２に複数のＤＵＴ１を接続するようにしてもよいし、複数枚の測定モジュール２に１つのＤＵＴ１を接続するようにしてもよい。
【００２９】
以上の構成における動作について図３のフローチャートを参照して説明する。最初にテスタコントローラ３はＤＳＰモジュール４に対して全ての演算処理をシングルモードで動作させるように制御を行う。まず、ＣＰＵ１２はテストプログラムの演算処理ＤＳＰ（Ｃ−１）の命令データを生成する際にシングルモードを示す動作モード選択情報を付加する。
【００３０】
命令送信部１４は命令データを、外部バスＢ２およびローカルバスＢ１を経由して命令受信部２３に対して送信する。命令受信部２３は受信した命令データに付加された動作モード選択情報を参照して、シングルモードであることを認識する。このため、ＣＰＵ制御部２４はＣＰＵ（Ａ）２１に命令データを出力し、ＣＰＵ（Ａ）２１は命令データを実行することにより演算処理が行われる（ステップＳ１）。このときには、ＣＰＵ（Ａ）２１のみによる逐次的な演算処理になる。
【００３１】
ＣＰＵ制御部２４はＣＰＵ（Ａ）２１に命令データを出力するときに、演算時間計測部２５に対して時間の計測を行うように制御する（ステップＳ２）。ＣＰＵ制御部２４はＣＰＵ（Ａ）２１の演算処理が終了したときに演算時間計測部２５の計測動作を停止させ、演算処理に要した演算時間を取得する。ＤＳＰモジュール４は演算処理終了後にローカルメモリ７に演算結果を書き込むと共にテスタコントローラ３に演算処理が終了した旨の通知（終了通知）を送信する。この終了通知と共に演算時間をテスタコントローラ３に送信する。このときの演算時間はシングルモードで動作させた場合の演算時間であり、これをシングルモード演算時間とする。テスタコントローラ３の動作モード選択部１５はシングルモード演算時間を入力して、図２（ｂ）に示すように、ＤＳＰ（Ｃ−１）のシングルモード演算時間「Ｓｉｎｇｌｅ」としてＴＳ−１を書き込む。
【００３２】
以上によりＤＳＰ（Ｃ−１）の演算処理については処理が終了したが、全て（ｎ個）の演算処理が終了するまで同様の処理を繰り返す（ステップＳ３）。従って、次にＤＳＰ（Ｃ−２）の演算処理を行う。この場合も同様にシングルモードで動作を行い、演算時間計測部２５により計測されたシングルモード演算時間を動作モード選択部１５のテーブルにＴＳ−２として書き込みを行う。以下、ＤＳＰ（Ｃ−ｎ）まで演算処理を行い、動作モード選択部１５のテーブルにシングルモード演算時間ＴＳ−１〜ＴＳ−ｎの書き込みが完了する。
【００３３】
次に、マルチモードで演算処理を行う（ステップＳ４）。演算処理ＤＳＰ（Ｃ−１）について、マルチモードで動作させる動作モード選択情報を付加した命令データがＤＳＰモジュール４に送信され、ＣＰＵ制御部２４はマルチモードで動作することを認識する。ＣＰＵ制御部２４はＣＰＵ（Ａ）２１とＣＰＵ（Ｂ）２２とに命令データを振り分け、ＣＰＵ（Ａ）２１とＣＰＵ（Ｂ）２２とを実行することによりそれぞれ演算処理を行っていく。このとき、演算時間計測部２５はマルチモードで動作させた場合の演算時間をマルチモード演算時間として計測する（ステップＳ５）。
【００３４】
演算処理が終了した後に、演算結果をローカルメモリ７に書き込むと共に、テスタコントローラ３にマルチモード演算時間を送信し、演算処理ＤＳＰ（Ｃ−１）のマルチモード演算時間ＴＭ−１として動作モード選択部１５のテーブルに書き込みを行う。以下、全ての演算処理が終了するまで演算処理を行い（ステップＳ６）、ＤＳＰ（Ｃ−ｎ）までの演算時間の計測が終了したときに、動作モード選択部１５のテーブルにマルチモード演算時間ＴＭ−１〜ＴＭ−ｎの書き込みが完了する。
【００３５】
従って、最初の１回目と２回目とはそれぞれ画一的にシングルモードのみとマルチモードのみとで動作させているが、３回目以降は最適な動作モードを選択して演算処理を行っていく。このため、シングルモード演算時間ＴＳ−１〜ＴＳ−ｎおよびマルチモード演算時間ＴＭ−１〜ＴＭ−ｎが書き込まれたときに、演算処理ごとにシングルモード演算時間とマルチモード演算時間とを対比して、短い演算時間の動作モードを最適な動作モードとして選択を行う（ステップＳ７）。そして、動作モード選択部１５のテーブルの「ＳＥＬ」に動作モード選択情報を書き込む。
【００３６】
例えば、図２（ｂ）の例では、ＴＳ−１＞ＴＭ−１であるためマルチモードを示す「Ｍ」がＤＳＰ（Ｃ−１）の「ＳＥＬ」に書き込まれ、ＴＳ−２＞ＴＭ−２であるためマルチモードを示す「Ｍ」がＤＳＰ（Ｃ−２）の「ＳＥＬ」に書き込まれる。そして、ＴＳ−３＜ＴＭ−３であるためシングルモードを示す「Ｓ」がＤＳＰ（Ｃ−３）の「ＳＥＬ」に書き込まれ、ＴＳ−ｎ＞ＴＭ−ｎであるためマルチモードを示す「Ｍ」がＤＳＰ（Ｃ−ｎ）の「ＳＥＬ」に書き込まれる。これにより、演算処理ごとに最適な動作モードとして「Ｓ」または「Ｍ」の何れかが書き込まれることになる。
【００３７】
次に、最適な動作モードを選択しながら演算処理を行っていく。ＣＰＵ１３は命令データを生成する際には動作モード選択部１５の動作モード選択情報を付加してＤＳＰモジュール４に対して送信を行っていくため、最初のＤＳＰ（Ｃ−１）に関しては「Ｍ」の動作モード選択情報を付加した命令データが送信される。ＤＳＰモジュール４のＣＰＵ制御部２４は動作モード選択情報がマルチモードであるため、ＣＰＵ（Ａ）２１とＣＰＵ（Ｂ）２２とを並列的に動作させて演算処理を行う（ステップＳ８）。
【００３８】
次の演算処理ＤＳＰ（Ｃ−２）も動作モード選択情報が「Ｍ」であるため、ＤＳＰモジュール４はマルチモードで動作するが、演算処理ＤＳＰ（Ｃ−３）は動作モード選択情報が「Ｓ」になっているため、ＤＳＰモジュール４はシングルモードで動作する。そして、以上の処理を全ての演算処理が終了するまで繰り返し行う（ステップＳ９）。以上によりテストプログラムに記述されている各演算処理が終了する。
【００３９】
従って、テストプログラムに記述されている全て（ｎ個）の演算処理についてシングルモードとマルチモードとの両方での演算時間を実測して、実測したシングルモード演算時間とマルチモード演算時間との比較を行うことにより動作モードを選択するようにしているため、演算処理に応じた最適な動作モードが選択されるようになる。なお、１回目と２回目とはシングルモードのみとマルチモードのみとで動作しているため、これらの演算処理は最適とはいえない。ただし、ＤＵＴ２に対する試験は数千〜数万回といったオーダーで繰り返し行われ、そのうちの１回目と２回目との動作モードが最適でないにしても、数千〜数万回のうちの２回であり、３回目以降からは最適になるため、演算時間の短縮化に殆ど影響はない。
【００４０】
以上の実施形態では、テスタコントローラ３に備えられる動作モード選択部１５にはシングルモードとマルチモードとの何れで動作させるのが最適であるかを示す動作モード選択情報が演算処理ごとに記憶されており、ＤＳＰモジュール４のＣＰＵ制御部２４は動作モード選択情報に基づいてシングルモードとマルチモードとを最適に切り替えて演算処理を行っているため、極めて高い時間短縮効果を得ることができるようになる。
【００４１】
次に、演算時間の実測を行わずに動作モードの選択を行う変形例について説明する。マルチモードは並列的に演算を行っているため、シングルモードに比較して最大値や最小値の算出等の演算自体は有利である。ただし、マルチモードでは複数のＣＰＵに対して命令データを振り分ける処理（スケジューリングとする）が必要になるため、マルチモードよりもシングルモードの方が有利な場合がある。
【００４２】
ＣＰＵ制御部２４がスケジューリングを行う際には、ＣＰＵ（Ａ）１１とＣＰＵ（Ｂ）１２とにできる限り均等に命令データを振り分けて高い時間短縮効果を得るようにしている。また、例えば、演算処理を行った結果を別の演算処理が使用するような依存関係がある場合には、これらの演算処理を別個のＣＰＵに振り分けると一方のＣＰＵが待機状態になり、演算時間が遅くなる。このため、依存関係がある場合には、できる限り１つのＣＰＵで演算処理を実行するようにしなければならない。このように、単純に命令データのスケジューリングがなされるのではなく、スケジューリング自体も複雑な処理になるため、このために所定時間（スケジューリング時間とする）を要することになる。
【００４３】
このとき、テストプログラム中の複数の演算処理の中には演算量が大量なものもあれば、殆ど演算量を有しないものもある。演算量が少ないような場合には、スケジューリングに要する時間は短くなるものの、それでも一定のスケジューリング時間は要する。一方で、シングルモードの場合にはスケジューリングは行う必要はない。そこで、演算処理の演算量が少ないような場合にはシングルモードを選択し、演算量が多いような場合にはマルチモードを選択する。
【００４４】
演算量が少ない場合には、マルチモードにして並列的に演算処理を行っても殆ど時間短縮効果を得ることはできず、スケジューリング時間のために却って処理時間が長くなる。一方で、シングルモードであればスケジューリング時間を要しないため、マルチモードを選択するよりも時間短縮効果を見込める。
【００４５】
具体的には、テストプログラムに記述された演算処理から演算量を認識して、シングルモードを選択したときの予測される演算時間をＴ１とし、マルチモードを選択したときの予測される演算時間をＴ２とし、スケジューリング時間をＴ３としたときに、「Ｔ１＜Ｔ２＋Ｔ３」ならばシングルモードを選択するようにし、「Ｔ１＞Ｔ２＋Ｔ３」ならマルチモードを選択する。
【００４６】
つまり、マルチモードには演算時間Ｔ２とスケジューリング時間Ｔ３との両者を要するため、その合計時間とシングルモードの演算時間Ｔ１とを比較して何れの動作モードを選択するかを予め決定しておく。時間Ｔ１もＴ２も予測時間であるため、実測したシングルモード演算時間およびマルチモード演算時間とは若干のずれはあるかもしれないが、演算処理の演算量は既知であるため高精度に予測することは可能であり、またスケジューリング時間も高精度に予測することは可能である。
【００４７】
このため、例えばテスタコントローラ３のＣＰＵ１３がテストプログラムを読み込んだときに、時間Ｔ１〜Ｔ３を算出して何れの動作モードを選択するかを決定し、動作モード選択部１５のテーブルに記憶させるようにしてもよい。このようにすれば、前述した実施形態のように、シングルモードとマルチモードとの演算時間を実測しなくても最適な動作モードを選択できるようになる。
【００４８】
つまり、前述した実施形態のように演算時間を実測するにしても、また本変形例のように演算時間を予測するにしても、動作モード選択部１５は演算処理に基づいて（実測した演算時間や予測した演算時間に基づいて）最適な動作モードを選択している。そして、選択された動作モードでＤＳＰモジュール４のＣＰＵ制御部２４がシングルモードかマルチモードかの制御を行うことで、最適な動作モードでＤＳＰモジュール４は演算処理を行うことができるようになる。
【００４９】
以上において、テストプログラムには演算処理の数（ｎ）が複数含まれるものとして説明したが、演算処理の数（ｎ）は１つであってもよい。１つの場合であっても、実際に１回目と２回目とでシングルモードとマルチモードとの動作モードを選択して、３回目以降は最適な動作モードで演算処理を行うことで、試験時間の短縮効果を得ることができる。
【符号の説明】
【００５０】
１    ＤＵＴ                ２    測定モジュール
３    テスタコントローラ        ４    ＤＳＰモジュール
１１    プログラム記憶部        １５    動作モード選択部
２１    ＣＰＵ（Ａ）            ２２    ＣＰＵ（Ｂ）
２４    ＣＰＵ制御部            ２５    演算時間計測部
【図１】
2010216979.tif 000003
【図２】
2010216979.tif 000004
【図３】
2010216979.tif 000005