(57)【要約】【課題】遅延故障試験時に遅延故障試験用の２パタンを印加可能とするスキャンフリップフロップを提供することを目的とする。【解決手段】スキャンフリップフロップ回路は、ラッチ部（１、２、３、４、５、６、７、）と、ホールド部（８、９）と、第１出力ノード（Ｎ０１）と、第２出力ノード（Ｎ０２）とを具備する。ラッチ部（１、２、３、４、５、６、７、）は、データを保持する。ホールド部（８、９）は、制御信号（Ｈ）に基づいて内部状態を取り込んで出力状態を保持する。第１出力ノード（Ｎ０１）は、出力状態に基づいて第１出力信号（Ｑ）を出力する。第２出力ノード（Ｎ０２）は、内部状態に基づいて第２出力信号（ＳＯＴ）を出力する。【選択図】図６
2007187458.tif 000002
【特許請求の範囲】
【請求項１】
ラッチ部と、
制御信号に基づいて前記ラッチ部の内部状態を取り込んで出力状態を保持するホールド部と、
前記出力状態に基づいて第１出力信号を出力する第１出力ノードと、
前記内部状態に基づいて第２出力信号を出力する第２出力ノードと
を具備するスキャンフリップフロップ回路。
【請求項２】
前記ラッチ部は、第１入力信号及び第２入力信号に基づいて前記内部状態を設定する
請求項１に記載のスキャンフリップフロップ回路。
【請求項３】
前記ラッチ部は、
前記第１入力信号及び前記第２入力信号を取り込んで保持する第１ラッチ部と、
前記第１ラッチ部の出力を取り込んで保持する第２ラッチ部と
を備える請求項１または請求項２に記載のスキャンフリップフロップ回路。
【請求項４】
前記第１ラッチ部は、
第１クロック信号に応答して前記第１入力信号を取り込み、
第２クロック信号に応答して前記第２入力信号を取り込む
請求項３に記載のスキャンフリップフロップ回路。
【請求項５】
前記第２ラッチ部は、前記第１クロック信号及び第３クロック信号に応答して前記第１ラッチ部の出力を取り込んで保持する
請求項４に記載のスキャンフリップフロップ回路。
【請求項６】
前記ホールド部は、前記制御信号に応答して前記第２ラッチ部の出力を取り込んで保持する
請求項３から請求項５のいずれかに記載のスキャンフリップフロップ回路。
【請求項７】
第１クロック信号に応答して第１端子に入力される第１入力信号を取り込んで内部状態を設定し、第２クロック信号に応答して第２端子に入力される第２入力信号を取り込んで前記内部状態を設定するマスタ部と、
前記第１クロック信号及び第３クロック信号に応答して前記マスタ部の出力を取り込んで保持するスレーブ部と、
制御信号に応答して前記スレーブ部の出力を取り込んで保持するホールド部と
を具備するスキャンフリップフロップ回路。
【請求項８】
前記マスタ部は、
前記第１クロック信号に応答して前記第１端子に入力される前記第１信号を取り込む第１クロック制御部と、
前記第２クロック信号に応答して前記第２端子に入力される前記第２信号を取り込む第１スキャン制御部と、
前記第１クロック制御部の出力と前記第１スキャン制御部の出力とを取り込んで保持するマスタラッチ部と
を備え、
前記スレーブ部は、
前記第１クロック信号に応答して前記マスタラッチ部の出力を取り込む第２クロック制御部と、
前記第３クロック信号に応答して前記マスタラッチ部の出力を取り込む第２スキャン制御部と、
前記第２クロック制御部と前記第２スキャン制御部との出力を取り込んで保持するスレーブラッチ部と、
前記第３クロック信号に応答して前記スレーブラッチ部の出力を前記第２クロック制御部の入力にフィードバックする第３スキャン制御部と
を備え、第１出力信号を出力し、
前記ホールド部は、
前記制御信号に応答して前記スレーブラッチ部の出力を取り込む第４スキャン制御部と、
前記第４スキャン制御部の出力を取り込んで保持する第２スレーブラッチ部と
を備え、第２出力信号を出力する
請求項７に記載のスキャンフリップフロップ回路。
【請求項９】
請求項１から請求項８のいずれかに記載のスキャンフリップフロップ回路を備える半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置に関し、特に、半導体集積回路装置の試験用回路であるスキャンフリップフロップ回路に関する。
【背景技術】
【０００２】
従来の半導体集積回路装置（以下ＬＳＩと呼ぶ）の試験は、縮退故障を対象にしていた。縮退故障とは、回路の入力状態に関係なく信号の論理値がある値に固定される故障である。これは、主に信号線のオープン故障やショート故障をモデル化し、信号線が“１”または“０”に縮退することを想定している低速試験手法である。しかし、近年のＬＳＩは、集積技術の向上に伴い集積度及び動作クロック周波数が高くなってきている。そのため、低速試験手法では検出できない遅延故障が無視できない状況にある。遅延故障とは、信号の変化がフリップフロップ間を規定時間内に伝わらない故障であり、素子や素子間配線の遅延が原因で発生する。
【０００３】
遅延故障を検出する試験は、回路内に存在する２つのフリップフロップ間において、出力フリップフロップから出力された信号が、規定時間以内に入力フリップフロップにラッチされたか否かを解析することにより行われる。例えば、図１に示されるように、フリップフロップ２１とフリップフロップ２２との間にＮＡＮＤ回路２４、ＯＲ回路２５を備える回路の試験を考える。ＮＡＮＤ回路２４は、一方の入力がフリップフロップ２１の出力に接続され、他方の入力が試験の間“１”レベルを保持する。ＯＲ回路２５は、一方の入力がＮＡＮＤ回路２４の出力に接続され、他方の入力が試験の間“０”レベルを保持する。ＯＲ回路２５の出力は、フリップフロップ２２に入力されて、所定のタイミングでラッチされる。
【０００４】
ここでは、フリップフロップ２１及びフリップフロップ２２は一定の間隔で入力データを取り込んで出力するものとし、フリップフロップ２１は期間ｔｉの間“０”を出力し、期間ｔｉ＋１の間“１”を出力する。ＮＡＮＤ回路２４は、フリップフロップ２１が“１”を出力してから素子間配線遅延、ＮＡＮＤ回路２４の素子遅延の後、 “０”を出力する。ＯＲ回路２５は、そのＮＡＮＤ回路２４が“０”を出力してから素子間配線遅延、ＯＲ回路２５の素子遅延の後、“０”を出力する。フリップフロップ２２は、ＯＲ回路２５が“０”を出力してから素子間配線遅延の後、“０”を入力することになる。これらの遅延が大きくなると、フリップフロップ２１が出力してからフリップフロップ２２がラッチするまでの期間ｔｉ＋１にＯＲ回路２５の出力がフリップフロップ２２に届かなくなる。従って、フリップフロップ２１から信号“１”が出力されて、期間ｔｉ＋１後に、フリップフロップ２２が信号“０”をラッチできなければ、フリップフロップ２１とフリップフロップ２２との間において遅延故障が発生したと判定される。
【０００５】
このとき、フリップフロップ２２で検出しようとする信号がラッチタイミング毎に異なっていなければ、フリップフロップ２１から出力される信号がフリップフロップ２２に達したか否か判定できない。従って、フリップフロップ２２でラッチされる値が、前回のラッチタイミングでラッチされた値と異なるようにテストデータが生成されている必要がある。即ち、フリップフロップ２２においてある連続した２時刻に異なる値が入力されるための信号（以降２パタンと呼ぶ）が、フリップフロップ２１に設定されなければならない。
【０００６】
一方、ＬＳＩの試験容易化の手法としてスキャンパス法が知られている。スキャンパス法では、回路内の各フリップフロップは、鎖状に連結されてシフトレジスタとしても動作するように設計される。試験時にこのシフト機能を利用して外部から各フリップフロップに任意の値が設定され、その値に対する動作結果が各フリップフロップに取り込まれ、外部に出力される。この動作結果を観測することにより回路の正常性が試験される。
【０００７】
スキャンパス法を用いてＬＳＩを試験するために、ＬＳＩ内に試験用のフリップフロップであるスキャンフリップフロップが設けられ、それらの試験用入出力端子を直列に接続することにより上述のシフトレジスタが構成される。スキャンフリップフロップは、通常のフリップフロップとして動作する通常動作機能のほかに、試験用のパタン信号であるスキャンイン信号ＳＩＮをデータ入力とし、試験用クロックであるスキャンクロックＳＣによりシフトレジスタを構成するフリップフロップとして動作するスキャン動作機能を備える。
【０００８】
半導体集積回路装置の試験で用いられるスキャンフリップフロップとして、特開２００２−１８９０５９号公報に入力信号を一時的に保持するマスタラッチ部及びスレーブラッチ部を有するマスタスレーブ型のスキャン用フリップフロップの構成が記載されている。図２に示されるように、このスキャンフリップフロップは、マスタラッチ部１、スレーブラッチ部２、第１クロック制御部３、第１スキャン制御部４、第２スキャン制御部５、第２クロック制御部６、第３スキャン制御部７を備え、出力バッファ、トランスファゲート制御信号生成回路としてインバータＩＮＶ１、ＩＮＶ２、ＩＮＶ３、ＩＮＶ４、ＩＮＶ５、ＩＮＶ６、ＩＮＶ７を備える。
【０００９】
マスタラッチ部１、スレーブラッチ部２、第１クロック制御部３、第２クロック制御部６には、クロックＣを反転させるインバータＩＮＶ３の出力端子Ｐ０１、及びインバータＩＮＶ３の出力クロックを反転させるインバータＩＮＶ４の出力端子Ｐ０２が接続されている。また、マスタラッチ部１及び第１スキャン制御部４には、第１スキャンクロックＳＣ１の入力端子Ｈ０４及び第１スキャンクロックＳＣ１を反転させるインバータＩＮＶ５の出力端子ＰＯ３が接続されている。さらに、第２スキャン制御部５及び第３スキャン制御部７には、第２スキャンクロックＳＣ２の入力端子Ｈ０５及び第２スキャンクロックＳＣ２を反転させるインバータＩＮＶ６の出力端子ＣＢ１が接続されている。
【００１０】
スレーブラッチ部２からバッファ回路（インバータＩＮＶ１）を介してノードＮ０１に出力データ信号Ｑが出力される。また、スレーブラッチ部２からバッファ回路（インバータＩＮＶ２）を介してノードＮ０２にスキャンアウト信号ＳＯＴが出力される。出力データ信号Ｑとスキャンアウト信号ＳＯＴとは、逆相の信号となる。
【００１１】
マスタラッチ部１は、インバータＩＮＶ１１と、インバータＩＮＶ１２と、トランスファゲートＴＧ１１、ＴＧ１２とを備え、データ信号Ｄ或いはスキャンイン信号ＳＩＮを一時的に保持する。インバータＩＮＶ１２は、インバータＩＮＶ１１の出力信号を反転させて出力する。トランスファゲートＴＧ１１、ＴＧ１２は、インバータＩＮＶ１２の出力とインバータＩＮＶ１１の入力間に直列に挿入されている。トランスファゲートＴＧ１１は、インバータＩＮＶ３の出力端子Ｐ０１及びインバータＩＮＶ４の出力端子Ｐ０２が接続され、クロックＣに同期してＯＮ／ＯＦＦする。また、トランスファゲートＴＧ１２は、端子Ｈ０４及びインバータＩＮＶ５の出力端子Ｐ０３が接続され、第１スキャン信号ＳＣ１に同期してＯＮ／ＯＦＦする。
【００１２】
スレーブラッチ部２は、インバータＩＮＶ２１と、インバータＩＮＶ２２と、トランスファゲートＴＧ２１とを備え、マスタラッチ部１の出力信号を通常動作用のクロックＣ或いは第２スキャンクロックＳＣ２に同期して一時的に保持する。インバータＩＮＶ２２は、インバータＩＮＶ２１の出力信号を反転させる。トランスファゲートＴＧ２１はインバータＩＮＶ２２の出力とインバータＩＮＶ２１の入力との間に挿入されている。トランスファゲートＴＧ２１は、インバータＩＮＶ３の出力端子Ｐ０１及びインバータＩＮＶ４の出力端子Ｐ０２が接続され、クロックＣに同期してＯＮ／ＯＦＦする。インバータＩＮＶ２１の出力信号は、インバータＩＮＶ１を介して出力データ信号Ｑとなる。一方、インバータＩＮＶ２２の出力信号は、インバータＩＮＶ２を介してスキャンアウト信号ＳＯＴとなる。また、インバータＩＮＶ２２の出力信号は、第３スキャン制御部７を介して第２クロック制御部６にフィードバックされる。
【００１３】
第１クロック制御部３は、インバータＩＮＶ３１とトランスファゲートＴＧ３１とを備える。インバータＩＮＶ３１は、データ信号Ｄを反転する。トランスファゲートＴＧ３１は、インバータＩＮＶ３の出力端子Ｐ０１及びインバータＩＮＶ４の出力端子Ｐ０２が接続され、クロックＣに同期してＯＮ／ＯＦＦする。従って、第１クロック制御部３は、クロックＣに基づいて入力データ信号Ｄをマスタラッチ部１に出力する。
【００１４】
第１スキャン制御部４は、スキャンイン信号ＳＩＮが入力され、トランスファゲートＴＧ４１を備える。トランスファゲートＴＧ４１は、端子Ｈ０４及びインバータＩＮＶ５の出力端子Ｐ０３が接続され、第１スキャンクロックＳＣ１に同期してＯＮ／ＯＦＦする。従って、第１スキャン制御部４は、第１スキャンクロックＳＣ１に基づいて入力されたスキャンイン信号ＳＩＮをマスタラッチ部１に出力する。
【００１５】
第２スキャン制御部５は、マスタラッチ部１の出力信号が入力され、トランスファゲートＴＧ５１を備える。トランスファゲートＴＧ５１は、端子Ｈ０５及びインバータＩＮＶ６の出力端子ＣＢ１が接続され、第２スキャンクロックＳＣ２に同期してＯＮ／ＯＦＦする。従って、第２スキャン制御部５は、第２スキャンクロックＳＣ２に基づいて入力されたマスタラッチ部１の出力信号を第２クロック制御部６に出力する。
【００１６】
第２クロック制御部６は、第２スキャン制御部５の出力信号が入力され、トランスファゲートＴＧ６１を備える。トランスファゲートＴＧ６１は、インバータＩＮＶ３の出力端子Ｐ０１及びインバータＩＮＶ４の出力端子Ｐ０２が接続され、クロックＣに同期してＯＮ／ＯＦＦする。従って、第２クロック制御部６は、クロックＣに基づいて入力された第２スキャン制御部５の出力信号をスレーブラッチ部２に出力する。
【００１７】
第３スキャン制御部７は、スレーブラッチ部２のインバータＩＮＶ２２の出力信号が入力され、トランスファゲートＴＧ７１を備える。トランスファゲートＴＧ７１は、端子Ｈ０５及びインバータＩＮＶ６の出力端子ＣＢ１が接続され、第２スキャンクロックＳＣ２に同期してＯＮ／ＯＦＦする。従って、第３スキャン制御部７は、第２スキャンクロックＳＣ２に基づいて、入力されたインバータＩＮＶ２２の出力信号を第２クロック制御部６に出力する。
【００１８】
従って、マスタラッチ部１、第１クロック制御部３、第１スキャン制御部４は、クロックＣに基づいて入力データ信号Ｄを一時保持する回路であるとともに、第１スキャンクロックＳＣ１に基づいてスキャン入力信号ＳＩＮを一時保持する回路でもある。また、スレーブラッチ部２、第２スキャン制御部５、第２クロック制御部６、第３スキャン制御部７は、クロックＣに基づいてマスタラッチ部１の出力信号を一時保持する回路であるとともに、第２スキャンクロックＳＣ２に基づいてマスタラッチ部１の出力信号を一時保持する回路でもある。
【００１９】
なお、トランスファゲートは、ＰチャネルＭＯＳトランジスタとＮチャネルＭＯＳトランジスタのソース・ドレインが共通に接続されて構成される。トランスファゲートは、ＰチャネルＭＯＳトランジスタのゲート及びＮチャネルＭＯＳトランジスタのゲートに印加される制御信号に応答して導通状態（ＯＮ）／非導通状態（ＯＦＦ）となるスイッチとして動作する。
【００２０】
次に、この従来のスキャンフリップフロップの動作について説明する。スキャンフリップフロップの通常動作時、第１スキャンクロックＳＣ１はＬレベルで維持され、第２スキャンクロックＳＣ２はＨレベルで維持される。従って、マスタラッチ部１のトランスファゲートＴＧ１２と第２スキャン制御部５のトランスファゲートＴＧ５１は、それぞれＯＮ状態で維持され、第１スキャン制御部４のトランスファゲートＴＧ４１と第３スキャン制御部７のトランスファゲートＴＧ７１は、それぞれＯＦＦ状態で維持されている。
【００２１】
このような状態で、端子Ｈ０１から入力データ信号Ｄ（ＨレベルまたはＬレベル）が入力される。クロックＣが立ち下がってＬレベルになると、第１クロック制御部３のトランスファゲートＴＧ３１が導通状態になり（ＯＮ）、トランスファゲートＴＧ１１は非導通状態になる（ＯＦＦ）。従って、入力データ信号ＤがトランスファゲートＴＧ３１を介してマスタラッチ部１に入力され、マスタラッチ部１は、第１クロック制御部３から受け取った信号をインバータＩＮＶ１１で反転して第２スキャン制御部５に出力する。
【００２２】
第２スキャンクロックＳＣ２がＨレベルであるため、第２スキャン制御部５のトランスファゲートＴＧ５１がＯＮ状態で維持され、マスタラッチ部１の出力信号は第２クロック制御部６に入力される。クロックＣがＬレベルであるため、第２クロック制御部６のトランスファゲートＴＧ６１がＯＦＦ状態であり、スレーブラッチ部２のトランスファゲートＴＧ２１がＯＮ状態になっている。従って、スレーブラッチ部２は、内部状態を維持したままであり、その出力信号Ｑ及びＳＯＴは変化しない。
【００２３】
次にクロックＣが立ち上がり、Ｈレベルになると、第１クロック制御部３のトランスファゲートＴＧ３１が遮断状態（ＯＦＦ）になり、トランスファゲートＴＧ１１が導通状態（ＯＮ）になる。従って、マスタラッチ部１に入力データ信号Ｄの供給は無くなるが、インバータＩＮＶ１２の出力信号がトランスファゲートＴＧ１２、ＴＧ１１を介してインバータＩＮＶ１１の入力に供給される。即ち、マスタラッチ部１は、インバータＩＮＶ１２の出力信号がインバータＩＮＶ１１の入力に帰還されため、クロックＣの立ち上がり直前の値（ＨレベルまたはＬレベル）を内部状態として維持する。
【００２４】
このとき、第２クロック制御部６のトランスファゲートＴＧ６１は導通状態（ＯＮ）、スレーブラッチ部２のトランスファゲートＴＧ２１は遮断状態（ＯＦＦ）となり、スレーブラッチ部２は、第２スキャン制御部５から出力されるマスタラッチ部１の出力を取り込む。スレーブラッチ部２は、第２クロック制御部６を介して受け取った信号をインバータＩＮＶ２１で反転して出力する。この出力信号は、インバータＩＮＶ１でさらに反転され、出力データ信号Ｑとして端子Ｎ０１から出力される。また、この出力信号は、インバータＩＮＶ２２で反転されて第３スキャン制御部７、インバータＩＮＶ２に出力され、インバータＩＮＶ２の出力信号は、ノードＮ０２から反転出力データ信号ＱＢ（或いはスキャン出力信号ＳＯＴ）として出力される。
【００２５】
さらに、クロックＣが再び立ち下がると、第２クロック制御部６のトランスファゲート６１は遮断状態（ＯＦＦ）になり、スレーブラッチ部２のトランスファゲートＴＧ２１は導通状態（ＯＮ）になる。インバータＩＮＶ２１の出力信号は、インバータＩＮＶ２２とトランスファゲートＴＧ２１とを介してインバータＩＮＶ２１の入力に帰還される。従って、スレーブラッチ部２は、取り込んだ内部状態を維持し、その出力信号Ｑ及びＳＯＴは変化しない。
【００２６】
次に、スキャン動作時のスキャンフリップフロップの動作が、図３を参照して説明される。スキャン動作時、クロックＣはＨレベルで維持される。従って、マスタラッチ部１のトランスファゲートＴＧ１１、第２クロック制御部６のトランスファゲートＴＧ６１は導通状態（ＯＮ）で維持され、第１クロック制御部３のトランスファゲートＴＧ３１、スレーブラッチ部２のトランスファゲートＴＧ２１は遮断状態（ＯＦＦ）で維持される。このような状態で、端子Ｈ０３からスキャンイン信号ＳＩＮが供給される。ここでは、スキャンイン信号が期間ｐ１においてＨレベルになる。
【００２７】
第１スキャンクロックＳＣ１が立ち上がり、Ｈレベルになると（期間ｐ２）、第１スキャン制御部４のトランスファゲートＴＧ４１が導通状態（ＯＮ）、マスタラッチ部１のトランスファゲートＴＧ１２が遮断状態（ＯＦＦ）になる。従って、スキャンイン信号ＳＩＮは、トランスファゲートＴＧ１１を介してインバータＩＮＶ１１に供給され、インバータＩＮＶ１１の出力ノードＮａは、Ｌレベルになる。このとき、第２スキャンクロックＳＣ２はＬレベルであるため、第２スキャン制御部５のトランスファゲートＴＧ５１は、遮断状態（ＯＦＦ）となり、スレーブラッチ部２は、変化しない。
【００２８】
第１スキャンクロックＳＣ１が立ち下がり、Ｌレベルになると（期間ｐ３）、トランスファゲートＴＧ４１が遮断状態（ＯＦＦ）、トランスファゲートＴＧ１２が導通状態（ＯＮ）になる。インバータＩＮＶ１２の出力信号は、トランスファゲートＴＧ１１、ＴＧ１２を介してインバータＩＮＶ１１の入力に帰還され、第１スキャンクロックＳＣ１がＨレベルのとき（Ｌレベルになる直前）の値に維持される。即ち、マスタラッチ部１は、期間ｐ２において取り込んだスキャンイン信号ＳＩＮの状態を保持する。このマスタラッチ部１の内部状態の保持は、第１スキャンクロックＳＣ１がＬレベルの間（期間ｐ３〜ｐ５）継続する。
【００２９】
次に、第２スキャンクロックＳＣ２が立ち上がり、Ｈレベルになると（期間ｐ４）、第２スキャン制御部５のトランスファゲートＴＧ５１が導通状態（ＯＮ）、第３スキャン制御部７のトランスファゲートＴＧ７１が遮断状態（ＯＦＦ）になる。従って、第２スキャン制御部５は、マスタラッチ部１の出力を第２クロック制御部６のトランスファゲートＴＧ６１を介してスレーブラッチ部２に供給する。
【００３０】
スレーブラッチ部２は、インバータＩＮＶ２１により入力された信号を反転してインバータＩＮＶ１に出力するとともに、インバータＩＮＶ２２に供給する。インバータＩＮＶ１は、入力された信号をさらに反転して、出力データ信号Ｑ（Ｌレベル）を出力する。また、インバータＩＮＶ２２に供給された信号は、反転されて第３スキャン制御部７とインバータＩＮＶ２に供給される。インバータＩＮＶ２は、出力データ信号Ｑと逆相のスキャンアウト信号ＳＯＴ（＝Ｈレベル）を出力する。
【００３１】
次に、第２スキャンクロックＳＣ２が立ち下がり、Ｌレベルになると（期間ｐ５）、トランスファゲートＴＧ５１は遮断状態（ＯＦＦ）、トランスファゲートＴＧ７１が導通状態（ＯＮ）になる。従って、マスタラッチ部１から供給される信号が遮断され、インバータＩＮＶ２２の出力信号がトランスファゲートＴＧ７１を介して第２クロック制御部６に供給される。トランスファゲートＴＧ６１は、インバータＩＮＶ２２の出力信号をインバータＩＮＶ２１に供給する。従って、インバータＩＮＶ２１の出力信号がインバータＩＮＶ２２により反転されてトランスファゲートＴＧ７１、ＴＧ６１を介してインバータＩＮＶ２１の入力に帰還され、スレーブラッチ部２は、第２スキャンクロックＳＣ２がＨレベル時（Ｌレベルになる直前）の値に維持される。即ち、スレーブラッチ部２は、帰還ｐ４において取り込んだマスタラッチ部１の出力信号の状態を保持する。この保持状態は、第２スキャンクロックＳＣ２がＬレベルの間（期間ｐ５〜ｐ７）継続する。
【００３２】
このように、従来のスキャンフリップフロップは、第１スキャンクロックＳＣ１がＨレベルのときにスキャンイン信号ＳＩＮをサンプリングしてマスタラッチ部１に一時保持する。さらに、従来のスキャンフリップフロップは、第２スキャンクロックＳＣ２がＨレベルのときにスレーブラッチ部２がマスタラッチ部１の内部状態を引き継いでスキャンアウト信号ＳＯＴとして出力する。従来のスキャンフリップフロップは、この動作を繰り返してシフト動作を行う。
【００３３】
このように動作する従来のスキャンフリップフロップが、図４に示されるように、３段連結されているスキャンパスにおいて、遅延故障試験を行う場合を説明する。スキャンフリップフロップ１４、１５、１６は、それぞれのスキャンイン端子ＳＩＮとスキャンアウト端子ＳＯＴとが接続され、スキャンパステスト時にシフトレジスタとして動作する。スキャンフリップフロップ１４とスキャンフリップフロップ１５との間に組み合せ回路１８が接続され、スキャンフリップフロップ１５とスキャンフリップフロップ１６との間に組み合せ回路１９が接続されている。組み合せ回路１８は、スキャンフリップフロップ１４の出力信号Ｑ１４に基づいて組み合せ論理演算が行われ、動作結果である信号Ｄ１８を出力する。組み合せ回路１９は、スキャンフリップフロップ１５の出力信号Ｑ１５に基づいて組み合せ論理演算が行われ、動作結果である信号Ｄ１９を出力する。スキャンフリップフロップ１４〜１６は、クロックＣ、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２が共通に供給される。スキャンフリップフロップ１４〜１６がシフトレジスタとして機能するとき、スキャンイン信号ＳＩがシリアル入力され、スキャンアウト信号ＳＯをシリアル出力する。
【００３４】
図５は、従来の遅延故障試験時の動作を示すタイムチャートである。各スキャンフリップフロップは、パタン“Ａ”“Ｂ”“Ｃ”をテストデータとして設定される。このテストデータを各スキャンフリップフロップにセットするために、第１スキャンクロックＳＣ１と第２スキャンクロックＳＣ２とが供給される。即ち、ＨレベルのパルスＳＣ１ａ、ＳＣ２ａ、ＳＣ１ｂ、ＳＣ２ｂ、ＳＣ１ｃ、ＳＣ２ｃが各スキャンフリップフロップのシフトクロックとして与えられる（図５（ｂ）（ｃ））。このときクロックＣは、Ｈレベルに固定される（図５（ａ）））。テストデータ“Ａ”“Ｂ”“Ｃ”は、パルスＳＣ２ａ、ＳＣ２ｂ、ＳＣ２ｃの立ち上がりに同期してスキャンフリップフロップ１４からスキャンフリップフロップ１６に順にシフトされる（図５（ｅ）（ｇ）（ｉ））。但し、スキャンイン端子ＳＩＮ（ノードＨ０３）から入力されたデータは、出力データ端子Ｑ（ノードＮ０１）から極性が反転されて出力されているため、添字ｎが付加されて記載されている。
【００３５】
パルスＳＣ２ｃが立ち上がった時点でスキャンフリップフロップ１４にテストデータ“Ｃ”、スキャンフリップフロップ１５にテストデータ“Ｂ”、スキャンフリップフロップ１６にテストデータ“Ａ”がセットされる。所定のタイミングＣａにおいて、１パタン目のデータにより回路を動作させるために、クロックＣは一旦Ｌレベルになる（図５（ａ））。各スキャンフリップフロップは、クロックＣがＬレベルのときに入力データ信号端子Ｄ（ノードＨ０１）からデータを取り込み、クロックＣがＨレベルに立ち上がると、出力データ信号Ｑとして出力する。従って、スキャンフリップフロップ１４から出力される出力データ信号Ｑ１４は、スキャンフリップフロップ１４の入力データ端子Ｄに印加されていた “Ｄｎ”に変化する（図５（ｅ））。スキャンフリップフロップ１５から出力される出力データ信号Ｑ１６は、スキャンフリップフロップ１４の出力データ信号Ｑ１４＝“Ｃｎ”が組み合せ回路１８により演算された結果信号Ｄ１８を取り込み、“Ｃ１ｎ”に変化する（図５（ｇ））。スキャンフリップフロップ１６から出力されるスキャンアウト信号ＳＯは、スキャンフリップフロップ１５の出力データ信号Ｑ１５＝“Ｂｎ”が組み合せ回路１９により演算された結果信号Ｄ１９を取り込み、“Ｂ２”に変化する（図５（ｉ））。
【００３６】
タイミングＣａから規定時間Ｔ経過後のタイミングＣｂにおいて、再度クロックＣはＬレベルになる。スキャンフリップフロップ１４から出力される出力データ信号Ｑ１４は、スキャンフリップフロップ１４の入力データ端子Ｄに印加されていた “Ｅｎ”に変化する（図５（ｅ））。スキャンフリップフロップ１５から出力される出力データ信号Ｑ１６は、スキャンフリップフロップ１４の出力データ信号Ｑ１４＝“Ｄｎ”が組み合せ回路１８により演算された結果信号Ｄ１８を取り込み、“Ｄ１ｎ”に変化する（図５（ｇ））。スキャンフリップフロップ１６から出力されるスキャンアウト信号ＳＯは、スキャンフリップフロップ１５の出力データ信号Ｑ１５＝“Ｃ１ｎ”が組み合せ回路１９により演算された結果信号Ｄ１９を取り込み、“Ｃ２”に変化する（図５（ｉ））。
【００３７】
クロックＣがＨレベルに戻むと、第２スキャンクロックＳＣ２がＬレベルになり、各スキャンフリップフロップのマスタラッチ部１、スレーブラッチ部２は、そのときの状態を維持する（図５（ｃ））。その後、各スキャンフリップフロップにセットされた試験結果をシリアルに出力するために、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２は、パルスＳＣ１ｄ、ＳＣ２ｄ、ＳＣ１ｅ、ＳＣ２ｅを各スキャンフリップフロップに与える。パルスＳＣ２ｄ、ＳＣ２ｅの立ち上がりに同期して、スキャンフリップフロップ１５の出力データ信号Ｑ１５は“Ｄ１ｎ”“Ｅｎ”と変化し、スキャンフリップフロップ１６のスキャンアウト信号ＳＯは“Ｃ２”“Ｄ１”“Ｅ”と変化する。即ち、２回目のクロックＣがＬレベルになったキャプチャ時点の値が、順次スキャンアウト信号ＳＯとしてシリアルに出力される。
【００３８】
この２回目のクロックＣの立ち上がり時点のサンプリング値が、遅延故障試験の試験結果である。従って、遅延故障試験の被試験回路の出力が変化するように被試験回路の入力データが与えられなければならない。被試験回路は、組み合せ回路１９であるから、“Ｃ１ｎ”が入力されたときに出力されるデータ“Ｃ２ｎ”と、“Ｄ１ｎ”が入力されて出力されるデータ“Ｄ２ｎ”とは異なっていなくてはならない。データ“Ｄ１ｎ”は、組み合せ回路１８がスキャンフリップフロップ１４の出力信号Ｑ１４に基づいて演算した結果である。従って、組み合せ回路１９を試験するために、スキャンフリップフロップ１４に入力されるテストデータは、組み合せ回路１８の演算を逆算して求めなければならない。
【００３９】
【特許文献１】特開２００２−１８９０５９号公報
【発明の開示】
【発明が解決しようとする課題】
【００４０】
上述のように、遅延故障の検査を行う場合、遅延故障試験の対象になる２つのフリップフロップ間の経路において、出力側のフリップフロップは、ある連続した２時刻に異なる値が入力されるための信号を２パタン出力する必要がある。そのため、遅延故障試験を行う場合、２パタンのうちの１パタン目をフリップフロップ１５に格納し、２パタン目はフリップフロップ１５の前段のフリップフロップ１４から印加する。つまり、１時刻さかのぼった時点の回路の状態を任意に設定する必要がある。この場合、遅延故障試験用のパタンは、順序回路を対象としてパタン生成される。数学的に順序回路に対する遅延故障試験用パタン生成は困難な問題であることが知られている。本発明は、遅延故障試験時に遅延故障試験用の２パタンを印加可能とするスキャンフリップフロップを提供することを目的とする。
【課題を解決するための手段】
【００４１】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を用いて、課題を解決するための手段を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００４２】
本発明の観点では、スキャンフリップフロップ回路は、ラッチ部（１、２、３、４、５、６、７）と、ホールド部（８、９）と、第１出力ノード（Ｎ０１）と、第２出力ノード（Ｎ０２）とを具備する。ラッチ部（１、２、３、４、５、６、７）は、データを保持する。ホールド部（８、９）は、制御信号（Ｈ）に基づいてラッチ部（１、２、３、４、５、６、７）の内部状態を取り込んで出力状態を保持する。第１出力ノード（Ｎ０１）は、出力状態に基づいて第１出力信号（Ｑ）を出力する。第２出力ノード（Ｎ０２）は、内部状態に基づいて第２出力信号（ＳＯＴ）を出力する。
【００４３】
本発明の他の観点では、半導体集積回路装置は、制御信号（Ｈ）に応答して出力状態を保持するホールド部（８、９）を備えるスキャンフリップフロップを備える。
【発明の効果】
【００４４】
本発明によれば、遅延故障試験用の２パタンを印加可能とするスキャンフリップフロップを提供することが可能となる。従って、遅延故障試験用パタン生成が容易となり、遅延故障試験用パタンの生成時間が短縮される。
【発明を実施するための最良の形態】
【００４５】
図を参照して本発明を実施するための最良の形態が説明される。図５は、本発明の実施の形態に係るスキャンフリップフロップの回路構成を示す回路図である。スキャンフリップフロップは、入力信号を一時的に保持するマスタ部と、２つのラッチ部を備えるスレーブ部とを具備するマスタスレーブ型のスキャン用フリップフロップである。通常動作時は、Ｄフリップフロップとして動作する。
【００４６】
図６に示されるように、スキャンフリップフロップは、マスタ部にマスタラッチ部１と第１クロック制御部３と第１スキャン制御部４とを備え、スレーブ部にスレーブラッチ部２と第２スレーブラッチ部９と第２スキャン制御部５と第２クロック制御部６と第３スキャン制御部７と第４スキャン制御部８とインバータＩＮＶ１、ＩＮＶ２とを備える。また、スキャンフリップフロップは、クロック制御部としてインバータＩＮＶ３〜ＩＮＶ７を備える。
【００４７】
マスタ部は、クロック制御部の制御に基づいて、入力データ信号Ｄ或いはスキャンイン信号ＳＩＮを取り込んで保持する。スレーブ部は、クロック制御部の制御に基づいて、マスタ部から出力される信号を取り込んで保持し、出力データ信号Ｑ及びスキャンアウト信号ＳＯＴとして出力する。クロック制御部は、端子Ｈ０２からクロックＣ、端子Ｈ０４から第１スキャンクロックＳＣ１、端子Ｈ０５から第２スキャンクロックＳＣ２、端子Ｈ０６からホールド信号Ｈを入力する。
【００４８】
インバータＩＮＶ３は、クロックＣに基づいてノードＰ０１に反転されたクロック信号を出力し、インバータＩＮＶ４は、ノードＰ０２にクロックＣと同相のクロック信号を出力する。インバータＩＮＶ５は、ノードＨ０４に入力される第１スキャンクロックＳＣ１を反転してノードＰ０３に出力する。インバータＩＮＶ６は、ノードＨ０５に入力される第２スキャンクロックＳＣ２を反転してノードＣＢ１に出力する。インバータＩＮＶ７は、ノードＨ０６から入力されるホールド信号Ｈを反転してノードＰ０４に出力する。これらの対になっているクロック信号、制御信号は、各トランスファゲートに供給される。
【００４９】
第１クロック制御部３は、インバータＩＮＶ３１とトランスファゲートＴＧ３１とを含む。インバータＩＮＶ３１は、端子Ｈ０１から入力される入力データ信号Ｄの極性を反転してトランスファゲートＴＧ３１に出力する。トランスファゲートＴＧ３１は、クロックＣに基づいて制御され、クロックＣがＬレベルのときにインバータＩＮＶ３１の出力をマスタラッチ部１に供給する。
【００５０】
第１スキャン制御部４は、トランスファゲートＴＧ４１を含む。トランスファゲートＴＧ４１は、第１スキャンクロックＳＣ１に基づいて制御され、第１スキャンクロックＳＣ１がＨレベルのとき、入力ノードＨ０３に入力されるスキャンイン信号ＳＩＮをマスタラッチ部に供給する。
【００５１】
マスタラッチ部１は、インバータＩＮＶ１１、ＩＮＶ１２とトランスファゲートＴＧ１１、ＴＧ１２とを含む。トランスファゲートＴＧ１１とトランスファゲートＴＧ３１とは逆相の制御信号に基づいて制御されるため、インバータＩＮＶ１１は、トランスファゲートＴＧ１１から供給される信号、或いは、第１クロック制御部３から入力される反転された入力データ信号Ｄのいずれかの信号を極性反転してノードＮａに出力する。ノードＮａは、インバータＩＮＶ１２と第２スキャン制御部５とに接続される。インバータＩＮＶ１２は、インバータＩＮＶ１１の出力を極性反転してトランスファゲートＴＧ１２に出力する。トランスファゲートＴＧ１２は、第１スキャンクロックＳＣ１に基づいて制御され、第１スキャンクロックＳＣ１がＬレベルのときインバータＩＮＶ１２の出力をトランスファゲートＴＧ１１に供給する。トランスファゲートＴＧ１２と、第１スキャン制御部４のトランスファゲートＴＧ４１とは、第１スキャンクロックＳＣ１に基づく逆相の制御信号に基づいて制御されるため、スキャンイン信号ＳＩＮ、或いは、インバータＩＮＶ１２から出力される信号のいずれかの信号がトランスファゲートＴＧ１１に供給される。
【００５２】
従って、第１スキャンクロックＳＣ１がＬレベルであれば、マスタラッチ部１は、クロックＣがＬレベルのとき、入力データ信号Ｄを取り込んで第２スキャン制御部５に出力する。また、クロックＣがＨレベルのとき、インバータＩＮＶ１１とインバータＩＮＶ１２とは直列に接続されてループを形成し、マスタラッチ部１は、入力された信号を保持して第２スキャン制御部５に出力する。
【００５３】
さらに、マスタラッチ部１は、クロックＣがＨレベルであれば、第１スキャンクロックＳＣ１がＨレベルのときスキャンイン信号ＳＩＮを取り込み、極性が反転された信号を第２スキャン制御部５に出力する。また、第１スキャンクロックＳＣ１がＬレベルのとき、インバータＩＮＶ１１とインバータＩＮＶ１２とは直列に接続されてループを形成し、マスタラッチ部１は、入力された信号を保持して第２スキャン制御部５に出力する。
【００５４】
第２スキャン制御部５は、第２スキャンクロックＳＣ２に基づいて制御されるトランスファゲートＴＧ５１を含む。トランスファゲートＴＧ５１は、第２スキャンクロックＳＣ２がＨレベルのとき、マスタラッチ部１から出力される信号を第２クロック制御部６に供給する。
【００５５】
第２クロック制御部６は、クロックＣに基づいて制御されるトランスファゲートＴＧ６１を含む。トランスファゲートＴＧ６１は、クロックＣがＨレベルのとき入力される信号をスレーブラッチ部２に供給する。
【００５６】
スレーブラッチ部２は、インバータＩＮＶ２１、ＩＮＶ２２とトランスファゲートＴＧ２１とを含む。トランスファゲートＴＧ２１は、クロックＣに基づいて制御され、クロックＣがＬレベルのときインバータＩＮＶ２２の出力をインバータＩＮＶ２１に供給する。トランスファゲートＴＧ２１とトランスファゲートＴＧ６１とはクロックＣに基づく逆相の制御信号に基づいて制御されるため、インバータＩＮＶ２１は、第２クロック制御部６から供給される信号とトランスファゲートＴＧ２１から供給される信号とのいずれかの信号を極性反転してノードＮｂに出力する。ノードＮｂには、インバータＩＮＶ２２と第４スキャン制御部８とが接続される。インバータＩＮＶ２２は、インバータＩＮＶ２１の出力を極性反転してトランスファゲートＴＧ２１及び第３スキャン制御部７に出力するとともに、インバータＩＮＶ２を介してスキャンアウト信号ＳＯＴをノードＮ０２に出力する。スキャンアウト信号ＳＯＴは、ノードＮｂと同相の信号となる。
【００５７】
第３スキャン制御部７は、第２スキャンクロックＳＣ２に基づいて制御されるトランスファゲートＴＧ７１を含む。トランスファゲートＴＧ７１は、第２スキャンクロックＳＣ２がＬレベルのときにインバータＩＮＶ２２の出力を第２クロック制御部６に供給する。
【００５８】
第２スキャン制御部５のトランスファゲートＴＧ５１と第３スキャン制御部７のトランスファゲートＴＧ７１とは、第２スキャンクロックＳＣ２に基づく逆相の制御信号に基づいて制御されるため、マスタラッチ部１から出力される信号、或いは、インバータＩＮＶ２２が出力するスレーブラッチ部２が保持する信号のいずれかの信号が第２クロック制御部６に供給される。
【００５９】
従って、クロックＣがＨレベルの場合、スレーブラッチ部２は、第２スキャンクロックＳＣ２がＨレベルのとき、マスタラッチ部１から出力される信号を取り込む。第２スキャンクロックＳＣ２がＬレベルのときインバータＩＮＶ２１、ＩＮＶ２２は信号ループを形成する。従って、スレーブラッチ部２は、入力を遮断して取り込んだ信号を保持する。
【００６０】
さらに、第２スキャンクロックＳＣ２がＨレベルの場合、スレーブラッチ部２は、クロックＣがＨレベルのとき、マスタラッチ部１から出力される信号を取り込む。クロックＣがＬレベルのとき、インバータＩＮＶ２１、ＩＮＶ２２は信号ループを形成する。従って、スレーブラッチ部２は、入力を遮断して取り込んだ信号を保持する。
【００６１】
第４スキャン制御部８は、インバータＩＮＶ８１とトランスファゲートＴＧ８１とを含む。インバータＩＮＶ８１は、スレーブラッチ部２から出力される信号を極性反転してトランスファゲートＴＧ８１に供給する。トランスファゲートＴＧ８１は、ホールド信号Ｈに基づいて制御され、ホールド信号ＨがＬレベルのときインバータＩＮＶ８１の出力を第２スレーブラッチ部９に供給する。
【００６２】
第２スレーブラッチ部９は、インバータＩＮＶ９１、ＩＮＶ９２とトランスファゲートＴＧ９１とを含む。インバータＩＮＶ９２は、インバータ９１の出力を極性反転してトランスファゲートＴＧ９１に出力する。トランスファゲートＴＧ９１は、ホールド信号Ｈに基づいて制御され、ホールド信号ＨがＨレベルのとき、インバータＩＮＶ９２の出力をインバータＩＮＶ９１に供給する。トランスファゲートＴＧ９１と第４スキャン制御部８のトランスファゲートＴＧ８１とは、ホールド信号Ｈに基づく逆相の制御信号に基づいて制御される。そのため、インバータＩＮＶ９１は、インバータＩＮＶ９２が出力する信号、或いは、インバータＩＮＶ８１が出力する信号のいずれかの信号を極性反転してインバータＩＮＶ９２及びインバータＩＮＶ１に出力する。インバータＩＮＶ１は、入力された信号を極性反転し、ノードＮ０１からスキャンフリップフロップの出力データ信号Ｑとして出力する。
【００６３】
従って、第２スレーブラッチ部９は、ホールド信号ＨがＬレベルのとき、スレーブラッチ部２の出力を取り込んで出力し、ホールド信号ＨがＨレベルのとき、インバータＩＮＶ９１、ＩＮＶ９２が信号ループを形成して入力された信号を保持する。即ち、ホールド信号ＨがＬレベルのとき、スレーブラッチ部２の出力がインバータＩＮＶ１を介して出力される従来のスキャンフリップフロップと同じように、出力データ信号Ｑとスキャンアウト信号ＳＯＴは同期して互いに逆相の信号を出力する。ホールド信号ＨがＨレベルのとき、スキャンアウト信号ＳＯＴは、スレーブラッチ部２の状態を反映するが、出力データ信号Ｑは、ホールド信号Ｈが立ち上がる直前の値を保持する。ホールド信号Ｈが立ち下がると、出力データ信号Ｑは、スレーブラッチ部２の状態を反映した信号となる。
【００６４】
このように、ホールド信号Ｈにより制御される第２スレーブラッチ部９及び第４スキャン制御部を備えることにより、遅延故障試験用の２パタンを保持し、ホールド信号Ｈに基づいて出力することが可能となる。
【００６５】
次に、図を参照してスキャンフリップフロップの動作を説明する。図７は、通常動作時のスキャンフリップフロップの動作を示すタイムチャートである。通常動作時、図７（ｂ）（ｃ）に示されるように、第１スキャンクロックＳＣ１はＬレベル、第２スキャンクロックＳＣ２はＨレベルに固定される。従って、トランスファゲートＴＧ１２、ＴＧ５１は導通状態（ＯＮ）に、トランスファゲートＴＧ４１、ＴＧ７１は遮断状態（ＯＦＦ）になる。スキャンイン信号ＳＩＮは、トランスファゲートＴＧ４１により遮断されるため、スキャンフリップフロップの動作に影響しない（図７（ｅ））。また、ホールド信号Ｈは、図７（ｉ）に示されるように、Ｌレベルに固定され、スレーブラッチ部２の出力は、第４スキャン制御部８と第２スレーブラッチ部９とをそのまま通過する。
【００６６】
クロックＣは、図７（ａ）に示されるように、期間ｐ１、ｐ３、ｐ５、ｐ７においてＬレベルであり、期間ｐ２、ｐ４、ｐ６においてＨレベルである。図７（ｄ）に示されるように、入力データ信号Ｄは、期間ｐ１及び期間ｐ４において立ち上がり、期間ｐ２、ｐ５においてＨレベル、期間ｐ３、ｐ６において立ち下がる場合を例に説明する。
【００６７】
期間ｐ１ではトランスファゲートＴＧ３１が導通状態になっているため、Ｈレベルになった入力データ信号Ｄは、インバータＩＮＶ３１、インバータＩＮＶ１１を介してノードＮａをＨレベルにする。一方、トランスファゲートＴＧ６１は遮断状態にあり、スレーブラッチ部２は、Ｈレベルの信号を保持している（図７（ｇ））。従って、スキャンフリップフロップの出力データ信号ＱはＬレベル、スキャンアウト信号ＳＯＴはＨレベルとなる。
【００６８】
期間ｐ２において、クロックＣはＨレベルになるため、トランスファゲートＴＧ３１が遮断状態、トランスファゲートＴＧ１１が導通状態になり、マスタラッチ部１は、取り込んだ信号を保持する。従って、ノードＮａはＨレベルのまま保持される（図７（ｆ））。一方、トランスファゲートＴＧ６１が導通状態、トランスファゲートＴＧ２１が遮断状態になるため、スレーブラッチ部２は、マスタラッチ部１の出力を取り込み、ノードＮｂからＬレベルの信号を出力する（図７（ｇ））。従って、出力データ信号ＱはＨレベル、スキャンアウト信号ＳＯＴはＬレベルになる（図７（ｊ）（ｈ））。
【００６９】
期間ｐ３では、期間ｐ１と同じように、マスタラッチ部１は入力データ信号Ｄを取り込み、ノードＮａはＬレベルになる（図７（ｆ））。スレーブラッチ部２では、ノードＮｂは、期間ｐ２において取り込んだＬレベルを保持する（図７（ｇ））。
【００７０】
期間ｐ４において、マスタラッチ部１は、取り込んだ信号のレベルを維持し（図７（ｆ））、スレーブラッチ部２はマスタラッチ部１の出力を取り込み、ノードＮｂはＨレベルになる（図７（ｇ））。期間ｐ４では、入力データ信号Ｄが、Ｈレベルに立ち上がっているが、マスタラッチ部１はラッチ状態であり、ノードＮａのレベルは変化しない（図７（ｆ））。
【００７１】
期間ｐ５になると、マスタラッチ部１は入力データ信号Ｄを取り込むため、ノードＮａはＨレベルになる（図７（ｆ））。スレーブラッチ部２は、期間ｐ４の状態を保持するため、ノードＮｂはＨレベルの状態を維持する（図７（ｇ））。
【００７２】
期間ｐ６では、期間ｐ４と同じように、マスタラッチ部１は取り込んだ信号のレベルを保持し、入力データ信号Ｄが立ち下がってもノードＮａはＨレベルを維持する（図７（ｆ））。スレーブラッチ部２は、マスタラッチ部１の出力を取り込み、ノードＮｂはＬレベルになる（図７（ｇ））。
【００７３】
このように、通常動作時のスキャンフリップフロップは、従来のスキャンフリップフロップと同じく、クロックＣの立ち上がり直前の入力データ信号Ｄのレベルを出力データ信号Ｑとして出力し、極性が反転した信号をスキャンアウト信号ＳＯＴとして出力する。
【００７４】
次に、図８を参照してスキャンフリップフロップのスキャンパス試験時の動作を説明する。スキャンパス試験において、スキャンフリップフロップをシフトレジスタとして動作させるとき、クロックＣはＨレベルに固定され（図８（ａ））、第１スキャンクロックＳＣ１と第２スキャンクロックＳＣ２とは、Ｈレベルの期間が重複しない２相のシフトクロックとして与えられる（図８（ｂ）（ｃ））。被試験回路の動作状態は、クロックＣが一旦Ｌレベルになることによりサンプリングされ、各スキャンフリップフロップに取り込まれる。クロックＣがＨレベルの間、トランスファゲートＴＧ３１、ＴＧ２１が遮断状態（ＯＦＦ）になり、トランスファゲートＴＧ１１、ＴＧ６１が導通状態（ＯＮ）となっている。
【００７５】
期間ｐ１において、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２はともにＬレベルであるため（図８（ｂ）（ｃ））、マスタラッチ部１、スレーブラッチ部２はデータ保持状態になっている。従って、ノードＮａはＨレベルを維持し（図８（ｆ））、ノードＮｂはＬレベルを維持する（図８（ｇ））。スキャンアウト信号ＳＯＴは、ノードＮｂのレベルが反映してＬレベルであり（図８（ｈ））、出力データ信号Ｑは、Ｈレベルである（図８（ｊ））。
【００７６】
期間ｐ２では、第１スキャンクロックＳＣ１がＨレベルになり、マスタラッチ部１は、スキャンイン信号ＳＩＮの状態を取り込む。スキャンイン信号がＨレベルであるため、ノードＮａはＬレベルになる。第２スキャンクロックＳＣ２はＬレベルであるため、スレーブラッチ部２は期間ｐ１の状態を維持し、出力データ信号Ｑ、スキャンアウト信号ＳＯＴは変化しない。期間ｐ３では、期間ｐ１と同じように、マスタラッチ部１、スレーブラッチ部２ともに前状態を維持し、出力データ信号Ｑ、スキャンアウト信号ＳＯＴは変化しない。
【００７７】
期間ｐ４では、第２スキャンクロックＳＣ２がＨレベルになり（図８（ｃ））、スレーブラッチ部２がマスタラッチ部１の出力を取り込む。ノードＮａがＬレベルであるから、ノードＮｂはＨレベルになり（図８（ｇ））、ノードＮｂの変化に伴ってスキャンアウト信号ＳＯＴもＨレベルになる（図８（ｈ））。スレーブラッチ部２の出力は、第４スキャン制御部８、第２スレーブラッチ部９を介してインバータＩＮＶ１に供給される。インバータＩＮＶ１は、極性を反転し、Ｌレベルの出力データ信号Ｑを出力する（図８（ｊ））。
【００７８】
期間ｐ５では、期間ｐ１、ｐ３と同じように、マスタラッチ部１、スレーブラッチ部２ともに前状態を維持し、スキャンアウト信号ＳＯＴは変化しない。ここで、ホールド信号ＨがＨレベルになると（図８（ｉ））、第４スキャン制御部８は、遮断状態になり、第２スレーブラッチ部９は前状態を保持する。従って、出力データ信号Ｑは、Ｌレベルの状態を維持する。この状態は、ホールド信号ＨがＨレベルの間継続する。本実施の形態では、期間ｐ５においてホールド信号ＨがＨレベルになるとして説明されたが、どのタイミングであってもよく、スレーブラッチ部２が状態を保持している第２スキャンクロックＳＣ２がＬレベルのときが好ましい。
【００７９】
期間ｐ６では、第１スキャンクロックＳＣ１がＨレベルになり、期間ｐ２と同じように、マスタラッチ部１がスキャンイン信号ＳＩＮを取り込み、ノードＮａはＨレベルになる（図８（ｆ））。スレーブラッチ部２は、第２スキャンクロックＳＣ２がＬレベルであるため、変化しない（図８（ｇ））。期間ｐ７では、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２がＬレベルであるため、マスタラッチ部１、スレーブラッチ部２は変化しない。
【００８０】
期間ｐ８になると、第２スキャンクロックＳＣ２がＨレベルになり（図８（ｃ））、スレーブラッチ部２は、マスタラッチ部１の出力を取り込む。従って、マスタラッチ部１のノードＮａがＨレベルであるから（図８（ｆ））、ノードＮｂはＬレベルになる（図８（ｇ））。ノードＮｂの変化に伴って、スキャンアウト信号ＳＯＴは、Ｌレベルになる（図８（ｈ））。ホールド信号ＨがＨレベルであるため、第４スキャン制御部８が遮断状態にあり、第２スレーブラッチ部９は前状態を保持している。従って、出力データ信号Ｑは、Ｌレベルを維持する（図８（ｊ））。このように、ホールド信号ＨがＨレベルであると、第２スレーブラッチ部９は前状態を保持し、出力データ信号Ｑは、スレーブラッチ部２の状態と一致しなくなる。
【００８１】
期間ｐ９では、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２ともにＬレベルであるから（図８（ｂ）（ｃ））、マスタラッチ部１とスレーブラッチ部２は変化しない。この状態で、ホールド信号ＨがＬレベルに変化すると（図８（ｉ））、トランスファゲートＴＧ８１が導通状態になり、トランスファゲートＴＧ９１が遮断状態になる。従って、スレーブラッチ部２のノードＮｂの状態が（図８（ｇ））、第４スキャン制御部４、第２スレーブラッチ部９を介してインバータＩＮＶ１に供給され、出力データ信号ＱはＨレベルに変わる（図８（ｊ））。
【００８２】
期間ｐ１０において、この状態でクロックＣがＬレベルになる。トランスファゲートＴＧ１１が遮断状態になり、トランスファゲートが導通状態になるため、マスタラッチ部１は入力データ信号Ｄを取り込む。このとき、入力データ信号Ｄは、Ｌレベルであるため（図８（ｄ））、マスタラッチ部１のノードＮａは、Ｌレベルになる（図８（ｆ））。スレーブラッチ部２は、トランスファゲートＴＧ２１が導通状態になって前状態を保持しているため、ノードＮｂは変化しない（図８（ｇ））。また、ホールド信号ＨがＬレベルであるため、ノードＮｂの状態が第４スキャン制御部８、第２スレーブラッチ部９を介してインバータＩＮＶ１に供給され、出力データ信号Ｑは、変化しない（図８（ｊ））。即ち、期間ｐ１０では、出力データ信号Ｑが変わらない状態でマスタラッチ部１は入力データ信号Ｄを取り込んだ状態になる。
【００８３】
期間ｐ１１では、クロックＣがＨレベル、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２、ホールド信号ＨがＬレベルであり、期間ｐ３と同じように、マスタラッチ部１及びスレーブラッチ部２は前状態を保持し、第２スレーブラッチ部９はスレーブラッチ部２の出力をそのまま出力する。
【００８４】
期間ｐ１２になると、第２スキャンクロックＳＣ２がＨレベルになる（図８（ｃ））。マスタラッチ部１は、前状態（ここでは、期間ｐ１０において取り込んだ入力データ信号Ｄを保持した状態）を保持している。スレーブラッチ部２は、そのマスタラッチ部１の出力を取り込み、ノードＮｂはＨレベルになる（図８（ｇ））。従って、スキャンアウト信号ＳＯＴもＨレベルになる（図８（ｈ））。ホールド信号ＨがＬレベルであるから、出力データ信号Ｑは、Ｌレベルになる（図８（ｊ））。即ち、期間ｐ１０において入力データ信号によりスキャンフリップフロップに入力されたデータが、期間ｐ１２においてスキャンアウト信号ＳＯＴ及び出力データ信号Ｑに反映されたことになる。
【００８５】
このように、スキャンフリップフロップは、第１スキャンクロックＳＣ１がＨレベルのときにスキャンイン信号ＳＩＮを取り込み、第２スキャンクロックＳＣ２がＨレベルのときにスキャンアウト信号ＳＯＴとして出力する。ホールド信号ＨがＨレベルのときは、出力データ信号Ｑは前状態を保持し、スレーブラッチ部２の状態を反映していない。また、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２がＬレベルのとき、クロックＣを一旦Ｌレベルにすることにより、マスタラッチ部１に入力データ信号の状態をセットすることができる。
【００８６】
次に、スキャンフリップフロップを３段直列に接続し、スキャンパスが形成される場合を例として、遅延故障試験時の動作が説明される。図９に示されるように、スキャンフリップフロップ１１、１２、１３がスキャンパスを形成している。スキャンフリップフロップ１１とスキャンフリップフロップ１２との間に被試験回路である組み合せ回路１８、スキャンフリップフロップ１２とスキャンフリップフロップ１３との間に被試験回路である組み合せ回路１９がある。スキャンフリップフロップ１１〜１３は、クロックＣ、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２、ホールド信号Ｈが共通に供給される。スキャンフリップフロップ１１は、出力データ信号Ｑ１１を組み合せ回路１８に出力し、組み合せ回路１８は、動作結果である結果信号Ｄ１８をスキャンフリップフロップ１２の入力データ信号として供給する。スキャンフリップフロップ１２は、出力データ信号Ｑ１２を組み合せ回路１９に出力し、組み合せ回路１９は、動作結果である結果信号Ｄ１９をスキャンフリップフロップ１３の入力データ信号として供給する。スキャンパス試験時、シリアルのテストデータであるスキャンイン信号ＳＩがスキャンフリップフロップ１１のＳＩＮ端子に供給される。スキャンフリップフロップ１１のＳＯＴ端子はスキャンフリップフロップ１２のＳＩＮ端子に接続され、スキャンフリップフロップ１２のＳＯＴ端子はスキャンフリップフロップ１３のＳＩＮ端子に接続される。スキャンフリップフロップ１３のＳＯＴ端子から試験結果であるスキャンアウト信号ＳＯが出力される。ここでは、遅延故障試験の対象回路は、組み合せ回路１９とし、スキャンフリップフロップ１２の出力信号Ｑ１２を所定の時間内に変化させ、その結果をスキャンフリップフロップ１３が取り込む。
【００８７】
図１０は、遅延故障試験時の動作を示すタイムチャートである。スキャンイン信号ＳＩにより各スキャンフリップフロップに設定されるテストデータは、遅延故障試験用の２パタンを含む。１パタン目のデータは“Ａ”“Ｂ”“Ｃ”であり、２パタン目のデータは“Ａ”“Ｂ’”“Ｃ”とする。スキャンフリップフロップ１２は、１パタン目のデータ“Ｂ”が設定され、所定のタイミングで２パタン目のデータ“Ｂ’”に変化させる。スキャンフリップフロップ１３が２パタン目の結果信号Ｄ１９を取り込み、スキャンアウト信号ＳＯとして出力することにより、組み合せ回路１９の遅延故障を検出する。
【００８８】
１パタン目のテストデータを各スキャンフリップフロップに設定するために、クロックＣは、Ｈレベルに固定され（図１０（ａ））、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２は、ＨレベルのパルスＳＣ１ａ、ＳＣ２ａ、ＳＣ１ｂ、ＳＣ２ｂ、ＳＣ１ｃ、ＳＣ２ｃを与える（図１０（ｂ）（ｃ））。このとき、ホールド信号Ｈは、Ｌレベルに固定される（図１０（ｄ））。第１スキャンクロックＳＣ１がＨレベルのとき、各スキャンフリップフロップは、マスタラッチ部１に端子ＳＩＮのデータを取り込むため、スキャンイン信号ＳＩは第２スキャンクロックＳＣ２の立ち下がりに同期してデータ列“Ａ”“Ｂ”“Ｃ”を与える（図１０（ｅ））。
【００８９】
各スキャンフリップフロップは、第２スキャンクロックＳＣ２の立ち上がりに同期して取り込んだデータを出力する。従って、スキャンフリップフロップ１１のスキャンアウト信号ＳＯ１１は、パルスＳＣ２ａの立ち上がりに同期して“Ａ”、パルスＳＣ２ｂの立ち上がりに同期して“Ｂ”、パルスＳＣ２ｃの立ち上がりに同期して“Ｃ”となる（図１０（ｆ））。また、スキャンフリップフロップ１１は、第２スキャンクロックＳＣ２の立ち上がりに同期してスキャンアウト信号ＳＯ１１と逆相の出力データ信号Ｑ１１、即ち、“Ａｎ”“Ｂｎ”“Ｃｎ”を出力する（図１０（ｇ））。
【００９０】
同じように、スキャンフリップフロップ１２は、第２スキャンクロックＳＣ２の立ち上がりに同期してスキャンアウト信号ＳＯ１２を出力する。スキャンアウト信号ＳＯ１２は、パルスＳＣ２ｂの立ち上がりに同期して“Ａ”、パルスＳＣ２ｃの立ち上がりに同期して“Ｂ”となる（図１０（ｉ））。また、スキャンフリップフロップ１２の出力データ信号Ｑ１２は、パルスＳＣ２ｂの立ち上がりに同期して“Ａｎ”、パルスＳＣ２ｃの立ち上がりに同期して“Ｂｎ”となる（図１０（ｊ））。スキャンフリップフロップ１３のスキャンアウト信号ＳＯは、パルスＳＣ２ｃの立ち上がりに同期して“Ａ”となる（図１０（ｌ））。従って、スキャンクロックＳＣ２のパルスＳＣ２ｃの立ち上がりに同期してスキャンフリップフロップ１１から“Ｃ”、スキャンフリップフロップ１２から“Ｂ”、スキャンフリップフロップ１３から“Ｃ”が出力され、各スキャンフリップフロップに試験用データが設定されたことがわかる。このとき、組み合せ回路１８、１９から結果信号Ｄ１８（“Ａ１ｎ””Ｂ１ｎ”“Ｃ１ｎ”）、Ｄ１９（“Ａ２ｎ”“Ｂ２ｎ”）が出力されるが（図１０（ｈ）（ｋ））、スキャンフリップフロップ１２、１３には取り込まれない。
【００９１】
各スキャンフリップフロップに１パタン目のデータがセットされて出力された時点において、ホールド信号ＨがＨレベルに設定される（図１０（ｄ））。２パタン目のデータを各フリップフロップにセットするため、第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２は、ＨレベルのパルスＳＣ１ｄ、ＳＣ２ｄ、ＳＣ１ｅ、ＳＣ２ｅ、ＳＣ１ｆ、ＳＣ２ｆを与える（図１０（ｂ）（ｃ））。各スキャンフリップフロップのスキャンイン信号ＳＩＮの取り込み、及び、スキャンアウト信号ＳＯＴの出力は、ホールド信号Ｈに影響されない。従って、スキャンイン信号ＳＩは、第２スキャンクロックＳＣ２の立ち下がりに同期してデータ列“Ａ”“Ｂ’”“Ｃ”を与える（図１０（ｅ））。
【００９２】
各スキャンフリップフロップは、第２スキャンクロックＳＣ２の立ち上がりに同期して取り込んだデータを出力する。従って、スキャンフリップフロップ１１のスキャンアウト信号ＳＯ１１は、パルスＳＣ２ｄの立ち上がりに同期して“Ａ”、パルスＳＣ２ｅの立ち上がりに同期して“Ｂ’”、パルスＳＣ２ｆの立ち上がりに同期して“Ｃ”となる（図１０（ｆ））。同じように、スキャンフリップフロップ１２は、第２スキャンクロックＳＣ２の立ち上がりに同期してスキャンアウト信号ＳＯ１２“Ｃ”“Ａ”“Ｂ’”を出力し（図１０（ｉ））、スキャンフリップフロップ１３は、スキャンアウト信号ＳＯ“Ｂ”“Ｃ”“Ａ”を出力する（図１０（ｌ））。即ち、パルスＳＣ２ｆの時点において、スキャンフリップフロップ１１、１２、１３のスレーブラッチ部２は、それぞれ“Ｃｎ”、“Ｂ’ｎ”、 “Ａｎ”を示すデータを保持している。一方、ホールド信号ＨがＨレベルになっているため、スキャンフリップフロップ１１、１２、１３の出力データ信号Ｑ１１、Ｑ１２、ＳＯは、ホールド信号ＨがＨレベルになった時点の値、“Ｃｎ”、“Ｂｎ”、“Ａｎ”を出力している（図１０（ｇ）（ｊ）（ｌ））。従って、スキャンフリップフロップ１１、１３は、スレーブラッチ部２に保持する値と第２スレーブラッチ部９に保持する値が一致するが、スキャンフリップフロップ１２のスレーブラッチ部２はデータ“Ｂｎ”を保持し、第２スレーブラッチ部９はデータ“Ｂ’ｎ”を保持していることになる。
【００９３】
所定のタイミングＣａにおいて、ホールド信号ＨはＬレベルになる（図１０（ｄ））。各スキャンフリップフロップの第２スレーブラッチ部９のホールド状態が解除され、スレーブラッチ部２に保持される値が出力データ信号として出力される。スレーブラッチ部２と第２スレーブラッチ部９とに保持される値が異なるスキャンフリップフロップ１２の出力データ信号Ｑ１２は、“Ｂｎ”から“Ｂ’ｎ”に変化する（図１０（ｊ））。組み合せ回路１９の入力がタイミングＣａにおいて変化するため、組み合せ回路１９の結果信号Ｄ１９は、遅延時間ｔｄ後に“Ｂ２ｎ”から“Ｂ２’ｎ”に変化する（図１０（ｋ））。
【００９４】
タイミングＣａから規定時間Ｔ経過後のタイミングＣｂにクロックＣは一旦Ｌレベルになり（図１０（ａ））、結果信号Ｄ１８、Ｄ１９はスキャンフリップフロップ１２、１３のマスタラッチ部１に取り込まれて保持される（図１０（ｈ）（ｋ））。図１０において、遅延時間ｔｄは規定時間Ｔより短時間であるように記載されている。これは遅延故障がない場合である。遅延故障が発生している場合、遅延時間ｔｄ＞規定時間Ｔとなり、タイミングＣｂの時点では結果信号Ｄ１９が変化せずに“Ｂｎ”を示している。従って、スキャンフリップフロップ１２のマスタラッチ部１は“Ｂｎ”を保持することになる。このとき、スレーブラッチ部２は、前状態を保持しているため、その出力信号は変化しない。なお、このときスキャンフリップフロップ１１は、入力データ信号Ｄとしてデータ “Ｘｎ”が入力されているものとする。
【００９５】
動作結果が各スキャンフリップフロップに取り込まれた後、その動作結果を出力するために第１スキャンクロックＳＣ１、第２スキャンクロックＳＣ２が供給される。まず、パルスＳＣ２ｇが供給され、マスタラッチ部１に保持されている動作結果を示すデータが、スレーブラッチ部２に移行する（図１０（ｃ））。パルスＳＣ２ｇの立ち上がりに同期して、スキャンフリップフロップ１１はスキャンアウト信号ＳＯ１１に“Ｘ”、出力データ信号Ｑ１１に“Ｘｎ”を出力し（図１０（ｆ）（ｇ））、スキャンフリップフロップ１２はスキャンアウト信号ＳＯ１２に“Ｃ１”、出力データ信号Ｑ１２に“Ｃ１ｎ”を出力し（図１０（ｉ）（ｊ））、スキャンフリップフロップ１３はスキャンアウト信号ＳＯに“Ｂ２’”を出力する（図１０（ｌ））。この時点において、動作結果“Ｂ２’”がスキャンアウト信号ＳＯに出力されたことになる。
【００９６】
さらに動作結果を出力するために、第１スキャンクロックＳＣ１と第２スキャンクロックＳＣ２がパルスＳＣ１ｇ、ＳＣ２ｈ、ＳＣ１ｈ、ＳＣ２ｉを供給する（図１０（ｂ）（ｃ））。パルスＳＣ２ｈの立ち上がりに同期して、スキャンフリップフロップ１２はスキャンアウト信号ＳＯ１２に“Ｘ”を出力し、スキャンフリップフロップ１３はスキャンアウト信号ＳＯに“Ｃ１”を出力する。ここで、動作結果“Ｃ１”がスキャンアウト信号ＳＯに出力されたことになる。パルスＳＣ２ｉの立ち上がりに同期してスキャンフリップフロップ１３はスキャンアウト信号ＳＯに“Ｘ”を出力すると、タイミングＣｂにおいて取り込まれた動作結果が全てスキャンフリップフロップ１３からシリアル出力されたことになる。
【００９７】
このように、動作結果は、スキャンアウト信号ＳＯにシリアル出力される。従って、このスキャンアウト信号ＳＯを観測することにより動作結果に遅延故障があるか否か判定が可能となる。ここでは、３回路のスキャンフリップフロップにおいて、１データのみ異なる２パタンを用いて動作が説明されたが、多数のスキャンフリップフロップにおいて、複数のデータが異なる２パタンを用いても同様に動作は可能である。また、本実施の形態では、Ｄフリップフロップを例に説明したが、Ｔフリップフロップ、ＪＫフリップフロップなど他のフリップフロップであってもよい。
【００９８】
上述のように、従来技術によるスキャンフリップフロップでは遅延故障試験用２パタンのうち、１パタンしか保持することができなかった。このため、遅延故障試験用パタンは、順序回路に対して生成されることになり、その順序回路の遅延故障試験用パタン生成は困難であった。本発明によるスキャンフリップフロップは、遅延故障試験用２パタンを同時に保持することが可能になり、遅延故障試験用パタンは組み合せ回路に対して生成される。組み合せ回路の遅延故障試験用パタン生成は、順序回路の遅延故障試験用パタン生成に比べて容易であり、これによって、遅延故障試験用パタンの生成時間の短縮が可能になる。
【図面の簡単な説明】
【００９９】
【図１】遅延故障試験で使用される２パタンを説明する図である。
【図２】従来のスキャンフリップフロップの回路例を示す回路図である。
【図３】同スキャンフリップフロップのシフト動作を示すタイムチャートである。
【図４】同スキャンフリップフロップを用いた遅延故障試験時の構成例を示す図である。
【図５】同スキャンフリップフロップを用いた遅延故障試験時の動作を示すタイムチャートである。
【図６】本発明の実施の形態に係るスキャンフリップフロップの回路例を示す回路図である。
【図７】同スキャンフリップフロップの通常動作時の動作を示すタイムチャートである。
【図８】同スキャンフリップフロップのスキャンパステスト時の動作を示すタイムチャートである。
【図９】同スキャンフリップフロップを用いた遅延故障試験時の構成例を示す図である。
【図１０】同スキャンフリップフロップを用いた遅延故障試験時の動作を示すタイムチャートである。
【符号の説明】
【０１００】
１  マスタラッチ部
２  スレーブラッチ部
３  第１クロック制御部
４  第１スキャン制御部
５  第２スキャン制御部
６  第２クロック制御部
７  第３スキャン制御部
８  第４スキャン制御部
９  第２スレーブラッチ部
１１、１２、１３、１４、１５、１６、２１、２２  スキャンフリップフロップ
１８、１９  組み合せ回路
２４  ＮＡＮＤ回路
２５  ＯＲ回路
ＩＮＶ１、ＩＮＶ２、ＩＮＶ３、ＩＮＶ４、ＩＮＶ５、ＩＮＶ６、ＩＮＶ７  インバータ
ＩＮＶ１１、ＩＮＶ１２、ＩＮＶ２１、ＩＮＶ２２、ＩＮＶ３１  インバータ
ＩＮＶ９１、ＩＮＶ９２  インバータ
ＴＧ１１、ＴＧ１２、ＴＧ２１、ＴＧ３１、ＴＧ４１、ＴＧ５１、ＴＧ６１、ＴＧ７１  トランスファゲート
ＴＧ８１、ＴＧ９１、ＴＧ９２  トランスファゲート
【図１】
2007187458.tif 000003
【図２】
2007187458.tif 000004
【図３】
2007187458.tif 000005
【図４】
2007187458.tif 000006
【図５】
2007187458.tif 000007
【図６】
2007187458.tif 000008
【図７】
2007187458.tif 000009
【図８】
2007187458.tif 000010
【図９】
2007187458.tif 000011
【図１０】
2007187458.tif 000012