(57)【特許請求の範囲】
【請求項１】
複数のスキャンセルを接続して構成されたスキャンチェーンを備える半導体集積回路の設計方法であって、
前記複数のスキャンセルの中から、第１のスキャンセルの通常入力に影響を与えるロジックと前記第１のスキャンセルの通常出力が影響を与えるロジックとの入力に影響を与えるスキャンセル群、および、該ロジック群の出力が影響を与えるスキャンセル群を含む第１のスキャンセル群を検出した後、前記複数のスキャンセルの中から、前記第１のスキャンセルおよび前記第１のスキャンセル群以外のスキャンセル群を検出することにより、前記第１のスキャンセルと論理的に関連性のない第２のスキャンセル群を検出し、この第２のスキャンセル群の中から第２のスキャンセルを選択して、前記第１のスキャンセルのテスト出力を前記第２のスキャンセルのテスト入力に接続する、もしくは前記第２のスキャンセルのテスト出力を前記第１のスキャンセルのテスト入力に接続することを繰り返し行い、前段のスキャンセルのテスト出力を次段のスキャンセルのテスト入力に順次接続して前記スキャンチェーンを構成することを特徴とする半導体集積回路の設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内部回路をテストするためのスキャンチェーンを備える半導体集積回路の設計方法に関するものである。
【０００２】
【従来の技術】
半導体集積回路の遅延性故障（遷移故障）を検出する方法として、代表的に、トランジションフォールト（Transition Fault）とパスディレイフォールト（Path Delay Fault）の２つの方法が知られている。
【０００３】
まず、トランジションフォールトは、内部回路中の全てのノードに対して遷移故障を想定し、全てのノードを遷移させることを目的としてテストパターンを自動生成するものである。この方法は、必ずしもクリティカルパスを活性化するものではないが、遷移に要する時間が大きいノードを検出して、そのノードで遅延性故障が発生していることを検出可能な方法である。
【０００４】
一方、パスディレイフォールトは、プロセス変動に伴う、チップ性能の検証等を目的として、指定したパスだけを活性化するテストパターンを自動生成するものである。この方法では、通常、設計者がクリティカルパスを指定し、指定されたパスに対してのみテストが行われる。
【０００５】
これら２つの遅延性故障の検出方法は共にスキャンテスト方式をベースとするものであり、例えばＡＴＰＧ（自動テストパターン生成）ツールにより実現されている。
【０００６】
【発明が解決しようとする課題】
ところで、上記従来の遅延性故障の検出方法のうち、例えばトランジションフォールトは、縮退故障（良品であれば、０にも１にもなるはずのノードが０又は１に固定されてしまう故障）に比べると、１０％程度故障検出率が悪く、自動生成されるテストパターンの長さも、０から１および１から０への遷移状態を検出する必要があるため３〜５倍程度になると言われている。
【０００７】
以下、具体例を挙げて、従来の遅延性故障の検出方法の問題点について説明する。
【０００８】
図２は、従来法を適用して設計されたスキャンチェーンを備える半導体集積回路の一例の構成概略図である。同図には、スキャンチェーンを構成する９個のスキャンセルＦＡ１〜９と、ロジック（ｌｏｇｉｃ）Ａ，Ｂと、ＡＮＤゲートＡ１とが示されている。なお、各々のスキャンセルＦＡ１〜９は、通常入力、通常出力、テスト入力、テスト出力、クロック端子を備えており、図中テスト入力とテスト出力との接続は太線で示されている。図２では、通常出力とテスト出力とは分かれているが、共通とされ、スキャンセル内部で分岐する場合もある。この場合には、両出力は同一状態が検出される。なお、図示省略しているが、各スキャンセルは、テストと通常動作を切り替えるセレクト端子も備えている。
【０００９】
ここで、スキャンセルＦＡ１〜３の通常出力は全てロジックＡに接続され、ロジックＡの３つの出力はそれぞれスキャンセルＦＡ４〜６の通常入力に接続されている。また、スキャンセルＦＡ４の通常出力はロジックＢに接続され、ロジックＢの２つの出力はそれぞれスキャンセルＦＡ７，８の通常入力に接続されている。スキャンセルＦＡ５，６の通常出力はＡＮＤゲートの入力端子Ａ，Ｂに接続され、ＡＮＤゲートの出力ＹはスキャンセルＦＡ９の通常入力に接続されている。
【００１０】
また、９個のスキャンセルＦＡ１〜９は直列に接続され、１本のスキャンチェーンが構成されている。このスキャンチェーンでは、図中太線で示すように、外部から初段のスキャンセルＦＡ１のテスト入力にスキャンイン（ScanIn）が入力され、以後、スキャンセルＦＡ１〜８のテスト出力がそれぞれ次段のスキャンセルＦＡ２〜９のテスト入力に接続され、最終段のスキャンセルＦＡ９のテスト出力がスキャンアウト（ScanOut ）として外部へ出力されている。
【００１１】
ところで、遷移故障を想定した場合、半導体集積回路の外部から、内部回路中の各々のノードについて、０から１および１から０への遷移が観測可能である必要がある。また、あるノードを遷移させる場合に、他のノードの状態を固定して遷移しない状況を作ることによってより厳密なテストが可能となる。
【００１２】
例えば、図２のＡＮＤゲートＡ１においては、その入力端子Ａ，Ｂの両方で信号の遷移を確認する必要がある。スキャンチェーンを利用してデータをシフトし、ＡＮＤゲートＡ１の入力端子Ａ，Ｂに信号を印加する場合、例えばスキャンセルＦＡ６，ＦＡ５の出力が１，１の状態から、０を１段シフトして０，１の状態にすることにより、ＡＮＤゲートＡ１の入力端子Ａを１に固定した状態で、入力端子Ｂを１から０へ遷移させるテストを行うことができる。
【００１３】
しかし、例えば入力端子Ｂを１に固定した状態で、入力端子Ａを１から０へ遷移させるテストを行うことは、スキャンチェーンを利用したシフト動作の過程では実現不可能である。これは、スキャンセルＦＡ６，５が論理的に関連性があり、スキャンチェーンを利用したシフト動作では、スキャンセルＦＡ６のテスト出力の状態に依存して、スキャンセルＦＡ５の出力が遷移するからである。
【００１４】
この問題を解決するために、従来の遅延性故障の検出方法を適用するＡＴＰＧツールでは、スキャンチェーンのシフト動作だけで遷移の前状態、後状態を実現するのではなく、まず、シフト動作で遷移の前状態を作り、１回目のキャプチャーでロジックＡを用いてＦＡ６、ＦＡ５の遷移を興し、２回目のキャプチャーでＡＮＤゲートＡ１の遷移故障をＦＡ９で観測して遷移テストを実現している。
【００１５】
しかし、この方法では、テストパターンの生成が非常に困難であり、ロジックＡの回路構成に依存して前述の遷移テストを行うテストパターンを自動生成することができず、すなわち遅延性故障を検出することができず、その分、故障検出率が低下するという問題があった。また、検出することができるとしても、自動生成されるテストパターンが非常に長くなり、テスト時間すなわちテストコストが増大するという問題があった。
【００１６】
本発明の目的は、前記従来技術に基づく問題点を解消し、検出率が低下したり、テストパターンが長くなることなく遅延性故障を検出することができる半導体集積回路の設計方法を提供することにある。
【００１７】
【課題を解決するための手段】
上記目的を達成するために、本発明は、複数のスキャンセルを接続して構成されたスキャンチェーンを備える半導体集積回路の設計方法であって、
前記複数のスキャンセルの中から、第１のスキャンセルの通常入力に影響を与えるロジックと前記第１のスキャンセルの通常出力が影響を与えるロジックとの入力に影響を与えるスキャンセル群、および、該ロジック群の出力が影響を与えるスキャンセル群を含む第１のスキャンセル群を検出した後、前記複数のスキャンセルの中から、前記第１のスキャンセルおよび前記第１のスキャンセル群以外のスキャンセル群を検出することにより、前記第１のスキャンセルと論理的に関連性のない第２のスキャンセル群を検出し、この第２のスキャンセル群の中から第２のスキャンセルを選択して、前記第１のスキャンセルのテスト出力を前記第２のスキャンセルのテスト入力に接続する、もしくは前記第２のスキャンセルのテスト出力を前記第１のスキャンセルのテスト入力に接続することを繰り返し行い、前段のスキャンセルのテスト出力を次段のスキャンセルのテスト入力に順次接続して前記スキャンチェーンを構成することを特徴とする半導体集積回路の設計方法を提供するものである。
【００１９】
【発明の実施の形態】
以下に、添付の図面に示す好適実施例に基づいて、本発明の半導体集積回路の設計方法を詳細に説明する。
【００２０】
本発明の半導体集積回路の設計方法に従って、内部回路をテストするためのスキャンチェーンを構成するに際しては、まず、スキャンチェーンを構成しようとする複数のスキャンセルの中から、第１のスキャンセルと論理的に関連性のないスキャンセル群を検出する。ここで、第１のスキャンセルは、スキャンチェーンを構成しようとする複数のスキャンセルの中から選択された任意の１つのスキャンセルである。
【００２１】
なお、第１のスキャンセルと論理的に関連性のないスキャンセル群を検出する方法は何ら限定されないが、例えば複数のスキャンセルの中から、第１のスキャンセルの通常入力に影響を与えるロジックと第１のスキャンセルの通常出力が影響を与えるロジックとの入力に影響を与えるスキャンセル群、および、これらのロジック群の出力が影響を与えるスキャンセル群を含む第１のスキャンセル群を検出した後、複数のスキャンセルの中から、第１のスキャンセルおよび第１のスキャンセル群以外のスキャンセル群を検出することにより容易に検出可能である。
【００２２】
続いて、検出されたスキャンセル群の中から第２のスキャンセルを選択して、第１のスキャンセルのテスト出力を第２のスキャンセルのテスト入力に接続する、もしくは第２のスキャンセルのテスト出力を第１のスキャンセルのテスト入力に接続する。ここで、第２のスキャンセルは、検出されたスキャンセル群の中から選択された任意の１つのスキャンセルである。
【００２３】
そして、以後前述の動作を繰り返し行い、前段のスキャンセルの出力を次段のスキャンセルのテスト入力に順次接続してスキャンチェーンを構成する。
【００２４】
以下、具体例を挙げて、本発明の半導体集積回路の設計方法を説明する。
【００２５】
図１は、本発明を適用して設計されたスキャンチェーンを備える半導体集積回路の一実施例の構成概略図である。同図には、スキャンチェーンを構成する１８個のスキャンセルＦＡ１〜９，ＦＢ１〜９と、ロジック（ｌｏｇｉｃ）Ａ，Ｂ，Ｃ，Ｄと、ＡＮＤゲートＡ１とが示されている。図２の場合と同様に、各々のスキャンセルＦＡ１〜９，ＦＢ１〜９は、通常入力、通常出力、テスト入力、テスト出力、クロック端子を備えており、図中テスト入力とテスト出力の接続は太線で示されている。
【００２６】
なお、図１の上半分の回路、すなわちスキャンセルＦＡ１〜９、ロジックＡおよびＢ、ＡＮＤゲートＡ１は、スキャンチェーンにおけるテスト入力の接続状態を除いて図２に示す回路と同じである。言い換えると、図１の回路では、図２の回路に対して、さらに、下半分の回路、すなわちスキャンセルＦＢ１〜９、ロジックＣおよびＤが追加され、スキャンセルＦＡ１〜９，ＦＢ１〜９のテスト出力とテスト入力とを交互に接続して１本のスキャンチェーンが構成されている。
【００２７】
すなわち、スキャンセルＦＡ１〜３の通常出力はロジックＡに接続され、ロジックＡの３つの出力はそれぞれスキャンセルＦＡ４〜６の通常入力に接続されている。スキャンセルＦＡ４の通常出力はロジックＢに接続され、ロジックＢの２つの出力はそれぞれスキャンセルＦＡ７，８の通常入力に接続されている。スキャンセルＦＡ５，６の通常出力はＡＮＤゲートＡ１の入力端子Ａ，Ｂに接続され、ＡＮＤゲートＡ１の出力ＹはスキャンセルＦＡ９の通常入力に接続されている。また、スキャンセルＦＢ１〜３の通常出力はロジックＣに接続され、ロジックＣの３つの出力はそれぞれスキャンセルＦＢ４〜６の通常入力に接続されている。スキャンセルＦＢ４〜６の通常出力は全てロジックＤに接続され、ロジックＤの３つの出力はそれぞれスキャンセルＦＢ７〜９の通常入力に接続されている。
【００２８】
また、１８個のスキャンセルＦＡ１〜９，ＦＢ１〜９は交互に接続され、１本のスキャンチェーンが構成されている。このスキャンチェーンでは、図中太線で示すように、外部から初段のスキャンセルＦＡ１のテスト入力にスキャンイン（ScanIn）が入力され、以後、スキャンセルＦＡ１，ＦＢ１，ＦＡ２，ＦＢ２，ＦＡ３，ＦＢ３，ＦＡ４，ＦＢ４，ＦＡ５，ＦＢ５，ＦＡ６，ＦＢ６，ＦＡ７，ＦＢ７，ＦＡ８，ＦＢ８，ＦＡ９のテスト出力がそれぞれ次段のスキャンセルＦＢ１，ＦＡ２，ＦＢ２，ＦＡ３，ＦＢ３，ＦＡ４，ＦＢ４，ＦＡ５，ＦＢ５，ＦＡ６，ＦＢ６，ＦＡ７，ＦＢ７，ＦＡ８，ＦＢ８，ＦＡ９，ＦＢ９のテスト入力に接続され、最終段のスキャンセルＦＢ９のテスト出力がスキャンアウト（ScanOut ）として外部へ出力されている。
【００２９】
図１に示す回路において、スキャンセルＦＢ１〜９は、本発明に従って、スキャンチェーンを構成しようとする複数のスキャンセルの中から選択された、スキャンセルＦＡ１〜９と論理的に関連性のないスキャンセル群である。すなわち、スキャンセルＦＡ１〜９の通常出力はスキャンセルＦＢ１〜９の通常入力に影響を与えないし、同様に、スキャンセルＦＢ１〜９の通常出力もスキャンセルＦＡ１〜９の通常入力に影響を与えない。
【００３０】
そして、例えばスキャンセルＦＡ１のテスト出力は、このスキャンセルＦＡ１と論理的に関連性のないスキャンセル群ＦＢ１〜９の中から選択されたスキャンセルＦＢ１のテスト入力に接続されている。同様に、スキャンセルＦＢ１の出力は、論理的に関連性のないスキャンセル群ＦＡ１〜９の中から選択されたスキャンセルＦＡ２のテスト入力に接続されている。また、スキャンセルＦＡ２〜９，ＦＢ２〜９についても同様である。
【００３１】
なお、スキャンチェーンにおけるスキャンセルの接続順序は図示例のものに限定されず、前後のスキャンセル同士が互いに論理的に関連性がないのであればどのような順序で接続してもよい。また、図示例では、スキャンセルＦＡ１〜９とスキャンセルＦＢ１〜９に分けているが、これも限定されず、例えばスキャンセルＦＡ１〜９の中でも、スキャンセルＦＡ４とＦＡ９のように、論理的に関連性のないものであれば前後に接続してもよい。
【００３２】
ここで、図１に示す回路では、図中上半分の回路のテストを行う場合、下半分の回路のテストは行わないものとする。逆に、下半分の回路のテストを行う場合には上半分の回路のテストは行わないものとする。
【００３３】
これにより、上半分の回路をテストする場合には、スキャンセルＦＢ１〜９を利用してスキャンセルＦＡ１〜９に任意のデータを設定することができる。また逆に、下半分の回路のテストを行う場合には、スキャンセルＦＡ１〜９を利用してスキャンセルＦＢ１〜９に任意のデータを設定可能になる。また、これにより、スキャンチェーンによるシフト動作を利用するだけで遅延性故障を検出することができる。
【００３４】
例えば、ＡＮＤゲートＡ１の遅延性故障のテストを行う場合、まず、スキャンセルＦＡ５，ＦＢ５，ＦＡ６のテスト出力が１，１，１の状態から、０をシフトして０，１，１の状態に遷移させることにより、入力端子Ｂを１に固定した状態で入力端子Ａを１から０へ遷移させるテストを行うことができる。また、続いて１をシフトして１，０，１の状態に遷移させることにより、入力端子Ｂを１に固定した状態で入力端子Ａを０から１へ遷移させるテストを行うことができる。
【００３５】
また、スキャンセルＦＡ５，ＦＢ５，ＦＡ６の通常出力が１，０，１の状態から、１をシフトして１，１，０の状態に遷移させることにより、入力端子Ａを１に固定した状態で入力端子Ｂを１から０へ遷移させるテストを行うことができる。また、続いて１をシフトして１，１，１の状態に遷移させることにより、入力端子Ａを１に固定した状態で入力端子Ｂを０から１へ遷移させるテストを行うことができる。
【００３６】
また、スキャンセルＦＡ７の通常入力に接続されているロジックＢの出力の遅延性故障をテストする場合、スキャンセルＦＢ６からスキャンセルＦＡ７に０がシフトされる状態で、スキャンセルＦＢ３からＦＡ４に対してロジックＢの出力が０から１に遷移するようなデータをシフトし、これをスキャンセルＦＡ７にキャプチャーすることにより、ロジックＢの出力の０から１への遷移状態を確認することができる。
【００３７】
また、スキャンセルＦＢ６からスキャンセルＦＡ７に１がシフトされる状態で、スキャンセルＦＢ３からＦＡ４に対してロジックＢの出力が１から０に遷移するようなデータをシフトし、これをスキャンセルＦＡ７にキャプチャーすることにより、ロジックＢの出力の１から０への遷移状態を確認することができる。
【００３８】
このように、本発明法を適用して構成されたスキャンチェーンを備える半導体集積回路では、スキャンチェーンのシフト動作を利用してスキャンセルにデータを設定するだけで容易に遅延性故障を検出するためのテストパターンを自動生成することができるし、ロジックの回路構成に依存して、遅延性故障を検出するためのテストパターンを生成できないということがないので、縮退故障と同程度の遅延性故障の検出率を実現することができる。
【００３９】
また、従来のＡＴＰＧツールのように、ロジックの出力を操作した後、これを再度キャプチャーするようなテストパターンを生成する必要はなく、例えば本実施例のように、ロジックＡ，Ｂのテストが行われる場合にはロジックＣ，Ｄのテストが行われず、その逆に、ロジックＣ，Ｄのテストが行われる場合にはロジックＡ，Ｂのテストが行われない場合には、縮退故障と比べて２倍程度のテストパターンの長さで同程度の故障検出率を実現可能である。
【００４０】
本発明の半導体集積回路の設計方法は、基本的に以上のようなものである。
以上、本発明の半導体集積回路の設計方法について詳細に説明したが、本発明は上記実施例に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【００４１】
【発明の効果】
以上詳細に説明した様に、本発明の半導体集積回路の設計方法は、複数のスキャンセルの中から、第１のスキャンセルと論理的に関連性のないスキャンセル群を検出し、このスキャンセル群の中から第２のスキャンセルを選択して、第１のスキャンセルのテスト出力を第２のスキャンセルのテスト入力に接続する、もしくは第２のスキャンセルのテスト出力を第１のスキャンセルのテスト入力に接続することを繰り返し行い、前段のスキャンセルのテスト出力を次段のスキャンセルのテスト入力に順次接続してスキャンチェーンを構成するようにしたものである。
これにより、本発明の半導体集積回路の設計方法によれば、遅延性故障のテストにおいて、従来よりもはるかに少ない縮退故障の２倍程度のテストパターンで、縮退故障と同程度の検出率を得ることができる。
【図面の簡単な説明】
【図１】  本発明法を適用して設計されたスキャンチェーンを備える半導体集積回路の一実施例の構成概略図である。
【図２】  従来法を適用して設計されたスキャンチェーンを備える半導体集積回路の一例の構成概略図である。
【符号の説明】
ＦＡ１〜９，ＦＢ１〜９  スキャンセル
Ａ，Ｂ，Ｃ，Ｄ  ロジック
Ａ１  ＡＮＤゲート
【図１】
0003804927.tif 000002
【図２】
0003804927.tif 000003