(57)【要約】【課題】半導体装置のクロック信号配線間に発生したブリッジ故障を検出する。【解決手段】スキャンテスト等の際には、フリップフロップ回路１０１によってスキャンパス１００ａ・１００ｂが構成される。各フリップフロップ回路１０１には、セレクタ１０２の選択により、通常動作時には、クロック信号１０４・１０５が供給される一方、スキャンテストの際には、スキャンクロック信号１０６がＸＯＲ回路２００・２０１を介して供給される。ＸＯＲ回路２００・２０１は、例えば半導体装置の故障検出装置などから入力される制御信号２０２・２０３が“Ｌ”（Ｌｏｗレベル）の場合には、スキャンクロック信号１０６をそのまま出力する一方、“Ｈ”（Ｈｉｇｈレベル）の場合には、スキャンクロック信号１０６を反転させた（位相を１８０°異ならせた）反転スキャンクロック信号を出力する。【選択図】図１
2010197291.tif 000002
【特許請求の範囲】
【請求項１】
複数の保持回路を有し、スキャンテストが可能に構成された半導体装置であって、
通常動作時に、周波数および位相の少なくとも一方が互いに異なる通常動作クロック信号が供給される第１、および第２のクロック信号配線と、
テスト時に、上記第２のクロック信号配線に、上記第１のクロック信号配線に供給されるのと同一の第１のテストクロック信号を供給する状態と、上記第１のテストクロック信号を反転または位相をずらした第２のテストクロック信号を供給する状態とに切り換わるテストクロック信号制御回路と、
を備えたことを特徴とする半導体装置。
【請求項２】
請求項１の半導体装置であって、
上記通常動作クロック信号と、上記第１、または第２のテストクロック信号とのうちの一方を選択して、上記第１、および第２のクロック信号配線に供給するセレクタを備え、
上記テストクロック信号制御回路は、上記セレクタの入力側、または出力側の一方に設けられていることを特徴とする半導体装置。
【請求項３】
請求項１の半導体装置であって、
上記テストクロック信号制御回路は、排他的論理和回路を有し、上記排他的論理和回路の一方の入力端子に上記第１のテストクロック信号が入力される一方、他方の入力端子に、切換え制御信号が入力されるように構成されていることを特徴とする半導体装置。
【請求項４】
請求項１の半導体装置であって、
上記テストクロック信号制御回路が、上記通常クロック信号、第１のテストクロック信号、または第２のテストクロック信号における遅延調整素子として用いられていることを特徴とする半導体装置。
【請求項５】
請求項１の半導体装置であって、
通常動作時に、周波数および位相の少なくとも一方が互いに異なる通常動作クロック信号が供給される複数のクロック信号配線を有し、
上記テストクロック信号制御回路は、上記複数のクロック信号配線のうちの一部に設けられていることを特徴とする半導体装置。
【請求項６】
請求項１の半導体装置であって、
通常動作時に、周波数および位相の少なくとも一方が互いに異なる通常動作クロック信号が供給される複数のクロック信号配線を有し、
上記複数のクロック信号配線のうちの一部に設けられた上記テストクロック信号制御回路は、上記第１のテストクロック信号を供給する状態に固定されていることを特徴とする半導体装置。
【請求項７】
請求項１の半導体装置であって、
上記テストクロック信号制御回路の切換え状態を制御する切換え制御信号を生成する制御信号生成回路を備え、
上記制御信号生成回路は、上記テストクロック信号制御回路と１対１に対応する制御信号保持回路を有していることを特徴とする半導体装置。
【請求項８】
請求項７の半導体装置であって、
上記制御信号生成回路は、シフトレジスタを有し、上記シフトレジスタに取り込まれたデータが上記制御信号保持回路に転送されるように構成されていることを特徴とする半導体装置。
【請求項９】
請求項７の半導体装置であって、
上記制御信号生成回路は、カウンタを有し、上記カウンタによってカウントされたカウントクロックパルス数に応じたデータが上記制御信号保持回路に転送されるように構成されていることを特徴とする半導体装置。
【請求項１０】
請求項７の半導体装置であって、
上記制御信号生成回路は、デコード回路を有し、入力信号が上記デコード回路によってデコードされたデコードデータが上記制御信号保持回路に転送されるように構成されていることを特徴とする半導体装置。
【請求項１１】
請求項７の半導体装置であって、
上記制御信号生成回路は、ランダムデータ生成回路を有し、上記ランダムデータ生成回路によって生成されたランダムデータが上記制御信号保持回路に転送されるように構成されていることを特徴とする半導体装置。
【請求項１２】
請求項７から請求項１１のうち何れか１項の半導体装置であって、
さらに、シーケンス制御部を有し、
上記シーケンス制御部は、シーケンス制御クロック信号のパルス数に基づいて、上記制御信号保持回路、シフトレジスタ、カウンタ、デコード回路、またはランダムデータ生成回路の動作タイミングを制御するように構成されていることを特徴とする半導体装置。
【請求項１３】
請求項５の半導体装置であって、
上記テストクロック信号制御回路が設けられているクロック信号配線に接続されている上記保持回路または論理回路の数が、
上記テストクロック信号制御回路が設けられていないクロック信号配線に接続されている上記保持回路または論理回路の数よりも多いことを特徴とする半導体装置。
【請求項１４】
請求項１３の半導体装置を設計する設計方法であって、
上記テストクロック信号制御回路が設けられているクロック信号配線に接続されている上記保持回路または論理回路の数を抽出する接続回路数抽出工程と、
抽出された接続回路数に基づいて、上記クロック信号配線に上記テストクロック信号制御回路を設けるテストクロック信号制御回路設置工程と、
を設計装置に実行させることを特徴とする半導体装置の設計方法。
【請求項１５】
請求項５の半導体装置を設計する設計方法であって、
回路素子および配線のレイアウトを決定するレイアウト工程と、
上記レイアウト工程によってレイアウトされたクロック信号配線どうしの相対的配置関係に基づいて、ブリッジ故障が生じる可能性を予測する予測工程と、
上記予測に基づいて、上記クロック信号配線に上記テストクロック信号制御回路を設けるテストクロック信号制御回路設置工程と、
を設計装置に実行させることを特徴とする半導体装置の設計方法。
【請求項１６】
請求項１５の半導体装置の設計方法であって、
上記レイアウト工程は、上記クロック信号制御回路が仮に設置された回路に対して行われ、
上記テストクロック信号制御回路設置工程は、上記仮に設置されたクロック信号制御回路に切換え制御信号を接続することにより、上記テストクロック信号制御回路を設けることを特徴とする半導体装置の設計方法。
【請求項１７】
請求項１３の半導体装置を設計する設計装置であって、
上記テストクロック信号制御回路が設けられているクロック信号配線に接続されている上記保持回路または論理回路の数を抽出する接続回路数抽出部と、
抽出された接続回路数に基づいて、上記クロック信号配線に上記テストクロック信号制御回路を設けるテストクロック信号制御回路設置部と、
を備えたことを特徴とする半導体装置の設計装置。
【請求項１８】
請求項５の半導体装置を設計する設計装置であって、
回路素子および配線のレイアウトを決定するレイアウト部と、
上記レイアウト部によってレイアウトされたクロック信号配線どうしの相対的配置関係に基づいて、ブリッジ故障が生じる可能性を予測する予測部と、
上記予測に基づいて、上記クロック信号配線に上記テストクロック信号制御回路を設けるテストクロック信号制御回路設置部と、
を備えたことを特徴とする半導体装置の設計装置。
【請求項１９】
請求項１８の半導体装置の設計装置であって、
上記レイアウト部は、上記クロック信号制御回路が仮に設置された回路に対して行われ、
上記テストクロック信号制御回路設置部は、上記仮に設置されたクロック信号制御回路に切換え制御信号を接続することにより、上記テストクロック信号制御回路を設けることを特徴とする半導体装置の設計装置。
【請求項２０】
請求項５の半導体装置の故障を検出する故障検出方法であって、
上記テストクロック信号制御回路が複数設けられている半導体装置に対して、
各テストクロック信号制御回路を１つずつ、順次、上記第１、および第２のテストクロック信号のうち他の全てのテストクロック信号制御回路と異なる切換え状態にして、ブリッジ故障を検出することを特徴とする半導体装置の故障検出方法。
【請求項２１】
請求項５の半導体装置の故障を検出する故障検出方法であって、
上記テストクロック信号制御回路が複数設けられている半導体装置に対して、
上記テストクロック信号制御回路のうちの一部である複数のテストクロック信号制御回路を、他の全てのテストクロック信号制御回路と異なる切換え状態にして、ブリッジ故障を検出することを特徴とする半導体装置の故障検出方法。
【請求項２２】
請求項２１の半導体装置の故障検出方法であって、
上記テストクロック信号制御回路が複数設けられている半導体装置に対するブリッジ故障検出テストが、
上記の全てのテストクロック信号制御回路と異なる切換え状態にするテストクロック信号制御回路の組み合わせの数が、最も少ない数で、あらかじめ設定されたブリッジ故障発生候補箇所における全てのブリッジ故障が検出されるように最適化された組み合わせに対して行われることを特徴とする半導体装置の故障検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、微細ＣＭＯＳ（Complementary Metal Oxide Semiconductor）集積回路等の半導体装置に関し、特に、スキャンテストが可能なように構成された半導体装置に関するものである。
【背景技術】
【０００２】
近年ＣＭＯＳ集積回路の微細化が進み、ＣＭＯＳ集積回路のゲート規模が増大している。ゲート規模が大きなＣＭＯＳ集積回路に対してテストを行うのに有効な手段として、スキャンテスト手法が挙げられる。
【０００３】
スキャンテストの具体的な特長としては、任意の内部論理ゲートに対して、容易に任意の値を与えることができること（可制御性が高い）、また、任意の内部論理ゲートに対して、容易にその状態を観測することができること（可観測性が高い）が挙げられる。
【０００４】
この特徴により、スキャンテストを行うことで容易に高品質なテストを行うことが可能となっている。
【０００５】
また、この特徴を用いて、スキャンテストを行うことはもとより、スキャン回路を用いたＩＤＤＱテスト（内部論理回路の可制御性を使用）や、スキャン回路を用いたＢＵＲＮ−ＩＮテスト（内部論理回路の可制御性を使用）や、またスキャン回路ベースのＢＩＳＴ（自己診断テスト）などのさまざまなスキャンテストベースのテスト手法が開発されている。
【０００６】
ここで、集積回路の通常動作時に集積回路内の各フリップフロップ回路を駆動するクロック信号は、１つとは限らず、種々の周波数や位相のクロック信号が用いられることがある。特に、近年の微細化技術による大規模ＣＭＯＳ集積回路などでは、クロック系統が数百におよぶ場合もある。このような場合、スキャンテストする際に各フリップフロップ回路に供給されるクロック信号は、セレクタによる切り替えによって、例えば１つのクロック系統にまとめられるようになっている（例えば、特許文献１参照。）。
【特許文献１】特開平１０−３０７１６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記のように複数系統のクロック信号が１つのクロック系統などにまとめられると、通常動作時に互いに異なるクロック信号を伝達するクロック信号配線どうしがショートするブリッジ故障が発生している場合でも、スキャンテストは正常に行われる。それゆえ、クロック信号配線自体のブリッジ故障を検出できないという問題点を有していた。
【０００８】
本発明は、かかる点に鑑みてなされたものであり、スキャンテストが可能なように構成された半導体装置において、通常動作時に互いに異なるクロック信号を伝達するクロック信号配線間に発生したブリッジ故障を容易に検出できるようにすることを目的としている。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、
本発明の例の半導体装置は、
複数の保持回路を有し、スキャンテストが可能に構成された半導体装置であって、
通常動作時に、周波数および位相の少なくとも一方が互いに異なる通常動作クロック信号が供給される第１、および第２のクロック信号配線と、
テスト時に、上記第２のクロック信号配線に、上記第１のクロック信号配線に供給されるのと同一の第１のテストクロック信号を供給する状態と、上記第１のテストクロック信号を反転または位相をずらした第２のテストクロック信号を供給する状態とに切り換わるテストクロック信号制御回路と、
を備えたことを特徴とする。
【００１０】
これにより、第１、第２のクロック信号配線に発生しているブリッジ故障は、スキャンテストやＩＤＤＱテストの不成功として、これらのテストと同時に検出され得る。
【発明の効果】
【００１１】
本発明によれば、スキャンテストが可能なように構成された半導体装置において、通常動作時に互いに異なるクロック信号を伝達するクロック信号配線間に発生したブリッジ故障を容易に検出できる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態を図面に基づいて詳細に説明する。なお、以下の各実施形態において、他の実施形態と同様の機能を有する構成要素については同一の符号を付して説明を省略する。
【００１３】
《発明の実施形態１》
図１は実施形態１の半導体装置におけるスキャンテストに関連するスキャン回路１００を含む部分の回路図である。同図では、半導体装置に設けられた複数のフリップフロップ回路１０１によって、スキャンテスト等の際に２本のスキャンパス１００ａ・１００ｂが構成されている状態を示す。
【００１４】
各スキャンパス１００ａ・１００ｂを構成するフリップフロップ回路１０１には、セレクタ１０２の選択により、半導体装置の通常動作時には、クロック信号１０４・１０５が供給される一方、スキャンテストの際には、スキャンクロック信号１０６がＸＯＲ回路２００・２０１（Ｅｘｃｌｕｓｉｖｅ  ＯＲ回路）を介して供給されるようになっている。
【００１５】
上記ＸＯＲ回路２００・２０１は、ブリッジ検出のためのクロック信号制御回路として機能するもので、例えば半導体装置の故障検出装置などから制御信号端子２０４・２０５に入力される制御信号２０２・２０３が“Ｌ”（Ｌｏｗレベル）の場合には、スキャンクロック信号１０６をそのまま出力する一方、“Ｈ”（Ｈｉｇｈレベル）の場合には、スキャンクロック信号１０６を反転させた（位相を１８０°異ならせた）反転スキャンクロック信号を出力するようになっている。
【００１６】
上記のように構成された半導体装置におけるクロック信号配線のブリッジ故障の検出は、スキャンテストや、ＩＤＤＱテストによって他の信号配線や回路の故障を検出するのと同時に行うことができる。
【００１７】
すなわち、例えばスキャンテストにおいては、クロック信号に同期してスキャンパス１００ａ・１００ｂにシフト動作を行わせることにより、各フリップフロップ回路１０１へのテストデータのセットや、その後のキャプチャー動作によって取り込まれた半導体装置内の信号状態の読み出しが行われ、正しく動作したかどうかが検査される。
【００１８】
上記シフト動作を行わせる際に、制御信号２０２・２０３の一方だけ、例えば制御信号２０２だけを“Ｈ”にすると、ＸＯＲ回路２００から出力されるクロック信号は図２に示すように反転し、ＸＯＲ回路２００・２０１から出力されるクロック信号は互いに逆のレベルになる。この場合でも、クロック信号配線にブリッジ故障が発生していない場合には、スキャンパス１００ａ・１００ｂのシフト動作自体は、一方がクロック周期の１／２ずれるだけで正常に行われるので、キャプチャーされた信号状態が読み出されて期待値と比較され、回路動作が正常に行われたかどうかが判定される。
【００１９】
ところが、例えば図１に示すようなクロック信号配線のブリッジ故障１０３が生じていたとすると、クロック信号配線の電位が干渉しあって共に例えば中間の電位となる。この場合、シフト動作が正常に行われないので、もし回路動作は正常でキャプチャーされた信号状態も正常であったとしても、読み出された信号状態は、期待値とは一致しない。
【００２０】
したがって、読み出された信号状態が期待値と一致すれば、回路動作は正常で、クロック信号配線のブリッジ故障も生じていないと判定できる一方、一致しなければ、少なくとも、キャプチャーの際の回路動作が正常でないか、またはクロック信号配線にブリッジ故障が生じていることを検出することができる。また、制御信号２０２・２０３を共に“Ｈ”または“Ｌ”にしたときのスキャンテストをパスし、一方だけを“Ｈ”にしたときにパスしない場合には、ブリッジ故障だけが生じていると検出することもできる。
【００２１】
また、ＩＤＤＱテストは、クロック信号を完全には停止させず、十分に低い周波数のクロック信号を供給して行われることがある。そのような場合に、やはり、図３に示すように制御信号２０２・２０３の一方だけを“Ｈ”にすることによって、他の故障と併せて、クロック信号配線のブリッジ故障をＩＤＤＱテストとして検出することができる。すなわち、クロック信号配線にブリッジ故障が生じていれば、クロック信号配線の電位が干渉しあってクロック信号配線自体に短絡電流が流れる。また、双方のクロック信号配線の電位が例えば中間の電位となる。この中間電位がフリップフロップ回路１０１に印加されると、フリップフロップ回路１０１に貫通電流が流れる。そこで、電源電流を観測することにより、少なくとも、クロック信号配線を含む配線にブリッジ故障が生じているか、または回路不良箇所があるか等の故障が生じていることを検出することができる。なお、制御信号２０２・２０３を共に“Ｈ”または“Ｌ”にしたときの電源電流に比べて、一方だけを“Ｈ”にしたときの電源電流が増大すれば、ブリッジ故障が生じている可能性が高いと検出することもできる。
【００２２】
上記のように、クロック信号の位相をずらして供給することにより、スキャンテストやＩＤＤＱテストをすることによって、クロック信号配線のブリッジ故障を含む半導体装置の不良を検出できる。もっとも、スキャンテストやＩＤＤＱテストとは別個に、クロック信号配線のブリッジ故障だけを検出したりすることもできる。具体的には、例えばスキャンテストと同様のシフト動作だけを行わせて、入力したとおりのデータが出力されるかどうかを観測するなどしてもよい。また、スキャンテストのシフト動作時の動作電源電流を観測することも有効である。
【００２３】
《変形例》
なお、上記の例では、各スキャンパス１００ａ・１００ｂのクロック信号配線にＸＯＲ回路２００・２０１が設けられる例を示したが、例えば図４に示すように一方だけに設けて、反転クロック信号を供給し得るスキャンパスが一方に定まるようにしてもよい。また、説明の簡単化のためにスキャンパス１００ａ・１００ｂが２本の例を示したが、３本以上でもよく、その場合にも、各クロック信号配線にＸＯＲ回路を設けて何れのスキャンクロック信号１０６を反転できるようにしてもよいし、一部のクロック信号配線にだけＸＯＲ回路を設けてもよい。すなわち、全てのクロック信号配線、または１本以外の他の全てのクロック信号配線にＸＯＲ回路を設ければ、何れのクロック信号配線のブリッジ故障も独立して検査できる。また、後述するように故障発生確率の予測等に基づいて一部のクロック信号配線だけにＸＯＲ回路を設けるようにして、実用上十分な検査を可能にすることもできる。
【００２４】
また、上記の例ではクロック信号の位相をずらすためにＸＯＲ回路２００・２０１を用いた例を示したが、これに限らず、例えば、ＮＯＴ回路またはフリップフロップ回路とセレクタや、遅延素子とセレクタを用いるなどしてもよく、また、位相のずれは必ずしも１８０°でなくてもよい。
【００２５】
また、スキャンテストにおいて、キャプチャー後に位相をずらす例を示したが、ブリッジ故障検出のためには、キャプチャー前や、これらの一部の期間だけずらしたり、また、キャプチャーの前後に亘るなど長期間ずらして検出確率をより高めるようにしてもよい。ただし、キャプチャー前のテストデータのセット時に位相をずらす場合であって、テストデータのセットが完了した直後に、遅延していない方のスキャンクロック信号に同期してキャプチャー動作が行われる場合、スキャンクロック信号を遅延させた方のスキャンパスに含まれるフリップフロップ回路は、セットアップ時間がスキャンクロック信号の１／２周期となるために入力信号を確実に保持できない場合があり得る。そのような場合には、例えば、スキャンクロック信号の周波数を低く、例えば１／２の周波数にしてスキャンクロック信号を遅延させていない場合と同じセットアップ時間が確保されるようにしたり、テストデータのセット完了後、キャプチャーが行われるまでの時間をセットアップ制約が満たされるように設定したりすればよい。もっとも、キャプチャー後にだけ位相をずらす場合には、スキャンパスからキャプチャーされた信号状態の出力されるタイミングがずれるだけなので、上記のようなセットアップ制約の問題は生じない。
【００２６】
また、上記の例では、ＸＯＲ回路２００・２０１がセレクタ１０２の入力側に設けられた例を示したが、出力側に設けてもよい。すなわち、出力側に設けられる場合でも、通常動作時には、必ず反転されないクロック信号１０４・１０５が出力されるようになっていれば、特に通常動作に差し支えることはない。もっとも、厳密には、セレクタ１０２の前後何れに設けられる場合でも、ＸＯＲ回路２００・２０１による遅延が介在することになるが、この遅延を含めてスキュー等のクロック信号の遅延調整をすればよい。このことは、逆に、ＸＯＲ回路２００・２０１が所定の区間の信号伝播遅延を所定の範囲に調整する遅延調整における遅延素子として兼用できることも意味する。すなわち、バッファなどで構成するタイミング調整用のゲートを削減するのに利用できる。
【００２７】
《発明の実施形態２》
上記のようにスキャンクロック信号を反転させるＸＯＲ回路は、通常、数多く設けられる。そこで、これらのＸＯＲ回路を制御する制御信号を、図５に示すような制御信号生成回路２１０によって生成されるようにして、半導体装置の端子数を低減できるようにしてもよい。
【００２８】
制御信号生成回路２１０は、具体的には、例えば制御信号保持回路２１１と、シフトレジスタ２１３とを用いて構成されている。シフトレジスタ２１３は、シフトクロック信号２２０に同期してデータ信号が入力されることにより、入力データを取り込むようになっている。制御信号保持回路２１１は、シフトレジスタ２１３の出力信号をラッチクロック信号２１９に同期して保持するようになっている。
【００２９】
このように構成することにより、例えば図６に示すように、２クロックのシフトクロック信号２２０に同期してデータ信号が入力されると、シフトレジスタ２１３に入力データが取り込まれる。次に、ラッチクロック信号２１９が“Ｈ”になると、シフトレジスタ２１３の出力が制御信号保持回路２１１に保持されて、例えば制御信号２０２だけが“Ｈ”になり、ＸＯＲ回路２００から出力されるスキャンクロック信号１０６が反転される。
【００３０】
上記のように、１ビットのデータ信号によって、シフトクロック信号２２０のパルス数だけの制御信号を設定することができる。それゆえ、スキャンパスの数が多い場合でも、半導体装置の端子数を少なく抑えることができる。
【００３１】
なお、図６の例では、ラッチクロック信号２１９が“Ｈ”になるタイミングでは、スキャンクロック信号１０６が１クロック分“Ｌ”に保たれる例を示している。このようにすることは、ＸＯＲ回路２００・２０１から幅の狭いパルスが出力されるのを容易に防止できる点で一般に望ましいが、これに限るものではない。
【００３２】
また、図６においては、スキャンクロック信号１０６が反転する際にキャプチャー動作が行われない例を示しているが、図２に示したのと同様にキャプチャー動作が行われるようにしてもよい。また、その場合、キャプチャー動作が行われた後にラッチクロック信号２１９が“Ｈ”になって、図２と同様のタイミングでスキャンクロック信号１０６が反転されるようにしてもよい。
【００３３】
また、所定のデータがシフトレジスタ２１３にセットされた後にシフトクロック信号２２０を止めるようにして、シフトレジスタ２１３の保持信号をそのまま制御信号２０２・２０３として用いるなどしてもよい。ただし、データ信号がシフトされる間の制御信号２０２・２０３の変動を抑制する必要がある場合や、スキャンクロック信号１０６が反転されるタイミングを制御する必要がある場合には、シフトレジスタ２１３の出力信号をアンドゲートを介して制御信号２０２・２０３とするなどしてもよい。
【００３４】
《変形例１》
上記シフトレジスタ２１３に代えて、図７に示すようにカウンタ２１６を用いてもよい。この場合には、データ信号を入力しなくても、図６に併せて示すようにカウンタ２１６に入力されるカウントクロック信号２２２のパルス数が所望の数（同図の例では１つ）になったタイミングでラッチクロック信号２１９を“Ｈ”にすることによって、制御信号２０２・２０３のパターンを設定することができる。
【００３５】
《変形例２》
また、図８に示すように、圧縮データデコーダ２１８を設けて圧縮データ信号を入力し、データ信号のビット数よりも多い数の制御信号２０２・２０３を設定できるようにしてもよい。このような構成は、制御信号２０２・２０３のパターンが限られる場合、具体的には、例えば、制御信号２０２・２０３の“Ｈ”“Ｌ”の組み合わせは４通りあるが、そのうち、共に“Ｌ”かまたは一方だけが“Ｈ”になる２通りのパターンに設定すればよい場合に、データ信号のビット数を１ビットに抑えることができる。また、圧縮データを用いることによって、データ信号の入力（転送）時間を短縮することもできる。
【００３６】
《変形例３》
また、図９に示すように、実施形態２（図５）のシフトレジスタ２１３と、上記変形例２（図８）の圧縮データデコーダ２１８とを組み合わせて用い、シフトクロック信号２２０に同期してシフトレジスタ２１３に保持された圧縮データをデコードして、制御信号２０２・２０３が設定されるようにしてもよい。この場合には、シフトレジスタ２１３に転送されるデータ信号のビット数よりも多い数の制御信号２０２・２０３を設定できるので、シフトレジスタ２１３の段数を少なく抑えるとともに、データ信号の転送時間を短縮することができる。
【００３７】
《変形例４》
また、図１０に示すように、上記変形例１（図７）のカウンタ２１６と、上記変形例２（図８）の圧縮データデコーダ２１８とを組み合わせて用い、カウンタ２１６に保持されたカウント値をデコードして、制御信号２０２・２０３が設定されるようにしてもよい。この場合には、カウンタ２１６のカウント値に応じた数だけ制御信号２０２・２０３のパターンを設定できるので、カウンタ２１６に入力されるカウントクロック信号２２２のパルス数を少なくして設定時間を短縮することができる。
【００３８】
《変形例５》
また、図１１に示すように、ランダムパターンジェネレータ２１７を用いてもよい。上記ランダムパターンジェネレータ２１７は、例えば、ＣＲＣ回路のような生成多項式で表現できる回路などを用いて構成され、パターンクロック信号２２３のパルスが入力されるごとに、ランダムなデータを出力するようになっている。そこで、図６に併せて示すようにパターンクロック信号２２３が“Ｈ”になった後にラッチクロック信号２１９を“Ｈ”にすることによって、制御信号２０２・２０３をランダムに設定することができる。このようなランダムパターンに基づいた制御信号２０２・２０３によって繰り返し行われるスキャンテスト等にパスすれば、クロック信号配線のブリッジ故障が生じている確率は非常に低いことを確認できる。
【００３９】
《発明の実施形態３》
上記実施形態２の構成に加えて、図１２に示すように、シーケンス制御部２１４を設け、シーケンスクロック信号２１５に基づいて、シフトクロック信号２２０等が生成されるようにしてもよい。より具体的には、例えば、シーケンス制御部２１４はカウンタとデコーダを備えて構成され、シーケンスクロック信号２１５のパルスをカウントして、カウント値に応じて、図１３に示すように、前記図６と同様のタイミングでシフトクロック信号２２０、ラッチクロック信号２１９、およびスキャンクロック信号１０６を出力するようになっている。
【００４０】
このようにシーケンスクロック信号２１５とデータ信号を入力するだけで、実施形態２（図５、図６）と同じ動作を行わせることができるので、半導体装置の端子数を一層低減したり検査の容易化を図ったりすることができる。
【００４１】
《変形例１〜５》
また、同様に、実施形態２の変形例１〜５の各構成に加えて、図１４〜図１８に示すようにシーケンス制御部２１４を設けて、図１３に併せて示すように、やはり前記図６と同様のタイミングで、カウントクロック信号２２２、ラッチクロック信号２１９、シフトクロック信号２２０、パターンクロック信号２２３、およびスキャンクロック信号１０６を発生させるようにして、半導体装置の端子数の低減や検査の容易化を図ったりしてもよい。
【００４２】
《発明の実施形態４》
上記実施形態２、３における制御信号２０２等を“Ｈ”“Ｌ”に設定する設定パターンについて説明する。
【００４３】
上記の例では、説明の簡単化のためにクロック系統が２つの例を示したが、多くのクロック系統がある場合、ブリッジ故障が生じている箇所を故障解析により特定するためには、各制御信号を１つずつ順に“Ｈ”または“Ｌ”にする設定パターンを用いればよい。
【００４４】
一方、ブリッジ故障の有無を検出すれば足りる場合には、例えば“Ｈ”にする制御信号と“Ｌ”にする制御信号との組み合わせを適当に設定すれば、設定パターンの数を少なくして、検査時間を短くすることも容易にできる。
【００４５】
《発明の実施形態５》
（ＸＯＲ回路２００等の配置箇所について）
スキャンクロック信号１０６を反転させるためのＸＯＲ回路２００等や、これらの制御信号２０２等を保持する制御信号保持回路２１１（または制御信号端子２０４等）は、必ずしも通常動作時に周波数や位相が互いに異なるクロック信号１０４・１０５・１１１・１１２が供給される全てのクロック信号配線に設けなくてもよい。すなわち、ブリッジ故障が発生する可能性があるのは、クロック信号配線が交差または近接していたり、並行する距離が比較的長い箇所などなので、そのような箇所を求め、または予測し、主にそのような箇所が存在するクロック信号配線について、ＸＯＲ回路２００等を設ければ、回路規模を小さく抑えるとともに検査時間も短縮することができる。
【００４６】
具体的には、例えば、図１９に示すクロック系統１１３のようにフリップフロップ回路１０１の数（５個）が他のクロック系統（２個）よりも多い場合は、クロック系統１１３のクロック信号配線が長い場合が多いので、他のクロック信号配線との間にブリッジ故障１０３を生じる可能性が高いと推定できる。そこで、クロック系統１１３にスキャンクロック信号１０６を供給するクロック信号配線にだけ、ＸＯＲ回路２００、制御信号保持回路２１１、および制御信号２０２を設け、他のクロック信号配線に対しては同図に破線で示すようにこれらを設けないようにしても、高い確率でブリッジ故障１０３を検出できる。
【００４７】
なお、例えば図２０に示すように、クロック系統１１３以外のクロック信号配線についても、ダミーＸＯＲ回路２３１および／またはダミー制御信号保持回路２３２を設ける一方、制御信号配線は設けずにダミーＸＯＲ回路２３１の一方の入力端子を接地するなどしてもよい。この場合でも、制御信号配線を設けないことによる配線混雑度の緩和を図ることができる。また、上記のようなダミーＸＯＲ回路２３１を遅延調整用のバッファ等に代えて機能させるようにしてもよい。
【００４８】
また、フリップフロップ回路１０１の数に限らず、クロック信号が供給される論理回路や素子の数なども考慮に入れてブリッジ故障が発生する可能性のある箇所を予測してもよい。
【００４９】
《発明の実施形態６》
（ＸＯＲ回路２００等の配置箇所の決定方法について）
上記のようなＸＯＲ回路２００等の配置箇所の決定は、実際上は、コンピュータ等を用いた設計装置によって行わせることができる。ここで、半導体装置の設計装置においては、一般に、例えば、回路動作仕様等の回路情報に基づいて論理回路等の回路素子やこれらの接続関係等の回路構成を決定する回路設計工程と、決定された回路構成に従って回路素子や配線の配置を決定するレイアウト設計工程とが行われる。以下、それぞれの工程でＸＯＲ回路２００等の配置箇所が決定される例を説明する。
【００５０】
（回路設計工程で行われる配置箇所の決定）
回路設計工程においては、図２１のフローチャートに示すように、例えば前記のようにクロック系統ごとのフリップフロップ回路の数に応じて、ＸＯＲ回路２００等の配置箇所を決定することができる。
【００５１】
（Ｓ３００）まず、回路動作仕様等の回路情報が設計装置に入力され、上記回路情報に従って、回路素子や接続関係等の回路構成が決定される。より具体的には、例えばＲＴＬレベルでの回路設計などが行われる。
【００５２】
（Ｓ３０１）そこで、クロック系統ごとのフリップフロップ回路の数が求められる。
【００５３】
（Ｓ３０２）求められたフリップフロップ回路の数が多いクロック系統から順に所定数のクロック系統が選択され、またはフリップフロップ回路の数が所定以上のクロック系統が選択され、これらのクロック系統に対する、例えば前記実施形態５で説明したようなＸＯＲ回路２００等が上記（Ｓ３００）で設計された回路に追加される。
【００５４】
（Ｓ３１０）その後、通常と同様のレイアウト設計工程によって、ＸＯＲ回路２００等を含む回路素子や配線の配置が決定される。
【００５５】
（レイアウト設計工程で行われる配置箇所の決定）
レイアウト設計工程においては、図２２のフローチャートに示すように、具体的なクロック信号配線の配置が決定されるので、クロック信号配線が近接しているかどうかなどに基いて、ブリッジ故障が発生する可能性をより高い確率で予測することができる。
【００５６】
（Ｓ４００）まず、上記図２１の（Ｓ３００）と同様に、回路動作仕様等の回路情報が設計装置に入力され、回路素子や接続関係等の回路構成が決定される。ここで、ＸＯＲ回路２００や、制御信号保持回路２１１を含む制御信号生成回路２１０等は、あらかじめダミー回路等として含めておけば、クロック信号配線のＸＯＲ回路２００と制御信号保持回路２１１との間の制御信号２０２の配線を追加することにより、レイアウト設計後に大幅なレイアウトの変更をすることなく、ブリッジ故障を検出可能にすることができる。具体的には、例えばＸＯＲ回路２００における制御信号２０２の入力端子を接地したり、制御信号保持回路２１１における制御信号２０２の出力端子をオープンにしておけばよい。
【００５７】
なお、上記のようなダミー回路は、クロック系統の数よりも少なく設けておいてもよい。すなわち、多くの場合、ブリッジ故障の発生する可能性が高いクロック系統は、全クロック系統のうちの一部なので、これに見合った数だけ設けるようにして、回路規模を小さく抑えられるようにしてもよい。
【００５８】
（Ｓ４１０）上記（Ｓ４００）で設計された回路構成に基づき、回路素子や配線の配置が決定される。
【００５９】
（Ｓ４１１）次に、決定された回路素子や配線の配置に対して、ＤＲＣ（Ｄｅｓｉｇｎ  Ｒｕｌｅ  Ｃｈｅｃｋ）が行われ、一般的な、物理的設計基準を満たしているかどうかの検証に加えて、ブリッジ故障１０３を生じる可能性の高いと推定される箇所（ブリッジ故障モデル箇所）が検出される。このような検出は、例えば、ＤＲＣのルール中に、クロック配線間の交差箇所やクロック配線間のセパレーション（配線間距離と配線長さ）に関するルール等のブリッジ故障モデル箇所検出ルールを設定し、上記（Ｓ４１０）で決定された配置を上記ルールに基づいてチェックすることにより行われる。
【００６０】
（Ｓ４１２）上記（Ｓ４１１）で検出されたブリッジ故障モデル箇所について、実際にブリッジ故障が生じるブリッジ故障を検出するためのＸＯＲ回路２００と制御信号保持回路２１１との間の制御信号２０２の配線が追加される。具体的には、例えば図２０に示したように、ブリッジ故障１０３に対応する、通常動作時にクロック信号１０４（またはクロック信号１０５）が供給されるクロック信号配線に対して、ＸＯＲ回路２００と制御信号保持回路２１１とが接続される。一方、上記ブリッジ故障の検出に用いられないＸＯＲ回路２００は、例えば制御信号２０２の入力端子が接地される。なお、図１９に示したようにＸＯＲ回路２００や制御信号保持回路２１１が削除されるなどしてもよい。
【００６１】
《発明の実施形態７》
上記実施形態６においては、説明の簡単化のためにブリッジ故障が生じる箇所を１箇所として説明したが、ブリッジ故障の発生する可能性が高いと推定される箇所が複数ある場合、ＸＯＲ回路２００を設ける箇所を最適化して回路規模を低減することもできる。
【００６２】
具体的に、例えば図２３に示すように、５箇所のブリッジ故障１０３・１２１・１３１・１３２・１３３が生じる場合について説明する。
【００６３】
上記ブリッジ故障１０３・１３３は、何れも、通常動作時にクロック信号１１１・１０５が供給されるクロック信号配線間で発生するブリッジ故障である。そこで、ブリッジ故障が発生しているかどうかだけを検出するためには（これらの２つのブリッジ故障１０３・１３３を区別する必要がない場合には）、クロック信号１１１・１０５が供給されるクロック信号配線について１回だけスキャンクロック信号１０６の反転状態を異ならせて検査すればよい。
【００６４】
同様に、ブリッジ故障１３１・１３２については、クロック信号１１１・１０４が供給されるクロック信号配線についてスキャンクロック信号１０６の反転状態を異ならせて検査すればよい。
【００６５】
さらに、ブリッジ故障１２１は、クロック信号１１１・１１２が供給されるクロック信号配線間で発生する故障モデルであり、したがって、上記５つのブリッジ故障１０３・１２１・１３３・１３１・１３２は、何れもクロック信号１１１が供給されるクロック信号配線と他のクロック信号配線とのブリッジ故障である。そこで、結局、クロック信号１１１が供給されるクロック信号配線と他のクロック信号配線について、スキャンクロック信号１０６の反転状態を異ならせて検査すれば、何れのブリッジ故障が生じている場合でも検出できることになる。したがって、クロック信号１１１に対応するクロック信号配線（またはその他の全てのクロック信号配線）にだけＸＯＲ回路２００を設ければよい。
【００６６】
上記のように、ブリッジ故障に対応するクロック信号配線が同一であるブリッジ故障をマージ処理することにより、重複した検査を排除することが容易にできる。また、スキャンクロック信号１０６を反転させるクロック信号配線を最適化処理することによって、ＸＯＲ回路２００を設ける箇所を少なく抑えることが容易にできる。
【００６７】
《発明の実施形態８》
上記実施形態６、７で説明したような一部のクロック系統にだけＸＯＲ回路２００等を設ける手法は、前記実施形態２、３で説明したように複数の制御信号２０２等を“Ｈ”“Ｌ”にするパターンを決定する際にも適用できる。すなわち、例えば全てのクロック系統に対してＸＯＲ回路２００等が設けられている場合でも、スキャンクロック信号１０６の反転状態を異ならせる様々なパターンを網羅しなくても上記ＤＲＣの結果等に基づいて、ブリッジ故障の発生する可能性が高いと推定されるクロック系統について、スキャンクロック信号１０６の反転状態を異ならせるようなパターンでスキャンテスト等を行うようにすれば、少ないパターンデータで、すなわち短い検査時間で高い検出確率を得ることができる。
【産業上の利用可能性】
【００６８】
本発明にかかる半導体装置は、スキャンテストが可能なように構成された半導体装置において、通常動作時に互いに異なるクロック信号を伝達するクロック信号配線間に発生したブリッジ故障を容易に検出できる効果を有し、微細ＣＭＯＳ（Complementary Metal Oxide Semiconductor）集積回路等の半導体装置に関し、特に、スキャンテストが可能なように構成された半導体装置等として有用である。
【図面の簡単な説明】
【００６９】
【図１】実施形態１の半導体装置の要部の回路図である。
【図２】実施形態１の半導体装置のスキャンテスト時の動作を示すタイミングチャートである。
【図３】実施形態１の半導体装置のＩＤＤＱテスト時の動作を示すタイミングチャートである。
【図４】実施形態１の変形例の半導体装置の要部の回路図である。
【図５】実施形態２の半導体装置の要部の回路図である。
【図６】実施形態２の半導体装置のテスト時の動作を示すタイミングチャートである。
【図７】実施形態２の変形例１の半導体装置の要部の回路図である。
【図８】実施形態２の変形例２の半導体装置の要部の回路図である。
【図９】実施形態２の変形例３の半導体装置の要部の回路図である。
【図１０】実施形態２の変形例４の半導体装置の要部の回路図である。
【図１１】実施形態２の変形例５の半導体装置の要部の回路図である。
【図１２】実施形態３の半導体装置の要部の回路図である。
【図１３】実施形態３の半導体装置のテスト時の動作を示すタイミングチャートである。
【図１４】実施形態３の変形例１の半導体装置の要部の回路図である。
【図１５】実施形態３の変形例２の半導体装置の要部の回路図である。
【図１６】実施形態３の変形例３の半導体装置の要部の回路図である。
【図１７】実施形態３の変形例４の半導体装置の要部の回路図である。
【図１８】実施形態３の変形例５の半導体装置の要部の回路図である。
【図１９】実施形態５の半導体装置の要部の回路図である。
【図２０】実施形態５の変形例の半導体装置の要部の回路図である。
【図２１】実施形態６の設計工程の例を示すフローチャートである。
【図２２】実施形態６の設計工程の他の例を示すフローチャートである。
【図２３】実施形態７の半導体装置の要部の回路図である。
【符号の説明】
【００７０】
１００                  スキャン回路
１００ａ・１００ｂ      スキャンパス
１０１                  フリップフロップ回路
１０２                  セレクタ
１０３・１２１・１３１・１３２・１３３    ブリッジ故障
１０４・１０５・１１１・１１２            クロック信号
１０６            スキャンクロック信号
１１３            クロック系統
２００・２０１    ＸＯＲ回路
２０２・２０３    制御信号
２０４・２０５    制御信号端子
２１０      制御信号生成回路
２１１      制御信号保持回路
２１３      シフトレジスタ
２１４      シーケンス制御部
２１５      シーケンスクロック信号
２１６      カウンタ
２１７      ランダムパターンジェネレータ
２１８      圧縮データデコーダ
２１９      ラッチクロック信号
２２０      シフトクロック信号
２２２      カウントクロック信号
２２３      パターンクロック信号
２３１      ダミーＸＯＲ回路
２３２      ダミー制御信号保持回路
【図１】
2010197291.tif 000003
【図２】
2010197291.tif 000004
【図３】
2010197291.tif 000005
【図４】
2010197291.tif 000006
【図５】
2010197291.tif 000007
【図６】
2010197291.tif 000008
【図７】
2010197291.tif 000009
【図８】
2010197291.tif 000010
【図９】
2010197291.tif 000011
【図１０】
2010197291.tif 000012
【図１１】
2010197291.tif 000013
【図１２】
2010197291.tif 000014
【図１３】
2010197291.tif 000015
【図１４】
2010197291.tif 000016
【図１５】
2010197291.tif 000017
【図１６】
2010197291.tif 000018
【図１７】
2010197291.tif 000019
【図１８】
2010197291.tif 000020
【図１９】
2010197291.tif 000021
【図２０】
2010197291.tif 000022
【図２１】
2010197291.tif 000023
【図２２】
2010197291.tif 000024
【図２３】
2010197291.tif 000025