(57)【特許請求の範囲】
【請求項１】
被試験デバイス内部のスキャンテスト可能なデジタル回路に対するデジタル信号の遅延時間を測定するためのデジタル信号遅延測定回路であって、
デジタル信号である遅延時間測定用信号を出力する出力手段と、
前記遅延時間測定用信号の状態が変化するタイミングを遅延させるための２つ以上の遅延手段と、
前記遅延手段により遅延される前の遅延時間測定用信号を遅延させる遅延調整手段と、
前記遅延時間測定用信号を入力し、保持指令の入力タイミングで当該遅延時間測定用信号の状態を保持する３つ以上の信号保持手段と、
を備え、
各前記信号保持手段の前記遅延時間測定用信号の入力部間は、前記遅延手段が介在された信号伝送経路により接続され、
前記３つ以上の信号保持手段のうち１つの前記信号保持手段の前記遅延時間測定用信号の入力部と前記出力手段の前記遅延時間測定用信号の出力部とは、前記遅延調整手段が介在された信号伝送経路により接続されており、
各前記信号保持手段に対する前記保持指令の入力タイミングは同一であり、且つ、前記各信号保持手段に入力される前記遅延時間測定用信号の状態が変化するタイミングは前記遅延手段によって互いに異なり、
前記遅延調整手段は、前記保持指令の入力タイミングを基準とする前後所定範囲内で前記各信号伝送経路上の前記遅延時間測定用信号の状態が前記各遅延手段により順次変化するように、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させ、
前記各信号保持手段において保持された前記遅延時間測定用信号の状態の違いに基づいて前記遅延時間を得ることを特徴とするデジタル信号遅延測定回路。
【請求項２】
請求項１に記載のデジタル信号遅延測定回路において、
前記デジタル回路において実際に使用されるパルス幅を有するユーザークロックを実時間スキャンテストにおいて発生させるクロック発生手段により前記発生された前記ユーザークロックを、前記各信号保持手段が前記保持指令として入力することを特徴とするデジタル信号遅延測定回路。
【請求項３】
デジタル信号である遅延時間測定用信号を出力する出力手段と、前記遅延時間測定用信号の状態が変化するタイミングを遅延させるための２つ以上の遅延手段と、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させる遅延調整手段と、前記遅延時間測定用信号を入力し、保持指令の入力タイミングで当該遅延時間測定用信号の状態を保持する３つ以上の信号保持手段と、を備え、各前記信号保持手段の前記遅延時間測定用信号の入力部間は、前記遅延手段が介在された信号伝送経路により接続され、前記３つ以上の信号保持手段のうち１つの前記信号保持手段の前記遅延時間測定用信号の入力部と前記出力手段の前記遅延時間測定用信号の出力部とは、前記遅延調整手段が介在された信号伝送経路により接続されており、各前記信号保持手段に対する前記保持指令の入力タイミングは同一であり、且つ、前記各信号保持手段に入力される前記遅延時間測定用信号の状態が変化するタイミングは前記遅延手段によって互いに異なるように調整されたデジタル信号遅延測定回路を用いて、被試験デバイス内部のスキャンテスト可能なデジタル回路に対するデジタル信号の遅延時間を測定する遅延時間測定方法であって、
前記保持指令の入力により前記各信号保持手段において保持された前記遅延時間測定用信号の状態を示す信号を出力し、
前記遅延調整手段により、前記保持指令の入力タイミングを基準とする前後所定範囲内で前記各信号伝送経路上の前記遅延時間測定用信号の状態が前記各遅延手段により順次変化するように、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させ、
前記各信号保持手段から出力された前記信号に示される状態の違いに基づいて前記遅延時間を測定することを特徴とする遅延時間測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル回路におけるデジタル信号の遅延時間を測定するデジタル信号遅延測定回路の技術分野に関する。
【背景技術】
【０００２】
昨今のＩＣ（Integrated Circuit：半導体集積回路）内部におけるデジタル回路は、微細化による回路規模の大規模化と動作速度の高速化が顕著である。しかし、高速化によって、製造プロセスに起因する遅延時間のバラツキ問題はより深刻化し、ＩＣの量産における大きな問題となっている。よって、高速動作するＩＣの製造テストでは、スキャンテストの一つである遅延故障診断を行うことで、不良品の判別が行われている。
【０００３】
遅延故障診断の方法の一つとして実時間スキャンテスト(At-Speed Test)が多く用いられる様になった。この方法は、通常のスキャンテストに用いる低速のスキャンクロックでスキャンデータのシフト動作を行い、実際の回路動作試験は、ＩＣ内部で使われるユーザークロックにより試験を行う。
【０００４】
図１に実時間スキャンテストの様子を示す。図１中の、LaunchCLKとCaptureCLKの２サイクルのクロックが、実際に使われるユーザークロックであり、一般的に、例えばＩＣテスターが出力するシフト用のクロックより高速である。遅延故障診断は、このLaunchCLKとCaptureCLKにより、実際に使われるユーザークロックで回路を動作させ診断を行う。
【０００５】
ところで、ＩＣの製造テストは、短時間で検査を行う必要があるので、実使用時よりも多くの回路を同時に動作させることになる。その結果、ＩＣに実使用時よりも多くの電流が流れ、大きなIR-Drop（電源電圧降下）が発生する。
【０００６】
IR-Dropは、素子の遅延時間を増大させるので、遅延故障診断の結果が誤診断となるケースが発生する。IR-Dropは、静的IR-Dropと動的IR-Dropに大別される。静的IR-Dropは、回路が動作していなくとも電源電圧が降下する現象である。一方、動的IR-Dropは、実際に回路が動作することによって電源電圧が降下する現象である。前者は、ＩＣの動作を停止状態にして遅延時間を測定すれば良いので測定は容易である。しかし、後者は、測定自体が困難である。特に大規模同期回路の場合、多くの回路がクロックの変化によって同時に動作するので、大規模同期回路における動的IR-Dropは、クロック変化に伴い短時間に発生する電圧降下現象となる。
【０００７】
図２に動的IR-Dropのイメージを示す。図２に示すように、動的IR-Dropは極めて短い時間に発生する電源電圧降下現象である。この現象は、動作する回路の量に依存する。加えて電源回路の電流供給能力によっても異なる。故に、動的IR-Dropは、ＩＣ内部の物理的な位置によって異なる。また、同じ位置であっても回路の動作状況（回路の活性化率）によっても異なる。故に、動的IR-Dropは、測定自体が困難である。
【０００８】
同期回路は、クロックの変化に伴い動作するので、動的IR-Dropの影響を大きく受け、結果として遅延時間も大きくなる。特に昨今の大規模同期回路は、同時に動作する回路規模も大きくなったので影響が大きく、遅延故障診断等の大きな障害となっている。つまり、動的IR-Dropによる回路遅延の影響が大きいと、遅延故障診断の結果が誤診断になる可能性が高くなる。特に大規模同期回路のスキャンテスト程、一度に動作する回路の規模が大きいので、動的IR-Dropによる遅延も大きくなる傾向があり、誤診断の可能性が高まる。
【０００９】
従来、IR-Dropに伴う遅延時間の増大を測定する方法としては、例えば、特許文献１等に開示されるリングオシレータによる測定が広く用いられてきた。
【特許文献１】特開２００４-１４６６１２
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、リングオシレータにより遅延時間を測定する方法では、当該リングオシレータによる周波数変動を元に測定を行なうので、周波数をカウントする必要があり測定に時間がかかるという問題がある。そのため、動的IR-Dropによる回路遅延の測定は困難であった。
【００１１】
また、ＩＣの遅延時間のバラツキは、製造プロセスに依存する回避困難な問題である。故に、製品によっては、ＩＣが正常動作する速度によって、仕分け（ランク分け）をする場合がある。そのような場合、ＩＣが正常動作する速度を見極める必要がある。しかしながら、従来、どの程度の速度でＩＣが動作するかを客観的に調べる方法は無く、多くの場合、経験から動作速度を決定していた。故に、従来は、必要以上に大きな余裕（マージン）を加味してランク分けを行わなければならないという問題があった。
【００１２】
そこで、本発明は、上記問題等に鑑みてなされたものであり、瞬間的にデジタル回路の遅延時間を測定可能とし、動的IR-Dropの影響も加味した真の遅延時間を安価に測定可能としたデジタル信号遅延測定回路、及びデジタル信号遅延測定方法を提供することを課題とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、請求項１に記載の発明は、被試験デバイス内部のスキャンテスト可能なデジタル回路に対するデジタル信号の遅延時間を測定するためのデジタル信号遅延測定回路であって、デジタル信号である遅延時間測定用信号を出力する出力手段と、前記遅延時間測定用信号の状態が変化するタイミングを遅延させるための２つ以上の遅延手段と、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させる遅延調整手段と、前記遅延時間測定用信号を入力し、保持指令の入力タイミングで当該遅延時間測定用信号の状態を保持する３つ以上の信号保持手段と、を備え、各前記信号保持手段の前記遅延時間測定用信号の入力部間は、前記遅延手段が介在された信号伝送経路により接続され、前記３つ以上の信号保持手段のうち１つの前記信号保持手段の前記遅延時間測定用信号の入力部と前記出力手段の前記遅延時間測定用信号の出力部とは、前記遅延調整手段が介在された信号伝送経路により接続されており、各前記信号保持手段に対する前記保持指令の入力タイミングは同一であり、且つ、前記各信号保持手段に入力される前記遅延時間測定用信号の状態が変化するタイミングは前記遅延手段によって互いに異なり、 前記遅延調整手段は、前記保持指令の入力タイミングを基準とする前後所定範囲内で前記各信号伝送経路上の前記遅延時間測定用信号の状態が前記各遅延手段により順次変化するように、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させ、前記各信号保持手段において保持された前記遅延時間測定用信号の状態の違いに基づいて前記遅延時間を得ることを特徴とする。
【００１４】
請求項２に記載の発明は、請求項１に記載のデジタル信号遅延測定回路において、前記デジタル回路において実際に使用されるパルス幅を有するユーザークロックを実時間スキャンテストにおいて発生させるクロック発生手段により前記発生された前記ユーザークロックを、前記各信号保持手段が前記保持指令として入力することを特徴とする。
【００１７】
請求項３に記載の発明は、デジタル信号である遅延時間測定用信号を出力する出力手段と、前記遅延時間測定用信号の状態が変化するタイミングを遅延させるための２つ以上の遅延手段と、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させる遅延調整手段と、前記遅延時間測定用信号を入力し、保持指令の入力タイミングで当該遅延時間測定用信号の状態を保持する３つ以上の信号保持手段と、を備え、各前記信号保持手段の前記遅延時間測定用信号の入力部間は、前記遅延手段が介在された信号伝送経路により接続され、前記３つ以上の信号保持手段のうち１つの前記信号保持手段の前記遅延時間測定用信号の入力部と前記出力手段の前記遅延時間測定用信号の出力部とは、前記遅延調整手段が介在された信号伝送経路により接続されており、各前記信号保持手段に対する前記保持指令の入力タイミングは同一であり、且つ、前記各信号保持手段に入力される前記遅延時間測定用信号の状態が変化するタイミングは前記遅延手段によって互いに異なるように調整されたデジタル信号遅延測定回路を用いて、被試験デバイス内部のスキャンテスト可能なデジタル回路に対するデジタル信号の遅延時間を測定する遅延時間測定方法であって、前記保持指令の入力により前記各信号保持手段において保持された前記遅延時間測定用信号の状態を示す信号を出力し、前記遅延調整手段により、前記保持指令の入力タイミングを基準とする前後所定範囲内で前記各信号伝送経路上の前記遅延時間測定用信号の状態が前記各遅延手段により順次変化するように、前記遅延手段により遅延される前の遅延時間測定用信号を遅延させ、前記各信号保持手段から出力された前記信号に示される状態の違いに基づいて前記遅延時間を測定することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、出力手段から出力された遅延時間測定用信号の状態が変化するタイミングを各遅延手段により遅延させ、遅延された遅延時間測定用信号の状態を保持指令の入力タイミングで各信号保持手段により保持させるようにし、各信号保持手段において保持された遅延時間測定用信号の状態の違いに基づいて遅延時間を得るように構成したので、瞬間的にデジタル回路の遅延時間を測定可能とし、動的IR-Dropの影響も加味した真の遅延時間を安価に測定することができ、遅延故障をより詳細に調べることができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照して本発明の最良の実施形態について詳細に説明する。
【００２０】
先ず、本発明のデジタル信号遅延測定回路の原理について、図３を用いて説明する。
【００２１】
図３は、本発明の一実施形態に係るデジタル信号遅延測定回路の一例を示し、スキャンライン回路を省略した原理図である。このデジタル信号遅延測定回路は、被試験デバイス（例えば、ＬＳＩ）内部に実装され、当該被試験デバイス内部のスキャンテスト可能なデジタル回路に対するデジタル信号の遅延時間を測定するための回路である。
【００２２】
図３の例では、デジタル信号遅延測定回路は、デジタル信号である遅延時間測定用信号を出力（図中Q部から出力）する出力手段の一例としての発動用のフリップフロップP1_FFLと、上記遅延時間測定用信号を受信（図中D部から入力）し保持指令の一例としてのクロック信号の入力タイミングで当該遅延時間測定用信号の状態を保持する信号保持手段の一例としての受信用のフリップフロップP1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3と、上記遅延時間測定用信号の状態が変化するタイミングを遅延させるための遅延手段の一例としての遅延素子P1_D0，P1_D1，P1_D2，P1_D3（各遅延素子による遅延時間測定用信号の遅延時間はほぼ同一）と、を備えて構成されている。
【００２３】
ここで、発動用のフリップフロップP1_FFL及び受信用のフリップフロップP1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3に対するクロック信号線P1_CLKからのクロック信号（P1_CLK信号）の入力（図中CK部から入力）タイミング（例えば、クロックがHiレベルになるタイミング）はほぼ同一である。
【００２４】
また、発動用のフリップフロップP1_FFLの遅延時間測定用信号の出力部（図中Q部）と、各受信用のフリップフロップP1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3の遅延時間測定用信号の入力部（図中D部）との間の各信号伝送経路（信号線）には、遅延素子（P1_D0，P1_D1，P1_D2，P1_D3の少なくとも何れか一つ）が介在しており、各信号伝送経路に介在する遅延素子の個数は図示のように互いに異なっている（例えば、フリップフロップP1_FFLとフリップフロップP1_FFC1との間の信号伝送経路には、２つの遅延素子P1_D0，P1_D1が介在している）。そのため、各受信用のフリップフロップP1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3に入力される遅延時間測定用信号の状態（Hi又はLowレベル）が変化するタイミングは、遅延素子P1_D0，P1_D1，P1_D2，P1_D3によって互いに異なる。
【００２５】
このような回路構成により、発動用のフリップフロップP1_FFLから出力された遅延時間測定用信号は、個々の遅延素子P1_D0，P1_D1，P1_D2，P1_D3の遅延時間分だけ遅れて、各受信用のフリップフロップP1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3に到着（入力）する。よって、P1_CLK信号の周期時間と、各遅延素子P1_D0，P1_D1，P1_D2，P1_D3の遅延時間を適切に調整することによって、フリップフロップP1_FFLから出力された遅延時間測定用信号の状態（Hi又はLowレベル）を示す出力データを正しく保持、転送できるフリップフロップと、正しく保持、転送できないフリップフロップが出てくる。どのフリップフロップ迄、正しくデータが転送されたかを調べることによってデジタル信号の遅延時間を測定することが可能となる。つまり、フリップフロップP1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3において保持された遅延時間測定用信号の状態の違いに基づいて遅延時間を得ることができる。
【００２６】
次に、本発明のデジタル信号遅延測定回路の、より具体的な実施例について、図４乃至図６を用いて説明する。
【００２７】
図４は、一般的なスキャン対応のフリップフロップ等の構成例を示す図である。なお、図４に示すフリップフロップP5_FFは、Ｄタイプのフリップフロップである。図４において、セレクタ素子P5_SELは、P5_SCAN_EN信号線におけるP5_SCAN_EN信号がHiレベルの時、P5_di信号線にP5_SCAN_DI信号線を接続する一方、P5_SCAN_EN信号がLowレベルの時、P5_di信号線にP5_USER_DI信号線を接続する機能を有する。
【００２８】
図５は、スキャン対応のフリップフロップを適用したデジタル信号遅延測定回路の一例を示す図である。図５に示すデジタル信号遅延測定回路は、図３に示すデジタル信号遅延測定回路におけるフリップフリップを、図４で示したスキャン対応のフリップフロップに置き換えた回路である。図５の例では、図３に示すP1_DIN信号線に相当するP6_DIN信号線は、GNDに接続（接地）されている。このP6_DIN信号線における信号は、本発明の動作において使用されない信号なので、GND又はVCCに接続処理等をして良い。また、図３に示すフリップフロップP1_FFLは、図５の例では、フリップフロップP6_FFL0とフリップフロップP6_FFL1の２つのフリップフロップで構成されている。また、図５で示した全てのフリップフロップは、全てスキャンラインからデータの読み書きを行うようになっている。
【００２９】
図６は、図５に示すデジタル信号遅延測定回路を動作させた時の波形例を示す図である。
【００３０】
以下、図６を参照して、図５に示すデジタル信号遅延測定回路の動作例について説明する。なお、図５に示す全てのフリップフロップは、クロック信号がLowからHiレベルに変化した時に、データを記憶（保持）するタイプとする。
【００３１】
図６に示すように、P6_CLK信号線にP6_CLK信号が入力される。このP6_CLK信号には、図６に示すように、通常速度のスキャンクロックと、実時間スキャンテストクロックの両方のクロック機能が混在する。実時間スキャンテストクロックには、図１に示したように、ユーザー回路（デジタル回路）において実際に使用されるパルス幅（通常速度のスキャンクロックよりパルス幅が短い）を有するLaunchCLKとCaptureCLKの２サイクルのユーザークロックがある。このユーザークロックは、クロック発生手段（図示せず）により実時間スキャンテストにおいて発生される。
【００３２】
なお、図６の例では、P6_SCAN_EN信号線におけるP6_SCAN_EN信号をHiにした状態にて、P6_SCAN_DIN信号線におけるP6_SCAN_DIN信号をLowに維持し、P6_CLK信号線に通常速度のスキャンクロックを印加することによるスキャンシフト動作によって、図５に示す全てのフリップフロップは、Lowに初期化されているものとする。ここで、P6_SCAN_EN信号は、ユーザー回路の使用時と、スキャンテスト時とで状態（Hi又はLowレベル）が異なるようになっている。また、P6_SCAN_DIN信号は、スキャンパス上における前段フリップフロップの出力である。
【００３３】
図６に示すように、P6_SCAN_DIN信号をHiにし、“Last Normal ScanIn CLK Up”のタイミングで、フリップフロップP6_FFL0にHiを記憶させる。その後、P6_SCAN_EN信号をLowにして、回路全体をユーザー回路として動作させる状態にし、次のクロックの立ち上がりである“Launch CLK Up”を待つ。
【００３４】
そして、“Launch CLK Up”によって、フリップフロップP6_FFL1には、フリップフロップP6_FFL0の出力であるP6_FFL0_Q信号のHiが記憶される。フリップフロップP6_FFL1の出力信号であるP6_FFL1_Q信号は、図５に示す遅延素子P6_D0を介して、フリップフロップP6_FFC0のデータ入力であるP6_DL0信号線に伝わる。よってP6_FFL1_Q信号に比べて、P6_DL0信号線におけるP6_DL0信号は、遅延素子P6_D0の遅延時間だけ遅れる。同様に、遅延素子P6_D0の出力信号は、遅延素子P6_D1を介してP6_DL1信号線に伝わるので、P6_DL0信号に対して、P6_DL1信号は、遅延素子P6_D1の遅延時間だけ遅れる。同様に、P6_DL2,P6_DL3信号も、遅延素子P6_D2,P6_D3の遅延時間分だけ遅れる。
【００３５】
実時間スキャンテスト周期（第一のユーザークロック（LaunchCLK）の発生（立ち上がり）タイミングから、第二のユーザークロック（CaptureCLK）の発生（立ち上がり）タイミングまでの実時間スキャンテスト期間）である、“ATS period"に対して、遅延素子P6_D0,P6_D1,P6_D2,P6_D3を適切に調整することにより“Captuer CLK Up"のタイミングで、P6_FFL1_Qの出力であるHi状態を記憶（保持）できるフリップフロップと、記憶できないフリップフロップが存在するようにする。
【００３６】
図６の例では、P6_Q0信号とP6_Q1信号のみ“Captuer CLK Up"のタイミングで、Hiになっているので、図５に示すフリップフロップP6_FFC0とP6_FFC1のみ、同タイミングでHi状態を記憶できたことになる。“Captuer CLK Up"のタイミングでは、P6_DL2信号とP6_DL3信号は、Lowのままなので、フリップフロップP6_FFC2とP6_FFC3はHiを記憶することができなかった。この例では、P6_FFL1_Q信号の立ち上がりから各フリップフロップへの遅延時間として、遅延素子P6_D0とP6_D1の遅延時間の合計までの遅延時間ならば、正しくデータを伝えることができるが、遅延素子P6_D0とP6_D1とP6_D2の遅延時間の合計では、正しくデータを伝えることができないことが判明したことになる。各フリップフロップに記憶されたデータは、P6_SCAN_EN信号をLowからHiに変化させ、スキャンシフト動作によって外部に出力することで、ICテスター等の外部機器で検知することが可能となる。これにより、デジタル信号の遅延時間を得ることができる。
【００３７】
なお、図６の例では、図５に示す各フリップフロップをLowに初期化してから、Hi信号が伝達される場合を例にして説明したが、P6_SCAN_DIN信号を、図６に示した論理値の逆にすることによって、図５に示す各フリップフロップをHiで初期化後、Low信号が伝達される場合の遅延時間も測定することが可能である。一般的にデジタル信号の遅延時間は、LowからHiに変化する場合と、HiからLowに変化する場合では異なる。本発明では、このどちらの場合の遅延時間も同一回路で測定することが可能である。
【００３８】
ここで、図７〜図９に、ユーザー回路の例を示す。図８は、図７に示すユーザー回路のフリップフロップを、図４で示したスキャン対応のフリップフロップに置き換え、スキャンパス信号を加えた例である。図９は、図８に示すユーザー回路に、図５に示すデジタル信号遅延測定回路を接続した例である。図９の例では、同図のフリップフロップP8_FFの出力（Q）が、図５に示すフリップフロップP6_FFL0の入力信号であるP6_SCAN_DIN信号になる。また、スキャンパスラインは、任意の順番でフリップフロップを接続して良いので、図９に示す通り、図５に示す回路を、図８に示すスキャンパスラインの一部に挿入することが可能である。このように、既存のスキャン回路の一部に本発明による回路を挿入する方式が、標準的な実装形態となる。ただし、図９に示すように本発明による回路は、図７に示すようなユーザー回路とは、独立した回路であり、スキャンパスラインでのみ接続されている。即ち、本発明による回路は、ユーザー回路自体の本来の動作には影響を与えない。
【００３９】
次に、本発明のデジタル信号遅延測定回路の、より実用的な実施例について、図１０乃至図１２を用いて説明する。
【００４０】
図１０は、スキャン対応のフリップフロップを適用したデジタル信号遅延測定回路の、より実用的な例を示す図である。図１０に示すデジタル信号遅延測定回路は、図５に示すデジタル信号遅延測定回路における遅延素子P6_D0を、遅延調整手段の一例としての遅延調整回路P9_D0(P9_DelayAdjuster)に変更し、フリップフロップと遅延素子の数を増やした回路である。つまり、フリップフロップP9_FFL1の出力部と、フリップフロップP9_FFC0の入力部との間の信号伝送経路に遅延調整回路P9_D0が介在している。
【００４１】
図１０において、P9_D1,P9_D2,...P9_Dnの遅延素子は、遅延時間の測定精度を決めるので、遅延時間の短い素子を選ぶべきである。一般的に、ロジック回路の素子の中で、最も高速な素子はNOT素子である。例えば90nmプロセスのＬＳＩの場合、NOT素子の遅延時間は15ps程度である。このNOT素子を２つ直列に接続した回路をP9_D1，P9_D2,...P9_Dnの遅延素子とすると、図１０に示す回路の遅延測定精度は30psとなる。ただし、P9_CLK信号のジッター時間等も関係するので、この遅延測定精度は若干の誤差を有する。
【００４２】
この例において、ユーザー回路が400MHzで動作すると仮定すると、周期である図６に示すの“ATS period”時間は2500psとなる。仮に、“ATS period”時間を全て、30psの遅延素子だけで測定するならば、2500ps / 30ps = 83.333より、84個以上の遅延素子とフリップフロップを用意しなければならない。
【００４３】
図１０の場合では、P9_FFC0,P9_FFC1,P9_FFC2,...P9_FFC83の84個のフリップフロップと、P9_D0,P9_D1,P9_D2,P9_D3,...P9_D83の84個の遅延素子を用意しなければならない。しかし、想定される遅延時間のバラツキが、動的IR-Dropを考慮しても±（プラスマイナス）１０％程度の遅延時間と予想さるならば、2500psの20%である500psの時間を測定できれば良いことになる。500psを測定するには、30psの遅延素子を17個以上並べれば良いことになる。
【００４４】
また、図１０に示す遅延調整回路P9_D0によって、2250ps程度の遅延を実現すれば良い。つまり、遅延調整回路P9_D0は、“Captuer CLK Up"のタイミング（保持指令の入力タイミング）を基準とする前後所定範囲（例えば、“ATS period”時間（例えば、2500ps）の±（プラスマイナス）１０％（例えば、-250ps〜+250 ps）の範囲）内で各信号線上の遅延時間測定用信号の状態が各遅延素子により順次変化するように、各遅延素子により遅延される前の遅延時間測定用信号を遅延させるのである。
【００４５】
この時の波形を図１１に示す。図１１は、図１０に示すデジタル信号遅延測定回路を動作させた時の波形例である。図１１の例では、19個並べた例を示した。遅延素子P9_D0,P9_D1,P9_D2,...P9_D18とフリップフロップP9_FFC0,P9_FFC1,P9_FFC2,...P9_FFC18で実現した遅延時間の測定範囲（図中ハッチング部分）を“Capture Window"と呼称する。
【００４６】
また、予想された遅延時間である±（プラスマイナス）１０％に対して、実際の素子の遅延時間が更に前後する可能性も考えられる。そのような場合、遅延調整回路P9_D0により、遅延時間の調整が可能な構造にすれば効果的である。つまり、“Capture Window"の中心点を“Captuer CLK Up"のタイミングを基準として左右にずらすのである。例えば、図１０に示すP9_DSEL[1:0]信号により、遅延調整回路P9_D0による遅延時間を変化させる。図１２に、Capture Windowを増やした例を示す。P9_DSEL[1:0] 信号が“０”の場合、遅延時間は、遅延素子P9_DA0とP9_SELの遅延時間の合計になり、この場合、図１２に示すように遅延時間は2050psである。また、P9_DSEL[1:0]信号が“１”の場合、遅延時間は、遅延素子P9_DA0とP9_DA1とP9_SELの遅延時間の合計時間になり、この場合、図１２に示すように遅延時間は2150psである。つまり、この例では、遅延調整回路P9_D0により、実時間スキャンテスト周期（この例では、2500ps）の82％から94％までの範囲の間の時間だけ遅延時間測定用信号の状態が変化（この例では、LowからHiへ）するタイミングを遅延させている。なお、P9_DSEL[1:0]信号は、ＩＣの外部端子から供給しても、スキャン対応のフリップフロップで制御しても良い。後者の構成にすることで、全てをスキャン信号によって制御することも可能となる。
【００４７】
このように図１０に示すような回路構成にすることで回路規模を大幅に増やすこと無く、より広い時間範囲で遅延時間を測定することが可能になる。
【００４８】
以上説明したように、上記実施形態に係るデジタル信号遅延測定回路によれば、瞬間的にデジタル回路の遅延時間を測定可能とし、動的IR-Dropの影響も加味した真の遅延時間を安価に測定することができ、遅延故障をより詳細に調べることができる。また、本デジタル信号遅延測定回路は、検査対象であるユーザー回路に影響を与えること無く遅延時間を測定することができる。
【００４９】
加えて、遅延素子やスキャン対応のフリップフロップによる回路構成は、ユーザー回路と同じ素子を使った回路であり、ユーザー回路に起こりうる動作による測定が可能である。よって、実際にユーザー回路に起こりうる動的IR-Dropによる遅延時間を測定することができ、より正確な遅延故障を診断することができる。
【００５０】
また、遅延時間の測定精度は、例えば、図５に示した遅延素子P6_D0，P6_D1，P6_D2，P6_D3によって決定されるので、デジタル回路で実現可能な限界精度近くまで実現でき、より正確な遅延情報を提供することができる。よって、遅延時間によるランク分け作業においても、客観的な測定結果を提示することが可能となり、より正確なランク分けが可能となる。また、既存の遅延故障の診断と同時に遅延時間を測定できるので、ＩＣ製造検査の時間的コストの増大無く、遅延情報の提供が可能となる。
【００５１】
また、図９に示したように、本デジタル信号遅延測定回路は、一般的なスキャン回路の一部となりうる。加えて、図５、図１０に示したように、小規模な回路で実現可能である。よって、本発明は、既存のスキャンシステムの流用可能であり、実装回路面積も多くを必要としない。よって、極めて少ないコストで実現することが可能である。
【００５２】
故に、コスト的にも回路面積的にも、図１３に示すように、ＬＳＩ内部に多数の本デジタル信号遅延測定回路（図中、黒い正方形（計１６個））を実装することが可能である。ＬＳＩ内部に多数のデジタル信号遅延測定回路を実装することにより、ＬＳＩ内部の物理的な位置の違いによる動的IR-Dropによる遅延時間の違いも、より正確に測定することができる。
【００５３】
なお、上記実施形態では、スキャンパス回路で一般的に使われるフリップフロップとして、Ｄタイプのフリップフロップを例に説明を行なった。しかし、本発明では、フリップフロップの種類は問題にならない。如何なるタイプのフリップフロップでも構成可能である。また、本質的にはトランスペアレントラッチであっても構成は可能である。更に言えば、メモリ素子でも構成は可能である。メモリの場合、仮にデータ線幅が32bit、アドレス線幅が16bitだと仮定すると、同時に記憶出きるのは32bitとなる。故に、図５に示すフリップフロップP6_FFC0〜P6_FFC3を、メモリ素子に置き換えることも可能となる。但し、一般的にはスキャンパス構造を有したメモリは存在しないので、メモリの初期化や、測定結果の転送回路等を別途設計する必要があるだろう。しかし、本発明に係るデジタル信号遅延測定回路は、ユーザー回路と完全に独立した回路であるため、このような回路構成を実現することも可能である。また、メモリ構成にすることによって、測定毎にアドレスを更新することによって複数回の測定結果を同メモリに記憶することも可能である。一例として、図１４にメモリを使った場合の、デジタル信号遅延測定回路の構成例を示す。
【図面の簡単な説明】
【００５４】
【図１】実時間スキャンテストの様子を示す図である。
【図２】動的IR-Dropのイメージを示す図である。
【図３】本発明の一実施形態に係るデジタル信号遅延測定回路の一例を示す図である。
【図４】一般的なスキャン対応のフリップフロップ等の構成例を示す図である。
【図５】スキャン対応のフリップフロップを適用したデジタル信号遅延測定回路の一例を示す図である。
【図６】図５に示すデジタル信号遅延測定回路を動作させた時の波形例を示す図である。
【図７】ユーザー回路の例を示す図である。
【図８】図７に示すユーザー回路のフリップフロップを、図４で示したスキャン対応のフリップフロップに置き換えた例を示す図である。
【図９】図８に示すユーザー回路に、図５に示すデジタル信号遅延測定回路を接続した例を示す図である。
【図１０】スキャン対応のフリップフロップを適用したデジタル信号遅延測定回路の、より実用的な例を示す図である。
【図１１】図１０に示すデジタル信号遅延測定回路を動作させた時の波形例である。
【図１２】Capture Windowを増やした例を示す図である。
【図１３】ＬＳＩ内部に多数の本デジタル信号遅延測定回路を実装した例を示す図である。
【図１４】メモリを使った場合の、デジタル信号遅延測定回路の構成例を示す図である。
【符号の説明】
【００５５】
P1_FFL，P1_FFC0，P1_FFC1，P1_FFC2，P1_FFC3  フリップフロップ
P1_D0，P1_D1，P1_D2，P1_D3  遅延素子
P5_SEL  セレクタ素子
P9_D0  遅延調整回路
【図１】
0005131025.tif 000002
【図２】
0005131025.tif 000003
【図３】
0005131025.tif 000004
【図４】
0005131025.tif 000005
【図５】
0005131025.tif 000006
【図６】
0005131025.tif 000007
【図７】
0005131025.tif 000008
【図８】
0005131025.tif 000009
【図９】
0005131025.tif 000010
【図１０】
0005131025.tif 000011
【図１１】
0005131025.tif 000012
【図１２】
0005131025.tif 000013
【図１３】
0005131025.tif 000014
【図１４】
0005131025.tif 000015