(57)【特許請求の範囲】
【請求項１】
設計対象回路の試験により得られる遅延信号の取込先の中から複数の取込先を抽出する抽出手段と、
前記抽出手段によって抽出された複数の取込先の各取込先に至る経路中の出力分岐点を前記取込先ごとに前記各取込先から追跡する追跡手段と、
前記取込先ごとに前記各取込先から前記追跡手段による追跡で前記出力分岐点が出現するまでの経路を、非故障箇所に決定する決定手段と、
前記決定手段によって決定された決定結果を出力する出力手段と、
を備えることを特徴とする遅延解析装置。
【請求項２】
設計対象回路の試験により得られる遅延信号の取込先の中から任意の取込先を抽出する抽出手段と、
前記抽出手段によって抽出された取込先に至る経路中の出力分岐点を前記取込先から追跡する追跡手段と、
前記追跡手段によって追跡された出力分岐点に基づいて、前記設計対象回路内の故障推定箇所を決定する決定手段と、
前記取込先が前記遅延信号を取り込む前の、前記決定手段により決定された故障推定箇所中に存在するセルの端子の信号遷移をあらわすフェイルアドレスに基づいて、前記信号遷移があった端子を検出する検出手段と、
前記検出手段によって検出された検出結果に基づいて、前記故障推定箇所の中から故障箇所を特定する特定手段と、
前記特定手段によって特定された故障箇所を出力する出力手段と、
を備えることを特徴とする遅延解析装置。
【請求項３】
設計対象回路の試験により得られる遅延信号の取込先の中から任意の取込先を抽出する抽出手段と、
前記抽出手段によって抽出された取込先に至る経路中の出力分岐点を前記取込先から追跡する追跡手段と、
前記追跡手段によって追跡された出力分岐点に基づいて、前記設計対象回路内の故障推定箇所を決定する決定手段と、
前記取込先が前記遅延信号を取り込む前の、前記決定手段により決定された故障推定箇所中に存在するセルの端子の信号遷移をあらわす複数のフェイルアドレスに基づいて、前記セルの端子の中から、前記全フェイルアドレスにおいて信号遷移が同一となる端子を検出する検出手段と、
前記検出手段によって検出された検出結果に基づいて、前記故障推定箇所の中から故障箇所を特定する特定手段と、
前記特定手段によって特定された故障箇所を出力する出力手段と、
を備えることを特徴とする遅延解析装置。
【請求項４】
前記決定手段は、
前記出力分岐点から前記取込先までの経路を前記故障推定箇所に決定することを特徴とする請求項２または３に記載の遅延解析装置。
【請求項５】
前記決定手段は、
前記出力分岐点から前の経路を非故障箇所に決定することを特徴とする請求項２〜４のいずれか一つに記載の遅延解析装置。
【請求項６】
前記追跡手段は、
前記出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわないことを特徴とする請求項５に記載の遅延解析装置。
【請求項７】
前記決定手段は、
前記抽出手段によって前記取込先が複数抽出された場合、前記各取込先から前記出力分岐点が出現するまでの経路を、非故障箇所に決定することを特徴とする請求項２または３に記載の遅延解析装置。
【請求項８】
抽出手段と、追跡手段と、決定手段と、出力手段と、を備え、設計対象回路の試験により得られる遅延信号の取込先を記憶する記憶手段にアクセス可能なコンピュータが、
前記抽出手段により、前記記憶手段に記憶された遅延信号の取込先の中から複数の取込先を抽出する抽出工程と、
前記追跡手段により、前記抽出工程によって抽出された複数の取込先の各取込先に至る経路中の出力分岐点を前記取込先ごとに前記各取込先から追跡する追跡工程と、
前記決定手段により、前記取込先ごとに前記各取込先から前記追跡工程による追跡で前記出力分岐点が出現するまでの経路を、非故障箇所に決定する決定工程と、
前記出力手段により、前記決定工程によって決定された決定結果を出力する出力工程と、
を実行することを特徴とする遅延解析方法。
【請求項９】
設計対象回路の試験により得られる遅延信号の取込先の中から複数の取込先を抽出する抽出工程と、
前記抽出工程によって抽出された複数の取込先の各取込先に至る経路中の出力分岐点を前記取込先ごとに前記各取込先から追跡する追跡工程と、
前記取込先ごとに前記各取込先から前記追跡工程による追跡で前記出力分岐点が出現するまでの経路を、非故障箇所に決定する決定工程と、
前記決定工程によって決定された決定結果を出力する出力工程と、
をコンピュータに実行させることを特徴とする遅延解析プログラム。
【請求項１０】
請求項９に記載の遅延解析プログラムを記録したコンピュータに読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、設計対象回路の遅延を解析する遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体に関する。
【背景技術】
【０００２】
近年、半導体の高速化（高周波動作化）に伴い、回路内における信号伝搬時間の精度は非常に重要視されてきている。しかし、回路特有の問題や製造上の問題、あるいは劣化などにより、特定箇所において不良動作を誘発させるほどの遅延時間が発生することがあり、これらのケースにおいて恒久的な対策を行うためには不良発生原因を究明し、設計上または製造段階による対策を講じる必要がある。
【０００３】
たとえば、従来の解析方法では、スキャン設計された回路では、遅延故障試験もスキャン試験で実施しているため、フェイル値からエラー信号を取り込んだフリップフロップを特定することができるようになっている。そのため、フェイル値により特定されたフリップフロップから前段に位置するフリップフロップ間で活性化している経路を、トレースと検証とを繰り返しながら調査していた（たとえば、下記特許文献１を参照。）。
【０００４】
【特許文献１】特開２００４−８５３３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した特許文献１の従来技術では、データセット時に活性化しているフリップフロップ間の経路中に遅延故障経路があることは分かっても、その区間に存在する組み合わせ回路の規模によっては、解析時間が膨大になるという問題があった。一方解析処理をユーザの経験に委ねると、ユーザの経験や熟練度によって、解析内容にバラツキが生じ、解析精度や解析に対する信頼性が低下するという問題があった。
【０００６】
この発明は、上述した従来技術による問題点を解消するため、解析時間の短縮化を図りつつ、解析精度の向上を図ることができる遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、この発明にかかる遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体は、設計対象回路の試験により得られる遅延信号の取込先の中から任意の取込先を抽出し、抽出された取込先に至る経路中の出力分岐点を前記取込先から追跡し、追跡された出力分岐点に基づいて、前記設計対象回路内の故障推定箇所を決定し、決定された決定結果を出力することを特徴とする。
【０００８】
また、上記発明において、前記出力分岐点から前記取込先までの経路を前記故障推定箇所に決定することとしてもよい。また、上記発明において、前記出力分岐点から前の経路を非故障箇所に決定することとしてもよい。また、上記発明において、前記出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわないこととしてもよい。
【０００９】
また、上記発明において、前記取込先が複数抽出された場合、前記各取込先から前記出力分岐点が出現するまでの経路を、非故障箇所に決定することとしてもよい。また、上記発明において、前記取込先が複数抽出された場合、前記出力分岐点から前記複数の取込先に繋がっているか否かを判定し、判定結果に基づいて、前記故障推定箇所を決定することとしてもよい。
【００１０】
また、上記発明において、前記出力分岐点が前記複数の取込先すべてに繋がっていないと判定された場合、前記出力分岐点から当該出力分岐点に繋がっている取込先までの経路を、前記非故障箇所に決定することとしてもよい。また、上記発明において、前記出力分岐点が前記複数の取込先すべてに繋がっていないと判定された場合、前記出力分岐点から前の経路を、前記非故障箇所に決定することとしてもよい。
【００１１】
また、上記発明において、前記出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわないこととしてもよい。また、上記発明において、前記出力分岐点が前記複数の取込先すべてに繋がっていると判定された場合、前記出力分岐点と当該出力分岐点の出力分岐元との間の経路を、前記故障推定箇所に決定することとしてもよい。
【００１２】
また、上記発明において、前記取込先が前記遅延信号を取り込む前の、前記故障推定箇所中に存在するセルの端子の信号遷移をあらわすフェイルアドレスに基づいて、前記信号遷移があった端子を検出し、検出結果に基づいて、前記故障推定箇所の中から故障箇所を特定し、特定された故障箇所を出力することとしてもよい。
【００１３】
また、上記発明において、前記取込先が前記遅延信号を取り込む前の、前記故障推定箇所中に存在するセルの端子の信号遷移をあらわす複数のフェイルアドレスに基づいて、前記セルの端子の中から、前記全フェイルアドレスにおいて信号遷移が同一となる端子を検出し、検出結果に基づいて、前記故障推定箇所の中から故障箇所を特定し、特定された故障箇所を出力することとしてもよい。
【００１４】
また、上記発明において、前記取込先の出力期待値と前記設計対象回路の試験結果により得られる前記取込先の出力値との比較結果と、前記故障推定箇所に擬似遅延信号を与える擬似遅延故障シミュレーションの結果との一致性を判断し、判断結果に基づいて、前記故障推定箇所の中から前記故障箇所を特定することとしてもよい。
【００１５】
また、上記発明において、前記故障推定箇所のうち、前記比較結果と完全一致する擬似遅延故障シミュレーションの結果が得られた経路を、前記故障箇所に特定することとしてもよい。
【００１６】
また、上記発明において、前記故障推定箇所のうち、前記比較結果と一部一致する擬似遅延故障シミュレーションの結果が得られた経路に接続されているセル内部を、前記故障箇所に特定することとしてもよい。
【発明の効果】
【００１７】
本発明にかかる遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体によれば、解析時間の短縮化を図りつつ、解析精度の向上を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１８】
以下に添付図面を参照して、この発明にかかる遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体の好適な実施の形態を詳細に説明する。
【００１９】
（遅延解析装置のハードウェア構成）
まず、この発明の実施の形態にかかる遅延解析装置のハードウェア構成について説明する。図１は、この発明の実施の形態にかかる遅延解析装置のハードウェア構成を示すブロック図である。
【００２０】
図１において、遅延解析装置は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ（ハードディスクドライブ）１０４と、ＨＤ（ハードディスク）１０５と、ＦＤＤ（フレキシブルディスクドライブ）１０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）１０７と、ディスプレイ１０８と、Ｉ／Ｆ（インターフェース）１０９と、キーボード１１０と、マウス１１１と、スキャナ１１２と、プリンタ１１３と、を備えている。また、各構成部はバス１００によってそれぞれ接続されている。
【００２１】
ここで、ＣＰＵ１０１は、遅延解析装置の全体の制御を司る。ＲＯＭ１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１０３は、ＣＰＵ１０１のワークエリアとして使用される。ＨＤＤ１０４は、ＣＰＵ１０１の制御にしたがってＨＤ１０５に対するデータのリード／ライトを制御する。ＨＤ１０５は、ＨＤＤ１０４の制御で書き込まれたデータを記憶する。
【００２２】
ＦＤＤ１０６は、ＣＰＵ１０１の制御にしたがってＦＤ１０７に対するデータのリード／ライトを制御する。ＦＤ１０７は、ＦＤＤ１０６の制御で書き込まれたデータを記憶したり、ＦＤ１０７に記憶されたデータを遅延解析装置に読み取らせたりする。
【００２３】
また、着脱可能な記録媒体として、ＦＤ１０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ１０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００２４】
Ｉ／Ｆ１０９は、通信回線を通じてインターネットなどのネットワーク１１４に接続され、このネットワーク１１４を介して他の装置に接続される。そして、Ｉ／Ｆ１０９は、ネットワーク１１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２５】
キーボード１１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００２６】
スキャナ１１２は、画像を光学的に読み取り、遅延解析装置内に画像データを取り込む。なお、スキャナ１１２は、ＯＣＲ機能を持たせてもよい。また、プリンタ１１３は、画像データや文書データを印刷する。プリンタ１１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００２７】
（遅延解析装置の機能的構成）
つぎに、この発明の実施の形態にかかる遅延解析装置の機能的構成について説明する。図２は、この発明の実施の形態にかかる遅延解析装置の機能的構成を示すブロック図である。図２において、遅延解析装置２００は、抽出部２０１と、追跡部２０２と、決定部２０３と、判定部２０４と、出力部２０５と、検出部２０６と、特定部２０７と、判断部２０８とを備えている。
【００２８】
まず、抽出部２０１は、設計対象回路の試験結果により得られる遅延信号の取込先を抽出する。ここで、設計対象回路の試験とは、たとえば、スキャン試験機能を利用したディレイ試験（テスター測定）、ディレイ故障以外のスキャン試験、またはファンクション試験が挙げられる。以下、スキャン試験機能を利用したディレイ試験の場合について説明する。
【００２９】
また、取込先とは、上述したテスター測定により得られる遅延信号（故障データともいう）が取り込まれる（キャプチャーされる）箇所であり、具体的には、たとえば、設計対象回路内のセルまたは設計対象回路の最終段の出力端子である。また、セルとしては、たとえば、フリップフロップ回路（以下、単に「ＦＦ」という）が挙げられる。以下、取込先がＦＦである場合、当該ＦＦをフェイルキャプチャーＦＦと称する。同様に、取込先が設計対象回路の最終段の出力端子である場合、当該出力端子をフェイルピンと称する。
【００３０】
また、追跡部２０２は、抽出部２０１によって抽出された取込先に至る経路中の出力分岐点を取込先から追跡する。具体的には、たとえば、フェイルキャプチャーＦＦやフェイルピンを出発点として、当該出発点から前段にさかのぼって、出力分岐点を追跡する。
【００３１】
また、決定部２０３は、追跡部２０２によって追跡された出力分岐点に基づいて、設計対象回路内の故障推定箇所を決定する。具体的には、たとえば、抽出部２０１によって抽出される取込先が一つである場合と複数である場合とで、決定方法が異なる。
【００３２】
抽出部２０１によって抽出される取込先が一つである場合、出力分岐点から取込先までの経路を故障推定箇所に決定する。故障推定箇所とは、故障箇所を含む経路である。また、出力分岐点から前の経路を非故障箇所に決定する。この場合、追跡部２０２は、出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわない。これにより、無駄な追跡処理を防止することができ、解析処理の高速化を図ることができる。
【００３３】
一方、抽出部２０１によって抽出される取込先が複数である場合、決定部２０３は、各取込先から出力分岐点が出現するまでの経路を、非故障箇所に決定する。また、図２に示した判定部２０４を用いて決定することとしてもよい。具体的には、判定部２０４は、出力分岐点から複数の取込先に繋がっているか否かを判定する。そして、決定部２０３は、判定部２０４によって判定された判定結果に基づいて、故障推定箇所を決定する。
【００３４】
具体的には、たとえば、決定部２０３は、判定部２０４によって出力分岐点が複数の取込先すべてに繋がっていないと判定された場合、出力分岐点から当該出力分岐点に繋がっている取込先までの経路を、非故障箇所に決定する。すなわち、抽出された複数の取込先のうち一つでも正常なＦＦに繋がっている場合、その正常なＦＦまでの経路だけでなく、取込先（フェイルキャプチャーＦＦ）までの経路も、非故障箇所に決定する。これにより、故障推定箇所の絞込みをおこなうことができる。
【００３５】
また、この場合、出力分岐点から前の経路を、非故障箇所に決定する。そして、追跡部２０２は、出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわない。これにより、無駄な追跡処理を防止することができ、解析処理の高速化を図ることができる。一方、決定部２０３は、判定部２０４によって出力分岐点が複数の取込先すべてに繋がっていると判定された場合、出力分岐点と当該出力分岐点の出力分岐元との間の経路を、故障推定箇所に決定する。これにより、故障推定箇所を絞り込むことができる。
【００３６】
また、出力部２０５は、決定部２０３によって決定された決定結果を出力する。ここで、決定結果とは、上述した決定部２０３によって決定された故障推定箇所、非故障箇所、後述する故障箇所である。また、出力方法としては、たとえば、図１に示したディスプレイ１０８に表示したり、プリンタ１１３に印刷出力することができる。また、Ｉ／Ｆ１０９を介して外部のコンピュータ装置に送信することもできる。
【００３７】
また、検出部２０６は、取込先が遅延信号を取り込む前のフェイルアドレスに基づいて、信号遷移があった端子を検出する。ここで、フェイルアドレスとは、詳細については後述するが、故障推定箇所中に存在するセルの端子の信号遷移をあらわす情報であり、たとえば、故障推定箇所内に存在する各セルの端子のＨへの変化またはＬへの変化などの信号遷移をあらわしている。そして、信号遷移があったセルの端子、すなわち、Ｈへの変化またはＬへの変化した端子を検出する。一方、Ｈ固定およびＬ固定のセルの端子は検出しない。
【００３８】
また、検出部２０６は、複数のフェイルアドレスに基づいて、セルの端子の中から、全フェイルアドレスにおいて信号遷移が同一となる端子を検出することとしてもよい。具体的な検出処理は後述するが、各フェイルアドレスは異なるタイミングで得られた情報であり、それぞれ各セルの端子の信号遷移に異同はあるが、全フェイルアドレスにおいて信号遷移が同一となる端子は、故障可能性が高い箇所となるため検出する。
【００３９】
また、特定部２０７は、検出部２０６によって検出された検出結果に基づいて、故障推定箇所の中から故障箇所を特定する。具体的には、検出結果が一つの端子である場合、当該端子を故障箇所に特定することができる。一方、検出結果が複数の端子である場合、故障箇所が絞り込めていないこととなる。したがって、たとえば、図２に示した判断部２０８を用いて故障箇所を特定する。
【００４０】
具体的には、判断部２０８は、取込先の出力期待値と設計対象回路の試験結果により得られる取込先の出力値との比較結果と、故障推定箇所に擬似遅延信号を与える擬似遅延故障シミュレーションの結果との一致性を判断する。この場合、特定部２０７は、判断部２０８によって判断された判断結果に基づいて、故障推定箇所の中から故障箇所を特定する。
【００４１】
ここで、比較結果は、出力期待値と出力値を比較した場合のエラー情報である。また、擬似遅延故障シミュレーションの結果とは、故障推定箇所に擬似遅延信号を与えた場合のエラー情報である。単純なライン上の遅延故障では、信号変化依存性がみられることはあっても擬似遅延故障シミュレーションで理論上エラーを完全再現できる。したがって、両エラー情報が完全一致している端子がある場合、当該端子を故障箇所に特定する。
【００４２】
一方、完全再現できない故障に関してはセル内部で故障が発生している可能性が高い。したがって、全故障推定箇所の擬似遅延故障シミュレーションを行い、テスターのエラー情報と擬似遅延故障シミュレーションのエラー情報が完全一致しない場合においては、故障推定箇所内に存在するセル内部を故障箇所に特定する。
【００４３】
なお、上述した抽出部２０１、追跡部２０２、決定部２０３、判定部２０４、出力部２０５、検出部２０６、特定部２０７、および判断部２０８は、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５などの記録媒体に記録されたプログラムを、ＣＰＵ１０１が実行することによって、またはＩ／Ｆ１０９によって、その機能を実現する。
【００４４】
つぎに、上述した追跡部２０２および決定部２０３を用いたバックトレース法について説明する。図３は、バックトレース法を示す説明図である。図３では、フェイルキャプチャーＦＦが１つの場合について説明する。なお、図３中、入力端子左脇の記号（●、▲、×）の意味、および太線の意味は、以下の通りである。
【００４５】
●：故障可能性のある経路（ラインを結ぶ入出力端子間）
▲：故障可能性のある経路（出力分岐点〜入力端子までの経路）
×：故障可能性のない経路
太線：故障検証の結果、故障可能性を内包している経路(故障推定範囲）
【００４６】
また、図３では、フェイルキャプチャーＦＦからのバックトレースにおいて、一例としてデータ信号を対象とするが、他の入力信号での故障可能性が０という訳ではなく、データ信号と同様に追跡対象とする場合もある。
【００４７】
＜手順１＞
まず、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄを出発点としてバックトレースする。データ入力端子Ｄは、テスター測定により遅延信号が取り込まれた端子である。
【００４８】
＜手順２＞
つぎに、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄを出発点としてバックトレースすることにより、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄ前段の出力分岐点を追跡する。この場合、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄと、当該フェイルキャプチャーＦＦ３００の前段のセル３０１の出力端子Ｘとを接続するラインＬ１には出力分岐点がないため、さらに、セル３０１の入力端子Ａ１からバックトレースする。
【００４９】
＜手順３＞
つぎに、セル３０１の入力端子Ａ１からバックトレースすることにより、セル３０１の入力端子Ａ１前段の出力分岐点を追跡する。この場合、セル３０１の入力端子Ａ１と、当該セル３０１の前段のセル３０２の出力端子Ｘとを接続するラインＬ２には出力分岐点がないため、さらに、セル３０２の入力端子Ａ１からバックトレースする。
【００５０】
＜手順４＞
つぎに、セル３０２の入力端子Ａ１からバックトレースすることにより、セル３０２の入力端子Ａ１前段の出力分岐点を追跡する。この場合、セル３０２の入力端子Ａ１と、当該セル３０２の前段のセル３０３の出力端子Ｘとを接続するラインＬ３には出力分岐点Ｐ１があるため、セル３０３の前段には故障発生源はないと判断される。したがって、セル３０３の前段に対してはバックトレースをおこなわない。この場合、セル３０２の未処理の入力端子Ａ２からバックトレースする。
【００５１】
＜手順５＞
つぎに、セル３０２の入力端子Ａ２からバックトレースすることにより、セル３０２の入力端子Ａ２前段の出力分岐点を追跡する。この場合、セル３０２の入力端子Ａ２と、当該セル３０２の前段のセル３０４の出力端子Ｘとを接続するラインＬ４には出力分岐点Ｐ２があるため、セル３０４の前段には、故障発生源はないと判断される。したがって、セル３０４の前段に対してはバックトレースをおこなわない。この場合、セル３０１の未処理の入力端子Ａ２からバックトレースする。
【００５２】
＜手順６＞
以後、上記手順２〜手順５までと同様の手法により、セル３０５の入力端子Ａ１〜Ａ３から、残余のすべての入力信号経路（たとえば、セル３０６〜セル３０９）にバックトレースをおこなう。そして、未追跡の入力端子がすべて▲となるまで実行する。未追跡の入力端子がなくなった場合、故障可能性のある経路（図３中、太線表示）の範囲が、回路構成上から判別可能な故障可能性のある故障推定箇所ということになる。
【００５３】
また、図３では、フェイルキャプチャーＦＦが１つの場合について説明したが、フェイルキャプチャーＦＦが複数の場合も同様にバックトレースをおこなうことができる。フェイルキャプチャーＦＦが複数の場合、フェイルキャプチャーＦＦすべてに共通する出力分岐点を追跡する。以下、フェイルキャプチャーＦＦが複数の場合のバックトレース法について説明する。
【００５４】
図４−１および図４−２は、フェイルキャプチャーＦＦが複数の場合のバックトレース法を示す説明図である。なお、図４−１および図４−２中、入力端子左脇の記号（●、▲、△、×、■）の意味、および太線の意味は、以下の通りである。
【００５５】
●：故障可能性のある経路（ラインを結ぶ入出力端子間）
▲：故障可能性のある経路（出力分岐点〜入力端子までの経路）
△：故障可能性のある経路（出力端子〜出力分岐点までの経路）
×：故障可能性のない経路
■：その入力経路先に故障検可能性がない経路
太線：故障検証の結果、故障可能性を内包している経路(故障推定範囲）
【００５６】
また、図４−１および図４−２では、フェイルキャプチャーＦＦからのバックトレースにおいて、一例としてデータ信号を対象とするが、他の入力信号での故障可能性が０という訳ではなく、データ信号と同様に追跡対象とする場合もある。
【００５７】
＜手順１＞
まず、フェイルキャプチャーＦＦ４００Ａ〜４００Ｃの各データ出力端子Ｄを出発点としてバックトレースする。各データ入力端子Ｄは、テスター測定により遅延信号が取り込まれた端子である。
【００５８】
＜手順２＞
つぎに、フェイルキャプチャーＦＦ４００Ａのデータ入力端子Ｄを出発点としてバックトレースすることにより、フェイルキャプチャーＦＦ４００Ａのデータ入力端子Ｄ前段の出力分岐点を追跡する。この場合、フェイルキャプチャーＦＦ４００Ａのデータ入力端子Ｄと、当該フェイルキャプチャーＦＦ４００Ａの前段のセル４０１の出力端子Ｘとを接続するラインＬ１１には出力分岐点がないため、ラインＬ１１は、フェイルキャプチャーＦＦ４００Ａだけに影響を与える経路となる。
【００５９】
換言すれば、ラインＬ１１は、フェイルキャプチャーＦＦ４００ＢおよびフェイルキャプチャーＦＦ４００Ｃへ影響を与えることのない経路となり、ラインＬ１１は故障可能性がない経路と判断される。一方で、セル４０１の前段は、故障可能性なしと判断されていないため、このあと、セル４０１の入力端子Ａ１からバックトレースする。
【００６０】
同様に、フェイルキャプチャーＦＦ４００Ｂのデータ入力端子Ｄを出発点としてバックトレースすることにより、フェイルキャプチャーＦＦ４００Ｂのデータ入力端子Ｄ前段の出力分岐点を追跡する。この場合、フェイルキャプチャーＦＦ４００Ｂのデータ入力端子Ｄと、当該フェイルキャプチャーＦＦ４００Ｂの前段のセル４０２の出力端子Ｘとを接続するラインＬ１２には出力分岐点がないため、ラインＬ１２は故障可能性がない経路と判断される。したがって、セル４０２からバックトレースする。
【００６１】
また、フェイルキャプチャーＦＦ４００Ｃのデータ入力端子Ｄを出発点としてバックトレースすることにより、フェイルキャプチャーＦＦ４００Ｃのデータ入力端子Ｄ前段の出力分岐点を追跡する。この場合、フェイルキャプチャーＦＦ４００Ｃのデータ入力端子Ｄに接続されているラインＬ１３には出力分岐点Ｐ１１が検出される。
【００６２】
ここで、出力分岐点Ｐ１１からフェイルキャプチャーＦＦ４００ＢおよびフェイルキャプチャーＦＦ４００Ｃに至る経路は存在するが、フェイルキャプチャーＦＦ４００Ａに至る経路は存在しない。したがって、出力分岐点Ｐ１１からフェイルキャプチャーＦＦ４００ＢおよびフェイルキャプチャーＦＦ４００Ｃに至る経路での故障可能性はないと判断する。ただし、出力分岐点Ｐ１１の前段は、故障可能性なしと判断されていないため、さらに、出力分岐点Ｐ１１から、すなわち、セル４０２の入力端子Ａ２からバックトレースする。
【００６３】
＜手順３＞
つぎに、セル４０１の入力端子Ａ１からバックトレースすることにより、セル４０１の入力端子Ａ１前段の出力分岐点を追跡する。この場合、セル４０１の入力端子Ａ１と、当該セル４０１の前段のセル４０３の出力端子Ｘとを接続するラインＬ１４には出力分岐点Ｐ１２があるため、セル４０３の前段には、故障発生源はないと判断される。したがって、セル４０３の前段に対してはバックトレースをおこなわない。
【００６４】
なお、図４−１中、ＦＦ４００Ｄは、テスター測定により正常な信号を取り込んだＦＦ、すなわち、フェイルキャプチャーＦＦではないＦＦである。したがって、このバックトレースにより、ラインＬ１４は、故障可能性のない経路から、その入力経路先に故障可能性がない経路に変わる（図４−１中、「×→■」と表示。）。このあと、セル４０１の入力端子Ａ２と、セル４０２の入力端子Ａ１および入力端子Ａ２からバックトレースする。
【００６５】
＜手順４＞
つぎに、セル４０１の入力端子Ａ２と、セル４０２の入力端子Ａ１および入力端子Ａ２とからバックトレースすることにより、セル４０１およびセル４０２前段の出力分岐先を追跡する。この場合、セル４０１の入力端子Ａ２と、当該セル４０１の前段のセル４０４の出力端子Ｘとを接続するラインＬ１５には出力分岐点Ｐ１３が検出される。同様に、セル４０２の入力端子Ａ１と、当該セル４０２の前段のセル４０４の出力端子Ｘとを接続するラインＬ１６にも、出力分岐点Ｐ１３が検出される。
【００６６】
ここで、出力分岐点Ｐ１３からフェイルキャプチャーＦＦ４００ＡおよびフェイルキャプチャーＦＦ４００Ｂに至る経路は存在するが、フェイルキャプチャーＦＦ４００Ｃに至る経路は存在しない。したがって、出力分岐点Ｐ１３からフェイルキャプチャーＦＦ４００ＡおよびフェイルキャプチャーＦＦ４００Ｂに至る経路での故障可能性はないと判断する。ただし、出力分岐点Ｐ１３の前段は故障可能性なしと判断されていない。したがって、セル４０４からバックトレースする。
【００６７】
また、セル４０２の入力端子Ａ２からバックトレースすることにより、セル４０２の入力端子Ａ２前段の出力分岐先を追跡する。この場合、セル４０２の入力端子Ａ２と、当該セル４０２の前段のセル４０５の出力端子Ｘとを接続するラインＬ１７には出力分岐点がないため、ラインＬ１７は故障可能性がない経路と判断される。したがって、セル４０５の入力端子Ａ１および入力端子Ａ２からバックトレースする。
【００６８】
＜手順５＞
つぎに、セル４０４の入力端子Ａ１および入力端子Ａ２と、セル４０５の入力端子Ａ１および入力端子Ａ２とからバックトレースすることにより、セル４０４およびセル４０５の前段に、出力分岐点を追跡する。このバックトレースにより、セル４０４の入力端子Ａ１とセル４０６の出力端子Ｘとを接続するラインＬ１８と、セル４０５の入力端子Ａ２とセル４０６の出力端子Ｘとを接続するラインＬ２１とから、出力分岐点Ｐ１４が検出される。
【００６９】
ここで、出力分岐点Ｐ１４からフェイルキャプチャーＦＦ４００Ａ〜４００Ｃに至る経路が存在するため、ラインＬ１８およびラインＬ２１上の出力分岐点Ｐ１４からセル４０６の出力端子Ｘまでの経路Ｋ１（図４−２中、太線で表示）は、故障可能性ありと判断される。
【００７０】
また、セル４０４の入力端子Ａ２とセル４０７の出力端子Ｘとを接続するラインＬ１９と、セル４０５の入力端子Ａ１とセル４０６の出力端子Ｘとを接続するラインＬ２０とから、出力分岐点Ｐ１５が検出される。
【００７１】
ここで、出力分岐点Ｐ１５からフェイルキャプチャーＦＦ４００Ａ〜４００Ｃに至る経路が存在するため、ラインＬ１９およびラインＬ２０上の出力分岐点Ｐ１５からセル４０７の出力端子Ｘまでの経路Ｋ２（図４−２中、太線で表示）は、故障可能性ありと判断される。また、セル４０６およびセル４０７の前段は、故障可能性なしと判断されていないため、セル４０６およびセル４０７からバックトレースをおこなう。
【００７２】
＜手順６＞
つぎに、セル４０６の入力端子Ａ１および入力端子Ａ２と、セル４０７の入力端子Ａ１および入力端子Ａ２とからバックトレースすることにより、セル４０６およびセル４０７の前段に、出力分岐点を追跡する。このバックトレースにより、セル４０６の入力端子Ａ１の前段およびセル４０７の入力端子Ａ１の前段に、フェイルキャプチャーＦＦ４００Ａ〜４００Ｃ以外のＦＦ（たとえば、ＦＦ４００Ｄ）に繋がる出力分岐点（不図示）が検出されたとすると、当該出力分岐点（不図示）から前段の経路は、故障対象外となる。
【００７３】
一方、セル４０６の入力端子Ａ２と当該セル４０６の前段のセル４０８の出力端子Ｘとを接続するラインＬ２２には、出力分岐点がないため、ラインＬ２２は故障可能性がない経路と判断される。同様に、セル４０７の入力端子Ａ２と当該セル４０７の前段のセル４０９の出力端子Ｘとを接続するラインＬ２３には、出力分岐点がないため、ラインＬ２３は故障可能性がない経路と判断される。したがって、セル４０８およびセル４０９からバックトレースする。
【００７４】
＜手順７＞
つぎに、上述した手順６と同様、セル４０８およびセル４０９からバックトレースをすることにより、セル４０８およびセル４０９の前段の出力分岐点を追跡する。そして、フェイルキャプチャーＦＦ４００Ａ〜４００Ｃに繋がる出力分岐点（不図示）が検出されると、当該出力分岐点（不図示）から、当該出力分岐点（不図示）に接続されているセルの出力端子までの経路が、故障可能性ありと判断される。以後、図３に示した場合と同様、未処理の入力端子からのバックトレースが終了するまで、バックトレースを実行する。
【００７５】
（フェイルアドレス）
つぎに、検出部２０６で用いるフェイルアドレスについて具体的に説明する。図５は、フェイルアドレスの一例を示す説明図である。図５に示したフェイルアドレス１は、図３の手順６に示した設計対象回路に関する一つのフェイルアドレスを示している。図５においては、故障推定箇所が、図５に示した１６個の端子から、信号変化のある９個の端子に絞り込まれている。この信号変化している９個の端子を結ぶ経路が、故障推定箇所となる。図５では、信号変化がある端子が複数（９個）存在するため、故障箇所を特定することができない。故障推定箇所を絞り込んで故障箇所を特定するためには、フェイルアドレスを複数用いるのが好ましい。
【００７６】
図６は、フェイルアドレスの他の例を示す説明図である。図６に示したフェイルアドレスは、図３の手順６に示した設計対象回路に関する複数のフェイルアドレス１〜１０を示している。図６に示すように、複数のフェイルアドレス１〜１０に基づいて、セルの端子の中から、全フェイルアドレス１〜１０において信号遷移が同一となる端子を検出する。
【００７７】
図６では、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄが、フェイルアドレス１〜１０において信号遷移が同一となる端子である。また、セル３０１の入力端子Ａ１も、フェイルアドレス１〜１０において信号遷移が同一となる端子である。さらに、セル３０４の入力端子Ａ２も、フェイルアドレス１〜１０において信号遷移が同一となる端子である。したがって、図６においては、１６個の端子から、全フェイルアドレス１〜１０で信号変化が同一となる３個の端子（フェイルキャプチャーＦＦのデータ入力端子Ｄ、セル３０１の入力端子Ａ２、およびセル３０５の入力端子Ａ２）に絞り込まれている。
【００７８】
（擬似遅延故障シミュレーションによる故障箇所の特定処理内容）
つぎに、擬似遅延故障シミュレーションによる故障箇所の特定処理内容について具体的に説明する。この特定処理は、上述した特定部２０７および判断部２０８を用いる。図７−１〜図７−５は、擬似遅延故障シミュレーションによる故障箇所の特定処理内容を示す説明図である。図７−１は、図３の＜手順６＞に示したバックトレース後の状態から、図５に示したフェイルアドレス１により故障推定箇所（図７−１中、●表示）を絞り込んだ状態を示している。
【００７９】
図７−１では、図６に示したフェイルアドレスにより、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄと、セル３０１の入力端子Ａ２と、セル３０５の入力端子Ａ２とに絞り込まれている。したがって、この場合の故障推定箇所は、フェイルキャプチャーＦＦ３００からセル３０５の入力端子Ａ２にラインＬ６を介して接続されているセル３０６の出力端子Ｘまでの経路Ｒ１となる。なお、当該経路Ｒ１中のラインＬ１、Ｌ５およびＬ６は、図７−１中、太線で表示している。
【００８０】
また、図７−２は、判定パターンごとのテスターフェイルと、擬似遅延故障シミュレーションの結果とを対比した図表である。ここで、判定パターンＡ〜Ｏについて説明する。ＦＦに取り込まれたデータは、スキャンチェーンのシフトレジスタ動作によりＦＦのスキャンアウト端子ＳＯから順次出力される。テストパターンでは、正常動作時にスキャンアウト端子ＳＯから出力される信号値を出力期待値として設定している。したがって、テスターでの設計対象回路の測定の結果、設計対象回路からの出力値が、出力期待値と一致すれば、比較結果として『ＰＡＳＳ』であり、不一致であれば『ＦＡＩＬ』となる。
【００８１】
たとえば、図７−２において、設計対象回路がある判定パターンＡを取り込んだ場合、フェイルキャプチャーＦＦ３００のスキャンアウト端子ＳＯから出力された信号値が、出力期待値と不一致であるため、比較結果が『ＦＡＩＬ』となっている。一方、設計対象回路がある判定パターンＢを取り込んだ場合、フェイルキャプチャーＦＦ３００のスキャンアウト端子ＳＯから出力された信号値が、出力期待値と一致するため、比較結果が『ＰＡＳＳ』となっている。
【００８２】
なお、判定パターンＡは図６に示したフェイルアドレス１に対応し、判定パターンＤは図６に示したフェイルアドレス２に対応し、判定パターンＥは図６に示したフェイルアドレス３に対応し、判定パターンＨは図６に示したフェイルアドレス３に対応し、判定パターンＩは図６に示したフェイルアドレス４に対応し、判定パターンＪは図６に示したフェイルアドレス５に対応し、判定パターンＫは図６に示したフェイルアドレス６に対応し、判定パターンＬは図６に示したフェイルアドレス７に対応し、判定パターンＭは図６に示したフェイルアドレス８に対応し、判定パターンＮは図６に示したフェイルアドレス９に対応し、判定パターンＯは図６に示したフェイルアドレス１０に対応する。
【００８３】
また、図７−２では、判定パターンＡ〜Ｏを用いた擬似遅延故障シミュレーションの結果も示されている。すなわち、図７−１の状態で、故障推定箇所に擬似遅延信号として判定パターンＡ〜Ｏを与え、擬似遅延故障シミュレーション時の各端子（フェイルキャプチャーＦＦのデータ入力端子Ｄ、セル３０１の入力端子Ａ２、およびセル３０５の入力端子Ａ２）の信号変化が、フェイルアドレスで示された信号変化と一致していれば『ＦＡＩＬ』、不一致であれば『ＰＡＳＳ』となる。
【００８４】
したがって、擬似遅延故障シミュレーション結果の中の端子のうち、すべての判定パターンＡ〜Ｏにおいて、比較結果と『ＰＡＳＳ／ＦＡＩＬ』で完全一致している端子がある場合、当該端子が故障箇所に特定される。図７−２では、セル３０５の入力端子Ａ２の擬似遅延故障シミュレーション結果が比較結果と完全一致しているため、セル３０５の入力端子Ａ２が故障箇所に含まれ、フェイルキャプチャーＦＦ３００のデータ入力端子Ｄとセル３０１の入力端子Ａ２は、故障箇所から除外される。
【００８５】
図７−３は、故障箇所の特定後の状態を示している。図７−３において、セル３０５の入力端子Ａ２が故障箇所に含まれることとなったため、故障箇所は、セル３０６の出力端子Ｘ〜ラインＬ６〜セル３０５からなる経路Ｒ２（図７−３中、●表示）となる。
【００８６】
つぎに、比較結果と擬似遅延故障シミュレーション結果とが完全一致していない場合について説明する。図７−４は、判定パターンごとのテスターフェイルと、擬似遅延故障シミュレーションの結果とを対比した図表である。図７−４に示した擬似遅延故障シミュレーション結果では、擬似遅延故障シミュレーション時の各端子（フェイルキャプチャーＦＦのデータ入力端子Ｄ、セル３０１の入力端子Ａ２、およびセル３０５の入力端子Ａ２）の擬似遅延シミュレーション結果のいずれも、比較結果と完全一致していない。このような場合、比較結果すべてを含むエラーを出力する箇所がないため、単純な擬似遅延故障シミュレーションではエラー再現できないセル内部に故障箇所が存在している可能性がある。
【００８７】
ラッチ回路やフリップフロップ回路、セレクタ回路のように、トランスミッションゲートを使用しているセルでは、擬似遅延故障シミュレーションモデルの関係上、内部ディレイを単純再現できない場合もあるため、逆に故障推定箇所内においてこのようなセルが存在する場合、当該セル内部で故障が発生していると診断することができる。たとえば、図７−４を参照すると、判定パターン”ＡＤＥＨＪ”の比較結果と完全に一致するエラーが擬似遅延故障シミュレーション結果にはないため、故障推定箇所Ｒ１内に存在する唯一のＦＦであるフェイルキャプチャーＦＦ３００内に故障箇所が存在すると特定される。図７−５は、図７−４の図表を用いた場合の故障箇所の特定後の状態を示している。図７−５中、●表示のセル、すなわち、フェイルキャプチャーＦＦ３００内部に故障箇所を特定する。
【００８８】
このように、完全再現できない故障に関してはセル内部で故障が発生している可能性が高い。したがって、全故障推定箇所の擬似遅延故障シミュレーションを行い、テスターのエラー情報と擬似遅延故障シミュレーションのエラー情報が完全一致しない以下（１）〜（３）の場合においては、故障推定箇所内に存在するセル内部を故障箇所に特定する。
【００８９】
具体的には、ライン上からはディレイコントロールできないセル内に故障箇所を絞り込むことができる。これにより、擬似遅延故障シミュレーションでのエラー不再現時については、ライン／セル内部の故障箇所の切り分けをおこなうこともできる。
【００９０】
（１）擬似遅延故障シミュレーションのエラー情報の内容について、テスターのエラー情報をすべて含むが他のエラーも混ざっている場合、故障推定箇所の前段で多段ゲートを使用しているセル内部を、故障箇所に特定する。
【００９１】
（２）擬似遅延故障シミュレーションのエラー情報の内容について、テスターのエラー情報の一部が再現しない場合（一部一致の確率が所定％以上１００％未満）、故障推定箇所の後段で多段ゲートを使用しているセル内部を、故障箇所に特定する。
【００９２】
（３）擬似遅延故障シミュレーションのエラー情報の内容について、テスターのエラー情報が殆ど、あるいは全く再現しない場合（一部一致の確率が所定％未満）、故障推定箇所内でトランスミッションゲートを使用しているセル内部を、故障箇所に特定する。
【００９３】
また、上記（１）〜（３）のようなセル内部で発生した遅延故障については、セルの擬似遅延故障シミュレーションモデルが精巧でありさえすれば、各ノード（端子）へのディレイ付加シミュレーションをおこなうことで完全一致のエラー再現が可能となるため、かえって故障箇所をピンポイントで絞り込むことができる。この判断部２０８の判断処理により、故障推定箇所の妥当性をより詳細に判断することができる。
【００９４】
（遅延解析処理手順）
つぎに、この発明の実施の形態にかかる遅延解析装置２００の遅延解析処理手順について説明する。図８は、この発明の実施の形態にかかる遅延解析装置２００の遅延解析処理手順を示すフローチャートである。図８において、まず、抽出部２０１により未処理の取込先を抽出する（ステップＳ８０１）。抽出する取込先の数は、初期設定によりあらかじめ設定しておいてもよく、また、その都度、ユーザの指定により設定できるようにしてもよい。
【００９５】
つぎに、追跡部２０２により取込先から出力分岐点の追跡処理を実行し（ステップＳ８０２）、決定部２０３により故障推定箇所または非故障箇所の決定処理を実行する（ステップＳ８０３）。具体的には、抽出部２０１によって抽出された取込先が１つである場合、図３に示したバックトレース法により、追跡処理および決定処理を実行する。一方、抽出された取込先が複数である場合、図４−１および図４−２に示したバックトレース法により、追跡処理および決定処理を実行する。
【００９６】
そして、未追跡のセルの端子がある場合（ステップＳ８０４：Ｙｅｓ）、ステップＳ８０２に戻って、追跡処理を実行する。一方、未追跡のセルの端子がない場合（ステップＳ８０４：Ｎｏ）、未処理の取込先があるか否かを判断する（ステップＳ８０５）。未処理の取込先がある場合（ステップＳ８０５：Ｙｅｓ）、ステップＳ８０１に戻って、未処理の取込先を抽出する。一方、未処理の取込先がない場合（ステップＳ８０５：Ｎｏ）、図５または図６に示したフェイルアドレスを生成し（ステップＳ８０６）、検出部２０６による端子の検出処理により、フェイルアドレスを用いて故障推定箇所の絞込みをおこなう（ステップＳ８０７）。
【００９７】
そして、特定部２０７により、故障箇所が特定されたか否かを判断する（ステップＳ８０８）。この判断は、ステップＳ８０７における故障推定箇所の絞り込み範囲、たとえば、故障推定箇所内の端子数により判断する。故障箇所が特定された場合（ステップＳ８０８：Ｙｅｓ）、ステップＳ８１３に移行する。一方、故障箇所が特定されていない場合（ステップＳ８０８：Ｎｏ）、擬似遅延故障シミュレーションを実行して（ステップＳ８０９）、判断部２０８により、テスター測定による比較結果と擬似遅延故障シミュレーション結果とのエラー一致性を判断する（ステップＳ８１０）。
【００９８】
そして、完全一致する端子がある場合（ステップＳ８１０：Ｙｅｓ）、当該端子とその前段セルとの間の経路を故障箇所に特定し（ステップＳ８１１）、ステップＳ８１３に移行する。一方、完全一致しない場合（ステップＳ８１０：Ｎｏ）、故障推定箇所内の多段ゲートを有するセル内部を故障箇所に特定し（ステップＳ８１２）、ステップＳ８１３に移行する。このあと、出力部２０５により、特定された故障箇所を結果出力する（ステップＳ８１３）。そして、一連の処理を終了する。
【００９９】
なお、上述した実施の形態では、設計対象回路の試験のうち、スキャン試験機能を利用したディレイ試験の場合について説明したが、そのほかに、ディレイ故障以外のスキャン試験によっても実現することができる。すなわち、スキャン試験において、テスター測定で故障信号をキャプチャーしたＦＦを抽出して、バックトレースを実行する。これにより、設計対象回路の構成上、故障の可能性が潜む故障推定箇所を絞り込むことができる。
【０１００】
図９は、スキャン試験（スキャンによるディレイ試験）方式（スキューロード方式）を示す説明図であり、図１０は、スキャン試験（スキャンによるディレイ試験）方式（スキューロード方式）を示すタイミングチャートである。図９において、ＦＦ９０１〜ＦＦ９０２間のディレイについてスキャン試験する場合、図１０に示したクロック（２）〜（３）間で実現する。
【０１０１】
すなわち、図９において、図１０に示したクロック（１）でスキャンシフトしてきた信号がＦＦ９０１のスキャン入力端子ＳＩにセットされる。つぎに、図１０に示したクロック（２）でＦＦ９０１のスキャン入力端子ＳＩからの信号を取り込み、出力端子ＱよりＦＦ９０２に信号を送る。これにより、ＦＦ９０１〜ＦＦ９０２間で合成された信号がＦＦ９０２のデータ入力端子Ｄにセットされる。これにより、ディレイ試験のためのランチ動作がおこなわれる。
【０１０２】
つぎに、図１０に示したクロック（３）でＦＦ９０２のデータ入力端子Ｄからの信号を取りこみ、ディレイ試験のためのキャプチャー動作をおこなう。この例では、ＦＦ９０１〜ＦＦ９０２間の遅延がない場合は「１」を、遅延がある場合は「０」をキャプチャーする。そして、図１０に示したクロック（４）以降では、ＦＦ９０２でキャプチャーした信号を順次スキャンシフトさせて、最終的にスキャンアウト端子の出力信号として出力値判定をおこなう。
【０１０３】
したがって、図１０に示したように、正常な状態であれば、クロック（２）でＦＦ９０２に信号が入力されるが、クロック（２）〜（３）間で遅延が生じると、クロック（３）でＦＦ９０２に信号が入力されることとなる（図１０中、一点鎖線で表示）。
【０１０４】
また、スキューロード方式以外の方式も適用することができる。図１１は、スキャン試験（スキャンによるディレイ試験）方式（ブロードサイド方式）を示す説明図であり、図１２は、スキャン試験（スキャンによるディレイ試験）方式（ブロードサイド方式）を示すタイミングチャートである。図１１において、ＦＦ１１０１〜ＦＦ１１０２〜ＦＦ１１０３のうち、ＦＦ１１０２〜ＦＦ１１０３間のディレイについてスキャン試験する場合、図１２に示したクロック（３）〜（４）間で実現する。
【０１０５】
すなわち、図１１において、図１２に示したクロック（１）でスキャンシフトしてきた信号がＦＦ１１０１のスキャン入力端子ＳＩにセットされる。つぎに、図１２に示したクロック（２）でＦＦ１１０１のスキャン入力端子ＳＩからの信号を取り込み、出力端子ＱよりＦＦ１１０２に信号を送る。これにより、ＦＦ１１０１〜ＦＦ１１０２間で合成された信号がＦＦ１１０２のデータ入力端子Ｄにセットされる。
【０１０６】
つぎに、クロック（３）でＦＦ１１０２のデータ入力端子Ｄからの信号を取り込み、出力端子ＱよりＦＦ１１０３に信号を送る。これにより、ＦＦ１１０２〜ＦＦ１１０３間で合成された信号がＦＦ１１０３のデータ入力端子Ｄにセットされる。これにより、ディレイ試験のためのランチ動作がおこなわれる。
【０１０７】
つぎに、図１２に示したクロック（４）でＦＦ１１０３のデータ入力端子Ｄからの信号を取り込む。これにより、ディレイ試験のためのキャプチャー動作がおこなわれる。上記例では、ＦＦ１１０２〜ＦＦ１１０３間の遅延がない場合「１」を、遅延がある場合「０」をキャプチャーする。そして、図１２に示したクロック（５）以降では、ＦＦ１１０３でキャプチャーした信号を順次スキャンシフトさせて、最終的にスキャンアウト端子の出力信号として出力値判定をおこなう。
【０１０８】
したがって、図１２に示したように、正常な状態であれば、クロック（３）でＦＦ１１０３に信号が入力されるが、クロック（３）〜（４）間で遅延が生じると、クロック（４）でＦＦ１１０３に信号が入力されることとなる（図１２中、一点鎖線で表示）。また、スキュードロード方式と異なり、テストコントロール信号のタイミングに制限されることなく試験をおこなうことができる。
【０１０９】
また、スキャン試験以外の試験、たとえばファンクション試験でも故障解析をおこなうことができる。具体的には、ファンクション試験において、テスター測定で遅延信号を出力している出力端子（フェイルピン）を抽出する。つぎに、フェイルピンから、図３または図４−１および図４−２に示したようにバックトレースをおこなうことで、設計対象回路の構成上、故障の可能性が潜む故障推定範囲を絞り込むことができる。
【０１１０】
すなわち、フェイルキャプチャーＦＦがフェイルピンに変更しただけであるため、同一の処理で実現することができる。すなわち、スキャン試験の故障解析が容易となっているのは限定された回路と故障が発生したフェイルアドレスが明確になっているからであり、ファンクション試験においてもフェイルアドレスを突き止めることができれば、図５または図６に示したようなフェイルアドレスを用いることにより、上記と同様な遅延解析をおこなうことができる。
【０１１１】
この発明の実施の形態によれば、設計対象回路（ＬＳＩ）不良動作時のフェイル内容（フェイルアドレス・フェイルピン）をフィードバック情報とし、セルの出力分岐点の有無、フェイルキャプチャーＦＦ以外へ至る経路の有無、フェイルキャプチャーＦＦの数、フェイルピン以外へ至る経路の有無、フェイルピンの数を判断材料とすることで、回路情報のみによるバックトレースを実現することができる。
【０１１２】
また、フェイルキャプチャーＦＦの入力端子またはフェイルピンを起点としてバックトレースを実現することができる。そして、セルの出力分岐先がフェイルピンへ至ったらその経路のトレースを中止し、トレース先がなくなるまで繰り返し行うことにより、最終的に残った経路を故障推定箇所に決定することができる。
【０１１３】
また、遅延故障は、遅延要因となる回路をレベル状態が変化した信号が通過することにより生まれるため、信号が変化しない限り遅延が発生することはない。したがって、フェイルキャプチャーＦＦに取り込まれる遅延信号は、取り込み動作をおこなうクロックよりも１つ前のクロック動作で発生していることとなり、１つ前のクロック動作直後で信号変化のあったポイントを故障推定箇所とすることができる。
【０１１４】
また、故障推定箇所では、完全に故障箇所を特定していないため、故障推定箇所に対して擬似遅延信号を与えた擬似遅延故障シミュレーションを実行することにより、エラー内容から故障箇所を特定することができる。また、故障推定箇所すべてに擬似遅延故障シミュレーションで信号変化別の擬似遅延信号を与えても、テスターによる比較結果と擬似遅延故障シミュレーション結果が殆ど一致しないことがある。
【０１１５】
単純なディレイ故障であれば擬似遅延故障シミュレーションでの故障再現が容易であることから、この様な場合は外部端子からは制御できないセル内部の故障である可能性が高く、故障推定箇所の中で外部端子から直接ディレイコントロールのできないトランスミッションゲートを使用している回路（セル）を対象に故障推定箇所を絞り込むことができる。
【０１１６】
以上説明したように、この発明の実施の形態にかかる遅延解析装置２００、遅延解析方法、遅延解析プログラム、および記録媒体によれば、回路構成とフェイル内容から故障推定箇所を絞り込んでいくため、遅延解析に要するシミュレーション回数を極力減らすことができ、遅延故障解析時間の短縮化を実現することができる。
【０１１７】
また、遅延故障とは信号変化が起きた時のみ発生する不良であることから、遅延発生を促すクロック動作直後の信号変化に着目することで故障候補となる回路と正常な回路との切り分けが可能となる。したがって、故障推定箇所の絞込みを容易に実現することができる。また、複数のフェイルアドレスを用いることにより、故障推定精度の向上を図ることもできる。
【０１１８】
また、遅延解析処理を自動化することにより、ユーザの熟練度に依存せず、故障推定時間の一層の短縮化を実現することができる。また、擬似遅延信号を与えた擬似遅延故障シミュレーションを実行することにより、テスターによる比較結果（テスターフェイル）との一致性からより精度の高い故障推定をおこなうことができる。さらに、擬似遅延信号を与えた擬似遅延故障シミュレーションを実行することにより、比較結果（テスターフェイル）との非一致性から、故障がセル内部／ラインで発生したのかを区別することができる。
【０１１９】
なお、本実施の形態で説明した遅延解析方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１２０】
（付記１）設計対象回路の試験により得られる遅延信号の取込先の中から任意の取込先を抽出する抽出手段と、
前記抽出手段によって抽出された取込先に至る経路中の出力分岐点を前記取込先から追跡する追跡手段と、
前記追跡手段によって追跡された出力分岐点に基づいて、前記設計対象回路内の故障推定箇所を決定する決定手段と、
前記決定手段によって決定された決定結果を出力する出力手段と、
を備えることを特徴とする遅延解析装置。
【０１２１】
（付記２）前記決定手段は、
前記出力分岐点から前記取込先までの経路を前記故障推定箇所に決定することを特徴とする付記１に記載の遅延解析装置。
【０１２２】
（付記３）前記決定手段は、
前記出力分岐点から前の経路を非故障箇所に決定することを特徴とする付記１または２に記載の遅延解析装置。
【０１２３】
（付記４）前記追跡手段は、
前記出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわないことを特徴とする付記３に記載の遅延解析装置。
【０１２４】
（付記５）前記決定手段は、
前記抽出手段によって前記取込先が複数抽出された場合、前記各取込先から前記出力分岐点が出現するまでの経路を、非故障箇所に決定することを特徴とする付記１に記載の遅延解析装置。
【０１２５】
（付記６）前記抽出手段によって前記取込先が複数抽出された場合、前記出力分岐点から前記複数の取込先に繋がっているか否かを判定する判定手段を備え、
前記決定手段は、
前記判定手段によって判定された判定結果に基づいて、前記故障推定箇所を決定することを特徴とする付記１または５に記載の遅延解析装置。
【０１２６】
（付記７）前記決定手段は、
前記判定手段によって前記出力分岐点が前記複数の取込先すべてに繋がっていないと判定された場合、前記出力分岐点から当該出力分岐点に繋がっている取込先までの経路を、前記非故障箇所に決定することを特徴とする付記６に記載の遅延解析装置。
【０１２７】
（付記８）前記決定手段は、
前記判定手段によって前記出力分岐点が前記複数の取込先すべてに繋がっていないと判定された場合、前記出力分岐点から前の経路を、前記非故障箇所に決定することを特徴とする付記６または７に記載の遅延解析装置。
【０１２８】
（付記９）前記追跡手段は、
前記出力分岐点の前段に配置されている出力分岐元からの追跡をおこなわないことを特徴とする付記８に記載の遅延解析装置。
【０１２９】
（付記１０）前記決定手段は、
前記判定手段によって前記出力分岐点が前記複数の取込先すべてに繋がっていると判定された場合、前記出力分岐点と当該出力分岐点の出力分岐元との間の経路を、前記故障推定箇所に決定することを特徴とする付記６〜９のいずれか一つに記載の遅延解析装置。
【０１３０】
（付記１１）前記取込先が前記遅延信号を取り込む前の、前記故障推定箇所中に存在するセルの端子の信号遷移をあらわすフェイルアドレスに基づいて、前記信号遷移があった端子を検出する検出手段と、
前記検出手段によって検出された検出結果に基づいて、前記故障推定箇所の中から故障箇所を特定する特定手段と、を備え、
前記出力手段は、
前記特定手段によって特定された故障箇所を出力することを特徴とする付記１〜１０のいずれか一つに記載の遅延解析装置。
【０１３１】
（付記１２）前記取込先が前記遅延信号を取り込む前の、前記故障推定箇所中に存在するセルの端子の信号遷移をあらわす複数のフェイルアドレスに基づいて、前記セルの端子の中から、前記全フェイルアドレスにおいて信号遷移が同一となる端子を検出する検出手段と、
前記検出手段によって検出された検出結果に基づいて、前記故障推定箇所の中から故障箇所を特定する特定手段と、を備え、
前記出力手段は、
前記特定手段によって特定された故障箇所を出力することを特徴とする付記１〜１０のいずれか一つに記載の遅延解析装置。
【０１３２】
（付記１３）前記取込先の出力期待値と前記設計対象回路の試験結果により得られる前記取込先の出力値との比較結果と、前記故障推定箇所に擬似遅延信号を与える擬似遅延故障シミュレーションの結果との一致性を判断する判断手段を備え、
前記特定手段は、
前記判断手段によって判断された判断結果に基づいて、前記故障推定箇所の中から前記故障箇所を特定することを特徴とする付記１１または１２に記載の遅延解析装置。
【０１３３】
（付記１４）前記特定手段は、
前記故障推定箇所のうち、前記判断手段により前記比較結果と完全一致する擬似遅延故障シミュレーションの結果が得られた経路を、前記故障箇所に特定することを特徴とする付記１３に記載の遅延解析装置。
【０１３４】
（付記１５）前記特定手段は、
前記故障推定箇所のうち、前記判断手段により前記比較結果と一部一致する擬似遅延故障シミュレーションの結果が得られた経路に接続されているセル内部を、前記故障箇所に特定することを特徴とする付記１３に記載の遅延解析装置。
【０１３５】
（付記１６）設計対象回路の試験により得られる遅延信号の取込先の中から任意の取込先を抽出する抽出工程と、
前記抽出工程によって抽出された取込先に至る経路中の出力分岐点を前記取込先から追跡する追跡工程と、
前記追跡工程によって追跡された出力分岐点に基づいて、前記設計対象回路内の故障推定箇所を決定する決定工程と、
前記決定工程によって決定された決定結果を出力する出力工程と、
を含んだことを特徴とする遅延解析方法。
【０１３６】
（付記１７）設計対象回路の試験により得られる遅延信号の取込先の中から任意の取込先を抽出させる抽出工程と、
前記抽出工程によって抽出された取込先に至る経路中の出力分岐点を前記取込先から追跡させる追跡工程と、
前記追跡工程によって追跡された出力分岐点に基づいて、前記設計対象回路内の故障推定箇所を決定させる決定工程と、
前記決定工程によって決定された決定結果を出力させる出力工程と、
をコンピュータに実行させることを特徴とする遅延解析プログラム。
【０１３７】
（付記１８）付記１７に記載の遅延解析プログラムを記録したコンピュータに読み取り可能な記録媒体。
【産業上の利用可能性】
【０１３８】
以上のように、本発明にかかる遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体は、半導体回路の遅延解析に有用であり、特に、スキャン機能を利用したディレイ試験、ディレイ故障以外のスキャン試験、またはファンクション試験に適している。
【図面の簡単な説明】
【０１３９】
【図１】この発明の実施の形態にかかる遅延解析装置のハードウェア構成を示すブロック図である。
【図２】この発明の実施の形態にかかる遅延解析装置の機能的構成を示すブロック図である。
【図３】バックトレース法を示す説明図である。
【図４−１】フェイルキャプチャーＦＦが複数の場合のバックトレース法（その１）を示す説明図である。
【図４−２】フェイルキャプチャーＦＦが複数の場合のバックトレース法（その２）を示す説明図である。
【図５】フェイルアドレスの一例を示す説明図である。
【図６】フェイルアドレスの他の例を示す説明図である。
【図７−１】擬似遅延故障シミュレーションによる故障箇所の特定処理内容（その１）を示す説明図である。
【図７−２】擬似遅延故障シミュレーションによる故障箇所の特定処理内容（その２）を示す説明図である。
【図７−３】擬似遅延故障シミュレーションによる故障箇所の特定処理内容（その３）を示す説明図である。
【図７−４】擬似遅延故障シミュレーションによる故障箇所の特定処理内容（その４）を示す説明図である。
【図７−５】擬似遅延故障シミュレーションによる故障箇所の特定処理内容（その５）を示す説明図である。
【図８】この発明の実施の形態にかかる遅延解析装置の遅延解析処理手順を示すフローチャートである。
【図９】スキャン試験方式（スキューロード方式）を示す説明図である。
【図１０】スキャン試験方式（スキューロード方式）を示すタイミングチャートである。
【図１１】スキャン試験方式（ブロードサイド方式）を示す説明図である。
【図１２】スキャン試験方式（ブロードサイド方式）を示すタイミングチャートである。
【符号の説明】
【０１４０】
２００  遅延解析装置
２０１  抽出部
２０２  追跡部
２０３  決定部
２０４  判定部
２０５  出力部
２０６  検出部
２０７  特定部
２０８  判断部
【図１】
0004636989.tif 000002
【図２】
0004636989.tif 000003
【図３】
0004636989.tif 000004
【図４−１】
0004636989.tif 000005
【図４−２】
0004636989.tif 000006
【図５】
0004636989.tif 000007
【図６】
0004636989.tif 000008
【図７−１】
0004636989.tif 000009
【図７−２】
0004636989.tif 000010
【図７−３】
0004636989.tif 000011
【図７−４】
0004636989.tif 000012
【図７−５】
0004636989.tif 000013
【図８】
0004636989.tif 000014
【図９】
0004636989.tif 000015
【図１０】
0004636989.tif 000016
【図１１】
0004636989.tif 000017
【図１２】
0004636989.tif 000018