(57)【要約】【課題】スキャンチェーンの故障解析に必要な試験時間を短縮する。【解決手段】半導体集積回路装置１は、外部の電源ユニット１３０から電源電圧を印加されて動作する複数のフリップフロップを直列接続したスキャンチェーン１０１と、試験回路１０と、を有する。試験回路１０は、外部の電源ユニット１３０からの電源電圧を、スキャンチェーン１０１のスキャン動作に同期させて、スキャンチェーン１０１の電源電圧マージン試験用の試験電圧に変更する。【選択図】図１
2017015398.tif 000002
【特許請求の範囲】
【請求項１】
外部の電源ユニットから電源電圧を印加されて動作する複数のフリップフロップを直列接続した第１スキャンチェーンと、
前記外部の電源ユニットからの前記電源電圧を、前記第１スキャンチェーンのスキャン動作に同期させて、前記第１スキャンチェーンの電源電圧マージン試験用の試験電圧に変更する試験回路と、を有する、半導体集積回路装置。
【請求項２】
前記試験回路は、
前記外部の電源ユニットにフィードバックされる出力電圧を、前記スキャン動作に同期させて変更することにより、前記電源電圧を前記試験電圧に変更する、請求項１に記載の半導体集積回路装置。
【請求項３】
前記試験回路は、
異なる分圧比で前記出力電圧を分圧する複数組の抵抗対と、
前記複数のフリップフロップのうちの少なくとも一の試験対象フリップフロップが前記スキャン動作によって動作する動作タイミングで、前記複数組の抵抗対のうち前記試験電圧に対応する抵抗対を選択することにより、前記試験対象フリップフロップに印加される前記電源電圧を前記試験電圧に変更する選択回路と、を有する、請求項２に記載の半導体集積回路装置。
【請求項４】
前記選択回路は、
前記複数組の抵抗対のうち、前記試験電圧に対応する抵抗対に関する情報を設定される電圧設定レジスタと、
前記試験対象フリップフロップの前記動作タイミングに対応する、前記スキャン動作用のクロック数を、第１クロック数として設定されるタイミング調整レジスタと、
前記タイミング調整レジスタに前記第１クロック数を設定した後の前記スキャン動作用のクロック数を、第２クロック数として計数する同期カウンタと、
前記タイミング調整レジスタに設定される前記第１クロック数と前記同期カウンタによって計数される前記第２クロック数とを比較する比較回路と、
前記比較回路による比較の結果に応じて、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する抵抗対選択回路と、を有する、請求項３に記載の半導体集積回路装置。
【請求項５】
前記タイミング調整レジスタは、一の前記試験対象フリップフロップの前記動作タイミングに対応する、前記第１クロック数を設定され、
前記比較回路による比較の結果、前記第１クロック数と前記第２クロック数とが一致する場合、前記抵抗対選択回路は、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、請求項４に記載の半導体集積回路装置。
【請求項６】
前記タイミング調整レジスタは、連続する二以上の前記試験対象フリップフロップの範囲の前記動作タイミングに対応する、前縁側クロック数および後縁側クロック数を、前記第１クロック数として設定され、
前記比較回路による比較の結果、前記第２クロック数が前記前縁側クロック数と前記後縁側クロック数との間である場合、前記抵抗対選択回路は、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、請求項４に記載の半導体集積回路装置。
【請求項７】
前記電圧設定レジスタおよび前記タイミング調整レジスタを直列接続する、前記第１スキャンチェーンと独立した第２スキャンチェーンを、さらに有し、
前記第２スキャンチェーンのスキャン動作によって、前記電圧設定レジスタに対する前記抵抗対に関する情報の設定、および、前記タイミング調整レジスタに対する前記第１クロック数の設定を行なう、請求項４〜請求項６のいずれか一項に記載の半導体集積回路装置。
【請求項８】
外部の電源ユニットから電源電圧を印加されて動作する複数のフリップフロップを直列接続した第１スキャンチェーンを有する半導体集積回路装置の試験方法であって、
前記半導体集積回路装置に内蔵される試験回路によって、前記外部の電源ユニットからの前記電源電圧を、前記第１スキャンチェーンのスキャン動作に同期させて、前記第１スキャンチェーンの電源電圧マージン試験用の試験電圧に変更し、
前記第１スキャンチェーンからのスキャン出力と期待値とを比較することにより、前記第１スキャンチェーンの合否判定を行なって、前記複数のフリップフロップのうち、電源電圧マージン故障の生じたフリップフロップを特定する、半導体集積回路装置の試験方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、半導体集積回路装置、および半導体集積回路装置の試験方法に関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integration）などの半導体集積回路装置１００では、図１６に示すように、スキャンチェーン１０１が備えられ、スキャンチェーン１０１を用いてスキャンテストが行なわれる。スキャンチェーン１０１は、外部の電源ユニット（図１９の符号１３０参照）から電源電圧を印加されて動作する複数のフリップフロップを直列接続したものである。以下、フリップフロップをＦＦと略記する。
【０００３】
図１６に示すスキャンチェーン１０１では、ｎ個のＦＦ＃１〜ＦＦ＃ｎ（ｎは２以上の整数）が直列接続されている。そして、スキャンチェーン１０１の各ＦＦに対しクロック端子１０２からシフトクロック（ShiftCLK）を印加することで、パターンジェネレータ（図１９の符号１１０参照）で生成されたパターンが、スキャン入力端子１０３からScanIN信号として入力され、各ＦＦに設定される。この後、ＬＳＩ１００の動作に伴って各ＦＦに出力設定された値が、シフトクロックを各ＦＦに印加することで、スキャン出力端子１０４からScanOUT信号として出力される。出力されたScanOUT信号を期待値と比較することで、ＬＳＩ１００のスキャンテスト結果の判定が行なわれる。
【０００４】
このようなスキャンチェーン１０１において、図１６に示すように、一のＦＦ（例えばＦＦ＃３）が故障すると（図１７の［Ｂ］に示す固定故障が発生すると）、転送すべきデータが途中で止まり最後まで（スキャン出力端子１０４から出力されるまで）転送できなくなる。このように一のＦＦの故障によってスキャンチェーン１０１が故障すると、いくらScanIN信号を変化させてもScanOUT信号が変わらなくなる。このため、ＬＳＩ外部から各ＦＦにアクセスできず、スキャンチェーン１０１の内部で何が起こっているのかを観測することは困難になる。
【０００５】
ところで、スキャンチェーン１０１は、上述の通り、ＬＳＩ外部の電源ユニットから電源電圧を印加されて動作する。このため、ＬＳＩ１００の出荷前に、スキャンチェーン１０１が、通常使用する電圧範囲内（下限電圧と上限電圧との間）の電源電圧によって正常に動作するか否かを確認する電圧マージン試験が行なわれる。
【０００６】
電圧マージン試験では、図１７の［Ａ］に示すごとく上記電圧範囲全域の電源電圧でスキャンチェーン１０１が正常に動作する場合（試験ＯＫの場合）、スキャンチェーン１０１は、良スキャンチェーンであると判断される。一方、図１７の［Ｂ］に示すごとく上記電圧範囲全域の電源電圧でスキャンチェーン１０１が正常に動作しない場合（試験ＮＧの場合）、スキャンチェーン１０１には固定故障が生じていると判断される。
【０００７】
また、図１７の［Ｃ］に示すごとく上記電圧範囲の一部の範囲（下限電圧側の範囲）内の電源電圧でスキャンチェーン１０１が正常に動作しない場合（試験ＮＧの場合）、スキャンチェーン１０１には電源電圧マージン故障が生じていると判断される。電源電圧マージン故障であると判断されたスキャンチェーン１０１を有するＬＳＩ１００については、製造条件を改善するため、ＬＳＩ１００の不良原因を特定する故障解析が実施される。
【０００８】
スキャンチェーン１０１の故障が、図１７の［Ｃ］に示すように電源電圧に依存する電源電圧マージン故障である場合、以下のような故障解析を行なうことが提案されている（特許文献２参照）。
【０００９】
図１８は、電源電圧マージン故障の解析手法を説明するタイムチャートである。図１８において、横方向は時間を表し、スキャンチェーン１０１を成すＦＦの数はｎ（ｎは２以上の整数）とする。
【００１０】
図１８において、パターン番号は、一定時間（制御サイクル）毎に区切られる入力パターン，期待値などに対して順番に割り振られる番号１，２，…，ｎ，ｎ＋１である。電源電圧は、電源ユニットによってＬＳＩ１００（ＦＦ）に印加される電圧である。電源電圧は、通常使用する電源電圧（正常動作電圧）と、当該通常使用する電源電圧よりも低いまたは高い電源電圧マージン試験用の試験電圧（故障発生電圧）との２種類のうちのいずれか一方に切り替えられる。図１８では、試験電圧が、当該通常使用する電源電圧よりも低い場合について示されている。
【００１１】
また、入力パターン（ShiftCLK）は、上述したクロック端子１０２から入力される、スキャン動作に必要なシフトクロック信号である。入力パターン（ScanIN）は、上述したスキャン入力端子１０３から入力される、スキャン動作に必要なスキャン信号である。出力値（ＦＦ＃３の出力）は、図１６で故障の発生したＦＦ＃３からの出力値である。出力値（ScanOUT）は、上述したスキャン出力端子１０４から出力されるスキャンチェーン１０１からの最終出力値である。
【００１２】
期待値は、スキャン動作の結果、パターン番号ｎでスキャン出力端子１０４から出力されることが期待される状態Ｈ(High)またはＬ(Low)である。図１８に示す例では、パターン番号１で、ScanIN＝１（Ｈ）を入力しているので、スキャン動作の結果、パターン番号ｎでＨが出力されるとスキャン動作は合格（ＯＫ）となるので、期待値としてはＨが設定される。さらに、合否判定は、期待値比較器（図１９の符号１２０参照）による、最終出力値と期待値との比較結果であり、一致した場合にＯＫ（合格）、不一致の場合にＮＧ（不合格）となる。
【００１３】
図１８に示す電源電圧マージン故障の解析手法では、繰返し実行されるｎ回のスキャン動作のうち、１回のスキャン動作（図１８ではパターン番号３でのスキャン動作）の実行時だけ、ＬＳＩ１００の電源電圧が、正常動作電圧から故障発生電圧に変更される。その後、ＬＳＩ１００の電源電圧は、故障発生電圧から元の正常動作電圧に戻した後、スキャン出力端子１０４からの出力データが観測され、スキャン動作の合否判定が行なわれる。そして、電圧変更対象のＦＦを切り替え、スキャンチェーン１０１の全ＦＦのそれぞれについて、図１８に示す一連の流れの試験と同様の試験を繰り返すことで、故障ＦＦが特定される。
【００１４】
図１８に示す例では、電源投入後、パターン番号２まで正常動作電圧でスキャン動作が行なわれる。パターン番号２のスキャン動作を終了した後、電源電圧は正常動作電圧から故障発生電圧に変更される。変更後、パターン番号３の時のみ故障発生電圧でスキャン動作が行なわれる。パターン番号３のスキャン動作を終了した後、電源電圧は故障発生電圧から正常動作電圧に変更される。変更後、パターン番号４以降は、正常動作電圧でスキャン動作が行なわれる。このとき、電源電圧マージン故障の発生しているＦＦ＃３についてのみ故障発生電圧でスキャン動作が行なわれているので、スキャン動作は正常に行なわれない。したがって、最終出力値はＬとなり、期待値Ｈと一致せず、スキャン動作は不合格となる。
【００１５】
上述した解析を実現するために用いられる環境を、図１９に示す。図１９に示す環境において、試験対象のＬＳＩ１００の外部には、パターンジェネレータ１１０，期待値比較器１２０，電源ユニット１３０および外部コントローラ１４０が備えられる。なお、図１９では、５個のＦＦを直列接続したスキャンチェーン１０１が示されている。
【００１６】
パターンジェネレータ１１０は、ＬＳＩ１００（スキャンチェーン１０１）にスキャン動作をさせるための測定パターン（図１８の入力パターン；ShiftCLK，ScanIN）を生成し端子１０２，１０３に印加する。
【００１７】
期待値比較器１２０は、端子１０４からの最終出力値を期待値と比較し、その比較結果をスキャン動作の合否判定結果（合格／不合格）として出力する。
【００１８】
電源ユニット１３０は、ＬＳＩ１００の電源電圧端子１０５への出力電圧（電源電圧）を生成供給する。電源ユニット１３０は、上記出力電圧を変更設定可能であり、ＬＳＩ１００のリモートセンス端子１０６からフィードバックされる電圧を受け、リモートセンスによる電圧降下を補償する。電源ユニット１３０は、電圧設定部１３１および電圧出力部１３２を有する。電圧設定部１３１は、Ｉ／Ｆ（Interface）１３１ａ，レジスタ１３１ｂ，ＤＡＣ（Digital/Analog Converter）１３１ｃを有する。Ｉ／Ｆ１３１ａは、外部コントローラ１４０によって設定指示される電圧値を受信する。レジスタ１３１ｂは、Ｉ／Ｆ１３１ａで受信した電圧値（デジタル値）を保持する。ＤＡＣ１３１ｃは、レジスタ１３１ｂに保持される電圧値をデジタル値からアナログ値に変換する。電圧出力部１３２は、比較器１３２ａおよび電圧生成部１３２ｂを有する。比較器１３２ａは、リモートセンス端子１０６からフィードバックされる電圧と電圧設定部１３１からの設定電圧との差分を検出する。電圧生成部１３２ｂは、比較器１３２ａからの差分に応じた電圧（同差分を解消する電源電圧）を生成してＬＳＩ１００の電源電圧端子１０５に印加する（矢印Ａ１参照）。
【００１９】
外部コントローラ１４０は、上述したパターンジェネレータ１１０，期待値比較器１２０，電源ユニット１３０に対し、専用の通信用バスを介して、後述する命令Ｃ１〜Ｃ４を発行することで、スキャンチェーン１０１の動作を制御して上述した故障解析を行なう。
【００２０】
図１９に示す環境で故障解析を行なう場合、一つのＦＦを試験するために外部コントローラ１４０は下記４種類の命令Ｃ１〜Ｃ４を発行する。命令Ｃ１〜Ｃ４の発行は、試験対象のＦＦを変更する都度、繰返し行なわれる。ここで、命令Ｃ１は、「パターンジェネレータ１１０の動作開始を指示し、測定パターンを生成・印加する命令」である。命令Ｃ２は、「測定パターンの生成・印加を停止する命令」である。命令Ｃ３は、「電源電圧端子１０５に正常動作電圧を印加すべく正常動作電圧を設定する命令」または「電源電圧端子１０５に故障発生電圧を印加すべく故障発生電圧を設定する命令」である。命令Ｃ４は、「スキャン動作の合否判定結果の問合せを行なう命令」である。
【先行技術文献】
【特許文献】
【００２１】
【特許文献１】特開２００８−２４４００３号公報
【特許文献２】特開２００３−３１５４１６号公報
【発明の概要】
【発明が解決しようとする課題】
【００２２】
電源電圧マージン故障の発生時に行なわれるスキャンチェーン１０１の故障解析では、スキャンチェーン１０１の全てのＦＦが網羅的に試験される。このため、スキャンチェーン１０１のＦＦ数が数百万を超える規模のＬＳＩ１００では、試験対象ＦＦの数が膨大なものになる。そして、膨大な数の試験対象ＦＦのそれぞれについて、上記命令Ｃ１〜Ｃ４を発行して故障解析を行なうことになる。
【００２３】
このとき、命令Ｃ３に応じて電源電圧の設定を行なう際には、外部コントローラ１４０から電源ユニット１３０に対し電圧値の設定が行なわれるため、当該設定にかなりの時間を要する。また、当該設定を行なうために、命令Ｃ２によって測定パターンの生成・印加を停止する必要がある。さらに、停止した測定パターンの再印加を命令Ｃ１によって行なう必要もある。またさらに、外部コントローラ１４０から電源ユニット１３０への設定は専用の通信用バスを介して行なわれるため、通信時間も長くなる。したがって、電源電圧の設定には多大な時間を要する。
【００２４】
例えば、図１８では、パターン番号２のスキャン動作を終了した後、パターンジェネレータ１１０の動作を一旦停止させた上で、かなりの時間をかけて故障発生電圧が電源ユニット１３０に設定される。この後、パターンジェネレータ１１０の動作が再開され、パターン番号３のスキャン動作が実行される。さらに、パターンジェネレータ１１０の動作を一旦停止させた上で、かなりの時間をかけて正常動作電圧が電源ユニット１３０に設定される。この後、パターンジェネレータ１１０の動作が再開され、パターン番号４以降のスキャン動作が実行される。
【００２５】
このように、図１８および図１９に示す故障解析技術では、スキャンチェーン１０１を成す全てのＦＦを試験するには、全ＦＦ数の分だけ、上述のような電源電圧の設定が行なわれる。このため、電源電圧の設定時間が累積され試験時間が長大になるという課題がある。
【００２６】
さらに、このような課題により、ターンアラウンドタイム内に全てのデータを採り切れない場合がある。このような場合、部分的に採取されたデータに基づき、推定を交えて故障箇所（故障したＦＦ）を特定することになるため、故障箇所の特定精度が低下するという課題もある。
【００２７】
なお、特許文献２では、試験時間を短縮するために、時間を要する電源電圧の設定をＬＳＩ内部の回路に実行させることが提案されている。より具体的に、特許文献２では、電源配線自体に抵抗を作り込み電圧ドロップを発生させることで電源電圧を設定することが提案されている。しかしながら、スキャンチェーンを成すＦＦの数が数百万を超える規模のＬＳＩでは、消費電力が数百ワットを超え、微小な抵抗であっても発生する電圧ドロップは非常に大きなものになる。そのため、電源配線に切替回路や抵抗を作り込むことができず、特許文献２で提案される電源電圧の設定技術では、上述の課題を解決することが困難である。
【００２８】
一つの側面で、本件明細書に開示の発明は、スキャンチェーンの故障解析に必要な試験時間を短縮することを目的とする。
【課題を解決するための手段】
【００２９】
本件の半導体集積回路装置は、外部の電源ユニットから電源電圧を印加されて動作する複数のフリップフロップを直列接続した第１スキャンチェーンと、試験回路と、を有する。前記試験回路は、前記外部の電源ユニットからの前記電源電圧を、前記第１スキャンチェーンのスキャン動作に同期させて、前記第１スキャンチェーンの電源電圧マージン試験用の試験電圧に変更する。
【発明の効果】
【００３０】
一実施形態によれば、スキャンチェーンの故障解析に必要な試験時間を短縮することができる。
【図面の簡単な説明】
【００３１】
【図１】本実施形態の半導体集積回路装置の構成の概要を説明するブロック図である。
【図２】本実施形態の半導体集積回路装置の試験方法の概要を説明するフローチャートである。
【図３】第１実施例としての半導体集積回路装置の構成を示すブロック図である。
【図４】第１実施例の半導体集積回路装置において選択される抵抗対の抵抗値例や当該抵抗値例に対応する分圧比などを説明する図である。
【図５】第１実施例の半導体集積回路装置の試験手順を説明するフローチャートである。
【図６】第１実施例の半導体集積回路装置の試験手順を説明するフローチャートである。
【図７】第１実施例の半導体集積回路装置の試験手順を具体的に説明するタイムチャートである。
【図８】第１実施例の半導体集積回路装置の試験手順を具体的に説明するタイムチャートである。
【図９】第１実施例の半導体集積回路装置の試験手順を具体的に説明するタイムチャートである。
【図１０】第２実施例としての半導体集積回路装置の構成を示すブロック図である。
【図１１】第２実施例の半導体集積回路装置の試験手順を説明するフローチャートである。
【図１２】第２実施例の半導体集積回路装置の試験手順を説明するフローチャートである。
【図１３】第２実施例の半導体集積回路装置の試験手順を具体的に説明するタイムチャートである。
【図１４】第２実施例の半導体集積回路装置の試験手順を具体的に説明するタイムチャートである。
【図１５】第２実施例の半導体集積回路装置の試験手順を具体的に説明するタイムチャートである。
【図１６】スキャンチェーンを有するＬＳＩを示す図である。
【図１７】電圧マージン試験による判断結果（良，固定故障，電源電圧マージン故障）を説明する図である。
【図１８】電源電圧マージン故障の解析手法を説明するタイムチャートである。
【図１９】図１８に示す解析手法を実現する環境を示すブロック図である。
【発明を実施するための形態】
【００３２】
以下に、図面を参照し、本願の開示する半導体集積回路装置、および半導体集積回路装置の試験方法の実施形態について、詳細に説明する。ただし、以下に示す実施形態は、あくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能を含むことができる。そして、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【００３３】
〔１〕本実施形態の概要
後述する第１および第２実施例を含む本実施形態は、ＬＳＩ（半導体集積回路装置）において、スキャンチェーンの電源電圧マージン故障（図１７の［Ｃ］参照）を解析する際に係る技術を提案する。本実施形態では、上述した電源電圧マージン故障の解析にあたり、外部の電源ユニットからＬＳＩに印加される電源電圧が、ＬＳＩ内のスキャンチェーンのスキャン動作に同期させて、試験電圧に自動的に変更される。
【００３４】
これにより、外部コントローラによって電源ユニットの電圧設定を変更することなく試験電圧を速やかに得ることができる。つまり、従来、時間を要していた、外部コントローラによる電源ユニットに対する電圧設定を行なうことなく、試験電圧を得ることができる。したがって、外部コントローラによる電源ユニットの電圧設定に要する時間が削減され、スキャンチェーンの故障解析に必要な試験時間が短縮される。
【００３５】
また、本実施形態では、電源電圧を通常使用する電源電圧から試験電圧に変更する際、電源ユニットの一般的な機能である、リモートセンスによる電圧降下の補償機能（電源電圧のフィードバック制御機能）が用いられる。つまり、リモートセンスによる電圧降下の補償機能へ作用するようにＬＳＩの内蔵回路を動作させることで、リモートセンスの電圧が操作され電源電圧が変更される。これにより、電源電圧を試験電圧に変更するために電源配線自体に回路を追加する必要がなく、消費電力の大きなＬＳＩでも電源電圧の変更を実現することができる。
【００３６】
ここで、まず、図１を参照しながら、本実施形態（後述する第１および第２実施例を含む）のＬＳＩ（半導体集積回路装置）１の構成の概要について説明する。なお、図１は本実施形態のＬＳＩ１の構成の概要を説明するブロック図である。
【００３７】
本実施形態のＬＳＩ１の外部には、図１９に示す環境と同様、パターンジェネレータ１１０，期待値比較器１２０，電源ユニット１３０および外部コントローラ１４０が備えられる。
【００３８】
パターンジェネレータ１１０は、ＬＳＩ１に対し測定パターン（ShiftCLK1，ScanIN1，ShiftCLK2，ScanIN2，RESET）を生成し、ＬＳＩ１の端子１０２，１０３，１０２ａ，１０３ａ，１０７に印加する。クロック端子１０２およびスキャン入力端子１０３には、試験対象である第１スキャンチェーン１０１にスキャン動作をさせるShiftCLK1信号およびScanIN1信号がそれぞれ印加される。ShiftCLK1信号およびScanIN1信号は、それぞれ前述したShiftCLK信号およびScanIN信号に対応する。また、クロック端子１０２ａおよびスキャン入力端子１０３ａには、後述する第２スキャンチェーン１０１ａにスキャン動作をさせるShiftCLK2信号およびScanIN2信号がそれぞれ印加される。リセット端子１０７には、後述する同期カウンタ５０をリセットするRESET信号が印加される。クロック端子１０２ａ，スキャン入力端子１０３ａおよびリセット端子１０７は、本実施形態で新たに追加されたものである。
【００３９】
期待値比較器１２０は、スキャン出力端子１０４からの最終出力値を期待値と比較し、その比較結果をスキャン動作の合否判定結果（合格／不合格）として出力する。
【００４０】
電源ユニット１３０は、図１９を参照しながら前述したＬＳＩ１００と同様、ＬＳＩ１の電源電圧端子１０５への出力電圧を生成供給する。電源ユニット１３０は、上記出力電圧を変更設定可能であり、ＬＳＩ１のリモートセンス端子１０６からフィードバックされる電圧を受け、リモートセンスによる電圧降下を補償する。電源ユニット１３０は、電圧設定部１３１および電圧出力部１３２を有する。電圧設定部１３１は、Ｉ／Ｆ１３１ａ，レジスタ１３１ｂ，ＤＡＣ１３１ｃを有する。Ｉ／Ｆ１３１ａは、外部コントローラ１４０によって設定指示される電圧値を受信する。レジスタ１３１ｂは、Ｉ／Ｆ１３１ａで受信した電圧値を保持する。ＤＡＣ１３１ｃは、レジスタ１３１ｂに保持される電圧値をデジタル値からアナログ値に変換する。電圧出力部１３２は、比較器１３２ａおよび電圧生成部１３２ｂを有する。比較器１３２ａは、リモートセンス端子１０６からフィードバックされる電圧と電圧設定部１３１からの設定電圧との差分を検出する。電圧生成部１３２ｂは、比較器１３２ａからの差分に応じた電圧を生成してＬＳＩ１の電源電圧端子１０５に印加する。
【００４１】
外部コントローラ１４０は、上述したパターンジェネレータ１１０，期待値比較器１２０，電源ユニット１３０に対し、専用の通信用バスを介して、以下の命令Ｃ１，Ｃ３，Ｃ４をそれぞれ発行することで、スキャンチェーン１０１の動作を制御して故障解析を行なう。本実施形態において、命令Ｃ１は、「パターンジェネレータ１１０の動作開始を指示し、測定パターンを生成・印加する命令」である。命令Ｃ３は、「電源電圧端子１０５に正常動作電圧を印加すべく正常動作電圧を設定する命令」である。命令Ｃ４は、「スキャン動作の合否判定結果の問合せを行なう命令」である。
【００４２】
そして、本実施形態のＬＳＩ１には、少なくとも、第１スキャンチェーン１０１と、試験回路１０とが内部回路として備えられている。
【００４３】
第１スキャンチェーン１０１は、図１６や図１９を参照しながら前述したものと同様、試験対象のスキャンチェーンであり、外部の電源ユニット１３０から電源電圧を印加されて動作する複数のＦＦを直列接続したものである。なお、図１では、５個のＦＦ＃１〜＃５を直列接続したスキャンチェーン１０１が示されている。スキャンチェーン１０１を成すＦＦの数は、これに限定されるものではなく、数百万を超える場合もある。
【００４４】
スキャンチェーン１０１を成す各ＦＦのクロック端子は、ＬＳＩ１のクロック端子１０２に接続され、パターンジェネレータ１１０からのクロック信号ShiftCLK1を入力される。スキャンチェーン１０１の先頭ＦＦのデータ入力端子は、ＬＳＩ１のスキャン入力端子１０３に接続され、パターンジェネレータ１１０からのクロック信号ShiftCLK1を入力される。スキャンチェーン１０１の最終ＦＦのデータ出力端子は、ＬＳＩ１のスキャン出力端子１０４に接続され、当該最終ＦＦのデータ出力端子からの出力（最終値）をScanOUT信号として期待値比較器１２０へ送出する。また、スキャンチェーン１０１を成す各ＦＦには、電源配線および電源電圧端子１０５を介して外部の電源ユニット１３０が接続され電源電圧が印加される。
【００４５】
試験回路１０は、外部の電源ユニット１３０からの電源電圧を、第１スキャンチェーン１０１のスキャン動作に同期させて、第１スキャンチェーン１０１の電源電圧マージン試験用の試験電圧に変更する。試験回路１０は、外部の電源ユニット１３０にフィードバックされる出力電圧を、スキャン動作に同期させて変更することにより、電源電圧を試験電圧に変更するもので、複数組の抵抗対２１−１〜２１−ｍ（ｍは２以上の整数）を含む抵抗分圧回路２１と、選択回路とを有する。
【００４６】
抵抗分圧回路２１は、異なる分圧比で、電源ユニット１３０の出力電圧を分圧する複数組（本実施形態ではｍ組）の抵抗対２１−１〜２１−ｍを有する。
【００４７】
上記選択回路は、第１スキャンチェーン１０１を成す複数のＦＦのうちの少なくとも一の試験対象ＦＦがスキャン動作によって動作する動作タイミングで、複数組の抵抗対２１−１〜２１−ｍのうち試験電圧に対応する一の抵抗対を選択する。これにより、上記選択回路は、試験対象ＦＦに印加される電源電圧を試験電圧に変更する。上記選択回路は、例えば、後述する電圧設定レジスタ３０，タイミング調整レジスタ４０，同期カウンタ５０，タイミング比較器６０および分圧抵抗値選択回路２２を有する。
【００４８】
なお、後述する第２実施例では、タイミング調整レジスタ４０に代え、前縁側タイミング調整レジスタ４０ａおよび後縁側タイミング調整レジスタ４０ｂが用いられる。また、第２実施例では、タイミング比較器６０に代え、タイミング比較器６０ａが用いられる。また、本実施形態では、抵抗分圧回路２１および分圧抵抗値選択回路２２によって、可変電圧生成回路２０が構成されている。
【００４９】
電圧設定レジスタ３０は、ｍ組の抵抗対２１−１〜２１−ｍのうち、所望の試験電圧に対応する抵抗対に関する情報を設定される。当該情報は、例えば、ｍ組の抵抗対２１−１〜２１−ｍのうちの一つを特定する番号Ｅである。電圧設定レジスタ３０は、複数のＦＦを直列接続して構成される。
【００５０】
タイミング調整レジスタ４０は、一の試験対象ＦＦの動作タイミングに対応する、スキャン動作用のクロック数を、第１クロック数として設定される。第１クロック数は、例えば、電源電圧を試験電圧に変更するタイミングに対応するクロック数Ｂである。タイミング調整レジスタ４０は、複数のＦＦを直列接続して構成される。
【００５１】
同期カウンタ５０は、タイミング調整レジスタ４０に第１クロック数Ｂを設定した後のスキャン動作用のクロック（クロック信号ShiftCLK1）の数を、第２クロック数Ａとして計数する。図７〜図９や図１３〜図１５を参照しながら後述するごとく、同期カウンタ５０は、タイミング調整レジスタ４０に第１クロック数Ｂを設定した直後に、リセット端子１０７経由でパターンジェネレータ１１０からのRESET信号を受けてリセットされ、ＬＳＩ１に印加されるクロックの数Ａを計数する。
【００５２】
タイミング比較器（比較回路）６０は、タイミング調整レジスタ４０に設定される第１クロック数Ｂと同期カウンタ５０によって計数される第２クロック数Ａとを比較する。タイミング比較器６０は、第１クロック数Ｂと第２クロック数Ａとが一致した場合つまり電源電圧を試験電圧に変更するタイミングで、トリガ信号（図７〜図９や図１３〜図１５参照）を生成して分圧抵抗値選択回路２２に出力する。
【００５３】
分圧抵抗値選択回路（抵抗対選択回路）２２は、タイミング比較器６０による比較の結果に応じて、電圧設定レジスタ３０に設定される抵抗対に関する情報（番号Ｅ）に基づき、試験電圧に対応する抵抗対を選択する。つまり、可変電圧生成回路２０は、タイミング比較器６０からトリガ信号を受けるタイミングで、リモートセンス端子１０６経由で電源ユニット１３０にフィードバックされる出力電圧を変更する。これにより、電源電圧が、通常使用する電源電圧（正常動作電圧）から、電圧設定レジスタ３０の番号Ｅに応じた試験電圧に変更される。
【００５４】
本実施形態では、可変電圧生成回路２０および電圧設定レジスタ３０により、リモートセンス用の電圧を生成する回路が構成される。また、タイミング調整レジスタ４０，同期カウンタ５０およびタイミング比較器６０により、電圧を切り替えるタイミングを判定する回路が構成される。さらに、同期カウンタ５０およびスキャンチェーン１０１により、スキャンチェーン１０１のスキャン動作と電源電圧の変更動作との同期をとる回路が構成される。
【００５５】
なお、本実施形態のＬＳＩ１においては、上述した第１スキャンチェーン１０１と独立した第２スキャンチェーン１０１ａが備えられている。第２スキャンチェーン１０１ａは、電圧設定レジスタ３０を成すＦＦとタイミング調整レジスタ４０を成すＦＦとを直列接続することで構成される。第２スキャンチェーン１０１ａのスキャン動作によって、電圧設定レジスタ３０に対する抵抗対に関する情報（番号Ｅ）の設定、および、タイミング調整レジスタ４０に対する第１クロック数（番号Ｂ）の設定が行なわれる。このため、第２スキャンチェーン１０１ａを成す各ＦＦのクロック端子は、ＬＳＩ１のクロック端子１０２ａに接続され、パターンジェネレータ１１０からのクロック信号ShiftCLK2を入力される。スキャンチェーン１０１ａの先頭ＦＦ（図１に示す例ではタイミング調整レジスタ４０の先頭ＦＦ）のデータ入力端子は、ＬＳＩ１のスキャン入力端子１０３ａに接続され、パターンジェネレータ１１０からのクロック信号ShiftCLK2を入力される。
【００５６】
次に、図２に示すフローチャート（ステップＳ１１〜Ｓ２０）に従って、図１に示す本実施形態のＬＳＩ１の試験方法の概要について説明する。
【００５７】
最初に、試験対象のスキャンチェーン１０１を成す複数のＦＦの中から、試験対象ＦＦ（例えば一個目（先頭）のＦＦ）が決定される（ステップＳ１１）。
【００５８】
そして、電圧を変えるタイミングと故障発生電圧の設定値とが、それぞれ、ＬＳＩ内部回路のレジスタ４０，３０に設定される（ステップＳ１２）。レジスタ４０，３０に対する設定は、試験対象のスキャンチェーン１０１とは別個に用意される、正常動作が保障されたスキャンチェーン１０１ａのスキャン動作によって行なわれる。スキャンチェーン１０１ａのスキャン動作は、例えば、外部コントローラ１４０から指示を受けたパターンジェネレータ１１０が、測定パターンをスキャンチェーン１０１ａに印加することによって実行される。このとき、タイミング調整レジスタ４０には、ステップＳ１１で決定される一の試験対象ＦＦの動作タイミングつまり電源電圧を試験電圧に変更するタイミングに対応する、スキャン動作用クロック数（第１クロック数）Ｂが設定される。また、電圧設定レジスタ３０には、ｍ組の抵抗対２１−１〜２１−ｍのうち、所望の試験電圧に対応する抵抗対に関する情報つまり当該抵抗対を特定する番号Ｅが設定される。
【００５９】
レジスタ４０，３０に対する設定を行なった状態で、外部コントローラ１４０が上記命令Ｃ１（図１参照）をパターンジェネレータ１１０に発行することで、パターンジェネレータ１１０からＬＳＩ１に対し測定パターンが生成・印加され、スキャン動作が開始される（ステップＳ１３）。これに伴い、スキャンチェーン１０１を動作させるためのクロックと同じクロックで、同期カウンタ５０が計数動作を行なう。これにより、スキャンチェーン１０１のスキャン動作とＬＳＩ内部回路（試験回路１０）による電源電圧の変更動作との同期がとられる（ステップＳ１４）。
【００６０】
そして、スキャン動作に合わせてＬＳＩ内部回路（試験回路１０）によって電圧を変えるタイミングが判定される。このとき、タイミング比較器６０によって、タイミング調整レジスタ４０に設定された第１クロック数Ｂと、同期カウンタ５０による計数値（第２クロック数）Ａとが比較される。当該比較の結果に従って、電圧変更タイミングの判定が行なわれる（ステップＳ１５）。
【００６１】
第１クロック数Ｂと同期カウンタ５０による計数値Ａとが一致する場合、タイミング比較器６０は、可変電圧生成回路２０に対しトリガ信号を発生・出力し、電源電圧を故障発生電圧（試験電圧）に変更もしくは維持する。一方、第１クロック数Ｂと同期カウンタ５０による計数値Ａとが不一致の場合、タイミング比較器６０は、可変電圧生成回路２０に対するトリガ信号を停止し、電源電圧を正常動作電圧に変更もしくは維持する（ステップＳ１６）。
【００６２】
可変電圧生成回路２０は、タイミング比較器６０からのトリガ信号を受け、正常動作電圧と故障発生電圧とのいずれか一方を電源電圧として選択する。つまり、分圧抵抗値選択回路２２は、トリガ信号と電圧設定レジスタ３０に設定された番号Ｅとに基づき、抵抗分圧回路２１で使用する抵抗対を決定する（ステップＳ１７）。これにより、決定された抵抗対による抵抗分圧比で、電源電圧から生成される擬似的なリモートセンス電圧が発生され、リモートセンス端子１０６から出力される（ステップＳ１８）。リモートセンス電圧が変化すると、電源ユニット１３０の電圧出力部１３２は、リモートセンスで圧の変化分を補償するように、ＬＳＩ１の電源電圧を追従させる。その結果、外部コントローラ１４０は、正常動作電圧を設定する命令Ｃ３（図１参照）を発行するだけで、故障発生電圧を設定する命令を発行することなく、ＬＳＩ１の電源電圧を変更することが可能になる。つまり、外部コントローラ１４０は、電源ユニット１３０内の電圧設定部１３１を使用することなく、ＬＳＩ１の電源電圧を変更することができる（ステップＳ１９；図１の矢印Ａ２参照）。
【００６３】
ステップＳ１３〜Ｓ１９の処理は、複数の測定パターンについて一パターン毎に最後の測定パターン（最終パターン番号）まで繰り返し実行される。最後のパターンが印加された後、期待値比較器１２０は、スキャンチェーン１０１の出力結果（スキャン出力端子１０４からの出力）を期待値と比較する。これにより、期待値比較器１２０は、第１スキャンチェーン１０１（試験対象ＦＦ）のスキャン動作の合否判定を行なう。
【００６４】
つまり、試験対象ＦＦに異常がなければ（出力結果と期待値とが一致する場合）、期待値比較器１２０は、当該試験対象ＦＦについて合格と判定する。一方、試験対象ＦＦに異常があれば（出力結果と期待値とが不一致の場合）、期待値比較器１２０は、当該試験対象ＦＦについて不合格と判定する（ステップＳ２０）。上述したステップＳ１１〜Ｓ２０の処理は、試験対象のスキャンチェーン１０１を成す全てのＦＦに対して繰り返し実行され、複数のＦＦの中から、電源電圧マージン故障の生じたＦＦが特定される。
【００６５】
上述のような構成や試験手順を用いれば、外部コントローラ１４０がパターンジェネレータ１１０に対し命令Ｃ１を発行するだけで、ＬＳＩ内部の試験回路１０は、スキャン動作と同期をとりながらＬＳＩ１の電源電圧を自動的に設定し、ＦＦの合否判定まで実施することができる。その際、外部コントローラ１４０は、電源ユニット１３０の電圧設定部１３１を使用することが無いため、外部コントローラ１４０による電源ユニット１３０に対する設定が不要となり、試験時間を大幅に短縮することができる。
【００６６】
さらに、試験時間の短縮に伴い、ターンアラウンドタイム内に必要な測定データが全て採り切ることが可能になる。このため、従来のごとく採り切れなかったデータについて推定を行なう必要がなく、故障箇所（故障したＦＦ）の特定精度が向上する。
【００６７】
〔２〕第１実施例
次に、図３〜図９を参照しながら、第１実施例のＬＳＩ１の構成および同ＬＳＩ１の試験方法について説明する。
【００６８】
まず、図３および図４を参照しながら、第１実施例としてのＬＳＩ１の構成について説明する。図３は、その構成を示すブロック図である。図４は、図３に示すＬＳＩ１において選択される抵抗対２１−１〜２１−ｍおよび２１ａの抵抗値例や当該抵抗値例に対応する分圧比などを説明する図である。図３では、第１実施例のＬＳＩ１の構成を詳細に示しており、電源ユニット１３０の詳細な構成（電圧設定部１３１および電圧出力部１３２など）についての図示は省略する。また、図３において、既述の符号と同一の符号は、同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【００６９】
ここでは、第１実施例のＬＳＩ１に内蔵されて試験回路１０を構成する可変電圧生成回路２０，電圧設定レジスタ３０，タイミング調整レジスタ４０，同期カウンタ５０およびタイミング比較器６０について、より具体的に説明する。
【００７０】
可変電圧生成回路２０は、抵抗分圧回路２１および分圧抵抗値選択回路２２を有する。抵抗分圧回路２１は、複数組の抵抗対２１−１〜２１−ｍおよび２１ａを有する。また、分圧抵抗値選択回路２２は、パストランジスタ２３−１〜２３−ｍ，２４−１〜２４−ｍ，２５〜２８およびＮＯＴゲート（反転素子）２９を有する。
【００７１】
各抵抗対２１−ｉ（ｉ＝１，２，…，ｍ）は、直列接続された２つの抵抗Ｒ１ｉおよびＲ２ｉを有する。抵抗Ｒ１ｉの一端と抵抗Ｒ２ｉの一端との接続点が、ＬＳＩ１のリモートセンス端子１０６に接続されている。抵抗Ｒ１ｉの他端は、パストランジスタ２３−ｉおよび２５を介して電源電圧端子１０５に接続されている。抵抗Ｒ２ｉの他端は、パストランジスタ２４−ｉおよび２６を介してＧＮＤ（ground）端子に接続されている。
【００７２】
同様に、抵抗対２１ａは、直列接続された２つの抵抗Ｒ３１およびＲ３２を有する。抵抗Ｒ３１の一端と抵抗Ｒ３２の一端との接続点が、ＬＳＩ１のリモートセンス端子１０６に接続されている。抵抗Ｒ３１の他端は、パストランジスタ２７を介して電源電圧端子１０５に接続されている。抵抗Ｒ３２の他端は、パストランジスタ２８を介してＧＮＤ端子に接続されている。
【００７３】
ｍ組の抵抗対２１−１〜２１−ｍは、電圧設定レジスタ３０の設定された値に応じて選択されるもので、ブロックａに属する。一組の抵抗対２１ａは、タイミング比較器６０からのトリガ信号の反転信号（ＮＯＴゲート２９からの出力）に応じて、通常使用する電源電圧（正常動作電圧）でスキャン動作を実行させる際に選択されるもので、ブロックｂに属する。
【００７４】
電圧設定レジスタ３０は、２ｍ個のＦＦから構成されている。そして、ブロックａに属する各抵抗対２１−ｉのパストランジスタ２３−ｉ，２４−ｉは、電圧設定レジスタ３０における（２ｉ−１）番目および２ｉ番目のＦＦに接続される。分圧抵抗値選択回路２２により抵抗対２１−ｉを選択する場合、電圧設定レジスタ３０における（２ｉ−１）番目および２ｉ番目のＦＦに“１”が設定され、それ以外のＦＦに“０”が設定される。これにより、パストランジスタ２３−ｉおよび２４−ｉは接続状態（オン状態）になり、それ以外のパストランジスタは切断状態（オフ状態）になり、抵抗対２１−ｉが選択される。
【００７５】
試験対象ＦＦを試験電圧で動作させる際にタイミング比較器６０からのトリガ信号はＨ状態（“１”）になる一方、試験対象ＦＦを正常動作電圧で動作させる際にタイミング比較器６０からのトリガ信号はＬ状態（“０”）になる。当該トリガ信号は、パストランジスタ２５，２６に印加されるとともに、ＮＯＴゲート２９を介してパストランジスタ２７，２８に印加される。
【００７６】
トリガ信号がＨ状態になると、パストランジスタ２７，２８は切断状態（オフ状態）になり、ブロックｂに属する抵抗対２１ａは、電源供給系から切り離される。また、パストランジスタ２５，２６は接続状態（オン状態）になり、電圧設定レジスタ３０の値Ｅに応じて選択された抵抗対２１−ｉが、電源電圧端子１０５とリモートセンス端子１０６との間に介在することになる。
【００７７】
トリガ信号がＬ状態になると、パストランジスタ２５，２６は切断状態（オフ状態）になり、ブロックａに属する抵抗対２１−１〜２１−ｍは、電源供給系から切り離される。また、パストランジスタ２７，２８は接続状態（オン状態）になり、抵抗対２１ａが、電源電圧端子１０５とリモートセンス端子１０６との間に介在することになる。
【００７８】
ここで、図４を参照しながら、図３に示すＬＳＩ１において選択される抵抗対２１−１〜２１−ｍおよび２１ａの抵抗値例や当該抵抗値例に対応する分圧比などについて説明する。なお、第１実施例では、外部コントローラ１４０から電源ユニット１３０へ指示設定される出力電圧値（命令Ｃ３によって設定される電圧値；図３参照）は０．５Ｖとする。また、スキャンチェーン１０１のスキャン動作の下限動作電圧（図１７の下限電圧参照）は０．７５Ｖとする。さらに、故障発生電圧（試験電圧）の生成に使用する抵抗対は、ブロックａのＲ１２（２０Ω）／Ｒ２２（１００Ω）（図３の符号２１−２参照）とする。
【００７９】
図４においては、ｍ＝６の例が示されている。また、図４においては、各抵抗対２１−ｉを成す抵抗Ｒ１ｉ／Ｒ２ｉ（ｉ＝１〜６）と抵抗対２１ａを成す抵抗Ｒ３１／Ｒ３２とのそれぞれについて、以下の点（１）〜（５）に係る情報が記載されている。
【００８０】
（１）使用される抵抗値の例。電源電圧端子１０５側の抵抗Ｒ１１〜Ｒ１５；Ｒ３１およびＲ１６の抵抗値例として、それぞれ０Ω；２０Ω；４０Ω；６０Ω；８０Ω；１００Ω；１２０Ωが設定されている。また、ＧＮＤ側の抵抗Ｒ２１〜Ｒ２５；Ｒ３２およびＲ２６の抵抗値例として、いずれも１００Ωが設定されている。
【００８１】
（２）各抵抗対２１−ｉ（Ｒ１ｉ／Ｒ２ｉ）または抵抗対２１ａ（Ｒ３１／Ｒ３２）を選択した場合の分圧比の算出結果。抵抗Ｒ１１／Ｒ２１〜Ｒ１５／Ｒ２５；およびＲ３１／Ｒ３２によって得られる分圧比は、それぞれ１；０．８３３；０．７１４；０．６２５；０．５５５；０．５；０．４５５となる。
【００８２】
（３）外部コントローラ１４０から電源ユニット１３０へ指示される電圧値を０．５Ｖとした場合に上記分圧比から算出されるリモートセンス端子１０６への出力電圧値。抵抗Ｒ１１／Ｒ２１〜Ｒ１５／Ｒ２５；Ｒ３１／Ｒ３２およびＲ１６／Ｒ２６について得られる出力電圧値は、それぞれ０．５Ｖ；０．４１６Ｖ；０．３５７Ｖ；０．３１２Ｖ；０．２７７Ｖ；０．２５Ｖ；０．２２７Ｖとなる。
【００８３】
（４）フィードバック後の電源電圧端子１０５の電圧値。抵抗Ｒ１１／Ｒ２１〜Ｒ１５／Ｒ２５；Ｒ３１／Ｒ３２およびＲ１６／Ｒ２６について得られる、電源電圧端子１０５の電圧値は、それぞれ０．５Ｖ；０．６Ｖ；０．７Ｖ；０．８Ｖ；０．９Ｖ；１．０Ｖ；１．１Ｖとなる。
【００８４】
（５）スキャンチェーン１０１のスキャン動作の下限動作電圧を０．７５Ｖとした場合に、抵抗対２１−ｉまたは２１ａを選択することによって、スキャンチェーン１０１がスキャン動作を行なうか否か。
【００８５】
図４に示す例において、タイミング比較器６０からのトリガ信号がない場合（Ｌ状態の場合）、ブロックｂの抵抗Ｒ３１／Ｒ３２が選択される。抵抗Ｒ３１／Ｒ３２の抵抗値はそれぞれ１００Ω／１００Ωである。このとき、分圧比は０．５になり、リモートセンス端子１０６への出力電圧値は０．２５Ｖになり、フィードバック後の電源電圧端子１０５の電圧値は１．０Ｖになって下限動作電圧０．７５Ｖよりも大きい。したがって、スキャンチェーン１０１は、正常にスキャン動作を行なう。
【００８６】
また、図４に示す例において、タイミング比較器６０からのトリガ信号がある場合（Ｈ状態の場合）、電源設定レジスタ３０の値Ｅによって指定される抵抗Ｒ１２／Ｒ２２がブロックａから選択される。抵抗Ｒ１２／Ｒ２２がの抵抗値はそれぞれ２０Ω／１００Ωである。このとき、分圧比は０．８３３になり、リモートセンス端子１０６への出力電圧値は０．４１６Ｖになり、フィードバック後の電源電圧端子１０５の電圧値は０．６Ｖになって下限動作電圧０．７５よりも小さい。したがって、スキャンチェーン１０１は、スキャン動作を行なうことができない。
【００８７】
電圧設定レジスタ３０は、十数ビット分のＦＦを直列接続して構成される。電圧設定レジスタ３０には、ｍ組の抵抗対２１−１〜２１−ｍのうちの一つを特定する番号Ｅが設定される。具体的には、上述のごとく、電圧設定レジスタ３０において、選択対象の抵抗対に対応する２つのＦＦに“１”が設定されそれ以外のＦＦに“０”が設定される。
【００８８】
タイミング調整レジスタ４０は、数十ビットのＦＦを直列接続して構成される。タイミング調整レジスタ４０には、電源電圧を試験電圧に変更するタイミングに対応するクロック数Ｂが第１クロック数として設定される。
【００８９】
第１実施例においても、図１に示す例と同様、タイミング調整レジスタ４０および電圧設定レジスタ３０を成すＦＦは、第２スキャンチェーン１０１ａを構成する。したがって、第２スキャンチェーン１０１ａのスキャン動作によって、電圧設定レジスタ３０に対する抵抗対に関する情報（番号Ｅ）の設定、および、タイミング調整レジスタ４０に対する第１クロック数（番号Ｂ）の設定が行なわれる。
【００９０】
同期カウンタ５０は、数十ビット分のリセット端子付きＦＦと、インクリメンタ５１とを有する。リセット端子付きＦＦは、タイミング調整レジスタ４０に第１クロック数Ｂが設定された直後に、リセット端子１０７経由でパターンジェネレータ１１０からのRESET信号を受けてリセットされる。そして、リセット端子付きＦＦは、パルスジェネレータ１１０からのクロック数（クロック信号ShiftCLK1の数）を受ける都度、インクリメンタ５１によってカウントアップされる。これにより、同期カウンタ５０は、タイミング調整レジスタ４０に第１クロック数Ｂを設定した後のスキャン動作用のクロック（クロック信号ShiftCLK1）の数を、第２クロック数Ａとして計数する。なお、同期カウンタ５０を成すＦＦの数は、タイミング調整レジスタ４０を成すＦＦの数と同数である。
【００９１】
タイミング比較器６０は、複数のＥＯＲゲート６１と、一のＮＯＲゲート６２とを有する。ＥＯＲゲート６１の数は、同期カウンタ５０を成すＦＦの数、つまりは、タイミング調整レジスタ４０を成すＦＦの数と同数である。各ＥＯＲゲート６１は、タイミング調整レジスタ４０の各ＦＦに設定された値と、タイミング調整レジスタ４０の各ＦＦに対応する同期カウンタ５０のＦＦに設定された値との排他的論理和の値を出力する。ＮＯＲゲート６２は、複数のＥＯＲゲートからの出力値の論理和の反転値を出力する。このような構成により、タイミング調整レジスタ４０に設定された第１クロック数Ｂと同期カウンタ５０によって計数される第２クロック数Ａとが一致した場合、タイミング比較器６０（ＮＯＲゲート６２）は、Ｈ状態のトリガ信号を生成して可変電圧生成回路２０に出力する。一方、タイミング調整レジスタ４０に設定された第１クロック数Ｂと同期カウンタ５０によって計数される第２クロック数Ａとが不一致の場合、タイミング比較器６０（ＮＯＲゲート６２）は、Ｌ状態のトリガ信号を生成して可変電圧生成回路２０に出力する。
【００９２】
次に、図５に示すフローチャート（ステップＳ２１〜Ｓ３８）および図６に示すフローチャート（ステップＳ３９〜Ｓ４７）に従って、図３に示すごとく構成された第１実施例のＬＳＩ１の試験手順について説明する。前述したように、ここでは、可変電圧生成回路２０で使用（選択）する抵抗対は、符号２１−２で示す抵抗Ｒ１２（２０Ω）／Ｒ２２（１００Ω）とする。
【００９３】
最初に、外部コントローラ１４０は、命令Ｃ３（図３参照）によって、電源電圧端子１０５の電圧を０．５Ｖに指定して電源ユニット１３０を動作させる（ステップＳ２１）。これに伴い、電源ユニット１３０の電圧設定部１３１（図１参照）に電源電圧端子１０５の電圧０．５Ｖが設定される。これ以降、電源ユニット１３０の電圧出力部１３２（図１参照）は、リモートセンス端子１０６を監視し、リモートセンス電圧が常に０．５Ｖとなるように電源電圧端子１０５の電圧を変更する（フィードバック制御を行なう）。
【００９４】
また、初期設定として、試験対象のスキャンチェーン１０１を成す複数のＦＦの中から、スキャン入力端子１０３側一個目のＦＦが、最初の試験対象ＦＦとして決定される（ステップＳ２２）。
【００９５】
さらに、パターンジェネレータ１１０により、タイミング調整レジスタ４０に、試験対象ＦＦが動作するタイミング（測定パターン番号）を示すクロック数Ｂが設定される。同様に、パターンジェネレータ１１０により、電圧設定レジスタ３０に、ＬＳＩ１の電源電圧を故障発生電圧に設定するための値Ｅが設定される（ステップＳ２３）。ここで、値Ｅは、選択すべき抵抗対を特定する数値である。特に、第１実施形態の値Ｅは、抵抗Ｒ１２／Ｒ２２を電源電圧端子１０５，リモートセンス端子１０６およびＧＮＤ端子に接続すべくパストランジスタ２３−２および２４−２を接続状態に切り替えるように設定される。
【００９６】
レジスタ４０および３０に対する数値設定は、前述したように、パターンジェネレータ１１０からクロック信号ShiftCLK2を印加して第２スキャンチェーン１０１ａにスキャン動作をさせることで実行される。これにより、パターンジェネレータ１１０からのScanIN2信号がレジスタ４０および３０を成すＦＦ上をシフトされ、レジスタ４０および３０に対する数値設定が行なわれる。このように、レジスタ４０および３０にはShiftCLK2信号およびShiftCLK2を用いて数値設定が行なわれるため、レジスタ４０および３０は、試験対象スキャンチェーン１０１のShiftCLK1信号から分離されている。このため、試験対象スキャンチェーン１０１のスキャン中に、レジスタ４０および３０に設定された値は変化しない。レジスタ４０および３０に対する数値設定完了後、同期カウンタ５０は、リセット端子１０７経由でパターンジェネレータ１１０からのRESET信号を印加されてクリア（オール“０”にリセット）される（ステップＳ２４）。
【００９７】
この後、パターンジェネレータ１１０からＬＳＩ１に対し測定パターンが生成・印加され、スキャン動作が開始される。これに伴い、スキャンチェーン１０１を動作させるためのクロックShiftCLK1と同じクロックで、同期カウンタ５０が計数動作を行なう。そして、タイミング比較器６０は、電圧を切り替えるタイミングを判定する。つまり、同期カウンタ５０による計数値Ａとタイミング調整レジスタ４０に設定された値Ｂとが同じ値か否かを比較する（ステップＳ２５）。当該比較結果はトリガ信号として出力される。
【００９８】
値Ａと値Ｂとが一致していれば（ステップＳ２５の“一致”ルート）、トリガ信号は“１”（Ｈ状態）になる（ステップＳ３２）。この状態では、試験対象ＦＦが動作しているため、トリガ信号＝“１”は、電源電圧を故障発生電圧（試験電圧）に切り替えるタイミングであることを示す。一方、値Ａと値Ｂとが不一致であれば（ステップＳ２５の“不一致”ルート）、トリガ信号は“０”（Ｌ状態）になる（ステップＳ２６）。この状態では、試験対象ＦＦ以外のＦＦが動作している状態であり、トリガ信号＝“０”は、電源電圧を正常動作電圧に切り替えるタイミングであることを示す。
【００９９】
ついで、ＬＳＩ１の電源電圧が設定される。タイミング比較器６０からのトリガ信号を入力される可変電圧生成回路２０は、２つのブロックａ，ｂに分けられている。抵抗対Ｒ１１／Ｒ２１〜Ｒ１ｎ／Ｒ２ｎを含むブロックａは、トリガ信号を直接印加されるパストランジスタ２５，２６によって選択される。抵抗対Ｒ３１／Ｒ３２を含むブロックｂは、トリガ信号の反転信号を印加されるパストランジスタ２７，２８によって選択される。さらに、ブロックａ内の各パストランジスタ２３−ｉ，２４−ｉには、電圧設定レジスタ３０を成すＦＦが接続されており、電圧設定レジスタ３０のＦＦに設定される値によって、抵抗対Ｒ１１／Ｒ２１〜Ｒ１ｎ／Ｒ２ｎのうちの一つが選択される。各抵抗対Ｒ１ｉ／Ｒ２ｉは、各パストランジスタ２３−ｉ，２４−ｉによって選択されると、ＬＳＩ１の電源電圧端子１０５とＧＮＤ端子との間に介在して分圧回路を構成する。これにより、可変電圧生成回路２０は、当該分圧回路による抵抗分圧の結果がリモートセンス端子１０６に出力されるように構成される。
【０１００】
前述したように、電源ユニット１３０は、リモートセンス端子１０６を監視し、当該端子１０６の電圧が常に０．５Ｖとなるように電源電圧端子１０５の電圧を変更する。しかし、リモートセンス端子１０６の電圧は電源電圧端子１０５の電圧の抵抗分圧によって生成されるため、電圧設定部１３１に設定される電圧０．５Ｖとリモートセンス端子１０６の電圧とには差が発生する。電源ユニット１３０の電圧出力部１３２は、当該差がなくなるように電源電圧端子１０５の電圧を変更して追従させるように動作する。その結果、電源ユニット１３０の電圧設定部１３１を用いることなく、電圧出力部１３２と抵抗分圧の比とを用いてＬＳＩ１の電源電圧端子１０５の電圧を設定することができる。
【０１０１】
以下、第１実施例の機能によって設定される具体的な電圧値について説明する。同期カウンタ５０の計数値Ａとタイミング調整レジスタ４０の設定値Ｂとが不一致の場合（ステップＳ２５の“不一致”ルート）、トリガ信号＝“０”となり（ステップＳ２６）、ブロックｂの抵抗対Ｒ３１（１００Ω）／Ｒ３２（１００Ω）が選択される（ステップＳ２７）。このとき、電源電圧端子１０５の電圧が０．５Ｖに設定され、分圧比が０．５であるので、リモートセンス端子１０６には、０．５Ｖ＊０．５＝０．２５Ｖの電圧が発生する（ステップＳ２８）。電源ユニット１３０は、リモートセンス端子１０６に発生した電圧０．２５Ｖを、設定電圧０．５Ｖへ持ち上げるように動作するため、電源電圧端子１０５の電圧が上昇する。これにより、電源ユニット１３０は、リモートセンス端子１０６の電圧が０．２５Ｖだけドロップしてる分を補償するように作用する（ステップＳ２９）。つまり、電圧ユニット１３０は、リモートセンス電圧を０．５Ｖにするため電源電圧端子１０５の電圧を０．５Ｖ／０．５＝１．０Ｖに上げて追従する（ステップＳ３０）。これに伴って、電源電圧端子１０５の電圧が１．０Ｖ（正常動作電圧）の状態になったところで、リモートセンス端子１０６の電圧は１．０Ｖ＊０．５＝０．５Ｖとなり、電源ユニット１３０によるフィードバックが完了する（ステップＳ３１）。このとき、第１実施例では、電源電圧が０．７５Ｖ以上の場合、試験対象ＦＦはスキャン動作すると仮定しているので（図４参照）、トリガ信号が“０”となる、試験対象ＦＦ以外のＦＦは、正常動作電圧を印加されて試験される。
【０１０２】
一方、同期カウンタ５０の計数値Ａとタイミング調整レジスタ４０の設定値Ｂとが一致する場合（ステップＳ２５の“一致”ルート）、トリガ信号＝“１”となり（ステップＳ３２）、ブロックａが選択される（ステップＳ３３）。そして、第１実施例では、電圧設定レジスタ３０の設定によって抵抗対Ｒ１２（２０Ω）／Ｒ２２（１００Ω）が選択される（ステップＳ３４）。抵抗対Ｒ１２／Ｒ２２による分圧比は０．８３３であり、リモートセンス端子１０６には、０．５Ｖ＊０．８３３＝０．４１６Ｖの電圧が発生する（ステップＳ３５）。電源ユニット１３０は、リモートセンス端子１０６に発生した電圧０．４１６Ｖを、設定電圧０．５Ｖへ持ち上げるように動作するため、電源電圧端子１０５の電圧が上昇する。これにより、電源ユニット１３０は、リモートセンス端子１０６の電圧が０．０８４Ｖだけドロップしてる分を補償するように作用する（ステップＳ３６）。つまり、電圧ユニット１３０は、リモートセンス電圧を０．５Ｖにするため電源電圧端子１０５の電圧を０．５Ｖ／０．８３３＝０．６Ｖに上げて追従する（ステップＳ３７）。これに伴って、電源電圧端子１０５の電圧が０．６Ｖ（故障発生電圧）の状態になったところで、リモートセンス端子１０６の電圧は０．６Ｖ＊０．８３３＝０．５Ｖとなり電源ユニットのフィードバックが完了する（ステップＳ３８）。このとき、第１実施例では、電源電圧が０．７５Ｖ未満の場合、試験対象ＦＦはスキャン動作できないと仮定しているので（図４参照）、トリガ信号が“１”となる試験対象ＦＦは、故障発生電圧を印加されて試験される。
【０１０３】
この後、試験回路１０による電源電圧の変更動作とスキャンチェーン１０１のスキャン動作との同期がとられる。つまり、ステップＳ３１もしくはＳ３８の処理の後、パターンジェネレータ１１０は、ＬＳＩ１に、クロック信号ShiftCLK1を１回印加する（ステップＳ３９）。クロック信号ShiftCLK1は、試験対象スキャンチェーン１０１および同期カウンタ５０の両方に印加される。このため、クロック信号ShiftCLK1を１回印加すると、スキャンチェーン１０１が１回分のスキャン動作を行なうのに同期して（ステップＳ４０）、同期カウンタ５０も１だけカウントアップする（Ａ＝Ａ＋１；ステップＳ４１）。電源電圧を変更するトリガ信号は、同期カウンタ５０による計数値Ａに基づき生成されるので、トリガ信号による電源電圧の変更動作は、スキャンチェーン１０１のスキャン動作に同期することになる。
【０１０４】
上述した一連の処理は、スキャンチェーン１０１の動作に同期しているので、クロック信号ShiftCLK1を印加し続けるだけで自動的に実行される。そして、印加したパターンが最終パターンか否かが判断される（ステップＳ４２）。ステップＳ４２の判断は、パターンジェネレータ１１０や外部コントローラ１４０やＬＳＩ１の内部回路等のいずれで行なってもよい。印加したパターンが最終パターンでない場合（ステップＳ４２のＮＯルート）、処理は、ステップＳ２５に戻る。一方、最終パターンである場合（ステップＳ４２のＹＥＳルート）、つまり測定パターンが最後まで実行されると、スキャン出力端子１０４からスキャン結果がScanOUT信号として出力される。当該スキャン結果は、期待値比較器１２０によって、合格か不合格か、つまりスキャン出力端子１０４からの出力値が期待値に一致するか否かが判断される（ステップＳ４３）。
【０１０５】
出力値と期待値とが一致する場合、期待値比較器１２０は、試験対象ＦＦについて異常がなく合格と判定し（ステップＳ４３の「合格」ルート）、その旨を出力する（ステップＳ４４）。一方、出力値と期待値とが不一致の場合、期待値比較器１２０は、試験対象ＦＦについて異常があり不合格と判定し（ステップＳ４３の「不合格」ルート）、その旨を出力する（ステップＳ４５）。
【０１０６】
上述したステップＳ２３〜Ｓ４５の処理によって、一つのＦＦに対する試験が終了する。そして、上述したステップＳ２３〜Ｓ４５の処理は、試験対象スキャンチェーン１０１を成す全てのＦＦに対して繰り返し実行される。つまり、全てのＦＦが試験対象になったか否かが判断され（ステップＳ４６）、未試験のＦＦがある場合（ステップＳ４６の“未試験ＦＦあり”ルート）、次のＦＦが試験対象とされ（ステップＳ４７）、処理は、ステップＳ２３に戻る。一方、全てのＦＦが試験対象になった場合（ステップＳ４６の“全ＦＦ試験済み”ルート）、処理（試験）は終了する。なお、ステップＳ４６の判断は、パターンジェネレータ１１０や外部コントローラ１４０やＬＳＩ１の内部回路等のいずれで行なってもよい。
【０１０７】
このようにして、試験対象スキャンチェーン１０１を成す全てのＦＦの中から、電源電圧マージン故障の生じたＦＦを特定することができる。
【０１０８】
上述したように、第１実施例によれば、スキャン動作と同期をとりながら、電源ユニット１３０において電圧設定部１３１を用いることなく電圧出力部１３２のみを用いて正常動作電圧と故障発生電圧との切替えが行なわれる。このため、外部コントローラ１４０から電源ユニット１３０への電圧設定が不要になり、試験時間を大幅に短縮することができる。
【０１０９】
また、第１実施例によれば、試験時間の短縮に伴い、ターンアラウンドタイム内に必要な測定データが全て採り切ることが可能になる。このため、従来のごとく採り切れなかったデータについて推定を行なう必要がなく、故障箇所（故障したＦＦ）の特定精度が向上する。
【０１１０】
さらに、第１実施例によれば、レジスタ４０および３０に対する数値設定は、試験対象スキャンチェーン１０１とは別個に用意される、正常動作が保障された第２スキャンチェーン１０１ａを用いて行なわれる。このため、レジスタ４０および３０に対する数値設定を短時間で正確に行なうことが可能になる。例えば、外部コントローラ１４０が電源ユニット１３０の電圧設定部１３１に電圧値を設定するには１００msec（ミリ秒）程度の時間を要する。これに対し、クロック周期を２０nsec（ナノ秒）とすると、１００ビット分のＦＦを有するレジスタ４０および３０に値ＢおよびＥを設定するには、２０nsec＊１００ビット＝２μsec（マイクロ秒）程度で済む。したがって、第１実施例によれば、数値設定に要する時間を大幅に短縮することができ、試験時間のさらなる短縮に寄与する。
【０１１１】
次に、図７に示すタイムチャート（パターン番号１〜１１），図８に示すタイムチャート（パターン番号１２〜２２）および図９に示すタイムチャート（パターン番号２３〜３１）を参照しながら、第１実施例のＬＳＩ１の試験手順について具体的に説明する。ここでは、試験対象スキャンチェーン１０１を成す５個のＦＦのうちの３番目のＦＦに、電源電圧マージン故障が発生しているものと仮定して説明する。
【０１１２】
なお、図７〜図９において、縦線によって区切られた一区間は、測定パターンのうちの一パターンを表す。各パターンには、先頭から順にパターン番号１，２，…，３１が割り振られている。パターン番号によって、各パターン（一区間）を特定することができる。
【０１１３】
また、図７〜図９において、スキャン入力端子１０３に印加されるScanIN1信号が“１”になる区間が、試験対象スキャンチェーン１０１のスキャン動作開始区間となる。当該スキャン動作開始区間からスキャンチェーン長（ＦＦの数５）の分だけクロック信号ShiftCLK1を印加すると、スキャンチェーン１０１のスキャン結果がスキャン出力端子１０４からScanOUT信号として出力される。出力されたスキャン結果は、期待値比較器１２０によって期待値と比較され、スキャン動作の合否が判断される。
【０１１４】
図７に示すパターン番号１〜６の区間においては、スキャンチェーン１０１の１番目のＦＦに対する試験が行なわれる。このとき、スキャン結果は期待値と一致し、１番目のＦＦは合格と判定され、１番目のＦＦは、故障発生電圧を印加されても、問題なく正常に動作することがわかる。
【０１１５】
図７および図８に示すパターン番号７〜１２の区間においては、スキャンチェーン１０１の２番目のＦＦに対する試験が行なわれる。このとき、スキャン結果は期待値と一致し、２番目のＦＦは合格と判定され、２番目のＦＦは、故障発生電圧を印加されても、問題なく動作することがわかる。
【０１１６】
図８に示すパターン番号１３〜１８の区間においては、スキャンチェーン１０１の３番目のＦＦに対する試験が行なわれる。このとき、スキャン結果は期待値と一致せず、３番目のＦＦは不合格と判定され、３番目のＦＦは、故障発生電圧では動作しないことがわかる。つまり、試験対象スキャンチェーン１０１を成す５個のＦＦにおいて、３番目のＦＦが、電源電圧マージン故障の発生しているＦＦとして特定される。
【０１１７】
図８および図９に示すパターン番号１９〜２４の区間においては、スキャンチェーン１０１の４番目のＦＦに対する試験が行なわれる。このとき、スキャン結果は期待値と一致し、４番目のＦＦは合格と判定され、４番目のＦＦは、故障発生電圧を印加されても、問題なく動作することがわかる。
【０１１８】
図９に示すパターン番号２５〜３１の区間においては、スキャンチェーン１０１の５番目のＦＦに対する試験が行なわれる。このとき、スキャン結果は期待値と一致し、５番目のＦＦは合格と判定され、５番目のＦＦは、故障発生電圧を印加されても、問題なく動作することがわかる。
【０１１９】
このように、第１実施例によれば、パターンの印加とScanOUT信号の期待値比較とを繰り返すだけで、試験対象スキャンチェーン１０１を成す全てのＦＦのそれぞれについて、電源電圧マージン故障が発生しているか否かを試験することができる。その際、外部コントローラ１４０による電源ユニット１３０に対する設定が不要となり、試験時間を大幅に短縮することができる。試験時間の短縮に伴い、ターンアラウンドタイム内に必要な測定データが全て採り切ることが可能になるため、故障箇所（故障したＦＦ）の特定精度が向上する。
【０１２０】
なお、図７〜図９に示すパターン番号１，７，１３，１９，２５の区間においては、図５に示すステップＳ２３およびＳ２４の処理、つまり第２スキャンチェーン１０１ａによるレジスタ４０および３０に対する数値設定が行なわれる。当該数値設定は、可能であれば、クロック信号ShiftCLK1の一クロック分の間に実行されてもよいし、クロック信号ShiftCLK1の一クロックよりも長い時間間隔の間で実行されてもよい。いずれにしても、前述したように、外部コントローラ１４０が電源ユニット１３０の電圧設定部１３１に電圧値を設定するには１００msec程度の時間を要するが、１００ビット分のＦＦ（レジスタ４０および３０）に値ＢおよびＥを設定するには２μsec程度で済む。したがって、数値設定に要する時間を大幅に短縮することができる。
【０１２１】
〔３〕第２実施例
次に、図１０〜図１５を参照しながら、第２実施例のＬＳＩ１の構成および同ＬＳＩ１の試験方法について説明する。
【０１２２】
まず、図１０を参照しながら、第２実施例としてのＬＳＩ１の構成について説明する。図１０は、その構成を示すブロック図である。図１０では、第２実施例のＬＳＩ１の構成を詳細に示しており、電源ユニット１３０の詳細な構成（電圧設定部１３１および電圧出力部１３２など）についての図示は省略する。なお、図１０において、既述の符号と同一の符号は、同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【０１２３】
上述した第１実施例では、１個のＦＦに着目して試験を行なう場合、つまり試験対象ＦＦが一つである場合について説明した。これに対し、第２実施例では、連続する複数のＦＦ（試験対象ＦＦ群）に同時に着目して試験を行なう場合について説明する。このように連続する複数のＦＦを試験対象ＦＦ群とするには、可変電圧生成回路２０へ印加されるトリガ信号の生成手法を、以下のように変更すればよい。
【０１２４】
このため、図１０に示すように、第２実施例のＬＳＩ１では、第１実施例のタイミング調整レジスタ４０に代え前縁側タイミング調整レジスタ（選択回路）４０ａおよび後縁側タイミング調整レジスタ（選択回路）４０ｂが備えられる。また、第２実施例のＬＳＩ１では、第１実施例のタイミング比較器６０に代えタイミング比較器６０ａが備えられる。
【０１２５】
前縁側タイミング調整レジスタ４０ａおよび後縁側タイミング調整レジスタ４０ｂには、それぞれ、連続する二以上の試験対象ＦＦの範囲の動作タイミングに対応する、前縁側クロック数Ｂおよび後縁側クロック数Ｆが、第１クロック数として設定される。つまり、前縁側タイミング調整レジスタ４０ａには、連続する試験対象ＦＦ群のうちの最初のＦＦが動作する測定パターン番号（前縁側クロック数Ｂ）が設定される。また、後縁側タイミング調整レジスタ４０ｂには、連続する試験対象ＦＦ群のうちの最後のＦＦの次のＦＦが動作する測定パターン番号（後縁側クロック数Ｆ（＞Ｂ））が設定される。
【０１２６】
なお、第２実施例においても、第１実施例と同様、タイミング調整レジスタ４０ａ，４０ｂおよび電圧設定レジスタ３０を成すＦＦは、第２スキャンチェーン１０１ａを構成する。したがって、第２スキャンチェーン１０１ａのスキャン動作によって、電圧設定レジスタ３０に対する抵抗対に関する情報（番号Ｅ）の設定、および、タイミング調整レジスタ４０ａ，４０ｂに対する第１クロック数（番号Ｂ，Ｆ）の設定が行なわれる。
【０１２７】
タイミング比較器６０ａは、タイミング調整レジスタ４０ａ，４０ｂにそれぞれ設定される値ＢおよびＦと、同期カウンタ５０によって計数される計数値Ａとを比較する。そして、タイミング比較器６０ａは、計数値Ａが値Ｂ未満または計数値ＡがＦ以上のとき、トリガ信号としてＬ状態“０”を可変電圧生成回路２０に出力する。一方、タイミング比較器６０ａは、計数値Ａが値Ｂ以上かつＦ未満のとき、トリガ信号としてＨ状態“１”を可変電圧生成回路２０（抵抗対選択回路２２）に出力し、電源電圧を試験電圧（故障発生電圧）に変更する。
【０１２８】
このため、第２実施例において、タイミング比較器６０ａは、２個の大小比較回路６３ａ，６３ｂと、１個のＮＯＴゲート（反転素子）６４と、１個のＡＮＤゲート６５とを有する。
【０１２９】
大小比較回路６３ａは、同期カウンタ５０の計数値Ａと前縁側タイミング調整レジスタ４０ａに設定された値Ｂとの大小を比較する。大小比較回路６３ａは、Ｂ＞Ａの場合に比較結果として“０”を出力する。また、大小比較回路６３ａは、Ｂ≦Ａの場合に比較結果として“１”を出力する。
【０１３０】
大小比較回路６３ｂは、同期カウンタ５０の計数値Ａと後縁側タイミング調整レジスタ４０ｂに設定された値Ｆとの大小を比較する。大小比較回路６３ｂは、Ａ＜Ｆの場合に比較結果として“０”を出力する。また、大小比較回路６３ａは、Ａ≧Ｆの場合に比較結果として“１”を出力する。
【０１３１】
ＮＯＴゲート６４は、大小比較回路６３ｂの出力値の反転値を出力する。
【０１３２】
ＡＮＤゲート６５は、大小比較回路６３ａの出力値と、ＮＯＴゲート６４の出力値（大小比較回路６３ｂの出力値の反転値）との論理積の値を、トリガ信号として可変電圧生成回路２０に出力する。これにより、ＡＮＤゲート６５は、Ｂ＞ＡまたはＡ≧Ｆのとき、トリガ信号としてＬ状態“０”を可変電圧生成回路２０に出力する。一方、タイミング比較器６０ａは、Ｂ≦Ａ＜Ｆのとき、トリガ信号としてＨ状態“１”を可変電圧生成回路２０に出力する。つまり、前縁側タイミング調整レジスタ４０ａに設定した値Ｂに対応するＦＦが動作してから、後縁側タイミング調整レジスタ４０ｂに設定した値Ｆに対応するＦＦが動作するまでの間、タイミング比較器６０ａからのトリガ信号が“１”となる。したがって、電源電圧端子１０６の電源電圧を故障発生電圧に切り替えることができる。
【０１３３】
次に、図１１に示すフローチャート（ステップＳ２１，Ｓ２２，Ｓ２３ａ，Ｓ２４，Ｓ２５ａ，Ｓ２６〜Ｓ３８）および図１２に示すフローチャート（ステップＳ３９〜Ｓ４３，Ｓ４４ａ〜Ｓ４７ａ）に従って、上述のごとく構成された第２実施例のＬＳＩ１の試験手順について説明する。なお、図５および図６に示す第１実施例のステップＳ２３，Ｓ２５，Ｓ４４〜Ｓ４７の処理に代え、第２実施例では、図１１および図１２に示すように、ステップＳ２３ａ，Ｓ２５ａ，Ｓ４４ａ〜Ｓ４７ａの処理が実行される。以下では、第１実施形態から変更されたステップＳ２３ａ，Ｓ２５ａ，Ｓ４４ａ〜Ｓ４７ａの処理について説明する。第２実施例においても、第１実施例と同様、可変電圧生成回路２０で選択する抵抗対は抵抗Ｒ１２（２０Ω）／Ｒ２２（１００Ω）とする。
【０１３４】
最初に、外部コントローラ１４０は、命令Ｃ３によって、電源電圧端子１０５の電圧を０．５Ｖに指定して電源ユニット１３０を動作させる（ステップＳ２１）。また、試験対象スキャンチェーン１０１を成す複数のＦＦの中から、スキャン入力端子１０３側一個目のＦＦが、最初の試験対象ＦＦとして決定される（ステップＳ２２）。
【０１３５】
そして、第２実施例では、パターンジェネレータ１１０により、前縁側タイミング調整レジスタ４０ａに、試験対象ＦＦ群のうちの最初のＦＦが動作する測定パターン番号（前縁側クロック数）Ｂが設定される。同様に、パターンジェネレータ１１０により、後縁側タイミング調整レジスタ４０ｂに、試験対象ＦＦ群のうちの最後のＦＦの次のＦＦが動作する測定パターン番号（後縁側クロック数）Ｆ（＞Ｂ）が設定される。また、パターンジェネレータ１１０により、電圧設定レジスタ３０に、ＬＳＩ１の電源電圧を故障発生電圧に設定するための値Ｅが設定される（ステップＳ２３ａ）。
【０１３６】
なお、ステップＳ２３ａにおけるレジスタ４０ａ，４０ｂおよび３０に対する数値設定は、第１実施例と同様にして実行される。また、例えば図１３〜図１５を参照しながら後述するごとく、試験対象ＦＦ群が、連続する二つのＦＦである場合、前縁側タイミング調整レジスタ４０ａには“０”が測定パターン番号（前縁側クロック数）Ｂとして設定される。同様に、後縁側タイミング調整レジスタ４０ｂには“２”が測定パターン番号（後縁側クロック数）Ｆとして設定される。
【０１３７】
レジスタ４０ａ，４０ｂおよび３０に対する数値設定完了後、同期カウンタ５０は、リセット端子１０７経由でパターンジェネレータ１１０からのRESET信号を印加されてクリア（オール“０”にリセット）される（ステップＳ２４）。
【０１３８】
この後、パターンジェネレータ１１０からＬＳＩ１に対し測定パターンが生成・印加され、スキャン動作が開始される。これに伴い、スキャンチェーン１０１を動作させるためのクロックShiftCLK1と同じクロックで、同期カウンタ５０が計数動作を行なう。そして、タイミング比較器６０ａは、電圧を切り替えるタイミングを判定する。つまり、同期カウンタ５０による計数値Ａとタイミング調整レジスタ４０ａ，４０ｂに設定された値ＢおよびＦとを比較する（ステップＳ２５ａ）。当該比較結果はトリガ信号として出力される。
【０１３９】
タイミング比較器６０ａによる比較の結果、Ｂ＞ＡまたはＡ≧Ｆのとき（ステップＳ２５ａの“Ｂ＞ＡまたはＡ≧Ｆ”ルート）、トリガ信号は“０”（Ｌ状態）になる（ステップＳ２６）。この状態では、試験対象ＦＦ群に属するＦＦ以外のＦＦが動作している状態であり、トリガ信号＝“０”は、電源電圧を正常動作電圧に切り替えるタイミングであることを示す。これ以降、第１実施例と同様、ステップＳ２７〜Ｓ３１およびＳ３９〜Ｓ４３の処理が実行される。
【０１４０】
一方、タイミング比較器６０ａによる比較の結果、Ｂ≦Ａ＜Ｆのとき（ステップＳ２５ａの“Ｂ≦Ａ＜Ｆ”ルート）、トリガ信号は“１”（Ｈ状態）になる（ステップＳ３２）。この状態では、試験対象ＦＦ群に属するＦＦが動作しているため、トリガ信号＝“１”は、電源電圧を故障発生電圧（試験電圧）に切り替えるタイミングであることを示す。これ以降、第１実施例と同様、ステップＳ３３〜Ｓ４３の処理が実行される。
【０１４１】
そして、ステップＳ４３において出力値と期待値とが一致すると判断された場合、期待値比較器１２０は、試験対象ＦＦ群に属するＦＦについて異常がなく合格と判定し（「合格」ルート）、その旨を出力する（ステップＳ４４ａ）。一方、出力値と期待値とが不一致の場合、期待値比較器１２０は、試験対象ＦＦ群に属するＦＦについて異常があり不合格と判定し（ステップＳ４３の「不合格」ルート）、その旨を出力する（ステップＳ４５ａ）。
【０１４２】
上述したステップＳ２３ａ，Ｓ２４，Ｓ２５ａ，Ｓ２６〜Ｓ４３，Ｓ４４ａ，Ｓ４５ａの処理によって、一組のＦＦ群に対する試験が終了する。そして、上述したステップＳ２３ａ，Ｓ２４，Ｓ２５ａ，Ｓ２６〜Ｓ４３，Ｓ４４ａ，Ｓ４５ａの処理は、全てのＦＦ群に対して繰り返し実行される。つまり、全てのＦＦ群が試験対象になったか否かが判断され（ステップＳ４６ａ）、未試験のＦＦ群がある場合（ステップＳ４６ａの“未試験ＦＦ群あり”ルート）、次のＦＦ群が試験対象とされ（ステップＳ４７ａ）、処理は、ステップＳ２３ａに戻る。一方、全てのＦＦ群が試験対象になった場合（ステップＳ４６ａの“全ＦＦ群試験済み”ルート）、処理（試験）は終了する。なお、ステップＳ４６ａの判断は、パターンジェネレータ１１０や外部コントローラ１４０やＬＳＩ１の内部回路等のいずれで行なってもよい。
【０１４３】
次に、図１３に示すタイムチャート（パターン番号１〜１１），図１４に示すタイムチャート（パターン番号１２〜２２）および図１５に示すタイムチャート（パターン番号２３〜３１）を参照しながら、第２実施例のＬＳＩ１の試験手順について具体的に説明する。ここでも、図７〜図９に示す例と同様、試験対象スキャンチェーン１０１を成す５個のＦＦのうちの３番目のＦＦに、電源電圧マージン故障が発生しているものと仮定して説明する。
【０１４４】
ただし、図１３〜図１５では、図７〜図９に示す第１実施例のタイムチャートに、後縁側タイミング調整レジスタ４０ｂの値Ｆが追加されている。そして、前縁側タイミング調整レジスタ４０ａの値Ｂに２を加算した値Ｂ＋２が、後縁側タイミング調整レジスタ４０ｂの値Ｆとすることで、連続した２個のＦＦを試験対象のＦＦ群とすることができる。これにより、図１３〜図１５に示すように、クロック信号ShiftCLK1の２回分（クロック２周期分）の期間に亘り、トリガ信号，分圧比および電源電圧が変更される。
【０１４５】
このとき、期待値比較器１２０による、スキャン出力端子１０４からの出力値（ScanOUT信号；スキャン結果）と期待値との比較結果つまり合否判定結果は、以下の通りである。つまり、図１３〜図１５に示すように、前縁側タイミング調整レジスタ４０ａの値Ｂが“１”且つ後縁側タイミング調整レジスタ４０ｂの値Ｆが“３”の場合と、前縁側タイミング調整レジスタ４０ａの値Ｂが“２”且つ後縁側タイミング調整レジスタ４０ｂの値Ｆが“４”の場合とにおいて、不合格である。不合格になった２組のＦＦ群に共通して属する試験対象ＦＦとなっているのは、３番目のＦＦであり、上述のごとく仮定した故障ＦＦを特定することができる。
【０１４６】
このように、第２実施例よれば、パターンの印加とScanOUT信号の期待値比較とを繰り返すことで、連続する複数のＦＦが属するＦＦ群について、電源電圧マージン故障が発生しているか否かを試験することができる。その際、外部コントローラ１４０による電源ユニット１３０に対する設定が不要となり、試験時間を大幅に短縮することができる。試験時間の短縮に伴い、ターンアラウンドタイム内に必要な測定データが全て採り切ることが可能になるため、故障箇所（故障したＦＦ）の特定精度が向上する。
【０１４７】
また、第２実施例では、上述のごとく、連続する複数のＦＦが属するＦＦ群について電源電圧マージン故障が発生しているか否かを試験することができる。このため、連続する複数のＦＦに試験電圧が連続的に印加されると電源電圧マージン故障が生じるような場合に、当該電源電圧マージン故障を発生させるＦＦ群を、短時間で且つ高い精度で特定することが可能になる。
【０１４８】
さらに、バイナリサーチによって故障箇所（故障したＦＦ）を特定する場合、２つのグループに分割したＦＦ群のそれぞれを試験対象ＦＦ群として上述した第２実施例を適用することで、故障箇所を、短時間で且つ高い精度で特定することができる。
【０１４９】
〔４〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
【０１５０】
例えば、上述した実施形態では、試験対象スキャンチェーン１０１を成すＦＦの数が５である場合について説明したが、本発明は、これに限定されるものではない。前述した通り、実際には、スキャンチェーン１０１を成すＦＦの数は数百万を超える場合があり、このような場合にも、本発明は、上述した実施形態と同様に適用され、上述した実施形態と同様の作用効果を得ることができる。
【０１５１】
また、上述した実施形態では、図４に示すように、抵抗対の抵抗値を適宜設定することで、フィードバック後の電源電圧端子１０５の電圧を、下限動作電圧よりも小さい試験電圧（故障発生電圧）に切り替えて、スキャンチェーン１０１の試験を行なう場合について説明したが、本発明は、これに限定されるものではない。これとは逆に、抵抗対の抵抗値を適宜調整することで、フィードバック後の電源電圧端子１０５の電圧を、上限動作電圧よりも大きい試験電圧（故障発生電圧）に切り替えてスキャンチェーン１０１の試験を行なうこともできる。
【０１５２】
〔５〕付記
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１５３】
（付記１）
外部の電源ユニットから電源電圧を印加されて動作する複数のフリップフロップを直列接続した第１スキャンチェーンと、
前記外部の電源ユニットからの前記電源電圧を、前記第１スキャンチェーンのスキャン動作に同期させて、前記第１スキャンチェーンの電源電圧マージン試験用の試験電圧に変更する試験回路と、を有する、半導体集積回路装置。
【０１５４】
（付記２）
前記試験回路は、
前記外部の電源ユニットにフィードバックされる出力電圧を、前記スキャン動作に同期させて変更することにより、前記電源電圧を前記試験電圧に変更する、付記１に記載の半導体集積回路装置。
【０１５５】
（付記３）
前記試験回路は、
異なる分圧比で前記出力電圧を分圧する複数組の抵抗対と、
前記複数のフリップフロップのうちの少なくとも一の試験対象フリップフロップが前記スキャン動作によって動作する動作タイミングで、前記複数組の抵抗対のうち前記試験電圧に対応する抵抗対を選択することにより、前記試験対象フリップフロップに印加される前記電源電圧を前記試験電圧に変更する選択回路と、を有する、付記２に記載の半導体集積回路装置。
【０１５６】
（付記４）
前記選択回路は、
前記複数組の抵抗対のうち、前記試験電圧に対応する抵抗対に関する情報を設定される電圧設定レジスタと、
前記試験対象フリップフロップの前記動作タイミングに対応する、前記スキャン動作用のクロック数を、第１クロック数として設定されるタイミング調整レジスタと、
前記タイミング調整レジスタに前記第１クロック数を設定した後の前記スキャン動作用のクロック数を、第２クロック数として計数する同期カウンタと、
前記タイミング調整レジスタに設定される前記第１クロック数と前記同期カウンタによって計数される前記第２クロック数とを比較する比較回路と、
前記比較回路による比較の結果に応じて、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する抵抗対選択回路と、を有する、付記３に記載の半導体集積回路装置。
【０１５７】
（付記５）
前記タイミング調整レジスタは、一の前記試験対象フリップフロップの前記動作タイミングに対応する、前記第１クロック数を設定され、
前記比較回路による比較の結果、前記第１クロック数と前記第２クロック数とが一致する場合、前記抵抗対選択回路は、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、付記４に記載の半導体集積回路装置。
【０１５８】
（付記６）
前記タイミング調整レジスタは、連続する二以上の前記試験対象フリップフロップの範囲の前記動作タイミングに対応する、前縁側クロック数および後縁側クロック数を、前記第１クロック数として設定され、
前記比較回路による比較の結果、前記第２クロック数が前記前縁側クロック数と前記後縁側クロック数との間である場合、前記抵抗対選択回路は、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、付記４に記載の半導体集積回路装置。
【０１５９】
（付記７）
前記電圧設定レジスタおよび前記タイミング調整レジスタを直列接続する、前記第１スキャンチェーンと独立した第２スキャンチェーンを、さらに有し、
前記第２スキャンチェーンのスキャン動作によって、前記電圧設定レジスタに対する前記抵抗対に関する情報の設定、および、前記タイミング調整レジスタに対する前記第１クロック数の設定を行なう、付記４〜付記６のいずれか一項に記載の半導体集積回路装置。
【０１６０】
（付記８）
外部の電源ユニットから電源電圧を印加されて動作する複数のフリップフロップを直列接続した第１スキャンチェーンを有する半導体集積回路装置の試験方法であって、
前記半導体集積回路装置に内蔵される試験回路によって、前記外部の電源ユニットからの前記電源電圧を、前記第１スキャンチェーンのスキャン動作に同期させて、前記第１スキャンチェーンの電源電圧マージン試験用の試験電圧に変更し、
前記第１スキャンチェーンからのスキャン出力と期待値とを比較することにより、前記第１スキャンチェーンの合否判定を行なって、前記複数のフリップフロップのうち、電源電圧マージン故障の生じたフリップフロップを特定する、半導体集積回路装置の試験方法。
【０１６１】
（付記９）
前記試験回路によって、前記外部の電源ユニットにフィードバックされる出力電圧を、前記スキャン動作に同期させて変更することにより、前記電源電圧を前記試験電圧に変更する、付記８に記載の半導体集積回路装置の試験方法。
【０１６２】
（付記１０）
前記試験回路が、異なる分圧比で前記出力電圧を分圧する複数組の抵抗対を含み、
前記試験回路によって、前記複数のフリップフロップのうちの少なくとも一の試験対象フリップフロップが前記スキャン動作によって動作する動作タイミングで、前記複数組の抵抗対のうち前記試験電圧に対応する抵抗対を選択することにより、前記試験対象フリップフロップに印加される前記電源電圧を前記試験電圧に変更する、付記９に記載の半導体集積回路装置の試験方法。
【０１６３】
（付記１１）
前記試験回路が、
前記複数組の抵抗対のうち、前記試験電圧に対応する抵抗対に関する情報を設定される電圧設定レジスタと、
前記試験対象フリップフロップの前記動作タイミングに対応する、前記スキャン動作用のクロック数を、第１クロック数として設定されるタイミング調整レジスタと、
前記タイミング調整レジスタに前記第１クロック数を設定した後の前記スキャン動作用のクロック数を、第２クロック数として計数する同期カウンタと、を含み、
前記試験回路によって、前記タイミング調整レジスタに設定される前記第１クロック数と前記同期カウンタによって計数される前記第２クロック数とを比較し、
前記試験回路によって、前記比較の結果に応じて、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、付記１０に記載の半導体集積回路装置の試験方法。
【０１６４】
（付記１２）
前記タイミング調整レジスタに、一の前記試験対象フリップフロップの前記動作タイミングに対応する、前記第１クロック数を設定し、
前記比較の結果、前記第１クロック数と前記第２クロック数とが一致する場合、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、付記１１に記載の半導体集積回路装置の試験方法。
【０１６５】
（付記１３）
前記タイミング調整レジスタに、連続する二以上の前記試験対象フリップフロップの範囲の前記動作タイミングに対応する、前縁クロック数および後縁側クロック数を、前記第１クロック数として設定し、
前記比較の結果、前記第２クロック数が前記前縁側クロック数と前記後縁側クロック数との間である場合、前記電圧設定レジスタに設定される前記抵抗対に関する情報に基づき、前記試験電圧に対応する抵抗対を選択する、付記１１に記載の半導体集積回路装置の試験方法。
【０１６６】
（付記１４）
前記電圧設定レジスタおよび前記タイミング調整レジスタを直列接続する、前記第１スキャンチェーンと独立した第２スキャンチェーンのスキャン動作によって、前記電圧設定レジスタに対する前記抵抗対に関する情報の設定、および、前記タイミング調整レジスタに対する前記第１クロック数の設定を行なう、付記１１〜付記１３のいずれか一項に記載の半導体集積回路装置の試験方法。
【符号の説明】
【０１６７】
１    半導体集積回路装置（ＬＳＩ）
１０    試験回路
２０    可変電圧生成回路
２１    抵抗分圧回路
２１−１〜２１−ｍ，２１ａ    抵抗対
２２    分圧抵抗値選択回路（抵抗対選択回路；選択回路）
２３−１〜２３−ｍ，２４−１〜２４−ｍ，２５〜２８    パストランジスタ
２９    ＮＯＴゲート（反転素子）
３０    電圧設定レジスタ（選択回路）
４０    タイミング調整レジスタ（選択回路）
４０ａ    前縁側タイミング調整レジスタ（選択回路）
４０ｂ    後縁側タイミング調整レジスタ（選択回路）
５０    同期カウンタ（選択回路）
５１    インクリメンタ
６０，６０ａ    タイミング比較器（比較回路；選択回路）
６１    ＥＯＲゲート
６２    ＮＯＲゲート
６３ａ，６３ｂ    大小比較回路
６４    ＮＯＴゲート（反転素子）
６５    ＡＮＤゲート
１０１    第１スキャンチェーン（試験対象のスキャンチェーン）
１０１ａ    第２スキャンチェーン
１０２，１０２ａ    クロック端子
１０３，１０３ａ    スキャン入力端子
１０４    スキャン出力端子
１０５    電源電圧端子
１０６    リモートセンス端子
１０７    リセット端子
１１０    パターンジェネレータ
１２０    期待値比較器
１３０    電源ユニット
１３１    電圧設定部
１３１ａ    Ｉ／Ｆ
１３１ｂ    レジスタ
１３１ｃ    ＤＡＣ
１３２    電圧出力部
１３２ａ    比較器
１３２ｂ    電圧生成部
１４０    外部コントローラ
【図１】
2017015398.tif 000003
【図２】
2017015398.tif 000004
【図３】
2017015398.tif 000005
【図４】
2017015398.tif 000006
【図５】
2017015398.tif 000007
【図６】
2017015398.tif 000008
【図７】
2017015398.tif 000009
【図８】
2017015398.tif 000010
【図９】
2017015398.tif 000011
【図１０】
2017015398.tif 000012
【図１１】
2017015398.tif 000013
【図１２】
2017015398.tif 000014
【図１３】
2017015398.tif 000015
【図１４】
2017015398.tif 000016
【図１５】
2017015398.tif 000017
【図１６】
2017015398.tif 000018
【図１７】
2017015398.tif 000019
【図１８】
2017015398.tif 000020
【図１９】
2017015398.tif 000021