(57)【要約】【課題】利便性が高く試験結果の解析を短時間で行うことができる解析支援システム及びプログラムを提供する。【解決手段】解析支援システム１は、半導体集積回路の試験を行う半導体試験装置で用いられるテストパターンを基にして生成されるテストベンチＦ２と半導体集積回路の設計データＦ１とを用いて半導体集積回路の試験についてのシミュレーションを行う論理シミュレータ２０を備えており、解析支援部２１は論理シミュレータ２０におけるミュレーションによって得られるフェイル情報と、テストパターンを用いて半導体試験装置で半導体集積回路の試験を行って得られる実機フェイル情報との対応付けを行い、これらのフェイル情報に関する解析支援処理を行う。【選択図】図１
2009098057.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路の試験を行う半導体試験装置で用いられるテストパターンを基にして生成されるテストベンチと半導体集積回路の設計データとを用いて半導体集積回路の試験についてのシミュレーションを行う論理シミュレータを備える解析支援システムにおいて、
前記論理シミュレータにおけるシミュレーションによって得られる第１試験結果と、前記テストパターンを用いて前記半導体試験装置で前記半導体集積回路の試験を行って得られる第２試験結果との対応付けを行い、当該第１，第２試験結果に関する解析支援処理を行う解析支援部を備えることを特徴とする解析支援システム。
【請求項２】
前記解析支援部は、対応付けが行われた前記第１，第２試験結果を用いて所定の演算を行う演算部と、
前記演算部の演算結果に基づいて前記論理シミュレータを制御し、所定の演算結果が得られた時点における前記半導体集積回路の内部ノードに関する情報を取得する情報取得部と
を備えることを特徴とする請求項１記載の解析支援システム。
【請求項３】
半導体集積回路の試験を行う半導体試験装置で用いられるテストパターンを基にして生成されるテストベンチと半導体集積回路の設計データとを用いて半導体集積回路の試験についてのシミュレーションを行う論理シミュレータを備える解析支援システムで用いられる解析支援プログラムであって、
前記論理シミュレータにおけるシミュレーションによって得られる第１試験結果と、前記テストパターンを用いて前記半導体試験装置で前記半導体集積回路の試験を行って得られる第２試験結果との対応付けを行い、当該第１，第２試験結果に関する解析支援処理を行う解析支援機能をコンピュータに実現させることを特徴とする解析支援プログラム。
【請求項４】
前記解析支援機能は、対応付けが行われた前記第１，第２試験結果を用いて所定の演算を行う演算機能と、
前記演算部の演算結果に基づいて前記論理シミュレータを制御し、所定の演算結果が得られた時点における前記半導体集積回路の内部ノードに関する情報を取得する情報取得機能と
を含むことを特徴とする請求項３記載の解析支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の試験又はそのシミュレーションによって得られる試験結果の解析を支援する解析支援システム及びプログラムに関する。
【背景技術】
【０００２】
半導体試験装置は、被試験対象の半導体集積回路に対して試験パターンを印加し、半導体集積回路から出力される信号と予め定められた期待値パターンとを比較してパス／フェイルを判定することにより半導体集積回路の試験を行う。上記の試験パターン及び期待パターンは、ユーザによって予め作成されたテストパターンの内容に従って生成され、パス／フェイルを判定するタイミングもテストパターンの内容に従って規定される。また、以上の半導体試験装置を用いた半導体集積回路の試験以外に、ユーザによって作成されたテストパターンの内容や半導体集積回路の設計内容の妥当性を確認するために、論理シミュレータを用いた半導体集積回路の試験についてのシミュレーションが行われる。
【０００３】
図３は、半導体集積回路の試験及びシミュレーションを行う手順を説明するための図である。半導体試験装置を用いた試験を行う場合には、まず半導体集積回路をＤＵＴ（Device Under Test）１１０として半導体試験装置１００にセットする。次に、ユーザによって予め作成されたテストパターンが格納されたテストパターンファイルＦ１００を半導体試験装置１００に読み込ませて試験パターンを生成させ、この試験パターンをＤＵＴ１１０に印加することによりＤＵＴ１１０の試験を行う。そして、ＤＵＴ１１０の試験により得られたパス／フェイルの判定結果を示すフェイル情報（以下、実機フェイル情報という）を収集した実機フェイル情報ファイルＦ１０１を生成する。ＤＵＴ１１０の不良原因の究明は、実機フェイル情報ファイルＦ１０１の内容を解析することで行われる。
【０００４】
半導体集積回路の試験についてのシミュレーションを行う場合には、まずテストパターンファイルＦ１００を波形生成ルーツ１０１に読み込ませて半導体試験装置１００で生成される試験パターン及び期待値パターン等の波形と同様の波形を示す波形データを生成する。次に、波形データファイルＦ１０２をテストベンチジェネレータ１０２に読み込ませて論理シミュレータ１０３で半導体集積回路の試験についてのシミュレーションを行う上で必要なテストベンチが格納されたテストベンチファイルＦ１０３を生成する。そして、半導体集積回路の設計データが格納されたＤＵＴ設計データファイルＦ１０４とテストベンチファイルＦ１０３とを論理シミュレータ１０３に読み込ませてシミュレーションを行う。このシミュレーションにより得られたフェイル情報を解析することで、テストパターンの内容や半導体集積回路の設計内容の妥当性を確認することができる。
【０００５】
尚、従来のテスト支援システムの詳細については、例えば以下の特許文献１を参照されたい。
【特許文献１】特開２００３−１５６５３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、近年においては、高速化、低消費電力化、低コスト化等のために半導体集積回路の微細化が進んでいるが、微細化が進むにつれて半導体試験装置を用いた試験結果と論理シミュレータのシミュレーション結果とが一致しないという現象が増大している。従来は、半導体試験装置の試験結果と論理シミュレータのシミュレーション結果とはほぼ一致していたため、例えばユーザが半導体試験装置の試験結果と論理シミュレータのシミュレーション結果との不一致の部分だけを手作業により取り出して突き合わせることによりその原因究明を解析することはできたが、不一致部分が増大すると解析に要する時間が飛躍的に増大してしてしまうという問題がある。
【０００７】
また、従来は、半導体試験装置の試験により得られた実機フェイル情報の解析と論理シミュレータのシミュレーションにより得られたフェイル情報の解析とは、基本的に個別に行われていた。このため、例えば半導体試験装置の試験結果と論理シミュレータのシミュレーション結果との不一致が生じた時刻における半導体集積回路の内部ノードの波形表示や状態表示を表示するといったことができず、ユーザにとって極めて不便であるという問題があった。
【０００８】
本発明は上記事情に鑑みてなされたものであり、利便性が高く試験結果の解析を短時間で行うことができる解析支援システム及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の解析支援システムは、半導体集積回路の試験を行う半導体試験装置で用いられるテストパターンを基にして生成されるテストベンチ（Ｆ２）と半導体集積回路の設計データ（Ｆ１）とを用いて半導体集積回路の試験についてのシミュレーションを行う論理シミュレータ（２０）を備える解析支援システム（１）において、前記論理シミュレータにおけるシミュレーションによって得られる第１試験結果と、前記テストパターンを用いて前記半導体試験装置で前記半導体集積回路の試験を行って得られる第２試験結果との対応付けを行い、当該第１，第２試験結果に関する解析支援処理を行う解析支援部（２１）を備えることを特徴としている。
この発明によると、論理シミュレータにおけるシミュレーションによって得られる第１試験結果と、テストパターンを用いて半導体試験装置で半導体集積回路の試験を行って得られる第２試験結果との対応付けが行われた上で、第１，第２試験結果に関する解析支援処理が解析支援部で行われる。
また、本発明の解析支援システムは、前記解析支援部が、対応付けが行われた前記第１，第２試験結果を用いて所定の演算を行う演算部（２３）と、前記演算部の演算結果に基づいて前記論理シミュレータを制御し、所定の演算結果が得られた時点における前記半導体集積回路の内部ノードに関する情報を取得する情報取得部（２４）とを備えることを特徴としている。
本発明の解析支援プログラムは、半導体集積回路の試験を行う半導体試験装置で用いられるテストパターンを基にして生成されるテストベンチ（Ｆ２）と半導体集積回路の設計データ（Ｆ１）とを用いて半導体集積回路の試験についてのシミュレーションを行う論理シミュレータ（２０）を備える解析支援システム（１）で用いられる解析支援プログラムであって、前記論理シミュレータにおけるシミュレーションによって得られる第１試験結果と、前記テストパターンを用いて前記半導体試験装置で前記半導体集積回路の試験を行って得られる第２試験結果との対応付けを行い、当該第１，第２試験結果に関する解析支援処理を行う解析支援機能（２１）をコンピュータに実現させることを特徴としている。
また、本発明の解析支援プログラムは、前記解析支援機能が、対応付けが行われた前記第１，第２試験結果を用いて所定の演算を行う演算機能（２３）と、前記演算部の演算結果に基づいて前記論理シミュレータを制御し、所定の演算結果が得られた時点における前記半導体集積回路の内部ノードに関する情報を取得する情報取得機能（２４）とを含むことを特徴としている。
【発明の効果】
【００１０】
本発明によれば、論理シミュレータにおけるシミュレーションによって得られる第１試験結果と、テストパターンを用いて半導体試験装置で半導体集積回路の試験を行って得られる第２試験結果との対応付けを行った上で、第１，第２試験結果に関する解析支援処理を行っているため、第１試験結果と第２試験結果との不一致部分を短時間で見つけだすことができ、解析に要する時間を短縮することができるという効果がある。
また、演算部における第１，第２試験結果の演算結果に基づいて論理シミュレータを制御し、所定の演算結果が得られた時点における半導体集積回路の内部ノードに関する情報を取得しているため、第１試験結果と第２試験結果との不一致が生じた時刻における半導体集積回路の内部ノードの波形表示や状態表示を表示することができる。これにより、半導体集積回路の内部ノードの状態等に応じたフェイル原因の究明が可能となり、ユーザの利便性を向上させることができるという効果がある。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の一実施形態による解析支援システム及びプログラムについて詳細に説明する。図１は、本発明の一実施形態による解析支援システムの要部構成を示すブロック図である。図１に示す通り、本実施形態の解析支援システム１は、解析支援装置１１、操作部１２、表示部１３、及び入出力部１４を備えており、ＤＵＴ設計データファイルＦ１及びテストベンチファイルＦ２を読み込んで半導体集積回路の試験についてのシミュレーションを行うとともに、シミュレーションにより得られるフェイル情報（試験結果：第１試験結果）の解析支援を行う。
【００１２】
ここで、ＤＵＴ設計データファイルＦ１は、被試験対象の半導体集積回路の設計データが格納されたファイルである。また、テストベンチファイルＦ２は、ＤＵＴ設計データファイルＦ１に格納されたＤＵＴ設計データを用いて半導体集積回路の試験についてのシミュレーションを行う上で必要なテストベンチが格納されたファイルである。テストベンチは、ＨＤＬ（Hardware Discription Language：ハードウエア記述言語）で記述されており、時間軸に対する遷移情報として、テスト番号、パターンアドレス、タイミングセット番号、入力パターン、出力期待値、出力ストローブタイミング等を含んでいる。
【００１３】
尚、テストベンチファイルＦ２は、図３を用いて説明した手順と同様の手順によって生成される。つまり、まずユーザによって予め作成されたテストパターンが格納されたテストパターンファイルを波形生成ルーツ１０１に読み込ませて半導体試験装置で生成される試験パターン及び期待値パターン等の波形と同様の波形を示す波形データを生成し、次いでこの波形データファイルをテストベンチジェネレータ１０２に読み込ませることによって生成される。
【００１４】
解析支援装置１１は、ＤＵＴ設計データファイルＦ１とテストベンチファイルＦ２とを読み込んでＤＵＴ設計データファイルＦ１に格納されたＤＵＴ設計データで規定される半導体集積回路の試験についてのシミュレーションを行う論理シミュレータ２０を備える。この論理シミュレータ２０は、シミュレーションにより得られるフェイル情報（試験結果）の解析支援を行う解析支援部２１を備えている。
【００１５】
解析支援部２１は、論理シミュレータ２０におけるシミュレーションによって得られるフェイル情報と、テストパターンを用いて半導体試験装置で実際の半導体集積回路の試験を行って得られるフェイル情報（実機フェイル情報：第２試験結果）との対応付けを行い、これらのフェイル情報に関する解析支援処理（以下で説明する演算部２３やブレークポイント設定部２４で行われる処理）を行う。
【００１６】
ここで、実機フェイル情報は半導体試験装置で実際に行われた試験のテスト番号とフェイルアドレスとが含まれており、論理シミュレータ２０におけるシミュレーションによって得られるフェイル情報にはフェイルアドレスが含まれている。このため、解析支援部２１は、実機フェイル情報に含まれるフェイルアドレスと、論理シミュレータ２０で得られるフェイル情報に含まれるフェイルアドレスとを対応させることにより両フェイル情報の対応付けを行う。
【００１７】
また、図１に示す通り、解析支援部２１は、メモリ２２、演算部２３、及びブレークポイント設定部２４（情報取得部）を備えている。メモリ２２は、半導体試験装置で得られる実機フェイル情報、論理シミュレータ２０で得られるフェイル情報、及び演算部２３の演算結果等を記憶する。演算部２３は、実機フェイル情報と論理シミュレータ２０で得られるフェイル情報とを用いた所定の演算を行う。尚、本実施形態においては、フェイルアドレスが同一である実機フェイル情報と論理シミュレータ２０で得られるフェイル情報との排他的論理和（ＥＸＯＲ）を演算するとする。排他的論理和を演算することで、実機フェイル情報と論理シミュレータ２０で得られるフェイル情報との不一致部分を示す情報（フラグ情報）が求められる。
【００１８】
ブレークポイント設定部２４は、演算部２３の演算結果（フラグ情報）又はユーザの設定に応じて、論理シミュレータで行われるシミュレーションを中断する時間位置（ブレークポイント）を設定し、その設定内容に応じて論理シミュレータの動作を制御する。また、ブレークポイント設定部２４は、シミュレーションを中断した時点における半導体集積回路の内部ノードに関する情報を論理シミュレータ２０から取得する。ここで、内部ノードに関する情報とは、例えば内部ノードの状態（「Ｈ（ハイ）」レベル又は「Ｌ（ロー）」レベル）を示す情報や、内部ノードにおける波形を示す情報である。
【００１９】
解析支援装置１１は、ＣＰＵ（中央処理装置）、ＲＡＭ（Random Access Memory）等の記憶装置、ハードディスク等の外部記憶装置を備えるパーソナルコンピュータやワークステーションによって実現され、ＣＰＵが所定のシミュレーションプログラムを実行することにより、図１に示す論理シミュレータ２０が実現される。また、解析支援部２１の機能を実現するＨＤＬで記述されたプログラムも用意されており、論理シミュレータ２０上でこのプログラムが実行されることにより、図１に示す解析支援部２１の機能が実現される。
【００２０】
解析支援部２１の機能を実現するプログラムは、ネットワークを介してダウンロードすることにより、コンピュータにインストールすることができる。或いは、解析支援部２１の機能を実現するプログラムは、例えばＣＤ−ＲＯＭ又はＤＶＤ（登録商標）−ＲＯＭ等のコンピュータ読み取り可能な記録媒体に記憶されていてもよい。この記録媒体に記録されたプログラムをＣＤ−ＲＯＭドライブ又はＤＶＤ（登録商標）−ＲＯＭドライブ等のドライブ装置を用いて読み取れば、コンピュータにインストールすることができる。
【００２１】
操作部１２は、ユーザの指示を解析支援装置１１に入力するものであり、例えばキーボードやマウスを用いることができる。表示部１３は、論理シミュレータ２０のシミュレーション結果、ブレークポイント設定部２４によって取得された半導体集積回路の内部ノードに関する情報、その他の解析支援装置１１から出力される各種情報を表示するものであり、例えばＣＲＴ（Cathode Ray Tube）や液晶表示装置等の表示装置を用いることができる。
【００２２】
入出力部１４は、例えばネットワークを介して半導体試験装置（図１においては図示省略）及び図３に示すテストベンチジェネレータ１０２と接続されており、実機フェイル情報やテストベンチＦ２を解析支援装置１１に入力するとともに、論理シミュレータ２０で得られたシミュレーション結果等を外部に出力する。尚、入出力部１４には、ＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体に記録された情報を読み取る読み取り装置（図示省略）が接続されていても良い。
【００２３】
次に、以上説明した構成の解析支援システム１の動作について説明する。図２は、シミュレーションにより得られるフェイル情報を解析するまでの一連の手順の一例を示すフローチャートである。まず、予めユーザによって作成されたテストパターンからテストベンチＦ２を生成する処理が行われる（ステップＳ１１）。具体的には、ユーザが、予め作成したテストパターンが格納されたテストパターンファイルを図３に示す波形生成ルーツ１０１に読み込ませて半導体試験装置で生成される試験パターン及び期待値パターン等の波形と同様の波形を示す波形データを生成する。次いで、この波形データが格納された波形データファイルをテストベンチジェネレータ１０２に読み込ませて変換する。これにより、ＨＤＬにより記述されたテストベンチＦ２が生成される。
【００２４】
テストベンチＦ２の作成が完了すると、ユーザは、解析支援システム１の操作部１２を操作して、作成したテストベンチＦ２を入出力部１４を介して解析支援システム１に読み込ませるとともに、ＤＵＴ設計データＦ１も入出力部１４を介して読み込ませる（ステップＳ１２）。また、ユーザは、解析支援システム１の操作部１２を操作して、テストパターンを用いて半導体試験装置で実際の半導体集積回路の試験を行って得られた実機フェイル情報を、入出力部１４を介して解析支援システム１に読み込ませる（ステップＳ１３）。読み込まれた実機フェイル情報は、解析支援部２１のメモリ２２に記憶される。
【００２５】
次に、ユーザは、解析支援システム１の操作部１２を操作して、ステップＳ１２で読み込んだＤＵＴ設計データＦ１及びテストベンチＦ２を用いて論理シミュレータ２０にシミュレーションを実行させる（ステップＳ１４）。シミュレーションが実行されると、テストベンチＦ２に含まれる入力パターンがＤＵＴ設計データＦ１で示される半導体集積回路のモデルに与えられ、このモデルから出力される信号と出力期待値とが出力ストローブタイミングで規定されるタイミングで比較されてパス／フェイルが判定されてフェイル情報が得られる。
【００２６】
論理シミュレータ２０で得られたフェイル情報は解析支援部２１に入力され、メモリ２２に記憶されている実機フェイル情報との対応付けが行われる。具体的には、メモリ２２に記憶されている実機フェイル情報に含まれるフェイルアドレスと、論理シミュレータ２０で得られたフェイル情報に含まれるフェイルアドレスとを対応させることにより解析支援部２１が両フェイル情報の対応付けを行う。そして、対応付けが行われた両フェイル情報の排他的論理和が演算部２３で求められ、両フェイル情報の不一致部分を示すフラグ情報が求められる（ステップＳ１５）。
【００２７】
次に、演算部２３で求められたフラグ情報を用いて、論理シミュレータ２０で得られたフェイル情報及び実機フェイル情報の解析が行われる（ステップＳ１６）。具体的には、演算部２３で求められたフラグ情報が「Ｈ」レベルであれば、ブレークポイント設定部２４はその部分にブレークポイントを設定し、論理シミュレータ２０で行われているシミュレーションを中断させる制御を行う。シミュレーションを中断した時点における半導体集積回路の内部ノードに関する情報を論理シミュレータ２０から取得して表示部１３に出力する。これにより、論理シミュレータ２０で得られたフェイル情報と実機フェイル情報との不一致が生じた時点における半導体集積回路の内部ノードの波形表示や状態表示が表示部１３に表示される。
【００２８】
ここで、フラグ情報の全てが「Ｌ」レベルであれば、論理シミュレータ２０で得られるフェイル情報と実機フェイル情報が完全に一致し、実機フェイル情報に含まれている「フェイル」は、論理的要因（例えば、テストパターンの誤り）により生じたものと判断することができる。これに対し、両フェイル情報が完全に一致しなければ、実機フェイル情報に含まれている「フェイル」は、論理的要因以外の他の要因により生じたものと判断することができる。
【００２９】
両フェイル情報が完全に一致しない場合において、実機フェイル情報に含まれている「フェイル」が生じた原因の一つとして、パス／フェイルを判定するタイミングを規定する出力ストローブタイミングのタイミングマージン不足が挙げられる。実機フェイル情報に含まれる「フェイル」が生じた原因が出力ストローブタイミングのタイミングマージン不足であるか否かは、表示部１３に表示された内部ノードの波形表示を参照することで、確認することができる。
【００３０】
以上の通り、本実施形態においては、論理シミュレータ２０で得られるフェイル情報と、半導体試験装置で実際の半導体集積回路の試験を行って得られる実機フェイル情報とを対応付けた上でそれらの不一致部分を示すフラグ情報を演算している。このため、両フェイル情報の不一致部分が増大しても不一致部分を短時間で見つけ出すことができ、解析に要する時間を短縮することができる。
【００３１】
また、本実施形態では、論理シミュレータ２０で得られるフェイル情報と実機フェイル情報との不一致部分にブレークポイントを設定することにより論理シミュレータ２０で行われているシミュレーションを中断させて、その時点における半導体集積回路の内部ノードに関する情報を論理シミュレータ２０から取得している。これにより、両フェイル情報の不一致部分が生じた時点における半導体集積回路の内部ノードに関する情報をユーザが容易に知ることができるため、フェイル情報の解析の利便性が向上する。
【００３２】
以上、本発明の実施形態による解析支援システム及びプログラムについて説明したが、本発明は上記実施形態に制限されることなく、本発明の範囲内で自由に変更が可能である。例えば、上記実施形態では、論理合成できないＨＤＬで記述されたプログラムにより解析支援部２１の機能を実現していたが、論理合成可能なＲＴＬ（Register Transfer Level：レジスタ転送レベル）で記述されたプログラムにより解析支援部２１の機能を実現することも可能である。ＲＴＬで記述されたプログラムを用いることにより、解析支援部２１の機能をＦＰＧＡ（Field Programmable Gate Array）等のハードウェアにマッピングすることも可能となる。
【００３３】
また、ＤＵＴ設計データＦ１は、通常ＲＴＬやＧａｔｅレベルで記述されており、半導体集積回路のモデルも当然ハードウェアにマッピングすることができる。これにより、解析支援部２１に加えて半導体集積回路のモデルもＦＰＧＡ等のハードウェアにマッピングすることができ、高速なシミュレーション及びフェイル情報の解析が可能となる。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態による解析支援システムの要部構成を示すブロック図である。
【図２】シミュレーションにより得られるフェイル情報を解析するまでの一連の手順の一例を示すフローチャートである。
【図３】半導体集積回路の試験及びシミュレーションを行う手順を説明するための図である。
【符号の説明】
【００３５】
１      解析支援システム
２０    論理シミュレータ
２１    解析支援部
２３    演算部
２４    ブレークポイント設定部
Ｆ１    ＤＵＴ設計データ
Ｆ２    テストベンチ
【図１】
2009098057.tif 000003
【図２】
2009098057.tif 000004
【図３】
2009098057.tif 000005