(57)【要約】【課題】回路の動作を安定させつつ遅延時間を計測すること。【解決手段】組合せ回路（２１）の入力側に接続された第１のフリップフロップ（３１ａ）と、組合せ回路（３１）の出力側に接続され且つ出力された信号を遅延させる遅延部（３２）であって、遅延部（３２）における信号の遅延量を制御可能な遅延部（３２）と、遅延部（３２）の出力側に接続された第２のフリップフロップ（３１ｂ）と、第２のフリップフロップ（３１ｂ）から出力された信号が、予め設定された期待値でなくなった場合の遅延量に基づいて、組合せ回路（２１）の遅延時間を測定する測定手段（Ｃ５）と、を備えた遅延時間計測装置（１）。【選択図】図３
2015232531.tif 000002
【特許請求の範囲】
【請求項１】
入力されたデータに基づいてデータ処理を行う組合せ回路と、
前記組合せ回路の入力側に接続され、一定の周期信号として入力されるクロック信号に基づいてデータの取込みとその保持が可能な第１のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、予め設定されたテスト用の信号が入力される前記第１のフリップフロップと、
前記組合せ回路の出力側に接続され、且つ、前記組合せ回路から出力された信号を遅延させる遅延部であって、前記遅延部における信号の遅延量を制御可能な前記遅延部と、
前記遅延部の出力側に接続され、前記クロック信号に基づいてデータの取込みと保持が可能な第２のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、前記遅延部を通過したテスト用の信号が出力される前記第２のフリップフロップと、
前記第２のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延時間に基づいて、前記組合せ回路の遅延時間を測定する測定手段と、
を備えたことを特徴とする遅延時間計測装置。
【請求項２】
組合せ回路の入力側に、一定の周期信号として入力されるクロック信号に基づいてデータの取り込みとその保持が可能な第１のフリップフロップを接続し、
前記組合せ回路の出力側に、前記組合せ回路から出力された信号を遅延させる遅延部を接続し、
前記遅延部の出力側に、前記クロック信号に基づいてデータの取り込みとその保持が可能な第２のフリップフロップを接続し、
前記第１のフリップフロップからテスト用の信号を入力して、
前記組合せ回路でデータ処理がされた後に、前記遅延部で遅延され、前記第２のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延部における前記遅延量に基づいて、前記組合せ回路の遅延時間を測定する
ことを特徴とする遅延時間の計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路，電子回路および電気回路における遅延時間の計測方法および遅延時間計測装置に関する。
【背景技術】
【０００２】
トランジスタ等の半導体素子を使用した集積回路において、半導体の微細化に伴って、回路のばらつきが顕著になり、ばらつきを回路遅延として評価するためには、高精度に遅延時間を計測することが重要になっている。また、各種の故障は、回路の動作速度に影響を与えるが、微小な遅延時間を計測することはより精度よく回路のテストを行うことに寄与する。また、トランジスタの経年劣化は、回路の動作速度を低下させるため、回路の劣化判定にも遅延時間の計測が有効である。また、実際に製造された回路（もしくは任意の入出力間経路）の遅延時間を計測することは、回路の実力（動作速度マージンの確認）設計の正当性（設計通りの速度で設計されたかの確認）を評価することにも役立つ。
よって、高精度に且つ簡易、低コストで、回路の遅延時間を評価することは、半導体・回路の設計、テスト、評価、品質において重要である。
【０００３】
図１４は従来の順序回路の一例の説明図である。
図１４において、回路の遅延時間を測定したりテストする（故障の有無を調べる）ことを考える。遅延計測やテストを行う対象の順序回路０１において、演算や論理機能を実現する組合せ回路０２に対して、状態を保持（記憶）するフリップフロップ（ＦＦ）０３がある。この構成では、通常、ＦＦ０３には、外部から直接、値を設定したり、またＦＦ０３の値を直接取り出したりすることができないためにテストを困難にしている。また、ＦＦ０３はクロック信号に同期して動作するため、順序回路０１全体がクロック信号に同期して動作することとなり、組合せ回路０２の遅延時間を計測することもできない。
しかしながら、組合せ回路０２の遅延時間のテストを行う場合は、組合せ回路０２に入力した信号と、出力された信号との遅延時間、すなわち、回路０２への入力に対する回路０２の出力までの時間を測定することでテスト（遅延時間の計測）が可能である。そのために、外部から、ＦＦ０３への値の設定とその取り出しをできるようにし、テストの実行時のみ、順序回路を組合せ回路として動作できるようにしたものとして、スキャン設計された回路が知られている。
【０００４】
図１５は図１４の順序回路の等価回路の説明図である。
図１５において、スキャン設計された回路０１において、テスト対象回路０２（より正確にはテスト対象経路）の遅延テスト（遅延故障を検出するテスト）を実施する場合、まずはじめにスキャンインフリップフロップ（スキャンインＦＦ）０３ａにテスト用の入力値を設定した後にクロック（Launchクロック）を与えて、入力値をテスト対象回路０２に印加する。その後、テスト対象回路０２の出力値をCaptureクロックのタイミングでスキャンアウトＦＦ０３ｂで取り込む。なお、図１５の等価回路の図では、信号の流れを理解しやすくするために、図１４のＦＦ０３を、スキャンインＦＦ０３ａとスキャンアウトＦＦ０３ｂとみなして図示している。
この時、スキャンアウトＦＦ０３ｂの値が期待値（正しい出力値）であれば、テスト対象回路０２の遅延時間ｔｐｄは、クロック周期Ｔ（capture時刻〜launch時刻）より小さいので（ｔｐｄ＜Ｔ）、正常であると判断される。
【０００５】
仮に、スキャンアウトＦＦ０３ｂの値が期待値ではない場合（誤り出力値）は、ｔｐｄ＞Ｔであり、故障と判断される（遅延故障が存在）。なお、図１５に示すスキャン設計された回路０１では、縮退故障（信号線）が論理値「０」または「１」に固定される故障もテストできる。一般にスキャンテストでは、Ｔはその回路の動作周期に設定される（at-speedテスト）が、faster-than-at-speedテストと呼ばれるテスト手法では、T-fast＜Ｔであるテスト周期T-fastでテストされる。いずれの方法でも、ＴやT-fastは固定値である。このように、スキャン設計された回路０１に対する遅延故障テストでは、クロック周期Ｔを一定にしてテストを行い、テスト対象経路（回路０２）の出力値のパス・フェイル（期待値か否か）で遅延故障の有無を検出している。
【０００６】
（launchクロック発生タイミングを可変にする従来技術）
図１６はクロック信号の発生タイミングを可変にする回路の一例である。
図１５に示す手法に類似する手法として、スキャンインＦＦ０３ａへの供給クロック信号のlaunchクロックの発生タイミングを可変にして（captureのタイミングは一定）、テスト時のクロック周期を通常動作より早めてテストする手法もある。なお、この方法では、回路０１全体のシステムクロックを可変にするのではなく、テスト時にlaunchクロックの発生タイミングだけを可変にする。
launchクロックの発生タイミングを可変にする方法としては、図１６に示すように、マルチプレクサ０１１の入力側の一方に遅延時間Δｔのバッファ（遅延素子）０１２を接続し、他方には何も接続しない構成の組を、直列に接続した可変クロック発生回路０１３を使用する方法が考えられる。この可変クロック発生回路０１３では、各マルチプレクサ０１１を制御して、クロック信号が通過するバッファ０１２の個数を設定することで、Δｔ刻みでクロックの発生タイミングを設定可能である。
【０００７】
遅延テスト時に入力されるlaunchクロックの発生タイミングを遅らせる（変化させる）ことで、遅延テスト時のクロック周期T-test（capture時刻〜launch時刻）を短くすることができる（なお、captureタイミングは一定）。この方法により、通常のクロック周期Ｔよりも短いクロック周期T-testで遅延テストが可能である。
なお、可変クロックの発生方法は、図１６に例示した構成だけでなく、例えば、ＯＤＣＳ（on  die  clock  shrink）などいくつかの方法が提案されている。
【０００８】
図１７はlaunchクロック発生タイミングを可変にした場合のテスト結果の一例の説明図であり、図１７Ａはlaunchクロックの発生タイミングをｎ×Δｔだけ遅らせた場合の説明図、図１７Ｂはlaunchクロックの発生タイミングを（ｎ＋１）×Δｔだけ遅らせた場合の説明図である。
図１６のようなlaunchクロックの発生タイミングを遅らせて遅延テストを行う場合、図１５におけるスキャンインＦＦ０３ａのクロック信号に可変クロック発生回路０１３の出力側が接続される。図１５のテスト対象回路０２において、テスト対象の経路Ｐに対して、launchクロックをｎ×Δｔ（ｎは正の整数）まで変化させた時は、図１７Ａに示すようにスキャンアウトＦＦ０３ｂの出力値は期待値であり（遅延テストをパス）、launchクロックを（ｎ＋１）×Δｔまで変化させた時に、図１７Ｂに示すようにスキャンアウトＦＦ０３ｂの値が期待値とは異なっていた（遅延テストをフェイル）とする。
【０００９】
このとき、テスト対象の経路Ｐの遅延時間ｔｐｄ（Ｐ）は、以下の式（０１）を満たす。
Ｔ−（ｎ＋１）×Δｔ＜ｔｐｄ（Ｐ）＜Ｔ−ｎ×Δｔ  …式（０１）
したがって、経路Ｐのタイミングマージン（周期Ｔに対する遅延時間の余裕）は、ｎ×Δｔであることがわかる。
なお、このように、可変クロック発生回路を使用して、遅延テストを行う技術として、例えば、特許文献１（国際公開２０１１／１１５０３８号公報）が知られている。
【００１０】
（captureクロック発生タイミングを可変にする従来技術）
図１５〜図１７に示す従来技術と類似する手法として、スキャンアウトＦＦ０３ｂへの供給クロック信号のcaptureクロックの発生タイミングを可変にして（launchクロックのタイミングは一定）、テスト時のクロック周期を通常動作よりも早めてテストする技術も存在する。
なお、captureクロックの発生タイミングを可変にする技術でも、図１６、図１７に示すlaunchクロックの発生タイミングを可変にする従来技術と、遅延時間（ｎ×Δｔ）の計測の方法は同様である。
また、captureクロックの発生タイミングを可変にする技術としては、例えば、非特許文献１が知られている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】国際公開２０１１／１１５０３８号公報（「００５３」、「００６２」〜「００６７」、図１）
【非特許文献】
【００１２】
【非特許文献１】S.Jin , et al , “Unified capture scheme for small delay defect detection and aging prediction,” ,IEEE Trans. VLSI Systems, Vo.21, No.5, pp.821-833, May 2013
【発明の概要】
【発明が解決しようとする課題】
【００１３】
(従来技術の問題点)
前述のlaunchクロックやcaptureクロックのタイミングを変化させる従来技術では、クロック信号の発生タイミングを変化させるので、クロック信号線上に付加回路を挿入する必要がある。このため、遅延テストを行っていない通常の動作時に、フリップフロップへのクロック信号の供給タイミングが遅延する等の悪影響を与え、クロック信号が安定してフリップフロップに供給されない恐れがある。したがって、フリップフロップの挙動が安定せず、回路全体が不安定になる恐れもある。特に、フリップフロップは、回路によっては、数千個の単位で設けられており、クロック信号が安定して供給されないと、問題が大きくなりやすく、好ましくない。
また、この方法はスキャン設計された集積回路だけを対象としており、非スキャン設計回路や集積回路以外の電気回路、電子回路、ボード回路などへの適用は困難である。
【００１４】
本発明は、多様な電気動作の回路の遅延時間を計測することを第１の技術的課題とする。
また、本発明は、回路の動作を安定させつつ遅延時間を計測することを第２の技術的課題とする。
【課題を解決するための手段】
【００１５】
前記技術的課題を解決するために、請求項１に記載の発明の遅延時間計測装置は、
入力されたデータに基づいてデータ処理を行う組合せ回路と、
前記組合せ回路の入力側に接続され、一定の周期信号として入力されるクロック信号に基づいてデータの取込みとその保持が可能な第１のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、予め設定されたテスト用の信号が入力される前記第１のフリップフロップと、
前記組合せ回路の出力側に接続され、且つ、前記組合せ回路から出力された信号を遅延させる遅延部であって、前記遅延部における信号の遅延量を制御可能な前記遅延部と、
前記遅延部の出力側に接続され、前記クロック信号に基づいてデータの取込みと保持が可能な第２のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、前記遅延部を通過したテスト用の信号が出力される前記第２のフリップフロップと、
前記第２のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延時間に基づいて、前記組合せ回路の遅延時間を測定する測定手段と、
を備えたことを特徴とする。
【００１６】
前記技術的課題を解決するために、請求項２に記載の発明の遅延時間の計測方法は、
組合せ回路の入力側に、一定の周期信号として入力されるクロック信号に基づいてデータの取り込みとその保持が可能な第１のフリップフロップを接続し、
前記組合せ回路の出力側に、前記組合せ回路から出力された信号を遅延させる遅延部を接続し、
前記遅延部の出力側に、前記クロック信号に基づいてデータの取り込みとその保持が可能な第２のフリップフロップを接続し、
前記第１のフリップフロップからテスト用の信号を入力して、
前記組合せ回路でデータ処理がされた後に、前記遅延部で遅延され、前記第２のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延部における前記遅延量に基づいて、前記組合せ回路の遅延時間を測定する
ことを特徴とする。
【発明の効果】
【００１７】
請求項１，２に記載の発明によれば、フリップフロップと遅延部とで遅延時間の計測が可能であり、スキャン設計された回路だけでなく、非スキャン設計回路や集積化回路以外の多様な電気動作の回路の遅延時間を計測することができる。また、請求項１，２に記載の発明によれば、組合せ回路の出力側に遅延部が接続されており、クロック信号線上に付加回路を挿入しなくても遅延の計測が可能であり、本発明の構成を有しない場合に比べて、回路の動作を安定させつつ遅延時間を計測することができる。
【図面の簡単な説明】
【００１８】
【図１】図１は本発明の実施例１の遅延時間計測装置の説明図である。
【図２】図２は実施例１の遅延時間計測装置の機能ブロック図である。
【図３】図３は図２の回路部分の等価回路図である。
【図４】図４は実施例１の遅延部の説明図であり、図４Ａは実施例１の遅延回路の説明図、図４Ｂは実施例１の変更例の遅延回路の説明図である。
【図５】図５は実施例１の遅延時間計測処理のフローチャートの説明図である。
【図６】図６は実施例１の作用説明図であり、図６Ａは図３に対応する等価回路図、図６Ｂは遅延素子が０個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図６Ｃは遅延素子が１個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図６Ｄは遅延素子がｍ個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図６Ｅは遅延素子がｍ＋１個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャートである。
【図７】図７はスキャンインＦＦや遅延回路での伝搬遅延の説明図であり、図７Ａは図３に対応する等価回路図、図７Ｂは遅延素子が１個の場合のクロック信号、組合せ回路への入力信号、組合せ回路からの出力信号、遅延回路からの出力信号のタイミングチャートである。
【図８】図８はセットアップ時間とホールド時間の説明図である。
【図９】図９は実施例２の遅延時間計測装置の回路図および機能ブロック図であり、実施例１の図３に対応する図である。
【図１０】図１０は実施例２のタイミングチャートの説明図であり、図１０Ａは遅延素子が０個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図１０Ｂは遅延素子がａ個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図１０Ｃは遅延素子がｂ個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャートである。
【図１１】図１１は実施例２の遅延時間計測処理のフローチャートの説明図である。
【図１２】図１２は実施例２の変更例の説明図であり、図１２Ａは実施例２の変更例１の説明図、図１２Ｂは実施例２の変更例２の説明図である。
【図１３】図１３は実験例の説明図であり、図１３Ａは実験パラメータの一覧表、図１３Ｂは挿入遅延の個数とテストの結果の一覧表、図１３Ｃは遅延素子の変動の一覧表の説明図である。
【図１４】図１４は従来の順序回路の一例の説明図である。
【図１５】図１５は図１４の順序回路の等価回路の説明図である。
【図１６】図１６はクロック信号の発生タイミングを可変にする回路の一例である。
【図１７】図１７はlaunchクロック発生タイミングを可変にした場合のテスト結果の一例の説明図であり、図１７Ａはlaunchクロックの発生タイミングをｎ×Δｔだけ遅らせた場合の説明図、図１７Ｂはlaunchクロックの発生タイミングを（ｎ＋１）×Δｔだけ遅らせた場合の説明図である。
【発明を実施するための形態】
【００１９】
次に図面を参照しながら、本発明の実施の形態の具体例（以下、実施例と記載する）を説明するが、本発明は以下の実施例に限定されるものではない。
なお、以下の図面を使用した説明において、理解の容易のために説明に必要な部材以外の図示は適宜省略されている。
【実施例１】
【００２０】
図１は本発明の実施例１の遅延時間計測装置の説明図である。
図１において、本発明の実施例１の遅延時間計測装置１は、制御装置の一例としてのテスタ２を有する。テスタ２は、本体２ａと、表示部の一例としてのディスプレイ２ｂと、テストヘッド１１と、図示しない入力ボタン等と、を有する。テストヘッド１１には、計測対象物の一例としてのシステムＬＳＩ基板１２が装着されている。テスタ２の本体２ａは、システムＬＳＩ基板１２に電源を供給する電源装置や、システムＬＳＩ基板１２に信号を入力する回路、システムＬＳＩ基板１２からの出力信号を取得する測定装置、パルスを発生させるパルスジェネレータ、各信号の入力や出力のタイミングを生成するタイミング発生器、各種プログラムが記憶されたメモリや演算装置（ＣＰＵ等）等を有する。
【００２１】
図２は実施例１の遅延時間計測装置の機能ブロック図である。
図２において、実施例１のシステムＬＳＩ基板１２の内部には、複数の回路ブロックがあり，そのブロックは組合せ回路２１を有している。各組合せ回路２１は、入力されるデータに基づいてデータ処理を行うデータ処理部の一例としての回路本体２１ａと、データが入力される入力部の一例としての入力端子２１ｂ，２１ｃと、データが出力される出力部の一例としての出力端子２１ｄ，２１ｅとを有する。
入力端子の一方（２１ｂ）は、組合せ回路２１への外部入力であり、出力端子の一方（２１ｄ）も、組合せ回路２１の外部出力である。
【００２２】
入力端子の他方（２１ｃ）は、組合せ回路２１のデータ処理に対応して設けられたデータの保持部の一例としてのフリップフロップ３１の出力側に接続されている。
なお、フリップフロップ３１は、図２では、理解の容易のために１つのみを代表して示しているが、実際は、組合せ回路２１の処理に応じてデータを保持する必要のある数だけ、フリップフロップ３１が設けられている。すなわち、フリップフロップ３１は複数設けられている。フリップフロップ３１には、データを保持、更新する時期を制御するためのクロック信号が入力される。
【００２３】
また、組合せ回路２１の出力端子の他方（２１ｅ）には、遅延部の一例としての遅延回路３２が接続されている。なお、実施例１の遅延回路３２は、テスタ２からの制御信号が入力可能に構成されている。
遅延回路３２の出力側は、切替素子の一例としてのマルチプレクサ３３の一方の入力端子に入力されている。マルチプレクサ３３の他方の入力端子には、テスタ２からテスト用の信号（スキャンイン、Ｃin）が入力可能に構成されている。また、マルチプレクサ３３には、テスタ２から切り替え用の制御信号も入力可能に構成されている。
マルチプレクサ３３の出力側は、フリップフロップ３１の入力側に接続されている。また、実施例１のフリップフロップ３１は、テスタ２に対してテスト用の信号（スキャンアウト、Ｃout）が出力可能に構成されている。
【００２４】
図３は図２の回路部分の等価回路図である。
図２、図３において、図２の回路図において、マルチプレクサ３３での切り替えをわかりやすくした等価回路が図３に示す回路図となる。すなわち、テスト用の信号（Ｃin）がマルチプレクサ３３を通過して入力される状態のフリップフロップ３１を第１のフリップフロップの一例としてのスキャンインＦＦ３１ａとみなすことができ、遅延回路３２を通過した信号（Ｄout）がマルチプレクサ３３を通過して入力される状態のフリップフロップ３１を第２のフリップフロップの一例としてのスキャンアウトＦＦ３１ｂとみなすことができる。
【００２５】
図４は実施例１の遅延部の説明図であり、図４Ａは実施例１の遅延回路の説明図、図４Ｂは実施例１の変更例の遅延回路の説明図である。
図４Ａにおいて、実施例１の遅延回路３２は、切替素子の一例としてのマルチプレクサ４１を有する。マルチプレクサ４１には、複数の入力部４２が設けられている。実施例１のマルチプレクサ４１は、入力信号が直接接続される入力部４２−０や、遅延素子の一例としてのバッファ４３が１つ挿入されてバッファ４３を１つ通過した入力信号が入力される入力部４２−１、バッファ４２が２つ挿入された入力部４２−２、…、バッファ４３がｎ個（ｎは正の整数）挿入された入力部４２−ｎ、を有する。なお、実施例１では、各バッファ４３は全て共通の構成をしており、１つのバッファ４３を通過した信号は、遅延量の一例としての時間Δｔだけ遅延するものが使用される。したがって、ｎ個のバッファ４３を通過した場合、遅延量（遅延時間）はｎ×Δｔとなる。なお、整数ｎは、一例として、回路本体２１ａにおいて故障がない状況における最大の遅延時間に対応する値が設定されているが、測定したい遅延時間の範囲や許容される遅延時間の範囲等、設計や仕様に応じて適宜変更可能である。
なお、テスタ２から遅延回路３２に入力される制御信号は、マルチプレクサ４１に入力され、どの入力部４２−０〜４２−ｎから入力された信号を出力するかが制御される。
【００２６】
なお、遅延回路３２は、図４Ａに記載された構成に限定されず、遅延時間が切替可能な任意の構成を採用可能である。例えば、図４Ｂに示すように、マルチプレクサ４６の一方の入力にバッファ４７を挿入し、他方の入力には何も素子を挿入しないものを１段として、このマルチプレクサ４６とバッファ４７の組を多段に接続した構成を採用することも可能である。この構成では、各段のマルチプレクサ４６を制御して、出力信号を通過させる経路を、バッファ４７側にするか否かを切り替えることで、出力信号が通過するバッファ４７の数を制御して、遅延量を制御することが可能である。
【００２７】
（実施例１のテスタ２の制御部の説明）
図２において、実施例１のテスタ２は、外部との信号の入出力および入出力信号レベルの調節等を行うＩ／Ｏ（入出力インターフェース）、必要な起動処理を行うためのプログラムおよびデータ等が記憶されたＲＯＭ（リードオンリーメモリ）、必要なデータ及びプログラムを一時的に記憶するためのＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ等に記憶された起動プログラムに応じた処理を行うＣＰＵ（中央演算処理装置）ならびにクロック発振器等を有するコンピュータ装置により構成されており、前記ＲＯＭ及びＲＡＭ等に記憶されたプログラムを実行することにより種々の機能を実現することができる。
前記本体２ａには、基本動作を制御する基本ソフト、いわゆる、オペレーティングシステムＯＳ、アプリケーションプログラムとしての遅延時間計測プログラムＡＰ１、その他の図示しないソフトウェアが記憶されている。
【００２８】
（実施例１の本体２ａに接続された信号入力要素）
本体２ａは、システムＬＳＩ基板１２のフリップフロップ３１からの出力信号（スキャンアウト、Ｃout）等の信号出力要素からの出力信号が入力されている。
【００２９】
（テスタ２の本体２ａの機能）
実施例１のテスタ２の本体２ａは、下記の機能手段（プログラムモジュール）を有する。
Ｃ１：テスト信号入力手段
テスト信号入力手段Ｃ１は、組合せ回路２１における遅延時間の測定を行う場合に、予め設定されたテスト用の信号の一例としてのスキャンインの信号（Ｃin）を入力する。すなわち、実施例１のテスト信号入力手段Ｃ１は、図３に示す等価回路において、スキャンインＦＦ３１ａにスキャンイン信号Ｃinを入力する。実施例１のスキャンインの信号は、テスト対象の回路本体２１ａにおいて、一般には最も時間がかかる処理（経路Ｐの処理）、すなわち、時間的なマージン（余裕）が最も少なく、遅延時間が最も厳しい処理が行われる信号（テストパターン）が使用されるが、適切なテストパターンを入力することで任意の経路の遅延時間を計測できる。なお、実施例１では、テストパターンとして、従来公知の通常のスキャンテストで使用される遅延故障テスト用の入力値を使用しているが、これに限定されず、遅延時間計測用の専用の信号を使用することも可能である。なお、実施例１では、スキャンインの信号は、マルチプレクサ３３の他方の入力端子に入力される。
【００３０】
Ｃ２：切替制御手段
切替制御手段Ｃ２は、マルチプレクサ３３を介して、フリップフロップ３１に入力される信号の切り替えを制御する。実施例１では、マルチプレクサ３３は、通常時は、遅延回路３２からの信号がフリップフロップ３１に入力されるように設定されており、スキャンインの信号が入力される場合に、切替制御手段Ｃ２は、マルチプレクサ３３からスキャンインの信号がフリップフロップ３１に入力されるように切り替え、スキャンインの信号が入力されると、遅延回路３２からの信号がフリップフロップ３１に入力されるように切り替える。
【００３１】
Ｃ３：遅延量制御手段
遅延量制御手段Ｃ３は、遅延回路３２のマルチプレクサ４１を介して、遅延回路３２に入力された信号に対する出力される信号の遅延量を制御する。実施例１では、マルチプレクサ４１は、遅延テストが行われない通常時は、入力信号が直接接続される入力部４２−０に接続されており、遅延テストが開始された場合、遅延量制御手段Ｃ３は、入力部４２−１から、順に、挿入されたバッファ４２が多い入力部４２−２〜４２−ｎに順次切り替える。なお、実施例１の遅延量制御手段Ｃ３は、スキャンインの信号が入力される度に入力部４２−１〜４２−ｎを１つずつ切り替える。
【００３２】
Ｃ４：テストパス判定手段
テストパス判定手段Ｃ４は、フリップフロップ３１から出力された信号、すなわち、スキャンアウトＦＦ３１ｂから出力された信号（スキャンアウト信号Ｃout）に基づいて、遅延テストに合格したか否かを判定する。実施例１のテストパス判定手段Ｃ４は、スキャンアウトの信号が、予め設定された期待値の一例としての「１」である場合に、遅延テストに合格（パス）したと判定し、スキャンアウトの信号が「０」の場合に、遅延テストに不合格（フェイル）したと判定する。すなわち、クロック信号（capture）に応じて、スキャンアウトＦＦがデータを保持するタイミングにおける遅延回路３２からの信号Ｄoutが、「０」であるか「１」であるかを判定する。
【００３３】
Ｃ５：遅延時間計測手段
遅延時間計測手段Ｃ５は、テストパス判定手段Ｃ４が遅延テストに不合格と判定された場合の遅延量に基づいて、回路本体２１ａの遅延時間を測定する。なお、実施例１の遅延時間計測手段Ｃ５は、テストパス判定手段Ｃ４が不合格と判定すると、遅延時間の計測処理を終了させて、テスト信号入力手段Ｃ１によるテスト信号の入力や遅延量制御手段Ｃ３による切り替え等を終了させる。なお、遅延量が用意されている最大の遅延量ｎ×Δｔでも遅延テストをパスした場合には、遅延時間を「ｎ×Δｔ以上」として出力する。また、実施例１の遅延時間計測手段Ｃ５は、テストをフェイルした時の遅延量（ｍ＋１）×Δｔと、フェイルする直前にパスした時の遅延量ｍ×Δｔ（ｍ≦ｎ）と、クロック信号の周期Ｔと、スキャンインＦＦ３１ａを信号が通過することに伴う遅延時間ｔ１、遅延回路３２のマルチプレクサ４１を信号が通過することに伴う遅延時間をｔ２、スキャンアウトＦＦ３１ｂにおいてデータを取り込むために必要な時間（セットアップ時間）ｔ３、に基づいて、遅延回路３２の経路Ｐの遅延時間ｔｐｄを、以下の式（１）を使用して導出する。
Ｔ−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３＜ｔｐｄ＜Ｔ−ｍ×Δｔ−ｔ１−ｔ２−ｔ３  
…式（１）
すなわち、実施例１の遅延時間計測手段Ｃ５は、遅延回路３２の遅延時間ｔｐｄの範囲を計測結果として、ディスプレイ２ｂに表示する。なお、遅延時間ｔｐｄの範囲を遅延時間の計測結果とする構成に限定されず、例えば、遅延時間ｔｐｄの範囲の中間値（＝Ｔ−（ｍ＋１／２）×Δｔ−ｔ１−ｔ２−ｔ３）を、遅延時間ｔｐｄとみなしたり、最初にフェイルした時間（＝Ｔ−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３）を、遅延時間ｔｐｄとみなして、計測結果とすることも可能である。
【００３４】
（実施例１の流れ図の説明）
次に、実施例１の遅延時間計測装置における制御の流れを流れ図、いわゆるフローチャートを使用して説明する。
【００３５】
（遅延時間計測処理のフローチャートの説明）
図５は実施例１の遅延時間計測処理のフローチャートの説明図である。
図５のフローチャートの各ステップＳＴの処理は、テスタ２の本体２ａに記憶されたプログラムに従って行われる。また、この処理はテスタ２の他の各種処理と並行して実行される。
図５に示すフローチャートは遅延時間計測プログラムＡＰ１の起動により開始される。
【００３６】
図５のＳＴ１において、遅延回路３２における遅延量ｍ×Δｔのｍを１に設定する。すなわち、マルチプレクサ４１を制御して、バッファ４３が１つ挿入された入力部４２−１に切り替える。そして、ＳＴ２に進む。
ＳＴ２において、マルチプレクサ３３をスキャンイン側に切り替える。そして、ＳＴ３に進む。
ＳＴ３において、次の処理（１），（２）を実行して、ＳＴ４に進む。
（１）スキャンインの信号をフリップフロップ３１に入力する。
（２）マルチプレクサ３３を遅延回路３２側に切り替える。
ＳＴ４において、クロック信号をフリップフロップ３１に印加し、ＳＴ５に進む。
【００３７】
ＳＴ５において、フリップフロップ３１からスキャンアウトの信号を受信する。そして、ＳＴ６に進む。
ＳＴ６において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス（Ｙ）の場合、すなわち、テストをパスした場合はＳＴ７に進む。ノー（Ｎ）の場合、すなわち、テストをフェイルした場合はＳＴ９に進む。
ＳＴ７において、遅延素子の数ｍが、最大値ｎ以上であるか否か、すなわち、ｍ≧ｎであるか否かを判別する。ノー（Ｎ）の場合はＳＴ８に進み、イエス（Ｙ）の場合はＳＴ９に進む。
ＳＴ８において、遅延量ｍ×Δｔのｍを１加算する（ｍ＝ｍ＋１）。すなわち、マルチプレクサ４１を制御して、テストをパスした場合よりもバッファ４３が１つ多い側の入力部４２−２〜４２−ｎに切り替える。そして、ＳＴ２に戻る。
ＳＴ９において、テストをフェイルした場合の遅延量ｍ×Δｔまたは最大の遅延量ｎ×Δｔと、式（１）とに基づいて、遅延時間ｔｐｄの計測結果をディスプレイ２ｂに出力する。そして、遅延時間計測処理を終了する。
【００３８】
（実施例１の作用）
前記構成を備えた実施例１の遅延時間計測装置１では、遅延時間の計測が行われない通常の状況では、遅延回路３２が、バッファ４３の無い入力部４２−０に接続されており、遅延のない状況で組合せ回路２１での処理や、フリップフロップ３１との間でのデータのやりとりが行われる。
【００３９】
図６は実施例１の作用説明図であり、図６Ａは図３に対応する等価回路図、図６Ｂは遅延素子が０個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図６Ｃは遅延素子が１個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図６Ｄは遅延素子がｍ個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図６Ｅは遅延素子がｍ＋１個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャートである。
図６において、遅延時間の計測が行われる場合、遅延時間の計測対象の組合せ回路２１に対応するフリップフロップ３１に対して、スキャンインの信号が入力される。フリップフロップ３１には、クロック信号が入力されており、ある時刻ｔのクロックに同期して、フリップフロップ３１（スキャンインＦＦ３１ａ）からテストパターンが組合せ回路２１に入力される。
【００４０】
図６Ｂにおいて、仮に、バッファ４３が挿入されていない場合は、時刻ｔからクロック信号の１周期Ｔが経過した後の時刻（ｔ＋Ｔ）に、組合せ回路２１からの出力がフリップフロップ３１（スキャンアウトＦＦ３１ｂ）に取り込まれる。スキャンアウトＦＦ３１ｂの出力Ｃoutが期待値（回路が正常な場合の出力値、実施例１では「１」）と同じ時は、クロック信号の１周期Ｔの時間内に、組合せ回路２１の入力から出力まで信号が伝搬したことになり、テストはパスする（正常）。すなわち、組合せ回路２１の遅延時間ｔｐｄ＜Ｔである。
【００４１】
図６Ｃにおいて、遅延回路３２が制御されて、バッファ４３が１つ挿入された入力部４２−１に切り替えられた場合、図６Ｃに示すように、出力Ｃoutの時刻が、図６Ｂに示すバッファ４３が挿入されていない場合に比べて、１×Δｔだけ遅くなる。この状態でも、出力Ｃoutが期待値と同じ場合は、テストはパスする。一方、出力Ｃoutが期待値と異なる場合、組合せ回路２１での信号の伝搬が１クロック周期Ｔよりも長くかかっている、すなわち、ｔｐｄ＋１×Δｔ＞Ｔであり、テストはフェイルする（異常、故障）。
【００４２】
そして、テストがパスからフェイルになるまで、バッファ４３の数を増やしていく。一例として、図６Ｄに示すようにバッファ４３がｍ個挿入された場合（挿入された遅延量＝ｍ×Δｔ）ではテストをパスし、図６Ｅに示すように、バッファ４３が（ｍ＋１）個挿入された場合（挿入された遅延量＝（ｍ＋１）×Δｔ）ではテストをフェイルする場合を考える。
この時、クロック周期Ｔと、挿入された遅延量ｍ×Δｔ、（ｍ＋１）×Δｔから、未知数である計測対象経路Ｐの遅延時間ｔｐｄ（Ｐ）は、以下の式（２），（３）で表すことができる。
ｔｐｄ（Ｐ）＋ｍ×Δｔ＜Ｔ  …式（２）
ｔｐｄ（Ｐ）＋（ｍ＋１）×Δｔ＞Ｔ  …式（３）
式（２），式（３）から、以下の式（４）が得られる。
Ｔ−（ｍ＋１）×Δｔ＜ｔｐｄ（Ｐ）＜Ｔ−ｍ×Δｔ  …式（４）
なお、入力信号Ｃinを変えることで、計測対象経路Ｐを変更することが可能である。よって、クロック周期Ｔと、挿入された遅延量ｍ×Δｔ、（ｍ＋１）×Δｔから任意の経路Ｐの遅延時間ｔｐｄ（Ｐ）を求めることが可能である。したがって、実施例１では、バッファ４３の１つ当たりの遅延量Δｔの精度で遅延時間を計測できる。
【００４３】
図７はスキャンインＦＦや遅延回路での伝搬遅延の説明図であり、図７Ａは図３に対応する等価回路図、図７Ｂは遅延素子が１個の場合のクロック信号、組合せ回路への入力信号、組合せ回路からの出力信号、遅延回路からの出力信号のタイミングチャートである。
図７において、実施例１の回路構成では、スキャンインＦＦ３１ａにクロック信号が入ってからスキャンインＦＦ３１ａの出力に信号が出力されるまでの伝搬時間が伝搬遅延ｔ１として存在する。また、遅延回路３２内のマルチプレクサ４１においても伝搬遅延ｔ２が存在する。よって、これらの伝搬遅延ｔ１，ｔ２を考慮すると、式（４）は、式（５）のように書き換えられる。
Ｔ−（ｍ＋１）×Δｔ−ｔ１−ｔ２＜ｔｐｄ（Ｐ）＜Ｔ−ｍ×Δｔ−ｔ１−ｔ２
…式（５）
なお、伝搬遅延ｔ１，ｔ２が十分に小さくて無視できる場合や、遅延時間ｔｐｄの測定で要求される精度によっては、式（４）を使用して遅延時間を演算することも可能である。また、遅延回路３２の構成が実施例と異なり、マルチプレクサを使用しない場合は、ｔ２＝０となる場合もある。
【００４４】
図８はセットアップ時間とホールド時間の説明図である。
また、図８に示すように、一般に、フリップフロップには、クロック信号が入る前にフリップフロップのデータ入力信号が安定している期間（セットアップ時間）ｔ３と、データを確実に取り込むためにクロック信号が入った後もデータ入力信号が安定している期間（ホールド時間）ｔ４が必要である。よって、スキャンアウトＦＦ３１ｂが、遅延回路３２の出力信号Ｄoutの値を取り込むためには、スキャンアウトＦＦ３１ｂのセットアップ時間ｔ３よりも前に、データ信号が到着していなければならない。裏を返せば、スキャンアウトＦＦ３１ｂが遅延回路３２の出力Ｄoutを取り込んだのであれば、セットアップ時間ｔ３よりも前に、スキャンアウトＦＦ３１ｂの入力側にデータ信号が到着している。よって、スキャンアウトＦＦ３１ｂのセットアップ時間ｔ３を考慮した場合、式（５）は、前述の式（１）で表現される。
Ｔ−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３＜ｔｐｄ＜Ｔ−ｍ×Δｔ−ｔ１−ｔ２−ｔ３  
…式（１）
なお、セットアップ時間ｔ３が、他の値（周期Ｔや遅延量Δｔ等）に比べて十分小さい場合等では、セットアップ時間ｔ３を無視したり、ｔ３＝０とみなして計算することも可能である。
【００４５】
なお、一般に、フリップフロップでは、セットアップ時間ｔ３より遅れ、且つ、ホールド時間より前にデータ信号入力された場合には、フリップフロップの出力が取り込んだ値が「不定」となる。しかし、挿入するバッファ４３を増やしていき、信号変化がセットアップ時間ｔ３＋ホールド時間ｔ４の間に起こったとしても、スキャンアウトＦＦ３１ｂが故障値（期待値ではない値）を取り込んで、遅延テストをフェイルすれば、遅延計測は終了する。よって、結果として、この場合でも、Δｔの精度で遅延計測が可能である。
例えば、Δｔ＞ｔ３＋ｔ４の場合に、挿入された遅延量ｍ′×Δｔで、セットアップ時間ｔ３より遅れてデータ信号が入力された場合、すなわち、信号変化がｔ３＋ｔ４の間に発生した場合を考える。この時、スキャンアウトＦＦ３１ｂが故障値を取り込んだ場合（テストをフェイルした場合）は、遅延計測が終了するので、求める遅延時間ｔｐｄ（Ｐ）は、以下の式（６）となる。
Ｔ−ｍ′×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ（Ｐ）＜Ｔ−（ｍ′−１）×Δｔ−ｔ１−ｔ２−ｔ３  …式（６）
【００４６】
逆に、スキャンアウトＦＦ３１ｂが期待値を取り込んだ場合（テストをパスした場合）は、挿入されるバッファ４３がもう１つ増やされて、遅延量が（ｍ′＋１）Δｔになる。遅延量が（ｍ′＋１）Δｔになると、Δｔ＞ｔ３＋ｔ４であるため、信号変化は、ｔ３＋ｔ４よりも後に確実に発生する。よって、スキャンアウトＦＦ３１ｂには、確実に故障値が入力され、スキャンアフトＦＦ３１ｂは、確実に故障値を取り込む（テストをフェイルする）。よって、この時の遅延時間ｔｐｄは、以下の式（７）となる。
Ｔ−（ｍ′＋１）×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ（Ｐ）＜Ｔ−ｍ′×Δｔ−ｔ１−ｔ２−ｔ３  …式（７）
よって、式（６）、式（７）のいずれの場合でも、Δｔの精度で遅延時間ｔｐｄ（Ｐ）を計測できる。なお、より精度が要求される場合には、遅延時間の計測を複数回行って、式（６）の発生回数と、式（７）の発生回数から、平均をとって遅延時間ｔｐｄ（Ｐ）とすることも可能である。
【００４７】
なお、１つのバッファ４３の遅延量Δｔの値が、Δｔ＜ｔ３＋ｔ４の場合、データ信号の変化がｔ３＋ｔ４の期間に複数回発生する。具体的には、［］をガウス記号とした場合、［（ｔ３＋ｔ４）／Δｔ］回、データ信号の変化が発生する。その中でテストをフェイルした時のバッファ４３がｋ個であれば、以下の式（８）が成立する。
Ｔ−ｋ×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ（Ｐ）＜Ｔ−（ｋ−１）×Δｔ−ｔ１−ｔ２−ｔ３  …式（８）
【００４８】
したがって、実施例１の遅延時間計測装置１では、特許文献１、非特許文献１のような従来技術と異なり、フリップフロップ３１のクロック信号を変化させず、組合せ回路２１の出力側に遅延回路３２を挿入するだけで、遅延時間ｔｐｄを測定することが可能である。よって、従来技術に比べて、クロック信号が不安定になることが抑制され、フリップフロップ３１の挙動が不安定になることが低減される。したがって、システムＬＳＩ基板１２全体が不安定になることを抑制しつつ、遅延時間ｔｐｄを測定することが可能である。
【００４９】
図３に示す構成ではでは、フリップフロップ３１を備え、スキャン設計がされたシステムＬＳＩ基板１２における遅延時間ｔｐｄの計測方法を説明した。すなわち、スキャン設計がされた回路では、既存のスキャン設計の部分を利用して、遅延時間の計測を行っている。これに対して、実施例１の構成は、スキャン設計がされていない回路や、フリップフロップ３１を備えない回路、例えば、ボード回路（組合せ回路２１のみ）等の遅延時間の計測にも適用可能である。
ボード回路等の遅延時間の計測を行う場合には、ボード回路側に備わっていない各素子、すなわち、テストヘッド１１側に、スキャンインＦＦ３１ａと、遅延回路３２、スキャンアウトＦＦ３１ｂ、図示しないクロック信号の発生回路を設けておき、テストヘッド１１にボード回路（図３の組合せ回路２１のみに相当）を装着することで、図３の場合と同様にして、ボード回路の遅延時間を計測可能である。他にも、スキャンインＦＦ３１ａ、遅延回路３２、スキャンアウトＦＦ３１ｂ、クロック発生回路を統合したアダプタを作成しておき、ボード回路等の計測を行う場合には、テストヘッド１１とボード回路との間にアダプタを装着してボード回路の遅延時間を計測し、スキャン設計回路の遅延時間の計測を行う場合にはアダプタを使用せずに遅延時間の計測を行うことも可能である。
よって、特許文献１、非特許文献１に記載の技術では、スキャン設計された回路が前提となっているが、実施例１では、スキャン設計されていない回路やフリップフロップを有しない回路といった多様な電気動作の回路の遅延時間を計測可能である。
【実施例２】
【００５０】
図９は実施例２の遅延時間計測装置の回路図および機能ブロック図であり、実施例１の図３に対応する図である。
図１０は実施例２のタイミングチャートの説明図であり、図１０Ａは遅延素子が０個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図１０Ｂは遅延素子がａ個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図１０Ｃは遅延素子がｂ個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャートである。
次に、本発明の実施例２の説明をするが、この実施例２の説明において、前記実施例１の構成要素に対応する構成要素には同一の符号を付して、その詳細な説明を省略する。
この実施例２は、下記の点で前記実施例１と相違しているが、他の点では前記実施例１と同様に構成されている。
【００５１】
図９において、実施例２の遅延時間計測装置１では、第２のフリップフロップの一例として、スキャンアウトＦＦ３１ｂとは異なるスキャンアウトＦＦ５１を有する。実施例２のスキャンアウトＦＦ５１は、クロック信号の立ち上がりでデータを取り込む第１観測ＦＦ５２と、クロック信号の立ち下がりでデータを取り込む第２観測ＦＦ５３と、を有する。なお、実施例２では、実施例１と異なり、スキャンインＦＦ３１ａとスキャンアウトＦＦ５１とが統合されておらず、別個のフリップフロップにより構成されている。
また、図１０において、実施例２の遅延時間計測装置１では、クロック信号として、デューティー比（１周期に対する「１」の時間の割合）が１／２のものが使用される。
【００５２】
さらに、図９において、実施例２の遅延時間計測装置１では、テスタ２の機能手段は、実施例１に比べて、スキャンインＦＦとスキャンアウトＦＦとを切り替える切替制御手段Ｃ２が省略され、スキャンアウト信号を取得する観測ＦＦ５２，５３を設定、切り替える観測ＦＦ設定手段Ｃ６を有する。なお、実施例２の観測ＦＦ設定手段Ｃ６は、遅延時間の計測開始時には第２観測ＦＦ５３に設定し、第２観測ＦＦ５３で取得した信号がフェイルした場合には、第１観測ＦＦ５２に切り替える。
また、実施例２の遅延時間計測手段Ｃ５は、第１観測ＦＦ５２が設定されている場合に、遅延テストがパスからフェイルになった時の遅延量（ｍ＋１）×Δｔに基づいて、前記式（１）を使用して遅延時間ｔｐｄを導出する。一方、遅延時間計測手段Ｃ５は、第２観測ＦＦ５３が設定されている場合に、遅延テストがパスからフェイルになった時の遅延量（ｍ＋１）×Δｔに基づいて、以下の式（９）を使用して遅延時間ｔｐｄを導出する。
Ｔ／２−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ＜Ｔ／２−ｍ×Δｔ−ｔ１−ｔ２−ｔ３  …式（９）
なお、時間ｔ１〜ｔ３は、実施例１で詳述したように、十分に小さい場合等では無視可能である。
よって、クロック周期１周期を使用して遅延計測を行う実施例１と異なり、実施例２では、デューティー比が１／２のクロック信号の立ち上がりまたは立ち下がり、すなわち、１／２周期を使用して遅延計測を行っている。
【００５３】
（実施例２の流れ図の説明）
次に、実施例２の遅延時間計測装置における制御の流れを流れ図、いわゆるフローチャートを使用して説明する。
【００５４】
（遅延時間計測処理のフローチャートの説明）
図１１は実施例２の遅延時間計測処理のフローチャートの説明図である。
図１１の遅延時間計測処理では、実施例１と同様にＳＴ１〜ＳＴ４を実行して、ＳＴ１１に進む。
ＳＴ１１において、第２観測ＦＦ５３でスキャンアウト信号を受信する。そして、ＳＴ１２に進む。
ＳＴ１２において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス（Ｙ）の場合、すなわち、テストをパスした場合はＳＴ１３に進む。ノー（Ｎ）の場合、すなわち、テストをフェイルした場合はＳＴ２１に進む。
ＳＴ１３において、遅延量ｍ×Δｔのｎを１加算する（ｍ＝ｍ＋１）。すなわち、すなわち、マルチプレクサ４１を制御して、テストをパスした場合よりもバッファ４３が１つ多い側の入力部４２−２〜４２−ｎに切り替える。そして、ＳＴ１４に進む。
【００５５】
ＳＴ１４において、マルチプレクサ３３をスキャンイン側に切り替える。そして、ＳＴ１５に進む。
ＳＴ１５において、次の処理（１），（２）を実行して、ＳＴ１６に進む。
（１）スキャンインの信号をフリップフロップ３１に入力する。
（２）マルチプレクサ３３を遅延回路３２側に切り替える。
ＳＴ１６において、クロック信号をフリップフロップ３１に印加し、ＳＴ１７に進む。
ＳＴ１７において、第２観測ＦＦ５３でスキャンアウト信号を受信する。そして、ＳＴ１８に進む。
ＳＴ１８において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス（Ｙ）の場合、すなわち、テストをパスした場合はＳＴ１９に進む。ノー（Ｎ）の場合、すなわち、テストをフェイルした場合はＳＴ２０に進む。
ＳＴ１９において、ｍ≧ｎであるか否かを判別する。イエス（Ｙ）の場合はＳＴ２０に進み、ノー（Ｎ）の場合はＳＴ１３に戻る。
ＳＴ２０において、式（９）に基づいて遅延時間ｔｐｄを計測して、ディスプレイ２ｂに表示する。そして、遅延時間計測処理を終了する。
【００５６】
ＳＴ２１において、マルチプレクサ３３をスキャンイン側に切り替える。そして、ＳＴ２２に進む。
ＳＴ２２において、次の処理（１），（２）を実行して、ＳＴ２３に進む。
（１）スキャンインの信号をフリップフロップ３１に入力する。
（２）マルチプレクサ３３を遅延回路３２側に切り替える。
ＳＴ２３において、クロック信号をフリップフロップ３１に印加し、ＳＴ２４に進む。
ＳＴ２４において、第１観測ＦＦ５２でスキャンアウト信号を受信する。そして、ＳＴ６に進む。
ＳＴ６において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス（Ｙ）の場合、すなわち、テストをパスした場合はＳＴ７に進む。ノー（Ｎ）の場合、すなわち、テストをフェイルした場合はＳＴ９に進む。
ＳＴ７において、ｍ≧ｎであるか否かを判別する。ノー（Ｎ）の場合はＳＴ８に進み、イエス（Ｙ）の場合はＳＴ９に進む。
ＳＴ８において、遅延量ｍ×Δｔのｎを１加算する（ｍ＝ｍ＋１）。すなわち、すなわち、マルチプレクサ４１を制御して、テストをパスした場合よりもバッファ４３が１つ多い側の入力部４２−２〜４２−ｎに切り替える。そして、ＳＴ２１に戻る。
ＳＴ９において、テストをフェイルした場合の遅延量ｍ×Δｔと、式（１）とに基づいて、遅延時間ｔｐｄの計測結果をディスプレイ２ｂに出力する。そして、遅延時間計測処理を終了する。
【００５７】
（実施例２の作用）
前記構成を備えた実施例２の遅延時間計測装置１では、デューティー比が１／２のクロック信号の立ち下がりでデータを取り込む第２観測ＦＦ５３を有する。すなわち、第１観測ＦＦ５２は、実施例１と同様に、クロック信号の１周期Ｔに対応するタイミングで遅延回路３２からの信号を取り込むが、第２観測ＦＦ５３は、クロック信号の半周期Ｔ／２に対応するタイミングで遅延回路３２からの信号を取り込む。
【００５８】
ここで、実施例１の構成では、１周期Ｔに対応するタイミングで遅延回路３２からの信号を取り込んでおり、遅延時間ｔｐｄが短い場合には、図１０Ｂに示すように、テストがフェイルするまで、バッファ４３を１つずつ増やしてテストを行う工程の繰り返しが多くなり、遅延時間ｔｐｄの計測が終了するまでの時間が長くなる問題がある。これに対して、実施例２では、ＳＴ１１，ＳＴ１２において、まず、半周期Ｔ／２においてテストをパスするか否か、すなわち、遅延時間が半周期Ｔ／２よりも短いか否かを判定する。そして、テストをパスする場合、すなわち、遅延時間ｔｐｄが半周期Ｔ／２よりも短い場合には、第２観測ＦＦ５３を使用して遅延テストを繰り返して遅延時間ｔｐｄを計測する。よって、この場合、ｂ＜ａとなり，実施例２では、図１０Ｃに示すように、図１０Ｂに示す場合に対して、半周期分の遅延テストが省略された事となり、遅延時間ｔｐｄを計測するまでの時間を短くすることができる。
【００５９】
なお、実施例２の遅延時間計測装置１では、ＳＴ１１，ＳＴ１２で、遅延時間ｔｐｄが半周期Ｔ／２よりも短いか否かを判定したが、遅延時間ｔｐｄが、半周期Ｔ／２よりも長いか短いかが既知の場合には、ＳＴ１１，ＳＴ１２の処理を省略して、適切な観測ＦＦ５２，５３を使用した遅延時間ｔｐｄの計測を行う構成に変更することも可能である。
また、実施例２の遅延時間計測装置１では、実施例１と同様に、スキャン設計された回路に限定されず、多様な電気動作をする任意の回路において、遅延時間を計測することが可能である。
【００６０】
図１２は実施例２の変更例の説明図であり、図１２Ａは実施例２の変更例１の説明図、図１２Ｂは実施例２の変更例２の説明図である。
（実施例２の変更例１）
実施例２の遅延時間計測装置１におけるスキャンアウトＦＦ５１とは異なる構成のスキャンアウトＦＦ５１′を有する。実施例２の変更例１のスキャンアウトＦＦ５１′では、第２観測ＦＦ５３のように立ち下がりでデータを取り込むフリップフロップを使用することに替えて、図１２Ａに示すように、クロック信号を反転する反転素子６１を介して、第１観測ＦＦ５２と同一の立ち上がりでデータを取り込むフリップフロップを第２観測ＦＦ６２として使用することで、実施例２と同様の機能を実現可能である。
なお、この場合、反転素子６１でクロック信号を反転させるため、その分の遅延時間ｔ５が発生する。したがって、第２観測ＦＦ６２は、元のクロックの半周期Ｔ／２に対して、遅延時間ｔ５だけ遅れてデータを取り込む。よって、図１２Ａに示す実施例２の変形例１では、式（９）に替えて以下の式（９ａ）を使用して遅延時間の計測を行うこととなる。
（Ｔ／２＋ｔ５）−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ＜（Ｔ／２＋ｔ５）−ｍ×Δｔ−ｔ１−ｔ２−ｔ３  …式（９ａ）
【００６１】
（実施例２の変更例２）
図１２Ｂにおいて、実施例２の変更例２では、スキャンアウトＦＦ５１とは異なる構成のスキャンアウトＦＦ５１″を有する。実施例２の変更例２のスキャンアウトＦＦ５１″は、立ち上がりでデータを取り込むフリップフロップ６６と、フリップフロップ６６にクロック信号を入力する経路に配置された切替素子の一例としてのマルチプレクサ６７とを有する。マルチプレクサ６７は、一方の入力にクロック信号がそのまま入力され、他方の入力に反転素子６８を介してクロック信号が反転して入力される。
よって、マルチプレクサ６７で、クロック信号をそのままフリップフロップ６６に入力した場合は、１周期Ｔに基づく遅延時間の計測が可能であり、クロック信号を反転して入力した場合は、半周期Ｔ／２に基づく遅延時間の計測が可能になる。よって、実施例２の変更例２も、実施例２と同様の機能を実現可能である。
なお、実施例２の変更例２では、半周期Ｔ／２での計測時に反転素子６８での遅延時間ｔ６が発生するとともに、１周期Ｔの場合と半周期Ｔ／２の場合の両方でマルチプレクサ６７による遅延時間ｔ７が発生する。よって、図１２Ｂに示す実施例２の変形例２では、式（１）、式（９）に替えて以下の式（１ｂ）、式（９ｂ）を使用して遅延時間の計測を行うこととなる。
（Ｔ＋ｔ７）−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ＜（Ｔ＋ｔ７）−ｍ×Δｔ−ｔ１−ｔ２−ｔ３  …式（１ｂ）
（Ｔ／２＋ｔ６＋ｔ７）−（ｍ＋１）×Δｔ−ｔ１−ｔ２−ｔ３
＜ｔｐｄ＜（Ｔ／２＋ｔ６＋ｔ７）−ｍ×Δｔ−ｔ１−ｔ２−ｔ３  …式（９ｂ）
【００６２】
（実験例）
次に、図１２Ａに示す実施例２の変更例１の構成を使用して、本発明の効果を確かめる実験を行った。実験は、ブレッドボード上に組合せ回路やＦＦ、遅延回路等のＩＣを差したものを使用した。
フリップフロップ５２，６２として、株式会社東芝製のＴＣ７４ＨＡＰを使用した。
組合せ回路２１として、株式会社東芝製のＴＣ７４ＨＣ０４ＡＰ（インバータ）のチェーン回路（縦続接続回路）を作成した。組合せ回路２１では、経路Ｂとして、インバータ１２段のチェーン回路を作成し、経路Ｃとして、インバータ３０段のチェーン回路を作成した。
【００６３】
遅延素子（バッファ４３）として、株式会社東芝製のＴＣ７４ＨＣ０４ＡＰ（インバータ）２個からなるバッファ４３を作成して、これを挿入遅延１個分として構成した。
テスト信号の入力値およびクロック信号は、ファンクションジェネレータから供給した。また、出力値はデジタルオシロスコープで観測した。電圧は５［Ｖ］で駆動し、クロック周期Ｔは２００ｎｓ（５ＭＨｚ）に設定した。
経路Ｂ，Ｃについて、各経路の実際の遅延時間を計測したところ、経路Ｂについては、実測遅延時間ｔｐｄ（meas）が６９．５ｎｓであり、半周期（１００ｎｓ）よりも短かった。また、経路Ｃについては、実測遅延時間ｔｐｄ（meas）が１４１ｎｓであり、半周期（１００ｎｓ）よりも長かった。
【００６４】
挿入遅延時間Δｔを実測したところ、７．５ｎｓであった。なお、挿入遅延時間Δｔには、素子のばらつき、配線による遅延、計測誤差等による値の変動があるため、平均値を使用した。また、挿入遅延（バッファ４３）は、順次１個ずつ増やしながら計測したため、マルチプレクサ４１は使用していない。よって、実験では、ｔ２＝０となる。
経路Ｂは、遅延時間が１／２周期以内であるので、式（９ａ）を使用して遅延時間を計測した。また、経路Ｃは、遅延時間が１／２周期異常であるので、式（１）を使用して遅延時間を計測した。
【００６５】
図１３は実験例の説明図であり、図１３Ａは実験パラメータの一覧表、図１３Ｂは挿入遅延の個数とテストの結果の一覧表、図１３Ｃは遅延素子の変動の一覧表の説明図である。
図１３Ａに実験例で使用した伝搬遅延時間ｔ１〜ｔ３，ｔ５、Δｔ等のパラメータ値を示す。また、図１３Ｂに、バッファ４３の個数と、遅延テストの結果を示す。なお、図１３Ｂには、個々の挿入したバッファ４３の遅延量Δｔの実測値も示す。
図１３Ｂの実験結果から、経路Ｂについて、式（９ａ）を使用して計算すると、以下の式（１０）が得られた。
６９．０［ｎｓ］＜ｔｐｄ（経路Ｂ）＜７６．５［ｎｓ］  …式（１０）
また、経路Ｃについて、図１３Ｂの結果から、式（１）を使用して計算すると、以下の式（１１）が得られた。
１３９．８［ｎｓ］＜ｔｐｄ（経路Ｃ）＜１４７．３［ｎｓ］  …式（１１）
よって、経路Ｂについては、式（１０）から実測値６９．５ｎｓが範囲内に含まれ、経路Ｃについても、式（１１）から実測値１４１ｎｓが範囲内に含まれることが確認できた。よって、実験例の構成で、遅延時間の計測が可能であることが確認された。
【００６６】
なお、図１３Ｂの結果から、仮に、セットアップ時間ｔ３を無視（ｔ３＝０）として計算した場合は、式（１０）、式（１１）の結果が、以下の式（１０ａ）、式（１１ａ）となった。
７２．３［ｎｓ］＜ｔｐｄ（経路Ｂ）＜７９．８［ｎｓ］  …式（１０ａ）
１４３．１［ｎｓ］＜ｔｐｄ（経路Ｃ）＜１５０．６［ｎｓ］  …式（１１ａ）
したがって、今回の実験例では、フリップフロップ５２，６２のセットアップ時間ｔ３が３．３［ｎｓ］であり、遅延時間Δｔ＝７．５［ｎｓ］に対して、比較的大きな値であることから、セットアップ時間ｔ３を考慮しない式（１０ａ）、式（１１ａ）を用いた計算では、遅延時間が、真値（実測値）よりも大きく推定されている。裏を返せば、セットアップ時間ｔ３が、遅延量Δｔに対して十分に小さいフリップフロップを使用する場合には、セットアップ時間ｔ３を考慮しなくても、遅延時間が計測できることもわかる。
【００６７】
なお、実験例では、ブレッドボードを使用したため、バッファ４３の個体差、配線のばらつき、測定誤差等で、バッファ４３の遅延量Δｔに変動があった。図１３Ｃに、個々の遅延量Δｔを示す。一般に挿入される遅延４３はどのような方法で実現してもばらつきがあると考えられる。よって、遅延時間Δｔの変動量（散らばり具合）を考慮すると、遅延量Δｔの標準偏差をσとすると、式（１）、式（９）は、以下の式（１ｃ）、式（９ｃ）ように書き換えられる。
Ｔ−（ｍ＋１）×（Δｔ＋３σ）−ｔ１−ｔ２−ｔ３
＜ｔｐｄ＜Ｔ−ｍ×（Δｔ−３σ）−ｔ１−ｔ２−ｔ３  …式（１ｃ）
Ｔ／２−（ｍ＋１）×（Δｔ＋３σ）−ｔ１−ｔ２−ｔ３
＜ｔｐｄ＜Ｔ／２−ｍ×（Δｔ−３σ）−ｔ１−ｔ２−ｔ３  …式（９ｃ）
なお、ここでは、遅延量Δｔの標準偏差σに対して、±３σの範囲を考慮した。これは、一般に回路設計の分野ではばらつきを±３σの範囲で考慮しているためである。なお、「平均値±３σ」の範囲には、全データの９９．７％が入る。
【００６８】
この式（１ｃ）、式（９ｃ）を、図１３Ｂの実験結果に適用すると、以下の式（１０ｂ）、式（１１ｂ）の結果となった。
５８．０［ｎｓ］＜ｔｐｄ（経路Ｂ）＜８３．８［ｎｓ］  …式（１０ｂ）
１１９．５［ｎｓ］＜ｔｐｄ（経路Ｃ）＜１６４．２［ｎｓ］  …式（１１ｂ）
よって、実測値は、式（１０ｂ）、式（１１ｂ）の範囲に含まれるが、推定精度が下がった（推定範囲が広がった）。これは、実験で使用したΔｔのばらつきが大きく、±３σを考慮すると、Δｔの変動範囲は、２×Δｔとなるためである。しかし、バッファ４３を現実に製作する上で、このばらつきは排除できないが、実際の製品を製造する際には、実験例ほど大きな値にならない。よって、Δｔのばらつきが十分に小さくなれば、式（１ｃ）、式（９ｃ）を使用しても、十分な推定精度が確保できることも期待できる。
【００６９】
（変更例）
以上、本発明の実施例を詳述したが、本発明は、前記実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内で、種々の変更を行うことが可能である。本発明の変更例（Ｈ01）〜（Ｈ03）を下記に例示する。
（Ｈ01）前記実施例１，２において、各式（１）、式（９）等において、回路の構成に応じて、バッファ４３以外に伝搬遅延時間ｔ１〜ｔ７を考慮した式を示したが、これに限定されない。例えば、遅延回路等の構成上、信号の遅延を発生させる素子等を有する場合には、各式に対応する遅延時間の項を追加することも可能である。逆に、無視できる項は省略することも可能である。
【００７０】
（Ｈ02）前記実施例１において、スキャンインＦＦ３１ａとスキャンアウトＦＦ３１ｂとを共通のフリップフロップ３１で実現する構成を例示したが、等価回路で示すように、２つのフリップフロップを使用して回路を実現することも可能である。
（Ｈ03）前記実施例１，２において、組合せ回路２１として、ボード回路や非スキャン設計の回路等、任意の回路に適用可能である。
【符号の説明】
【００７１】
１…遅延時間計測装置、
２１…組合せ回路、
２１ａ…データ処理部、
２１ｂ，２１ｃ…入力部、
２１ｄ，２１ｅ…出力部、
３１…フリップフロップ、
３１ａ…第１のフリップフロップ、
３１ｂ，５１，５１′，５１″…第２のフリップフロップ、
３２…遅延部、
Ｃ５…測定手段、
ｍ×Δｔ、（ｍ＋１）×Δｔ…遅延量、
ｔｐｄ…遅延時間。
【図１】
2015232531.tif 000003
【図２】
2015232531.tif 000004
【図３】
2015232531.tif 000005
【図４】
2015232531.tif 000006
【図５】
2015232531.tif 000007
【図６】
2015232531.tif 000008
【図７】
2015232531.tif 000009
【図８】
2015232531.tif 000010
【図９】
2015232531.tif 000011
【図１０】
2015232531.tif 000012
【図１１】
2015232531.tif 000013
【図１２】
2015232531.tif 000014
【図１３】
2015232531.tif 000015
【図１４】
2015232531.tif 000016
【図１５】
2015232531.tif 000017
【図１６】
2015232531.tif 000018
【図１７】
2015232531.tif 000019