(57)【要約】【課題】半導体装置が入力及び出力を兼用できるピンを有する場合に、テスタがテストの仕様を満たす動作を行うテストパターンのテストデータが生成できることを目的とする。【解決手段】信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタを動作させるテストデータを生成するデータ生成装置が、前記半導体装置の論理シミュレーション結果データを入力し、前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定し、前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得し、前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定し、前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成することにより上記課題を解決する。【選択図】図１
2016125984.tif 000002
【特許請求の範囲】
【請求項１】
信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタを動作させるテストデータを生成するデータ生成装置であって、
前記半導体装置の論理シミュレーション結果データを入力するシミュレーション結果入力部と、
前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定する周期決定部と、
前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得する条件取得部と、
前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定する位相決定部と、
前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成するテストデータ生成部と
を含むデータ生成装置。
【請求項２】
前記入出力条件は、前記入力信号及び前記出力信号に係るデータを設定しておくクロックのエッジまでの時間であるセットアップタイムと、前記入力信号及び前記出力信号に係るデータをクロックのエッジから保持している時間であるホールドタイムとを含む請求項１に記載のデータ生成装置。
【請求項３】
前記論理シミュレーション結果データを解析して前記入出力条件を生成する解析部をさらに有する請求項１又は２に記載のデータ生成装置。
【請求項４】
信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタを動作させるテストデータを生成するデータ生成装置が行うデータ生成方法であって、
前記データ生成装置が、前記半導体装置の論理シミュレーション結果データを入力するシミュレーション結果入力手順と、
前記データ生成装置が、前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定する周期決定手順と、
前記データ生成装置が、前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得する条件取得手順と、
前記データ生成装置が、前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定する位相決定手順と、
前記データ生成装置が、前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成するテストデータ生成手順と
を含むデータ生成方法。
【請求項５】
信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタと、前記テスタを動作させるテストデータを生成し、１以上の情報処理装置を有するデータ生成装置とを有するデータ生成システムであって、
前記半導体装置の論理シミュレーション結果データを入力するシミュレーション結果入力部と、
前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定する周期決定部と、
前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得する条件取得部と、
前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定する位相決定部と、
前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成するテストデータ生成部と
を含むデータ生成システム。
【請求項６】
信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタを動作させるテストデータを生成するデータ生成装置にデータ生成を実行させるためのプログラムであって、
前記データ生成装置が、前記半導体装置の論理シミュレーション結果データを入力するシミュレーション結果入力手順と、
前記データ生成装置が、前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定する周期決定手順と、
前記データ生成装置が、前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得する条件取得手順と、
前記データ生成装置が、前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定する位相決定手順と、
前記データ生成装置が、前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成するテストデータ生成手順と
を実行させるためのプログラム。
【請求項７】
信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタを動作させるテストデータを生成するデータ生成装置にデータ生成を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記データ生成装置が、前記半導体装置の論理シミュレーション結果データを入力するシミュレーション結果入力手順と、
前記データ生成装置が、前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定する周期決定手順と、
前記データ生成装置が、前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得する条件取得手順と、
前記データ生成装置が、前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定する位相決定手順と、
前記データ生成装置が、前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成するテストデータ生成手順と
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ生成装置、データ生成方法、データ生成システム、プログラム、及び記録媒体に関する。
【背景技術】
【０００２】
従来、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等の半導体装置の論理回路をテストする半導体試験装置が知られている。
【０００３】
半導体試験装置は、例えば、論理シミュレーションソフトウェア等によって生成されるパタンデータに基づいて動作する。この場合、パタンデータは、論理シミュレーションのシミュレーション結果等に基づいて生成される。例えば、テストの対象となる被試験デバイスが有する各ピン（ｐｉｎ）のタイミングセット及び波形モードを決定する中間データを用いてテストパタンプログラム等を生成する方法が知られている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、半導体装置は、信号を入力し、かつ、信号を出力するピン、つまり、入力及び出力を兼用できるピンを有する場合がある。この場合、入出力兼用のピンは、入力及び出力を切り替えるため、信号を入力させるタイミング及び信号を出力するタイミングがテスタの仕様等に制約される場合がある。そのため、従来の方法では、半導体装置が入力及び出力を兼用できるピンを有する場合に、テスタの仕様等によって、テスタがテストの仕様を満たさない動作を行うテストパターンのテストデータが生成されてしまう場合があった。
【０００５】
本発明の１つの側面は、半導体装置が入力及び出力を兼用できるピンを有する場合に、テスタがテストの仕様を満たす動作を行うテストパターンのテストデータが生成できることを目的とする。
【課題を解決するための手段】
【０００６】
一態様における、信号の入力及び出力を行うピンを少なくとも１つ有する半導体装置をテストするテスタを動作させるテストデータを生成するデータ生成装置は、前記半導体装置の論理シミュレーション結果データを入力するシミュレーション結果入力部と、前記論理シミュレーション結果データで示される周期に基づいて前記テスタを動作させる周期を決定する周期決定部と、前記テストで前記テスタから前記ピンに入力される入力信号及び前記ピンから前記テスタに出力される出力信号の入出力条件を取得する条件取得部と、前記周期に対応するサイクルの位相を前記入出力条件を満たす割合に基づいて決定する位相決定部と、前記論理シミュレーション結果データ、前記周期、及び前記位相に基づいて前記テストデータを生成するテストデータ生成部とを含むことを特徴とする。
【発明の効果】
【０００７】
半導体装置が入力及び出力を兼用できるピンを有する場合に、テスタがテストの仕様を満たす動作を行うテストパターンのテストデータが生成できる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係るデータ生成装置を使用した半導体装置のテストシステムの一例を示す全体構成図である。
【図２】本発明の一実施形態に係るデータ生成装置のハードウェア構成の一例を示すブロック図である。
【図３】本発明の一実施形態に係るテスタのハードウェア構成の一例を示すブロック図である。
【図４】本発明の一実施形態に係る入力及び出力を行うピンの一例を示す回路図である。
【図５】本発明の一実施形態に係るテストシステムにおける半導体装置とテスタの接続関係の一例を示す回路図である。
【図６】本発明の一実施形態に係るテストシステムにおける信号の流れの一例を示す回路図である。
【図７】本発明の一実施形態に係るデータ生成装置による全体処理の一例を示すフローチャートである。
【図８】本発明の一実施形態に係る入出力条件の一例を示すタイミングチャートである。
【図９】本発明の一実施形態に係る論理シミュレーション結果データの一例を示すタイミングチャートである。
【図１０】本発明の一実施形態に係る入力についてサイクルの位相の決定の一例を示すタイミングチャートである。
【図１１】本発明の一実施形態に係る出力についてサイクルの位相の決定の一例を示すタイミングチャートである。
【図１２】本発明の一実施形態に係るデータ生成装置の機能構成の一例を示す機能ブロック図である。
【図１３】本発明の一実施形態に係るテストデータの一例を示すタイミングチャートである。
【図１４】比較例のテストデータによるテスタの動作の一例を示すタイミングチャートである。
【図１５】比較例のテストデータの一例を示すタイミングチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について説明する。
【００１０】
（第１実施形態）
（全体構成例）
図１は、本発明の一実施形態に係るデータ生成装置を使用した半導体装置のテストシステムの一例を示す全体構成図である。
【００１１】
例えば、図１で図示するように、ＡＳＩＣ１２１がテストシステム１によってテストされる場合を例に以下説明する。また、ＡＳＩＣ１２１は、基板１２に実装されるとする。テストシステム１は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１０と、テスタ１１とを有する。なお、データ生成システムは、例えばテストシステム１である。以下、データ生成システムがテストシステム１である場合を例に説明する。また、テストシステム１では、データ生成装置は、例えばＰＣ１０である。以下、データ生成装置がＰＣ１０である場合を例に説明する。
【００１２】
ＰＣ１０は、テストデータＤ１を生成し、テスタ１１に送信する。次に、テスタ１１は、ＰＣ１０から送信されるテストデータＤ１に基づいて入力信号ＩＮ＿ＳＩＧをＡＳＩＣ１２１に入力する。同様に、テスタ１１は、ＰＣ１０から送信されるテストデータＤ１に基づいてＡＳＩＣ１２１が出力する出力信号ＯＵＴ＿ＳＩＧを受け取る。さらに、テスタ１１は、出力信号ＯＵＴ＿ＳＩＧに基づいてテスト結果データＤ２を生成し、ＰＣ１０に送信する。ユーザＵ１等は、ＰＣ１０によって表示されるテスト結果データＤ２を見て、ＡＳＩＣ１２１が仕様通りに動作しているか否か等を判断し、テストを行う。
【００１３】
（データ生成装置のハードウェア構成例）
図２は、本発明の一実施形態に係るデータ生成装置のハードウェア構成の一例を示すブロック図である。
【００１４】
ＰＣ１０は、ＣＰＵ１０Ｈ１と、記憶装置１０Ｈ２と、入出力Ｉ／Ｆ１０Ｈ３と、入力装置１０Ｈ４と、出力装置１０Ｈ５とを有する。
【００１５】
ＣＰＵ１０Ｈ１は、ＰＣ１０が行う各種処理を実現するための演算と各種データの加工とを行う演算装置及びＰＣ１０が有するハードウェアを制御する制御装置である。
【００１６】
記憶装置１０Ｈ２は、ＣＰＵ１０Ｈ１が用いるデータ、プログラム、及び設定値等を記憶する。また、記憶装置１０Ｈ２は、いわゆるメモリ（ｍｅｍｏｒｙ）等である。なお、記憶装置１０Ｈ２は、補助記憶装置等を有してもよい。
【００１７】
入出力Ｉ／Ｆ１０Ｈ３は、接続するテスタ１１等と各種データを入出力するインタフェースである。例えば、入出力Ｉ／Ｆ１０Ｈ３は、テストデータＤ１をテスタ１１に送信する。同様に、入出力Ｉ／Ｆ１０Ｈ３は、テスト結果データＤ２をテスタ１１から受信する。
【００１８】
入力装置１０Ｈ４は、ＰＣ１０にユーザＵ１の操作を入力する装置である。なお、入力装置１０Ｈ４は、例えばキーボード及びコネクタ等である。
【００１９】
出力装置１０Ｈ５は、ＰＣ１０からデータの内容等を出力する装置である。なお、出力装置１０Ｈ５は、例えばディスプレイ及びコネクタ等である。
【００２０】
また、データ生成装置のハードウェア構成は、図２に示す以外の装置をさらに有する構成でもよい。
【００２１】
（テスタのハードウェア構成例）
図３は、本発明の一実施形態に係るテスタのハードウェア構成の一例を示すブロック図である。
【００２２】
テスタ１１は、ＣＰＵ１１Ｈ１と、記憶装置１１Ｈ２と、入出力Ｉ／Ｆ１１Ｈ３と、ドライバ１１Ｈ４と、コンパレータ１１Ｈ５とを有する。
【００２３】
ＣＰＵ１１Ｈ１は、テスタ１１が行う各種処理を実現するための演算と各種データの加工とを行う演算装置及びテスタ１１が有するハードウェアを制御する制御装置である。
【００２４】
記憶装置１１Ｈ２は、ＣＰＵ１１Ｈ１が用いるデータ、プログラム、及び設定値等を記憶する。また、記憶装置１１Ｈ２は、いわゆるメモリ等である。なお、記憶装置１１Ｈ２は、補助記憶装置等を有してもよい。
【００２５】
入出力Ｉ／Ｆ１１Ｈ３は、接続するＰＣ１０等と各種データを入出力するインタフェースである。例えば、入出力Ｉ／Ｆ１１Ｈ３は、テストデータＤ１をＰＣ１０から受信する。同様に、入出力Ｉ／Ｆ１１Ｈ３は、テスト結果データＤ２をＰＣ１０に送信する。
【００２６】
ドライバ１１Ｈ４は、テストデータＤ１に基づいて、入力信号ＩＮ＿ＳＩＧをＡＳＩＣ１２１に入力する。
【００２７】
コンパレータ１１Ｈ５は、テストデータＤ１に基づいて、ＡＳＩＣ１２１が出力する出力信号ＯＵＴ＿ＳＩＧを受け取る。
【００２８】
（半導体装置のハードウェア構成例）
ＡＳＩＣ１２１は、図４に示す入力及び出力行うピンＰｉｎ１を有する。ピンＰｉｎ１は、いわゆる入出力兼用ピンである。
【００２９】
図４は、本発明の一実施形態に係る入力及び出力を行うピンの一例を示す回路図である。ピンＰｉｎ１が入力及び出力を行うため、ＡＳＩＣ１２１は、ピンＰｉｎ１を制御するＩ／Ｏセル（ｃｅｌｌ）２をピンごとに有する。
【００３０】
ピンＰｉｎ１に入力信号が入力されると、ＡＳＩＣ１２１は、ピンＰｉｎ１に入力される信号を入力信号ＳＩＧ１として処理する。また、ピンＰｉｎ１から出力信号を出力する場合、出力信号ＳＩＧ２が処理される。この場合、Ｉ／Ｏセル２では、ピンＰｉｎ１の入力及び出力は、アウトイネーブル（ｏｕｔ  ｅｎａｂｌｅ）信号ＳＩＧ３によって切り替えられる。
【００３１】
図５は、本発明の一実施形態に係るテストシステムにおける半導体装置とテスタの接続関係の一例を示す回路図である。
【００３２】
図１に示すテストシステム１では、ＡＳＩＣ１２１及びテスタ１１は、例えば図５に示すように接続される。具体的には、図５では、テスタ１１からＡＳＩＣ１２１に、クロック（ｃｌｏｃｋ）信号ＣＬＫが入力される。さらに、図５では、テスタ１１及びＡＳＩＣ１２１の間で、データ信号ＤＡＴＡが入出力される。さらにまた、データ信号ＤＡＴＡの入出力は、アウトイネーブル信号ＯＥによって切り替えられる。
【００３３】
アウトイネーブル信号ＯＥは、ＡＳＩＣ１２１の内部信号であるため、テスタ１１等の外部装置は、アウトイネーブル信号ＯＥを参照することができない。したがって、テスタ１１が有するドライバ１１Ｈ４及びコンパレータ１１Ｈ５は、参照することができない。そのため、データ信号ＤＡＴＡの入出力の切り替えは、予めテストデータＤ１（図１）としてタイミング等が入力される。
【００３４】
図６は、本発明の一実施形態に係るテストシステムにおける信号の流れの一例を示す回路図である。即ち、図６（Ａ）は、ドライバ１１Ｈ４によってデータ信号ＤＡＴＡがテスタ１１からＡＳＩＣ１２１に入力される場合を示す図である。また、図６（Ｂ）は、ＡＳＩＣ１２１からテスタ１１に出力されるデータ信号ＤＡＴＡをコンパレータ１１Ｈ５によって受け取る場合を示す図である。図６（Ａ）及び図６（Ｂ）で図示するようなデータ信号ＤＡＴＡの入出力の切り替えは、テストデータＤ１に基づいて行われる。
【００３５】
（全体処理例）
図７は、本発明の一実施形態に係るデータ生成装置による全体処理の一例を示すフローチャートである。
【００３６】
（抽出情報の取得例（ステップＳ００１））
ステップＳ００１では、ＰＣ１０は、抽出情報を取得する。抽出情報は、テストデータＤ１（図１）から波形変化又はディレイ変化のいずれか一方又は両方を抽出するように指定する情報等である。
【００３７】
（入出力条件の取得例（ステップＳ００２））
ステップＳ００２では、ＰＣ１０は、入出力条件を取得する。
【００３８】
図８は、本発明の一実施形態に係る入出力条件の一例を示すタイミングチャートである。図８は、「ＣＬＫ＿０」及び「ＣＬＫ＿１」の２系統のクロック信号がある場合の例である。また、図８では、各系統において、アウトイネーブル信号をそれぞれ「ｏｅ＿０」及び「ｏｅ＿１」とし、データ信号をそれぞれ「ＤＡＴＡ＿０」及び「ＤＡＴＡ＿１」とする。さらに、図６（Ａ）のように、テスタ１１からＡＳＩＣ１２１にデータ信号を入力させる場合、図８では、アウトイネーブル信号を「入力」とする。同様に、図６（Ｂ）のように、ＡＳＩＣ１２１からテスタ１１にデータ信号が出力される場合、図８では、アウトイネーブル信号を「出力」とする。また、図８では、各系統は、クロック信号の立ち上がりエッジ（ｅｄｇｅ）で動作する例である。以下、同様に記載する。
【００３９】
入出力条件は、例えば「入力」及び「出力」について、系統ごとにそれぞれ取得される。図８では、「ＣＬＫ＿０」に係る系統の「入力」についての入出力条件は、入出力条件ＩＮ＿０である。さらに、図８では、「ＣＬＫ＿０」に係る系統の「出力」についての入出力条件は、入出力条件ＯＵＴ＿０である。同様に、図８では、「ＣＬＫ＿１」に係る系統の「入力」についての入出力条件は、入出力条件ＩＮ＿１である。さらに、図８では、「ＣＬＫ＿１」に係る系統の「出力」についての入出力条件は、入出力条件ＯＵＴ＿１である。以下、入出力条件ＩＮ＿０を例に説明する。
【００４０】
立ち上がりエッジタイミングＴ＿ＣＬＫまでに「ｏｅ＿０」及び「ＤＡＴＡ＿０」のデータを設定しておく時間がセットアップタイムＳＴである。図８で図示するように、セットアップタイムＳＴは、「ｏｅ＿０」及び「ＤＡＴＡ＿０」のデータのセットが開始されるタイミングと立ち上がりエッジタイミングＴ＿ＣＬＫとの差で示される時間である。
【００４１】
立ち上がりエッジタイミングＴ＿ＣＬＫから「ｏｅ＿０」及び「ＤＡＴＡ＿０」のデータを保持しておく時間がホールドタイムＨＴである。図８で図示するように、ホールドタイムＨＴは、「ｏｅ＿０」及び「ＤＡＴＡ＿０」のデータの保持を終了するタイミングと立ち上がりエッジタイミングＴ＿ＣＬＫとの差で示される時間である。
【００４２】
セットアップタイムＳＴ及びホールドタイムＨＴは、例えばＡＳＩＣ１２１の回路仕様としてＰＣ１０に入力される。
【００４３】
なお、セットアップタイムＳＴ及びホールドタイムＨＴ等の入出力条件は、回路シミュレーション結果データ等を解析して入出力条件を取得するツール又はインタフェースライブラリ等によって取得されてもよい。ツール又はインタフェースライブラリを使用することによって、作業負荷を少なくすることができる。
【００４４】
（論理シミュレーション結果データに基づく周期等の決定例（ステップＳ００３））
図７に戻り、ステップＳ００３では、ＰＣ１０は、論理シミュレーション結果データを入力してタイミングをサンプリングし、テスタを動作させる周期等を決定する。なお、ステップＳ００３で決定される周期は、図８では、「ＣＬＫ＿０」及び「ＣＬＫ＿１」の周期である。
【００４５】
図９は、本発明の一実施形態に係る論理シミュレーション結果データの一例を示すタイミングチャートである。なお、図９は、図８と同様に、「ＣＬＫ＿０」及び「ＣＬＫ＿１」の２系統のクロック信号がある場合の例である。
【００４６】
図８に示す「ＣＬＫ＿０」及び「ＣＬＫ＿１」の周期は、図９に示す論理シミュレーション結果データの「ＣＬＫ＿０」及び「ＣＬＫ＿１」に基づいて決定される。具体的には、図９で図示するように、「ＣＬＫ＿０」及び「ＣＬＫ＿１」の周期は、エッジ間の周期ＲＡＴＥである。
【００４７】
（入力についてサイクルの位相の決定例（ステップＳ００４））
図７に戻り、ステップＳ００４では、ＰＣ１０は、入力についてサイクルの位相を決定する。
【００４８】
図１０は、本発明の一実施形態に係る入力についてサイクルの位相の決定の一例を示すタイミングチャートである。例えば、図１０で示すように、ＰＣ１０は、アウトイネーブル信号が「入力」となるデータを示す入力用比較データＤ＿ＩＮを生成する。
【００４９】
入出力条件が図８で示すように決まり、かつ、周期が図９で示すように決まる場合、ＰＣ１０は、入力用比較データＤ＿ＩＮを入出力条件及び周期に基づいて、図１０（Ａ）で図示するように決めることができる。具体的には、ＰＣ１０は、入出力条件及び周期によって、「ＣＬＫ＿０」の周期及び「ｏｅ＿０」が「入力」となるタイミング等を決めることができる。
【００５０】
次に、ＰＣ１０は、サイクルの位相がそれぞれ異なる複数のパターンデータを生成する。例えば、図示するように、ＰＣ１０は、「Ｎｏ．０１」乃至「Ｎｏ．０８」のパターンデータを生成する。図１０では、サイクルがウィンドウＣＹＣで示される。また、図１０では、ウィンドウＣＹＣの幅が周期ＲＡＴＥに対応する。
【００５１】
さらに、図１０（Ｂ）は、「Ｎｏ．０１」で図示する位相からパターンデータを生成した例である。つまり、「Ｎｏ．０２」の位相は、「Ｎｏ．１」のウィンドウＣＹＣをシフトさせた位置である。この場合、ウィンドウＣＹＣをシフトさせるシフト量は、テストデータで扱う数値の最小単位である。なお、「Ｎｏ．０１」の位相は、図示する位置に限られず、図１０（Ｂ）のいずれの位置であってもよい。
【００５２】
さらに、ＰＣ１０は、各パターンデータにおいて、入力信号に使用されるデータが入力条件を満たしている割合をそれぞれ計算する。具体的には、例えば「Ｎｏ．０１」のパターンデータでは、「ＤＡＴＡ＿０」は、図１０（Ｂ）で図示するように、データの途切れがないタイミングであるため、入力条件を満たしている割合ＣＲが「１００％」となる。これに対して、「ＤＡＴＡ＿１」は、図１０（Ｂ）で図示するように、データの途切れがあるため、入力条件を満たしている割合ＣＲが「６６％」となる。同様に、ＰＣ１０は、「Ｎｏ．０２」乃至「Ｎｏ．０８」のパターンデータについて入力条件を満たしている割合ＣＲをそれぞれ計算する。
【００５３】
次に、ＰＣ１０は、入力条件を満たしている割合ＣＲの値が高いパターンデータを選択する。具体的には、図１０では、入力条件を満たしている割合ＣＲが「１００％」となる「Ｎｏ．０２」、「Ｎｏ．０５」、「Ｎｏ．０６」、及び「Ｎｏ．０７」のパターンデータが選択される。
【００５４】
（出力についてサイクルの位相の決定例（ステップＳ００５））
図７に戻り、ステップＳ００５では、ＰＣ１０は、出力についてサイクルの位相を決定する。
【００５５】
図１１は、本発明の一実施形態に係る出力についてサイクルの位相の決定の一例を示すタイミングチャートである。例えば、図１０と同様に、ＰＣ１０は、図１１（Ａ）で図示するように、アウトイネーブル信号が「出力」となるデータを示す出力用比較データＤ＿ＯＵＴを生成する。
【００５６】
次に、ＰＣ１０は、ステップＳ００４で選択されるパターンデータについて、それぞれ出力条件を満たしている割合ＣＲを図１０と同様に計算する。即ち、図１１（Ｂ）では、ＰＣ１０は、「Ｎｏ．０２」、「Ｎｏ．０５」、「Ｎｏ．０６」、及び「Ｎｏ．０７」のパターンデータについて出力条件を満たしている割合ＣＲをそれぞれ計算する。これによって、図１１（Ｂ）では、「Ｎｏ．０５」及び「Ｎｏ．０６」の出力条件を満たしている割合ＣＲがそれぞれ「１００％」となる。
【００５７】
さらに、ステップＳ００５では、ＰＣ１０は、ステップＳ００４と同様に、出力条件を満たしている割合ＣＲの値が最も高い「Ｎｏ．０５」又は「Ｎｏ．０６」を選択する。以下、ＰＣ１０が「Ｎｏ．０５」を選択した場合を例に説明する。
【００５８】
「Ｎｏ．０５」の位相から、ＰＣ１０は、図１１（Ｃ）に図示するように、テストデータの先頭のタイミングＴ１と、論理シミュレーション結果データの先頭のタイミングＴ２とのオフセット時間Ｔ３を決定することができる。
【００５９】
なお、上述の説明では、入力条件を満たしている割合ＣＲ及び出力条件を満たしている割合ＣＲが「１００％」となる場合を例に説明したが、出力条件を満たしている割合ＣＲは、「１００％」でなくともよい。出力側は、少なくともデータが１回出力できるパターンであればよい。但し、出力条件を満たしている割合ＣＲは、値が高い方が好ましい。これに対して、入力条件を満たしている割合ＣＲは、値が「１００％」であることが好ましい。
【００６０】
（タイミングのグルーピング例（ステップＳ００６））
図７に戻り、ステップＳ００６では、ＰＣ１０は、テストデータに含まれる各パターンのうち、タイミングが同じ部分をグループ化する。
【００６１】
（論理シミュレーション結果データからパターンの抽出例（ステップＳ００７））
ステップＳ００７では、ＰＣ１０は、論理シミュレーション結果データから波形をサンプリングし、パターンを抽出する。
【００６２】
（波形編集指示があるか否かの判断例（ステップＳ００８））
ステップＳ００８では、ＰＣ１０は、ステップＳ００７で抽出されたパターンの波形を編集する指示があるか否かを判断する。次に、ステップＳ００８で波形を編集する指示があるとＰＣ１０が判断する場合（ステップＳ００８でＹＥＳ）、ＰＣ１０は、ステップＳ００９に進む。一方、ステップＳ００８で波形を編集する指示がないとＰＣ１０が判断する場合（ステップＳ００８でＮＯ）、ＰＣ１０は、ステップＳ０１０に進む。
【００６３】
（波形の編集例（ステップＳ００９））
ステップＳ００９では、ＰＣ１０は、ステップＳ００７で抽出されたパターンの波形をユーザの操作等に基づいて編集する。
【００６４】
（テストデータの生成例（ステップＳ０１０））
ステップＳ０１０では、ＰＣ１０は、ステップＳ００３で決定される周期及びステップＳ００５で決定される位相に基づいてテストデータを生成する。
【００６５】
なお、ＰＣ１０は、入力条件を満たしている割合ＣＲ及び出力条件を満たしている割合ＣＲの計算結果を出力してもよい。例えば、入力条件を満たしている割合ＣＲがいずれのパターンデータでも「１００％」とならない場合等では、ＰＣ１０は、論理シミュレーションと同様の動作をテスタに行わせることが不可能であるとユーザ等に表示することができる。
【００６６】
また、出力条件を満たしている割合ＣＲが小さい場合等では、テスタのコンパレータでの期待値の照合が難しくなる場合がある。したがって、ＰＣ１０は、ユーザに出力条件を満たしている割合ＣＲを表示することによって、繰り返し等によるユーザの作業負荷を減らすことができる。
【００６７】
（機能構成例）
図１２は、本発明の一実施形態に係るデータ生成装置の機能構成の一例を示す機能ブロック図である。
【００６８】
ＰＣ１０は、抽出情報取得部１０Ｆ１と、条件取得部１０Ｆ２と、抽出情報格納部１０Ｆ３と、抽出詳細情報出力部１０Ｆ４と、シミュレーション結果入力部１０Ｆ５と、タイミングサンプリング部１０Ｆ６と、周期決定部１０Ｆ７とを有する。さらに、ＰＣ１０は、位相決定部１０Ｆ８と、波形サンプリング部１０Ｆ９と、波形編集部１０Ｆ１０と、タイミンググルーピング部１０Ｆ１１と、テストデータ生成部１０Ｆ１２とを有する。
【００６９】
抽出情報取得部１０Ｆ１は、ステップＳ００１（図７）の処理を行う。また、抽出情報取得部１０Ｆ１は、入力装置１０Ｈ４（図２）等によって実現される。
【００７０】
条件取得部１０Ｆ２は、ステップＳ００２（図７）の処理を行う。また、条件取得部１０Ｆ２は、入力装置１０Ｈ４等によって実現される。なお、条件取得部１０Ｆ２は、解析部を有し、論理シミュレーション結果データを解析して入出力条件を生成してもよい。
【００７１】
抽出情報格納部１０Ｆ３は、取得する抽出情報等の各種情報及びデータを格納する。また、抽出情報格納部１０Ｆ３は、記憶装置１０Ｈ２（図２）等によって実現される。
【００７２】
抽出詳細情報出力部１０Ｆ４は、抽出情報格納部１０Ｆ３が記憶する情報を所定の形式でデータとして書き出し、ユーザ等に出力する。また、抽出詳細情報出力部１０Ｆ４は、出力装置１０Ｈ５（図２）等によって実現される。
【００７３】
シミュレーション結果入力部１０Ｆ５は、論理シミュレーション結果データを入力する。また、シミュレーション結果入力部１０Ｆ５は、入出力Ｉ／Ｆ１０Ｈ３（図２）及び入力装置１０Ｈ４等によって実現される。
【００７４】
タイミングサンプリング部１０Ｆ６は、ステップＳ００３（図７）の処理を行う。また、タイミングサンプリング部１０Ｆ６は、ＣＰＵ１０Ｈ１（図２）等によって実現される。
【００７５】
周期決定部１０Ｆ７は、ステップＳ００３の処理によって、周期を決定する。また、周期決定部１０Ｆ７は、ＣＰＵ１０Ｈ１等によって実現される。
【００７６】
位相決定部１０Ｆ８は、ステップＳ００４（図７）及びステップＳ００５（図７）の処理を行う。また、位相決定部１０Ｆ８は、ＣＰＵ１０Ｈ１等によって実現される。
【００７７】
波形サンプリング部１０Ｆ９は、ステップＳ００７（図７）の処理を行う。また、波形サンプリング部１０Ｆ９は、ＣＰＵ１０Ｈ１等によって実現される。
【００７８】
波形編集部１０Ｆ１０は、ステップＳ００９（図７）の処理を行う。また、波形編集部１０Ｆ１０は、ＣＰＵ１０Ｈ１等によって実現される。
【００７９】
タイミンググルーピング部１０Ｆ１１は、ステップＳ００６（図７）の処理を行う。また、タイミンググルーピング部１０Ｆ１１は、ＣＰＵ１０Ｈ１等によって実現される。
【００８０】
テストデータ生成部１０Ｆ１２は、ステップＳ０１０の処理を行う。また、テストデータ生成部１０Ｆ１２は、ＣＰＵ１０Ｈ１等によって実現される。
【００８１】
周期決定部１０Ｆ７が決定する周期及び位相決定部１０Ｆ８が決定する位相に基づいて、テストデータ生成部１０Ｆ１２は、テストデータを生成することができる。
【００８２】
図１３は、本発明の一実施形態に係るテストデータの一例を示すタイミングチャートである。なお、図１３では、「Ｄｒｉｖｅｒ／Ｃｏｍｐａｒａｔｏｒ」を「Ｄ／Ｃ」と記載する。また、図１３では、「Ｄｒｉｖｅｒ」は、「Ｄｒｉｖｅｒ（入力）」を示し、「Ｃｏｍｐａｒａｔｏｒ」は、「Ｃｏｍｐａｒａｔｏｒ（出力）」を示す。
【００８３】
ＰＣ１０は、周期決定部１０Ｆ７によって、論理シミュレーション結果データから周期ＲＡＴＥを決定できる。さらに、ＰＣ１０は、位相決定部１０Ｆ８が決定する位相からオフセット時間Ｔ３を決定することができる。そのため、ＰＣ１０は、オフセット時間Ｔ３からデータを追加して、周期ＲＡＴＥで、テストデータＤ１を生成することができる。また、ＰＣ１０は、シミュレーション結果入力部１０Ｆ５によって入力される論理シミュレーション結果データＤ＿ＳＩＭから各サイクルで使用するデータ及び波形を抽出することができる。
【００８４】
次に、ＰＣ１０は、生成したテストデータＤ１をテスタに送信する。テストデータＤ１が送信されると、テスタは、テストデータＤ１に基づいて動作し、テスタの動作は、動作結果ＴＧ１のようになる。これに対して、テストを動作させたいパターン、つまり、テスト仕様は、タイミング仕様ＴＧ２で示される。
【００８５】
動作結果ＴＧ１及びタイミング仕様ＴＧ２を比較すると、テスタがタイミング仕様ＴＧ２で示される入力及び出力を行えることがわかる。したがって、周期決定部１０Ｆ７が決定する周期及び位相決定部１０Ｆ８が決定する位相に基づいて、ＰＣ１０は、テスタがテストの仕様を満たす動作を行うテストパターンのテストデータを生成できる。
【００８６】
なお、ＰＣ１０は、論理シミュレーション結果データＤ＿ＳＩＭ、テストデータＤ１、及びタイミング仕様ＴＧ２を示すデータを出力してもよい。テストデータＤ１の生成を担当するユーザと、テスタを使用して半導体装置のテストを担当するユーザとは、同一でない場合がある。この場合、担当者間では、各ユーザは、作業を引き継ぐための書類等を作成する場合が多い。したがって、ＰＣ１０が各種データを出力することで、引き継ぎの書類の作成作業の負荷を少なくできる。
【００８７】
また、ＰＣ１０は、２つ以上の情報処理装置であってもよい。例えばＰＣ１０は、上述した処理の一部又は全部を分散、並列、又は冗長に処理するために、ネットワークを介して処理の一部又は全部を別の情報処理装置に行わせる構成でもよい。さらに、上述した処理の一部又は全部は、テスタが行ってもよい。
【００８８】
なお、記録媒体に本実施の形態に係る各種処理を実行するためのプログラムが記録され、この記録媒体に記録されるプログラムは、光学ドライブ装置等の入力装置等を介して情報処理装置にインストールされる。また、インストールされるプログラムは、情報処理装置により実行可能となる。なお、記録媒体は、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等のコンピュータが読み取り可能な記録媒体である。コンピュータが読取可能な記録媒体は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等の可搬型記録媒体、及びフラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）等の半導体メモリ等である。
【００８９】
（比較例）
図１４は、比較例のテストデータによるテスタの動作の一例を示すタイミングチャートである。なお、図１４では、図１３と同様に「Ｄｒｉｖｅｒ／Ｃｏｍｐａｒａｔｏｒ」を「Ｄ／Ｃ」と記載する。また、図１４では、図１３と同様に、「Ｄｒｉｖｅｒ」は、「Ｄｒｉｖｅｒ（入力）」を示し、「Ｃｏｍｐａｒａｔｏｒ」は、「Ｃｏｍｐａｒａｔｏｒ（出力）」を示す。
【００９０】
図１４（Ａ）で示すように、テスタの仕様等によっては、論理シミュレーション結果データＤ＿ＳＩＭのタイミングに対して、第１比較テストデータＤ１Ａは、入出力切り替えのタイミングが後ろにずれる場合の例である。この場合、テスタは、第１比較テストデータＤ１Ａに基づいて第１比較動作結果ＴＧ１Ａのように動作する。
【００９１】
図１５は、比較例のテストデータの一例を示すタイミングチャートである。図１５（Ａ）で図示するように、アウトイネーブル信号による切り替えは、テストの仕様によって、タイミング差ＤＩＦが発生する場合がある。また、ドライバとコンパレータとを切り替えるタイミングは、図１５（Ｂ）で図示するように、テスタの仕様等によって、切替タイミングＳＷ等に制約される場合がある。例えば、切替タイミングＳＷは、テスタが有する入出力切り替えコントロールのリソース数等によって決定される。
【００９２】
このような場合では、図１４（Ａ）で図示するように、データがテストの仕様通りにテスタに入力されない又はテスタからデータがテストの仕様通りに出力されない時間ＴＤが発生してしまう場合がある。
【００９３】
同様に、図１４（Ｂ）で示すように、テスタの仕様等によっては、論理シミュレーション結果データＤ＿ＳＩＭのタイミングに対して、第２比較テストデータＤ１Ｂは、入出力切り替えのタイミングが前にずれる場合の例である。この場合、テスタは、第２比較テストデータＤ１Ｂに基づいて第２比較動作結果ＴＧ１Ｂのように動作する。
【００９４】
このような場合でも、図１４（Ａ）と同様に、データがテストの仕様通りにテスタに入力されない又はテスタからデータがテストの仕様通りに出力されない時間ＴＤが発生してしまう場合がある。
【００９５】
本発明に係る一実施形態は、例えば、図４等に示す信号の入力及び出力を行うピンを少なくとも１つ有するＡＳＩＣ（図１）をテストするテスタを動作させるテストデータ（図１）を生成するＰＣであって、図１３等に示すＡＳＩＣの論理シミュレーション結果データを入力する入出力Ｉ／Ｆ（図２）及び入力装置（図２）と、論理シミュレーション結果データで示される周期ＲＡＴＥ（図１３）に基づいてテスタを動作させる周期を決定するＣＰＵ（図２）と、テストでテスタからピンに入力される入力信号及びピンからテスタに出力される出力信号の入出力条件を取得するＣＰＵと、図１０等で示すように周期に対応するサイクルの位相を入出力条件を満たす割合に基づいて決定するＣＰＵと、図１３等で示すように論理シミュレーション結果データ、周期、及び位相に基づいてテストデータを生成するＣＰＵとを含むＰＣである。
【００９６】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
【符号の説明】
【００９７】
１  テストシステム
１０  ＰＣ
１１  テスタ
１２  基板
１２１  ＡＳＩＣ
Ｐｉｎ１  ピン
Ｄ１  テストデータ
Ｄ２  テスト結果データ
ＩＮ＿ＳＩＧ  入力信号
ＯＵＴ＿ＳＩＧ  出力信号
２  Ｉ／Ｏセル
【先行技術文献】
【特許文献】
【００９８】
【特許文献１】特開２００６−３０１６９号公報
【図１】
2016125984.tif 000003
【図２】
2016125984.tif 000004
【図３】
2016125984.tif 000005
【図４】
2016125984.tif 000006
【図５】
2016125984.tif 000007
【図６】
2016125984.tif 000008
【図７】
2016125984.tif 000009
【図８】
2016125984.tif 000010
【図９】
2016125984.tif 000011
【図１０】
2016125984.tif 000012
【図１１】
2016125984.tif 000013
【図１２】
2016125984.tif 000014
【図１３】
2016125984.tif 000015
【図１４】
2016125984.tif 000016
【図１５】
2016125984.tif 000017