(57)【要約】    【課題】ディレイテストを行う際にタイミングに余裕のないパスにおいては、終点となるフリップフロップに対する始点のフリップフロップ数は必ずしも１ではなく、他の始点となるフリップフロップの前段にある組み合わせ回路によっては、始点である出力ビットを反転するスキャンフリップフロップにおける論理値の遷移が観測点に伝播せず、遅延故障テストができない場合がある。    【解決手段】  出力値を保持する保持容易型スキャンフリップフロップを用意し、テスト対象パスの終点となるフリップフロップに関連するすべてのフリップフロップのうち、ターゲットパス上にないフリップフロップを、出力値を保持する保持容易化回路に置換することによって、ターゲットパスの遅延故障検出（ディレイテスト）時に前記その他のパスを非活性化し、前記ターゲットパスの始点である反転容易型スキャンフリップフロップにおける信号の変化を確実にテスト対象回路に伝播する。【選択図】    図１
2006084403.tif 000002
【特許請求の範囲】
【請求項１】
入力値にかかわらず出力値を保持するモードを有するスキャンフリップフロップ。
【請求項２】
第１のモードと第２のモードとを有し、
第１のモードにおいては入力端子からの入力値に関わらず１つ前の周期に出力端子から出力した値を保持して出力し、第２のモードにおいては入力端子からの入力値を出力することを特徴とする請求項１に記載のスキャンフリップフロップ。
【請求項３】
スキャンフリップフロップ本体と、前記出力端子と前記入力端子とのうちいずれかを選択的にスキャンフリップフロップ本体の入力値として選択するセレクタとを有し、前記セレクタは、前記第１のモードにおいては前記出力端子の値を選択して出力し、前記第２のモードにおいては前記入力端子の値を選択することを特徴とする請求項２に記載のスキャンフリップフロップ。
【請求項４】
請求項２、または３に記載のスキャンフリップフロップを具備するスキャンテスト回路。
【請求項５】
前記第１のモードと第２のモードとに加えさらに第３のモードを有し、
第３のモードにおいては１つ前の周期に出力した値の反転値を出力することを特徴とする請求項２に記載のスキャンフリップフロップ。
【請求項６】
スキャンフリップフロップ本体と、前記出力端子と前記入力端子と前記スキャンフリップ本体の反転出力端子とのうちいずれかを選択的にスキャンフリップフロップ本体の入力値として選択するセレクターとを有し、前記セレクタは、前記第１のモードにおいては前記出力端子の値を選択して出力し、前記第２のモードにおいては前記入力端子の値を選択し、前記第３のモードにおいては前記スキャンフリップ本体の反転出力端子の値を選択して出力することを特徴とする請求項２に記載のスキャンフリップフロップ。
【請求項７】
請求項５、または６に記載のスキャンフリップフロップを具備するスキャンテスト回路。
【請求項８】
論理回路から成るＬＳＩの内部回路をテストするための複数のフリップフロップの直列接続回路で構成されシフトレジスタとして動作させるスキャンチェーンを備え、テストモード時にテスト用のスキャンテストデータ及びクロックを入力し、前記内部回路により論理演算させ、その演算結果の出力であるスキャンアウト結果データに基づき前記内部回路が正常動作していることを確認するスキャンパス方式のテストで、入力するクロックの２周期で実動作スピードのタイミングテストを行うテスト設計において
テスト対象となる信号伝播経路を抽出するステップと
前記テスト対象信号伝播経路の終点に設けられた第１のフリップフロップに前記入力されたクロックの１周期内に伝播の影響を与える第２のフリップフロップが前記２周期の１周期目に出力する第１の値と前記２周期の２周期目に出力する第２の値とを決定するステップと
前記第２の値が設定可能かどうかを判定するステップと
前記第２の値が設定可能でない場合前記第１の値と前記第２の値が等しいかどうかを判定するステップと
第１の値と第２の値が等しい場合前記第２のフリップフロップを請求項１乃至３に記載のスキャンフリップフロップに置き換えることを特徴とするテスト設計手法。
【請求項９】
論理回路から成るＬＳＩの内部回路をテストするための複数のフリップフロップの直列接続回路で構成されシフトレジスタとして動作させるスキャンチェーンを備え、テストモード時にテスト用のスキャンテストデータ及びクロックを入力し、前記内部回路により論理演算させ、その演算結果の出力であるスキャンアウト結果データに基づき前記内部回路が正常動作していることを確認するスキャンパス方式のテストで、入力するクロックの２周期で実動作スピードのタイミングテストを行うテスト設計において
テスト対象となる信号伝播経路を抽出する第１のステップと
前記テスト対象信号伝播経路の終点に設けられた第１のフリップフロップに前記入力されたクロックの１周期内に伝播の影響を与える第２のフリップフロップを請求項第５，６に記載のスキャンフリップフロップに置き換える第２のステップと
前記第１のフリップフロップに前記入力されたクロックの１周期内に伝播の影響を与える前記第２のフリップフロップが前記２周期の１周期目に出力する第１の値と前記２周期の２周期目に出力する第２の値とを決定する第３のステップと
前記第１の値と前記第２の値が等しいかどうかを判定する第４のステップと
前記第４のステップの判定結果に基づいて前記第２のフリップフロップを使用するモードを決定する第５のステップを決定することを特徴とするテスト設計手法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はスキャンテスト回路およびそれを含む半導体集積回路装置に関し、特にテストを容易にならしめるスキャンテスト回路に関するものである。
【背景技術】
【０００２】
近年、ＬＳＩの高集積化に伴うテスト容易化設計手法として，よく利用されているものにスキャン設計がある。これは論理回路中の順序回路にテスト・モード用のパス（スキャン・パス）を通して制御し，一つのシフト・レジスタとして動作させる方法である。図９は一般的に使用されているスキャンフリップフロップ２００である。スキャンフリップフロップ２００内部にセレクターを持ち、ScanEnableに応じて組み合わせ回路からのデータ（DataIn端子信号）とシフトデータのいずれか一方を選択的にフリップフロップの入力とする回路である。テスト対象のパスに関連するフリップフロップをスキャンフリップフロップ２００に置き換え、シフトデータを介して数珠つなぎに接続し、直列シフト・レジスタとして構成することにより、このシフト・レジスタ（スキャン・パス）を利用して，テスト対象のフリップフロップに対して、直接値を書き込んだり、値を読み出したりすることができるようになる。
【０００３】
一方、高信頼化に対する要求の中には論理値が‘０’または‘１’に固定される縮退故障の検出のみならず、動作速度向上に伴って実動作で問題となる微妙な遅延故障の検出を行うための適切かつ容易なテスト手法（ディレイテスト）が必要とされている。
ディレイテストの方法について、図１１を用いて説明する。図１１はブロードサイド方式と呼ばれるディレイテストの代表的な方式のひとつである。ディレイテストを始める前段階として、シフトサイクル（スキャンイン）でシフト・レジスタ状に接続されている各スキャンフリップフロップに遷移前の値を設定する。その後、スキャンイネーブル信号（ScanEnable）を非活性状態にしている間、つまりシフトサイクルを解除した状態でクロック（TestClock）を２回入力する（Ａ，Ｂ）。
【０００４】
１回目のクロック（Ａ）でテスト対象となるパスの始点に当たるスキャンフリップフロップには前段の論理回路を伝播した信号Ｙが設定され、テスト対象となるパスの終点に当たるスキャンフリップフロップにはスキャンインで始点スキャンフリップフロップに設定された値Ｘの影響を論理回路に伝播した信号Ｘ’が入力・設定される。
【０００５】
２回目のクロック（Ｂ）では、テスト対象となるパスを通って終点に当たるスキャンフリップフロップに１回目のクロック（Ａ）で始点フリップフロップに入力・設定されていた値であるＹの影響を論理回路に伝播した信号Ｙ’が入力・設定される。その後、スキャンイネーブル信号を活性状態にして各スキャンフリップフロップの値をスキャンアウトし、各スキャンフリップフロップに設定されている値が正しいかどうかが判定できる。このとき、ＡからＢまでの時間を実動作と同じにすると、実動作速度のディレイテスト（アットスピードテスト）を行うことができる。ただし、ＸとＹが同じ値であると正しく動作しているかどうかの判定ができないので、遅延故障のテストでは始点の論理値を遷移（Ｘ→Ｙを‘０’→‘１’、または‘１’→‘０’)させ、実動作速度において遷移が終点に正しく伝わるか否かを観測する必要がある。
【０００６】
スキャンフリップフロップ２００を用いたスキャンテスト設計の場合、遷移前の値Ｘはスキャンインにより容易に設定できるが、遷移後の値Ｙの設定はテスト対象パスの始点に当たるスキャンフリップフロップの前方組み合わせ回路構成に依存するため確実に遷移する値にすることが困難である。実動作周波数を用いた適切なテストを簡単に実行するために、特許文献１では、テスト対象回路からのデータ取り込みの一つ前の周期で、出力ビットを反転するスキャンフリップフロップを使用することで論理値の遷移を容易にしている。特許文献１では、静的タイミング検証を行い、タイミングに余裕のないパスの始点となるフリップフロップについてのみ出力ビットを反転するスキャンフリップフロップに置き換えることを開示している。
【０００７】
図１０は特許文献１で開示しているクロック周期で論理値を遷移する反転容易型スキャンフリップフロップ２０１回路の例であり、一般的なスキャンフリップフロップ２００と、選択を制御する選択信号（DelayTestMode端子信号）に応じて、前記スキャンフリップフロップ２００の反転出力（ＱＢ端子信号）または組み合わせ回路からのデータ（DataIn端子信号）を選択して出力するセレクターを備えている。反転容易型スキャンフリップフロップ２０１は、セレクターにおいてDelayTestMode信号がハイレベル（Ｈ）のときに反転出力（ＱＢ端子信号）が入力として選択され、ＣＬＫに入力されるクロック信号（TestClocK信号）の立ち上がりで反転出力（ＱＢ端子信号）が設定され、出力される。DelayTestMode信号がロウレベル（Ｌ）のときには、組み合わせ回路からのデータ（DataIn端子信号）が選択され、同様に出力される。つまり、反転容易型スキャンフリップフロップ２０１を用いれば、前段の組み合わせ回路に依存せず、ディレイテスト実施時に容易に論理値を遷移させることができる。
【０００８】
【特許文献１】特開２００１−４７１０号公報（５−７頁、図５）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら上述の静的タイミング検証で検出された、タイミングに余裕のないパスにおいては、終点となるフリップフロップに対する始点のフリップフロップ数は必ずしも１ではなく、他の始点となるフリップフロップの論理値によっては、置き換えを行った前記出力ビットを反転するスキャンフリップフロップ（反転容易型スキャンフリップフロップ２０１）における論理値の遷移が観測点に伝播せず、遅延故障テストができない場合がある。
【００１０】
図７、図８は、前記事象を示す例である。共通の構成要素については共通に参照文字／数字を付して説明に用いる。
【００１１】
スキャン設計をした段階では、フリップフロップ（ＦＦ）１、２、３、４、５、６、７、８、９は図９に示すスキャンフリップフロップ２００が使用されている。スキャンフロップフロップ１、２、３、４とスキャンフリップフロップ６、７、８、９の間には組み合わせ回路がある。１０２はＮＡＮＤ回路、１０３はＯＲ回路、１０４はＡＮＤ回路、１０５はＮＯＲ回路、１０６はＯＲ回路、そして１０７はＡＮＤ回路である。各スキャンフリップフロップはシフトデータＣ１、Ｃ２、Ｃ３、Ｃ４、Ｃ５を介してシフトレジスタ状に接続されている。また、信号線Ｓ１，Ｓ２，Ｓ３，Ｓ４を経るパスが遅延故障テストのターゲットパスである。ターゲットパスは特許文献１で開示するように、静的タイミングチェック結果によりタイミングに余裕のないフリップフロップ間のデータ伝播経路として抽出されたものであるとし、テストサイクル中に確実に遷移を行うため、特許文献１で開示しているようにタイミングに余裕のないパスの始点となるフリップフロップ１についてのみ出力ビットを反転するスキャンフリップフロップ（反転容易型スキャンフリップフロップ２０１）に置き換える。
【００１２】
シフトサイクル（スキャンイン）では、通常のスキャンフリップフロップ２００から反転容易型スキャンフリップフロップ２０１に置き換えられたスキャンフリップフロップ１には、テストサイクルで論理値‘０’から‘１’に遷移させ、それを前記ターゲットパスに伝播させる。しかしここで信号線Ｓ５の論理値が‘０’であった場合、論理的に信号線Ｓ２は信号線Ｓ１の論理に関わらず‘１’となってしまい、前記置き換えを行った前記出力ビットを反転するスキャンフリップフロップの遷移が伝播しない。したがって、信号線Ｓ５の論理値は‘１’でなくてはならない。同様にして信号線Ｓ６は論理値‘０’、信号線Ｓ７は論理値‘１’でなくてはならない。この論理を作り出すために、スキャンフリップフロップ１の論理値を‘０’から‘１’への遷移させる間、スキャンフリップフロップ２,３,４はそれぞれ‘１’，‘０’，‘１’の論理値を出力している必要がある。
【００１３】
しかし回路の構成上、この論理を作る事ができない場合がある。
【００１４】
スキャンフリップフロップの論理値の反転および保持は、クロック周期でのデータ入力または、スキャン入力によって行われる。すなわち図７の回路構成でテストサイクル中スキャンフリップフロップ２の出力値を‘１’に保持するためには、テストサイクルの直前でスキャンフリップフロップ２に‘１’を設定しておいて、テストサイクルの１回目のクロック（Ａ）でシフトデータＣ３により‘１’を入力するか、データ入力Ｓ９により‘１’を入力するかのいずれかを行う必要がある。
【００１５】
前者の場合は、シフトデータＣ３により‘１’を入力するには、スキャンフリップフロップ３がテストサイクル直前に‘１’でなくてはならないが、一方前記ターゲットパスの遷移を伝播するためにはスキャンフリップフロップ３は‘０’に固定されていなくてはならないので、テストサイクル直前に設定する値も‘０’でなくてはならず、Ｓ５およびＳ６を同時にターゲットパスに影響しないような値に保持しておくことができないことがわかる。
【００１６】
後者の場合は、例えば図８に示すような回路の場合、スキャンフリップフロップ２および、スキャンフリップフロップ４の保持条件を守るように信号線Ｓ９、Ｓ１１の論理値を‘１’にスキャンフリップフロップ７、９の値を決定すると、同時にスキャンフリップフロップ１、３への信号線Ｓ８、Ｓ１０をそれぞれ‘１’および‘０’にすることができない。このような場合に、特許文献１で開示する回路を用いれば、スキャンフリップフロップ１は、シフトデータＣ４論理値または信号線Ｓ８の論理値に関係なく遷移を作り出す事ができる。しかしながら、スキャンフリップフロップ３の値を‘０’に固定することができない。
【００１７】
つまり公知の技術では、テスト対象回路において遅延故障の検出のために置き換えを行った前記出力ビットを反転する反転容易型スキャンフリップフロップ２０１における論理値の遷移が、テスト対象回路を終点とする他のパスの始点となるフリップフロップの論理値によっては伝播せず、遅延故障テストができない場合があるということである。このため、前記他のパスを遅延テストに影響を与えない適切な値に設定することが課題である。
【課題を解決するための手段】
【００１８】
入力値にかかわらず出力値を保持するモードを有するスキャンフリップフロップを用意し、テスト対象パスの終点となるフリップフロップに関連するすべてのフリップフロップのうち、ターゲットパス上にないフリップフロップを、入力値にかかわらず出力値を保持するモードを有するスキャンフリップフロップに置換することによって、ターゲットパスの遅延故障検出（ディレイテスト）時に前記ターゲットパス以外のパスを非活性化し、前記ターゲットパスの始点である反転容易型スキャンフリップフロップにおける信号の遷移を確実にテスト対象回路に伝播する。
【発明の効果】
【００１９】
上記手段により、従来のスキャンチェーン構成または、データ入力の構成によりテスト不可能であったターゲットパスの遅延故障検出（ディレイテスト）をテスト可能にする。
【発明を実施するための最良の形態】
【００２０】
以下、本発明を適用した具体的な実施の形態について図面を参照しながら詳細に説明する。
【００２１】
図１は本発明の保持容易型スキャンフリップフロップ２０２での回路図であり、クロック周期が遷移しても論理値を保持する。保持容易型スキャンフリップフロップ２０２は、一般的なスキャンフリップフロップ２００（スキャンフリップフロップ本体）と、選択を制御する選択信号（DelayTestMode端子信号）に応じて、前記スキャンフリップフロップ２００の出力（Ｑ端子信号）または組み合わせ回路からのデータ（DataIn端子信号）を選択して出力するセレクター３０２とを備えている。保持容易型スキャンフリップフロップ２０２は、セレクターにおいてDelayTestMode信号がハイレベル（Ｈ）のときに出力（Ｑ端子信号）が入力として選択され、ＣＬＫに入力されるクロック信号（TestClocK信号）の立ち上がりエッジで出力（Ｑ端子信号）の値が次にＣＬＫにクロック信号（TestClocK信号）の立ち上がりエッジが入力されるまでの１TestClocK周期間の間出力される。DelayTestMode信号がロウレベル（Ｌ）のときには、組み合わせ回路からのデータ（DataIn端子信号）が選択され、同様に出力される。
【００２２】
図２は、Ｓ１、Ｓ２、Ｓ３、Ｓ４を経るパスをターゲットパスとしてディレイテストを行う際に、ターゲットパスの終点に当たるスキャンフリップフロップ５に対して１周期以内に伝播の影響を与えるスキャンフリップフロップ１、２、３、４のうち、スキャンフリップフロップ１は、論理構成上値を反転しにくく、スキャンフリップフロップ３は、論理構成上値を保持しにくいと判断し、スキャンフリップフロップ１を前記反転容易型スキャンフリップフロップ２０１に置換し、スキャンフリップフロップ３を前記保持容易化回路２０２に置換した例である。ここでは、DelayTestMode信号は１本でスキャンフリップフロップ１、３に共通に接続されているが、この限りではない。なおScanEnable信号は省略している。またスキャンフリップフロップ２およびスキャンフリップフロップ４は、論理構成により必要な値が容易につくれるものとする。
【実施例１】
【００２３】
図２において、反転容易型スキャンフリップフロップ２０１と保持容易型スキャンフリップフロップ２０２にそれぞれ置換されたスキャンフリップフロップ１の出力に接続する信号Ｓ１、およびスキャンフリップフロップ３の出力に接続する信号Ｓ６のタイミングチャートを図３に示し動作を説明する。
【００２４】
シフトサイクル（スキャンイン）の最後のサイクルＴ０において、スキャンフリップフロップの論理値が設定される。図３ではスキャンフリップフロップ１およびスキャンフリップフロップ３に‘０’を設定している。その後、テストサイクルにおいて、１回目のクロックタイミング（Ａ）発生より前に、ScanEnable信号をインアクティブにすることでスキャンインが止まり、テストサイクル直前の各フリップフロップの値が決定される。次にDelayTestMode信号をアクティブにすることで、前記置換されたスキャンフリップフロップ１、３には、それぞれの出力に接続する信号Ｓ１の反転値である‘１’および、信号Ｓ６の保持値‘０’がそれぞれ入力されているため、１回目のクロックタイミング（Ａ）ではスキャンフリップフロップ１、３はそれぞれ‘１’、‘０’を出力する。結果、スキャンフリップフロップ５の入力に接続される信号Ｓ４にはテストサイクルの１回目のクロックタイミング（Ａ）では‘０’、２回目のクロックタイミング（Ｂ）では ‘１’が伝播し、ＡＢ間を実際の動作スピードにすればターゲットパスを‘０’から‘１’に遷移した場合の検証を行うことができる。つまり、置換したスキャンフリップフロップは、DataIn入力またはScanIn入力値によらずに、出力を反転するだけでなく保持することもでき、任意のテストパターンを作り出すことができる。
【００２５】
この置換作業の一連のフロー例をブロードサイド方式のディレイテストを行うことを前提に図４に示す。
【００２６】
図４においてはまず、計算機等を使用しテスト対象回路のネットリストを読み込み、スタティック解析ツールなどを用いて、クリティカルパスなどの解析を行う（Ｌ１１）。次に解析の結果からディレイテスト対象とするパスを選定する（Ｌ１２）。選定するパスは例えば、最もタイミングがクリティカルなパスのみを選ぶ、あるいはすべての考えうるパスを選ぶ等々である。
【００２７】
次に選定したターゲットパスの始点となるフリップフロップの設定値である論理値が第１の値から第２の値に遷移するときに、その遷移がターゲットパスの終点となるフリップフロップの入力に伝播するための一意に決まる条件を、ターゲットパスの終点となるフリップフロップに関わるネットに対して設定していき、各条件に衝突や矛盾があるかどうかを判定する（Ｌ１３）。矛盾や衝突があった場合には、ディレイテストのパタン生成が不可能であるとういことであり、そのターゲットパスのディレイテストパタンの生成は不可である（Ｌ２０）。
【００２８】
Ｌ１３で矛盾や衝突がなかった場合には次に、ターゲットパスの終点となるフリップフロップに関わるネットの値の組み合わせを網羅的に決定していき、互いに矛盾や衝突がないように設定値が決定できるかどうかを判定する（Ｌ１４）。設定値を決定する際には、回路論理的に生成可能かどうかは考慮しなくてもよい。このとき、任意の値を決定すればよい場合もあり得る。また、互いに矛盾や衝突がないように設定できない場合には、やはりディレイテストの生成は不可（Ｌ２０）である。
【００２９】
Ｌ１４で矛盾や衝突なくターゲットパスに関連するネットの設定値が決定できた場合には、そのネットの始点にあたるフリップフロップの値も自ずと決定される。ターゲットパス上にあるフリップフロップであれば遷移する第１と第２の値が設定されるべき値として決定されているはずであり、その他のパス上にあるフリップフロップには同じ値である第１と第２の値は同じ値が決定されているはずである。
【００３０】
次に前記決定した設定値が各スキャンフロップフロップに設定可能かどうかを判定する（Ｌ１５）。ブロードサイド方式のディレイテストでは、第１の値はスキャンサイクルにおいてスキャンインにて設定することができるので、実際にはスキャンサイクルを解除したときの動作モードにて第２の値が設定できるかどうかの判定になる。具体的にはたとえば図７のような回路では、テストパターンを作成に際して値を設定すべきスキャンフリップフロップ１、２、３、４に対して１周期内に伝播影響を与えるスキャンフリップフロップ６，７，８，９に所定の値をスキャンインして設定し、スキャンモードを解除した上でクロックを１回入力し、サイドスキャンモードにした上でスキャンフリップフロップ１、２、３、４の値をスキャンアウトして観測すれば、スキャンフリップフロップ１、２、３、４に所定の値を容易に設定できるかどうかを判定できる。Ｌ１４で任意の値を設定すればよいと決定された場合には、この判定（Ｌ１５）では設定可能と判断する。
【００３１】
次に、対象となるフリップフロップにテストパターンを生成するための第２の値を設定できない場合には、そのフリップフロップがすでにほかのテストを行うための反転容易型あるいは保持容易型のスキャンフリップフロップになっているかどうかを判定する（Ｌ１６）。たとえば、第１と第２の値が変化しない保持値を設定したい場合にもかかわらず、その回路がすでに他のテストを行うために遷移容易型スキャンフリップフロップに置き換えられている場合には、回路置換できないので、そのターゲットパスにおけるテストパターンは生成不可とみなす（Ｌ２０）。
【００３２】
Ｌ１６でまだ置換されていない場合には次に、第１と第２の値から成るテストパターンが保持パタン（第１と第２の値が同じ値）であるか、遷移パタン（第１と第２の値が異なる値）であるかを判定し（Ｌ１７）、保持パタンの場合には、処理の対象としているフリップフロップを保持容易型スキャンフリップフロップ２０２に置換（Ｌ１９）し、遷移パタンであれば、処理の対象としているフリップフロップを反転容易型スキャンフリップフロップ２０１に置換する（Ｌ１８）。
【００３３】
ターゲットパスにかかわるすべてのフリップフロップに対してＬ１３からＬ１９の作業を繰り返す（Ｌ２１）ことによりテストパターンが作成可能になるので、作成したテストパターンと置換したスキャンフリップフロップをディレイテスト情報の一部として登録する（Ｌ２２）。
【００３４】
他にテスト対象のパスがある場合は、同様のフローを繰り返す（Ｌ２３）。以上のフローにより、ディレイテストのテストパターンが完成する。
【実施例２】
【００３５】
次に本発明における第２の実施例について述べる。図５は、本発明の変形例であり、保持反転混在型スキャンフリップフロップ２０３の回路図である。保持反転混在型スキャンフリップフロップ２０３は、一般的なフリップフロップ２００（スキャンフリップフロップ本体）と、選択を制御する選択信号（DelayTestMode端子信号）に応じて、前記フリップフロップ２００の出力（Ｑ端子信号）または組み合わせ回路からのデータ（DataIn端子信号）、または前記フリップフロップ２００の反転出力（ＱＢ端子信号）のうちいずれかを選択して出力するセレクター３０３とを備えており、図８のような反転容易型スキャンフリップフロップ２０１の機能および、図９のような保持容易化回路２０２の機能を両方備えたものである。この回路を用いる事で、スキャンフリップフロップを、保持容易化構成にも反転容易化構成にもすることができる。TestDelayMode信号は複数ビット構成でもよいし、時分割に情報を伝播する構成でもよい。
【００３６】
図６は、スキャンフリップフロップ１、２、３、４をすべて図５に示す保持反転混在型スキャンフリップフロップにて構成した場合の例である。この場合はスキャンフリップフロップ１、２，３，４にそれぞれ対応する２ビットずつの選択信号であるDelayTestMode１、DelayTestMode２、DelayTestMode３、DelayTestMode４をディレイテストコントローラ１１０にて制御する。なお、スキャンフリップフロップ１、２、３、４のDataIn信号は省略している。ここでたとえば、ディレイテストコントローラ１１０を制御して、スキャンフリップフロップ１を反転容易構成モードにし、スキャンフリップフロップ２、３、４を保持容易構成モードにすると、ターゲットパスＳ１、Ｓ２、Ｓ３、Ｓ４がディレイテスト可能であり、スキャンフリップフロップ３を反転容易構成モードにし、スキャンフリップフロップ１、２、３、４保持容易構成モードにすることで、ターゲットパスＳ６、Ｓ３、Ｓ４がディレイテスト可能になる。同様にして、Ｓ５、Ｓ２、Ｓ３、Ｓ４パス、Ｓ７、Ｓ４パスなどもディレイテストが可能になる。
【００３７】
上述のように、単一の保持反転混在型スキャンフリップフロップ２０３を保持容易回路構成モードあるいは反転容易回路構成モードで選択的に使用することで、レイアウト後の静的タイミング検証による選択的な置き換え（図４におけるＬ１６）が不要となり、さらには他のテストとの競合がある場合にも構成をテストの対象となるターゲットパスによって切り替えることによって、同一の回路にて複数パスの遅延故障検出（ディレイテスト）を可能とすることができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の保持容易型スキャンフリップフロップ回路図である。
【図２】ディレイテストにおける本発明のスキャンフリップフロップ使用例である。
【図３】図２のディレイテストのタイミングチャートである。
【図４】第１の実施例におけるスキャンフリップフロップ置換フローチャートである。
【図５】本発明第２の実施例に使用する保持反転混在型スキャンフリップフロップ回路図である。
【図６】本発明第２の実施例の保持反転混在型回路を使用したディレイテスト例である。
【図７】従来のディレイテストにおいて適切な論理値が必要な回路例である。
【図８】従来のディレイテストにおけるテスト不可能な回路例である。
【図９】一般的なスキャンフリップフロップである。
【図１０】本発明に使用する反転容易型スキャンフリップフロップ例である。
【図１１】一般的なディレイテストを示すタイミングチャートである。
【図１２】第２の実施例におけるスキャンフリップフロップ構成設定フローチャートである。
【符号の説明】
【００３９】
１、２、３、４、５    スキャンフリップフロップ
２００                一般的なスキャンフリップフロップ回路
２０１                反転容易型スキャンフリップフロップ回路
２０２                保持容易型スキャンフリップフロップ回路
２０３                反転保持混在型スキャンフリップフロップ回路
【図１】
2006084403.tif 000003
【図２】
2006084403.tif 000004
【図３】
2006084403.tif 000005
【図４】
2006084403.tif 000006
【図５】
2006084403.tif 000007
【図６】
2006084403.tif 000008
【図７】
2006084403.tif 000009
【図８】
2006084403.tif 000010
【図９】
2006084403.tif 000011
【図１０】
2006084403.tif 000012
【図１１】
2006084403.tif 000013
【図１２】
2006084403.tif 000014