(57)【要約】【課題】検査対象経路の始点に近いゲートがノンロバスト条件で活性化された場合でも、検査対象経路の始点から検査対象の配線またはゲートまでを、より長い経路に渡って信号伝送における遅延故障および遷移故障について、確実に検査することができるテストパターン生成方法を提供する。【解決手段】被検査半導体集積回路の検査対象経路を選択し、検査対象経路に遷移値を設定し（ステップ１０１）、検査対象経路の始点に初期値を設定し（ステップ１０２）、検査対象外入力に非制御値を設定し、伝搬テストパターンを求め（ステップ１０４）、検査対象経路の始点側から順次ゲートを選択し（ステップ１０６）、選択したゲートが検査対象経路の終点でない場合は検査対象外入力にロバスト条件を満たす値を設定し、含意操作を行い（ステップ１１０）、初期化テストパターンを求める（ステップ１１５）。【選択図】図１
2005140710.tif 000002
【特許請求の範囲】
【請求項１】
複数のゲート間が配線で接続された半導体集積回路における信号伝送に際して発生する故障を検査するためのテストパターン系列を生成するテストパターン生成方法であって、前記半導体集積回路に対してゲート間が１つの配線で直列接続された任意の検査対象経路を選択する経路選択ステップと、前記経路選択ステップで選択された検査対象経路の始点から前記検査対象経路上のゲートに順次信号伝搬条件としてロバスト条件の活性化信号を与えるステップと、前記ロバスト条件の活性化信号が与えられない前記検査対象経路上のゲートから前記検査対象経路の終点までのゲートに、信号伝搬条件をロバスト条件に限定せず信号遷移が伝搬する条件を与えるステップとを有することを特徴とするテストパターン生成方法。
【請求項２】
前記経路選択ステップは、前記検査対象経路として、その始点から終点までの物理上の信号伝搬遅延値が指定した伝搬遅延値より大きい経路を選択することを特徴とする請求項１記載のテストパターン生成方法。
【請求項３】
前記経路選択ステップは、前記検査対象経路として、その始点から終点までの物理上のコンタクト数が指定したコンタクト数より多い経路を選択することを特徴とする請求項１記載のテストパターン生成方法。
【請求項４】
複数のゲート間が配線で接続された半導体集積回路における信号伝送に際して発生する故障を検査するためのテストパターン系列を生成するテストパターン生成方法であって、前記半導体集積回路に対して前記検査の対象となる配線またはゲートを選択するステップと、前記検査対象となる配線またはゲートを含む信号伝送経路の始点から前記検査対象となる配線またはゲートに遷移を生成するための遷移発生経路を求めるステップと、前記検査対象となる配線またはゲートから遅延故障の影響を観測するための前記信号伝送経路の終点への信号遷移が伝搬可能な活性化経路を求めるステップと、前記遷移発生経路に初期値と遷移値を設定するステップと、前記検査対象となる配線またはゲートから前記活性化経路上のゲートに順次信号伝搬条件としてロバスト条件の活性化信号を与えるステップと、前記ロバスト条件の活性化信号が与えられない前記活性化経路上のゲートから前記信号伝送経路の終点までのゲートに、信号伝搬条件をロバスト条件に限定せず信号遷移が伝搬する条件を与えるステップと、前記遷移発生経路上のゲートに順次信号伝搬条件としてロバスト条件の活性化信号を与えるステップと、前記ロバスト条件の活性化信号を与えられない前記遷移発生経路上のゲートから前記検査対象となる配線またはゲートまでのゲートに、信号伝搬条件をロバスト条件に限定せず信号遷移が伝搬する条件を与えるステップとを有することを特徴とするテストパターン生成方法。
【請求項５】
前記活性化経路を求めるステップは、前記活性化経路として、前記信号伝送経路の検査対象となる配線またはゲートから終点までの物理上の信号伝搬遅延値が指定した伝搬遅延値より大きい経路とすることを特徴とする請求項４記載のテストパターン生成方法。
【請求項６】
前記活性化経路を求めるステップは、前記活性化経路として、前記信号伝送経路の検査対象となる配線またはゲートから終点までの物理上のコンタクト数が指定したコンタクト数より多い経路とすることを特徴とする請求項４記載のテストパターン生成方法。
【請求項７】
前記遷移発生経路を求めるステップは、前記遷移発生経路として、前記信号伝送経路の始点から検査対象となる配線またはゲートまでの物理上の信号伝搬遅延値が指定した伝搬遅延値より大きい経路とすることを特徴とする請求項４記載のテストパターン生成方法。
【請求項８】
前記遷移発生経路を求めるステップは、前記遷移発生経路として、前記信号伝送経路の始点から検査対象となる配線またはゲートまでの物理上のコンタクト数が指定したコンタクト数より多い経路とすることを特徴とする請求項４記載のテストパターン生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路における信号伝送に際して発生する故障を検査するためのテストパターンを生成するテストパターン生成方法に関するものである。
【背景技術】
【０００２】
従来、半導体集積回路等の電子回路内で信号伝送に際して発生する遅延故障を検査するために、その遅延故障をいくつかの故障モデルに分類し、その故障モデルの特徴に合せたテストパターンを生成するようにしている。
【０００３】
これらの故障モデルは大きくパス遅延故障モデルと遷移故障モデルの２つに分類される。このうちパス遅延故障モデルは、検査対象となる伝送経路において、その経路上に発生する微小欠陥の積み重ねによる遅延故障や１箇所にある大きな遅延故障を検出することが可能である。また、遷移故障モデルは、検査対象となる配線またはゲート上の１箇所にある大きな遅延故障を検出することが可能である。
【０００４】
パス遅延故障モデルを検出するための検出条件には、図７に示すように、検査対象経路の活性化条件の違いによりロバスト条件（図７（ｃ））とノンロバスト条件（図７（ｄ））に分けられる。ロバスト条件は、検査対象経路上の各ゲートに接続されている検査対象経路以外の入力（以後、検査対象外入力と呼ぶ）に遅延故障が発生した場合にも、検査対象経路上の遅延故障を検査することが可能である。一方、ノンロバスト条件は、検査対象経路上の検査対象外入力に遅延故障が発生した場合には、検査対象経路上の遅延故障を検査することができなくなる可能性がある。
【０００５】
図７（ａ）にＡＮＤゲートに対するロバスト条件を示す。ゲートの出力値を一意に決定する入力値を制御値と呼び、一意に決定しない入力値を非制御値と呼ぶ。制御値または非制御値のどちらの値でも良い場合には×と示す。図７（ａ）の検査対象経路をＡＮＤゲートの入力ａから出力ｙへの立上り遷移とする。このときの検査対象外入力ｂの初期値は×（０または１）でかつ遷移値は制御値（ＡＮＤゲートの制御値１）になる。図７（ｂ）の検査対象経路をＯＲゲートの入力ａから出力ｙへの立下り遷移とする。このときの検査対象外入力ｂの初期値は×（０または１）でかつ遷移値は制御値（ＯＲゲートの制御値０）になる。
【０００６】
検査対象経路上のすべてのゲートの検査対象外入力に対してロバスト条件を満たすような値が設定できる場合には、検査対象経路をロバストテスト可能パスと呼ぶ。検査対象経路上の少なくとも１つのゲートの検査対象外入力に対してノンロバスト条件になる値を設定する場合には、検査対象経路をノンロバストテスト可能パスと呼ぶ。このノンロバストテスト可能パスを検査するためのテストパターンには、検査対象外入力に遅延故障が発生した場合にも検査対象経路の遅延故障が検出できる可能性を上げるためのテストパターン生成方法（例えば、非特許文献１を参照）がある。
【０００７】
１つ目は、検査対象外入力と検査対象経路のゲートの伝搬遅延値が最大になるように検査対象外入力の値を設定する経路を考慮する方法である。２つ目は、検査対象経路上に多入力ゲートが存在する場合に検査対象外入力がなるべく多くロバスト条件を満たすような値に設定する方法である。
【０００８】
まず、「パス遅延故障のパターン生成方法」について説明する。
半導体集積回路内のパス遅延故障を試験するためには、テストパターンを形成する必要がある。このような集積回路内のパス遅延故障を試験するためのテストパターン系列（一般に、遅延故障を試験するためには２つのテストパターンｖ１とｖ２が必要であり、これら２つのテストパターンはテストパターン系列と呼ばれる）は、図７に示す経路活性化表や図８に示す含意表や図１２に示す５値論理にしたがって、図９、１０、１１に示す被検査回路である論理回路部内の各信号線に上記論理値を割当てることによって生成されている。図１２に示すように、図７と図８におけるＳ０はパターンｖ１とｖ２の何でも“０”であり、Ｓ１はパターンｖ１とｖ２の何でも“１”であり、Ｕ０はパターンｖ１で“×”、パターンｖ２で“０”であり、Ｕ１はパターンｖ１で“×”、パターンｖ２で“１”であり、××はｖ１とｖ２の何れも“×”であることを示す。
【０００９】
図７（ａ）は、ＡＮＤゲートの一方の入力ａが“０”から“１”に変化した時に、出力ｙの状態が変化する、つまり回路をロバスト条件で活性化するのに必要な検査対象外入力ｂの信号値を示しており、この場合は“Ｕ１”にすればよい。また、図７（ｂ）に示すように、ＯＲゲートの一方の入力ａが“１”から“０”に変化する場合は、ロバスト条件で出力ｙの状態を変化させる（回路を活性化する）ために検査対象外入力ｂは“Ｕ０”にすればよい。
【００１０】
また、図７（ｃ）に、ＡＮＤゲートまたはＮＡＮＤゲート、およびＯＲゲートまたはＮＯＲゲートの各一方の入力が、“０”から“１”に立上った場合と“１”から“０”に立下った場合における、これらゲートをロバスト条件で活性化するのに必要な検査対象外入力の信号値をそれぞれ示す。図７（ｄ）に、ＡＮＤゲートまたはＮＡＮＤゲート、およびＯＲゲートまたはＮＯＲゲートの各一方の入力が、“０”から“１”に立上った場合と“１”から“０”に立下った場合における、これらゲートをノンロバスト条件で活性化するのに必要な検査対象外入力の信号値をそれぞれ示す。
【００１１】
図８（ａ）は、ＡＮＤゲートの二つの入力端子Ｘ１，Ｘ２の各入力がそれぞれＳ０，Ｕ０，Ｓ１，Ｕ１，××の何れかとなった場合の各組合せにおける出力の状態を示している。例えば、Ｘ１がＳ０，Ｘ２がＵ０のとき、図１２から、パターンｖ１＝＜０，×＞，パターンｖ２＝＜０，０＞であるから、出力はパターンｖ１＝＜０＞，パターンｖ２＝＜０＞となり、出力＜０，０＞＝Ｓ０（パターンｖ１＝＜０＞，パターンｖ２＝＜０＞）となることを示している。また図８（ｂ）は、ＮＯＲゲートの二つの入力端子Ｘ１，Ｘ２の各入力がそれぞれＳ０，Ｕ０，Ｓ１，Ｕ１，××の何れかとなった場合の各組合せにおける出力の状態を示し、図８（ｃ）は、インバータの入力端子Ｘの入力がＳ０，Ｕ０，Ｓ１，Ｕ１，××である場合の出力端子ｚの出力がどのようになるかを示している。
【００１２】
いま図９（ａ）の集積回路は、入力端子Ｘ１とＸ２の各入力がＡＮＤゲートｇ１に供給され、入力端子Ｘ３とＸ４の各入力がＯＲゲートｇ２に供給され、入力端子Ｘ１の入力がインバータゲートｇ３に供給され、インバータゲートｇ３の出力と入力端子Ｘ５の入力がＡＮＤゲートｇ４に供給され、ゲートｇ１とｇ２の各出力がＮＯＲゲートｇ５へ供給され、ゲートｇ５とｇ４の出力がＯＲゲートｇ６へ供給されている。
【００１３】
この回路において、図中に太線で示すパスＰ、つまり入力端子Ｘ３−ｇ２−ｇ５−ｇ６−出力線におけるパス遅延故障に対するテストパターンを生成するには、まず、図９（ａ）中に示すように、この被試験パスＰ上の各信号線に遷移信号を設定し、つぎに図９（ｂ）に示すように、パスＰ上の論理ゲートのパスＰ上にない入力信号線（検査対象外入力）に、図７（ｃ）に示した経路活性化表を用いてパスＰの各ゲートを活性化する信号値を与え、最後に図１０に示すように、各信号線に与えた信号値をもとに図８に示す含意表を用いて各入力信号線にあたえる信号値を決定する。図９および図１０の例では、パスＰのパス遅延故障を試験するテストパターン系列は、図１２を用いて、Ｔ＝＜ｖ１，ｖ２＞＝＜“Ｓ０・××・Ｕ１・Ｓ０・Ｕ０”＞＝＜“０×００×”，“０×１００”＞と求められる。
【００１４】
パス遅延故障に対するテストパターン生成法については、例えば、Ｃ．Ｊ．Ｌｉｎ  ａｎｄ  Ｓ．Ｍ．Ｒｅｄｄｙ，“Ｏｎ  Ｄｅｌａｙ  Ｆａｕｌｔ  Ｔｅｓｔｉｎｇ  ｉｎ  Ｌｏｇｉｃ  Ｃｉｒｃｕｉｔｓ，”Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｎｇ，ＣＡＤ−６（５），ｐｐ．６９４−７０３，１９８７や、Ｋ．−Ｔ．Ｃｈｅｎｇ，Ａ．Ｋｒｓｔｉｃ，ａｎｄ  Ｈ．−Ｃ．Ｃｈｅｎ，“Ｇｅｎｅｒａｔｉｏｎ  ｏｆ  Ｈｉｇｈ  Ｑｕａｌｉｔｙ  Ｔｅｓｔｓ  ｆｏｒ  Ｒｏｂｕｓｔｌｙ  Ｕｎｔｅｓｔａｂｌｅ  Ｐａｔｈ  Ｄｅｌａｙ  Ｆａｕｌｔｓ，”Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒｓ，４５（１２），ｐｐ．１３７９−１３９２，１９９６などに記載されている。
【００１５】
次に、「遷移故障テストパターン生成」について説明する。
遷移故障モデルを検出するためのテストパターンは、検査対象となる配線またはゲートに信号の遷移を発生させ、その信号遷移を外部出力または観測フリップフロップまで伝搬することができるように各ゲートの信号値を設定する。その際、検査対象となる配線又はゲートから外部出力または観測フリップフロップまでの信号活性化経路に対しては、図７に示す経路活性化表や図８に示す含意表や図１２に示す５値論理にしたがって、各信号線に上記論理値を割当てることによって生成されている。このとき、活性化経路上のゲートの活性化経路以外の入力を対象外入力と呼ぶ。
【００１６】
図１１（ａ）に、被試験集積回路の一例を示す。この回路は、入力端子Ｘ２とＸ３がＮＡＮＤゲートｇ１の入力側に接続され、また入力端子Ｘ３とＸ４がＮＡＮＤゲートｇ２の入力側に接続され、ＮＡＮＤゲートｇ１とｇ２の各出力がＮＡＮＤゲートｇ３へ供給され、ＮＡＮＤゲートｇ３の出力と入力端子Ｘ１の入力がＮＯＲゲートｇ４に供給され、ＮＡＮＤゲートｇ３の出力と入力端子Ｘ５の入力がＮＡＮＤゲートｇ５へ供給され、ＮＯＲゲートｇ４とＮＡＮＤゲートｇ５の各出力がＮＯＲゲートｇ６へ供給され、ＮＯＲゲートｇ６  の出力側が出力端子に接続される。
【００１７】
この被試験集積回路において、論理ゲートｇ３の出力における立上り遷移が遅くなる遷移故障（ｓｌｏｗ−ｔｏ−ｒｉｓｅ）に対するテストパターン生成は、はじめに図１１（ａ）中に示すように故障ゲートｇ３の出力に初期値“０”をあたえるテストパターンＸ１＝×，Ｘ２＝×，Ｘ３＝０，Ｘ４＝×，Ｘ５＝×（×は“０”と“１”の何れでもよいことを示し、このテストパターンを以下ｖ１＝（××０××）のように表記する）を求め、つぎに故障ゲートｇ３の出力が設定した初期値“０”に固定してしまう縮退故障を仮定し、この縮退故障を集積回路の出力信号線で検出するためのテストパターンｖ２＝（０×１１１）（図１１（ｂ））を求めることにより行われる。したがって、ゲートｇ３の出力におけるｓｌｏｗ−ｔｏ−ｒｉｓｅ故障を検出するテストパターン系列は、Ｔ＝＜ｖ１，ｖ２＞＝＜“××０××”，“０×１１１”＞と求められる。
【００１８】
遷移故障に対するテストパターン生成法については、例えば、Ｅ．Ｓ．Ｐａｒｋ  ａｎｄ  Ｍ．Ｒ．Ｍｅｒｃｅｒ，“Ａｎ  Ｅｆｆｉｃｉｅｎｔ  Ｄｅｌａｙ  Ｔｅｓｔ  Ｇｅｎｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｃｏｍｂｉｎａｔｉｏｎａｌ  Ｌｏｇｉｃ  Ｃｉｒｃｕｉｔｓ，”Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ，１１（７），ｐｐ．９２６−９３８，１９９２などに記載されている。
【非特許文献１】Ｋｗａｎｇ−Ｔｉｎｇ（Ｔｉｍ）Ｃｈｅｎｇ“Ｄｅｌａｙ  Ｆａｕｌｔ  Ｔｅｓｔｉｎｇ  ｆｏｒ  ＶＬＳＩ  Ｃｉｒｃｕｉｔｓ”，ｐ．５２〜ｐ．５３、ｐ．１０４〜ｐ．１１３，１９９８
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら上記のような従来のパス遅延故障テストパターン生成方法では、予め選択した検査対象経路に対してロバスト条件でのテストパターン生成を行い、ロバスト条件を満たさない検査対象経路に対してはノンロバスト条件でテストパターン生成を行っており、ノンロバスト条件で検査対象経路を活性化した場合、ノンロバスト条件で活性化するゲートの入力側の検査対象経路に遅延故障が発生していない場合には、ノンロバスト条件で活性化したゲートの出力側には信号遷移が発生しなくなる。
【００２０】
そのため、ノンロバスト条件で活性化したゲートの出力側の検査対象経路の１箇所に大きな遅延が発生した場合には、遅延故障の影響が信号遷移として発生しないために、検査対象経路の終点である外部出力または観測フリップフロップまで信号遷移を伝搬することができない。しかし、ノンロバストテスト可能パスの場合、ノンロバスト条件になるゲートを限定しないため、検査対象経路の始点に近いゲートをノンロバスト条件で活性化した場合、そのゲート以降のゲートまたは配線の１箇所に大きな遅延故障が発生した時には遅延故障を検出できないという問題がある。
【００２１】
また、遷移故障テストパターンは、検査対象となる配線またはゲートから故障の影響を観測する外部出力または観測フリップフロップまでの経路を特定しないために、実際に遅延故障が発生しているにもかかわらず、伝搬遅延時間の短い経路の外部出力または観測フリップフロップで観測した場合には、遅延故障を検出できない場合があった。
【００２２】
また、遷移故障テストパターンは、検査対象となる配線またはゲートに遷移を発生させるための遷移発生経路を特定しないため、伝搬遅延時間の短い経路を遷移発生経路として用いて信号遷移を発生させると、実際に遅延故障が発生したにもかかわらず、伝搬遅延時間の短い経路の外部出力または観測フリップフロップで観測することになり、遅延故障を検出できない場合があった。
【００２３】
また、観測する外部出力または観測フリップフロップまでをより長い経路で活性化できるようにした場合にも、検査対象ゲートまたは配線に近いゲートがノンロバスト条件で活性化された場合には、そのゲートまたは配線以降の遷移故障を検出できるテストパターンにならないために、そのゲートまたは配線以降の遷移故障を検査するためには新たにテストパターンを生成する必要があった。
【００２４】
また、外部入力またはフリップフロップから検査対象の配線またはゲートまでをより長い経路で遷移を発生できるようにした場合でも、外部入力またはフリップフロップに近いゲートがノンロバスト条件で活性化された場合には、そのゲートまたは配線以降から検査対象ゲートまたは配線まで遷移故障を検出できるテストパターンにならないために、そのゲートまたは配線以降から検査対象ゲートまたは配線までの遷移故障を検査するためには新たにテストパターンを生成する必要があった。
【００２５】
本発明は、上記従来の問題点を解決するもので、検査対象経路の始点に近いゲートがノンロバスト条件で活性化された場合でも、検査対象経路の始点から検査対象の配線またはゲートまでを、より長い経路に渡って信号伝送における遅延故障および遷移故障について、確実に検査することができるテストパターン生成方法を提供する。
【課題を解決するための手段】
【００２６】
上記の課題を解決するために、本発明の請求項１に記載のテストパターン生成方法は、複数のゲート間が配線で接続された半導体集積回路における信号伝送に際して発生する故障を検査するためのテストパターン系列を生成するテストパターン生成方法であって、前記半導体集積回路に対してゲート間が１つの配線で直列接続された任意の検査対象経路を選択する経路選択ステップと、前記経路選択ステップで選択された検査対象経路の始点から前記検査対象経路上のゲートに順次信号伝搬条件としてロバスト条件の活性化信号を与えるステップと、前記ロバスト条件の活性化信号が与えられない前記検査対象経路上のゲートから前記検査対象経路の終点までのゲートに、信号伝搬条件をロバスト条件に限定せず信号遷移が伝搬する条件を与えるステップとを有する方法としたことを特徴とする。
【００２７】
以上により、ノンロバストテスト可能パスである場合も、ノンロバスト条件でしか活性化できないゲートが検査対象経路の終点に近づくため、検査対象経路の始点からノンロバスト条件でしか活性化できないゲートまでの１箇所の大きな遅延故障も検査可能なテストパターンを生成することができる。
【００２８】
また、本発明の請求項２に記載のテストパターン生成方法は、請求項１記載のテストパターン生成方法であって、前記経路選択ステップは、前記検査対象経路として、その始点から終点までの物理上の信号伝搬遅延値が指定した伝搬遅延値より大きい経路を選択する方法としたことを特徴とする。
【００２９】
以上により、伝搬遅延値がより大きいテスト可能パスに対してのテストパターンが生成可能になり、検査対象経路の始点からノンロバスト条件でしか活性化できないゲートまでに発生した１箇所の大きな遅延故障を確実にテストすることが可能なテストパターンを生成することができる。
【００３０】
また、本発明の請求項３に記載のテストパターン生成方法は、請求項１記載のテストパターン生成方法であって、前記経路選択ステップは、前記検査対象経路として、その始点から終点までの物理上のコンタクト数が指定したコンタクト数より多い経路を選択する方法としたことを特徴とする。
【００３１】
以上により、経路上にコンタクト部分が多い経路を検査対象経路として選択できるため、検査対象経路上に発生したコンタクト不良による１箇所の大きな遅延故障をより多くテストすることが可能なテストパターンを生成することができる。
【００３２】
また、本発明の請求項４に記載のテストパターン生成方法は、複数のゲート間が配線で接続された半導体集積回路における信号伝送に際して発生する故障を検査するためのテストパターン系列を生成するテストパターン生成方法であって、前記半導体集積回路に対して前記検査の対象となる配線またはゲートを選択するステップと、前記検査対象となる配線またはゲートを含む信号伝送経路の始点から前記検査対象となる配線またはゲートに遷移を生成するための遷移発生経路を求めるステップと、前記検査対象となる配線またはゲートから遅延故障の影響を観測するための前記信号伝送経路の終点への信号遷移が伝搬可能な活性化経路を求めるステップと、前記遷移発生経路に初期値と遷移値を設定するステップと、前記検査対象となる配線またはゲートから前記活性化経路上のゲートに順次信号伝搬条件としてロバスト条件の活性化信号を与えるステップと、前記ロバスト条件の活性化信号が与えられない前記活性化経路上のゲートから前記信号伝送経路の終点までのゲートに、信号伝搬条件をロバスト条件に限定せず信号遷移が伝搬する条件を与えるステップと、前記遷移発生経路上のゲートに順次信号伝搬条件としてロバスト条件の活性化信号を与えるステップと、前記ロバスト条件の活性化信号を与えられない前記遷移発生経路上のゲートから前記検査対象となる配線またはゲートまでのゲートに、信号伝搬条件をロバスト条件に限定せず信号遷移が伝搬する条件を与えるステップとを有する方法としたことを特徴とする。
【００３３】
以上により、検査対象箇所の遅延故障をテストするためのテストパターンにおいて、検査対象経路の始点から検査対象箇所までの経路及び検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路上に発生した遷移故障をより多くテストすることが可能なテストパターンを生成することができる。
【００３４】
また、本発明の請求項５に記載のテストパターン生成方法は、請求項４記載のテストパターン生成方法であって、前記活性化経路を求めるステップは、前記活性化経路として、前記信号伝送経路の検査対象となる配線またはゲートから終点までの物理上の信号伝搬遅延値が指定した伝搬遅延値より大きい経路とする方法としたことを特徴とする。
【００３５】
以上により、検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路の伝搬遅延値がより大きいテスト可能パスに対してのテストパターンが生成可能になり、検査対象箇所及び伝搬経路上の検査対象箇所からノンロバスト条件でしか活性化できないゲートまでに発生した遅延故障を確実にテストすることが可能なテストパターンを生成することができる。
【００３６】
また、本発明の請求項６に記載のテストパターン生成方法は、請求項４記載のテストパターン生成方法であって、前記活性化経路を求めるステップは、前記活性化経路として、前記信号伝送経路の検査対象となる配線またはゲートから終点までの物理上のコンタクト数が指定したコンタクト数より多い経路とする方法としたことを特徴とする。
【００３７】
以上により、検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路上のコンタクト部分が多い経路になるため、活性化経路上に発生したコンタクト不良による遷移故障をより多くテストすることが可能なテストパターンを生成することができる。
【００３８】
また、本発明の請求項７に記載のテストパターン生成方法は、請求項４記載のテストパターン生成方法であって、前記遷移発生経路を求めるステップは、前記遷移発生経路として、前記信号伝送経路の始点から検査対象となる配線またはゲートまでの物理上の信号伝搬遅延値が指定した伝搬遅延値より大きい経路とする方法としたことを特徴とする。
【００３９】
以上により、検査対象経路の始点から検査対象箇所までの経路の伝搬遅延値がより大きいテスト可能パスに対してのテストパターンが生成可能になり、検査対象箇所及び遷移発生経路上の始点からノンロバスト条件でしか活性化できないゲートまでに発生した遅延故障を確実にテストすることが可能なテストパターンを生成することができる。
【００４０】
また、本発明の請求項８に記載のテストパターン生成方法は、請求項４記載のテストパターン生成方法であって、前記遷移発生経路を求めるステップは、前記遷移発生経路として、前記信号伝送経路の始点から検査対象となる配線またはゲートまでの物理上のコンタクト数が指定したコンタクト数より多い経路とする方法としたことを特徴とする。
【００４１】
以上により、検査対象経路の始点から検査対象箇所までの経路上のコンタクト数が多い経路になるため、遷移発生経路上に発生した遷移故障をより多くテストすることが可能なテストパターンを生成することができる。
【発明の効果】
【００４２】
以上のように本発明によれば、ノンロバストテスト可能パスである場合も、ノンロバスト条件でしか活性化できないゲートが検査対象経路の終点に近づくため、検査対象経路の始点からノンロバスト条件でしか活性化できないゲートまでの１箇所の大きな遅延故障も検査可能なテストパターンを生成することができる。
【００４３】
そのため、検査対象経路の始点からノンロバスト条件でしか活性化できないゲートまでの１箇所の大きな遅延故障も検査することができる。
また、伝搬遅延値がより大きいテスト可能パスに対してのテストパターンが生成可能になり、検査対象経路の始点からノンロバスト条件でしか活性化できないゲートまでに発生した１箇所の大きな遅延故障を確実にテストすることが可能なテストパターンを生成することができる。
【００４４】
そのため、検査対象経路の始点からノンロバスト条件でしか活性化できないゲートまでに発生した１箇所の大きな遅延故障を確実にテストすることができる。
また、経路上にコンタクト部分が多い経路を検査対象経路として選択できるため、検査対象経路上に発生したコンタクト不良による１箇所の大きな遅延故障をより多くテストすることが可能なテストパターンを生成することができる。
【００４５】
そのため、検査対象経路上に発生したコンタクト不良による１箇所の大きな遅延故障をより多くテストすることができる。
また、検査対象箇所の遅延故障をテストするためのテストパターンにおいて、検査対象経路の始点から検査対象箇所までの経路及び検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路上に発生した遷移故障をより多くテストすることが可能なテストパターンを生成することができる。
【００４６】
そのため、検査対象経路の始点から検査対象箇所までの経路及び検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路上に発生した遷移故障をより多くテストすることができる。
【００４７】
また、検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路の伝搬遅延値がより大きいテスト可能パスに対してのテストパターンが生成可能になり、検査対象箇所及び伝搬経路上の検査対象箇所からノンロバスト条件でしか活性化できないゲートまでに発生した遅延故障を確実にテストすることが可能なテストパターンを生成することができる。
【００４８】
そのため、検査対象箇所及び伝搬経路上の検査対象箇所からノンロバスト条件でしか活性化できないゲートまでに発生した遅延故障を確実にテストすることができる。
また、検査対象箇所から遅延故障の影響を観測する検査対象経路の終点までの経路上のコンタクト部分が多い経路になるため、活性化経路上に発生したコンタクト不良による遷移故障をより多くテストすることが可能なテストパターンを生成することができる。
【００４９】
そのため、活性化経路上に発生したコンタクト不良による遷移故障をより多くテストすることができる。
また、検査対象経路の始点から検査対象箇所までの経路の伝搬遅延値がより大きいテスト可能パスに対してのテストパターンが生成可能になり、検査対象箇所及び遷移発生経路上の始点からノンロバスト条件でしか活性化できないゲートまでに発生した遅延故障を確実にテストすることが可能なテストパターンを生成することができる。
【００５０】
そのため、検査対象箇所及び遷移発生経路上の始点からノンロバスト条件でしか活性化できないゲートまでに発生した遅延故障を確実にテストすることができる。
また、検査対象経路の始点から検査対象箇所までの経路上のコンタクト数が多い経路になるため、遷移発生経路上に発生した遷移故障をより多くテストすることが可能なテストパターンを生成することができる。
【００５１】
そのため、遷移発生経路上に発生した遷移故障をより多くテストすることができる。
以上のように、検査対象経路の始点に近いゲートがノンロバスト条件で活性化された場合でも、検査対象経路の始点から検査対象の配線またはゲートまでを、より長い経路に渡って信号伝送における遅延故障および遷移故障について、確実に検査することができる。
【発明を実施するための最良の形態】
【００５２】
以下、本発明の実施の形態を示すテストパターン生成方法について、図面を参照しながら具体的に説明する。
まず、ここで使用する以下の各用語についての定義を説明する。
【００５３】
はじめに、「パス、伝搬遅延時間、パス遅延故障」について説明する。回路における信号遷移経路を「パス」と呼ぶ。パスの入力信号線から出力信号線まで信号が遷移する時間を「伝搬遅延時間」と呼び、伝搬遅延時間が所定の値より大きくなると回路は正常に動作しなくなる。これを「パス遅延故障」と呼ぶ。
【００５４】
次に、「最長パス」について説明する。「最長パス」とは、信号遷移時間が最長であるパスを示す。例えば図２において、最長パスは、スキャンＦＦの出力または外部入力であるａ１、ａ２、ａ４、ａ５、ａ７、ａ１５から、外部出力またはスキャンＦＦへの入力であるａ１７までの信号遷移時間が最長となるパスを示す。
【００５５】
次に、「テスト可能パス」について説明する。「テスト可能パス」とは、上記のパス遅延故障に対するテストパターンが生成可能なパスを示す。
次に、「コンタクト」について説明する。「コンタクト」とは、異レイヤのアルミ配線とトランジスタのソース／ドレイン、またはゲート電極等を縦（上下）方向に結ぶ配線を示す。
（実施の形態１）
本発明の実施の形態１のテストパターン生成方法を説明する。
【００５６】
図１は本実施の形態１のテストパターン生成方法を示すフロー図である。まず、ステップ１０１において、被検査半導体集積回路の検査対象経路を選択する。この検査対象経路は、人手で選択してもよく、あるいは回路情報から電子計算機により自動的に取出して作成してもよい。次に、ステップ１０２において、ステップ１０１で選択した検査対象経路に遷移値を設定する。次に、ステップ１０３において、ステップ１０１で選択した検査対象経路の始点となる外部入力またはフリップフロップに初期値を設定する。次に、ステップ１０４において、ステップ１０１で選択した検査対象経路上の検査対象外入力に非制御値を設定し、伝搬テストパターンｖ２を含意操作により求める。次に、ステップ１０５において、伝搬テストパターンが求められた場合は、ステップ１０６へ進む。次に、ステップ１０６において、検査対象経路の始点側からゲートを選択する。次に、ステップ１０７において、選択したゲートが外部出力または観測フリップフロップではない場合は、ステップ１０８へ進む。選択したゲートが外部出力または観測フリップフロップの場合は、ステップ１１３に進む。次に、ステップ１０８において、ステップ１０６で選択したゲートの検査対象外入力の初期値が決まっているか調べる。検査対象外入力の１つ以上の入力の初期値が決まっている場合は、ステップ１０９へ進む。決まっていない場合は、ステップ１１０へ進む。次に、ステップ１０９において、検査対象外入力の入力初期値がロバスト条件を満たしていない場合は、ステップ１１３へ進む。検査対象外入力の入力初期値がロバスト条件を満たしている場合には、ステップ１１０へ進む。次に、ステップ１１０において、ステップ１０６で選択したゲートの検査対象外入力の初期値にロバスト条件を満たす値を設定し、含意操作を行う。次に、ステップ１１１において、ステップ１１０で設定した値を用いた含意操作で矛盾が発生した場合は、ステップ１１２へ進む。矛盾が発生しない場合は、ステップ１０６へ進む。次に、ステップ１１２において、ステップ１０６で選択したゲートの検査対象外入力の初期値にノンロバスト条件を満たす値を設定し、含意操作を行う。次に、ステップ１１３において、回路内の初期値を用いて初期化テストパターンｖ１を求め、ステップ１１５において、ステップ１０１で選択した検査対象経路に対するテストパターン生成処理を終了する。また、ステップ１０５において、ステップ１０４で伝搬テストパターンが求められない場合は、ステップ１１４に進み、ステップ１１４において、ステップ１０１で選択した検査対象経路はロバスト条件またはノンロバスト条件を満たすテストパターン生成が不可能と判定し、ステップ１１５にてステップ１０１で選択した検査対象経路に対するテストパターン生成処理を終了する。
【００５７】
次に、本実施の形態１の具体例を説明する。
図２に示すように、ａ１とａ２はＡＮＤゲートＧ１に供給され、ａ１とａ４はＮＡＮＤゲートＧ５の供給され、ａ１とａ５はＮＡＮＤゲートＧ６に供給され、ａ６とａ７はＯＲゲートＧ２に供給され、ａ７とａ８はＡＮＤゲートＧ７に供給され、ａ８とａ９はＡＮＤゲートＧ８に供給され、ａ１０とａ１３はＮＯＲゲートＧ３に供給され、ａ１１とａ１２はＯＲゲートＧ９に供給され、ａ１３とａ１５はＮＡＮＤゲートＧ１０に供給され、ａ１４とａ１６はＡＮＤゲートＧ４に供給され、ａ１７はＡＮＤゲートＧ４から出力されている。
【００５８】
ステップ１０１で、検査対象経路ａ１−ａ６−ａ１０−ａ１４−ａ１７の始点となるａ１の０から１への立上り遷移を選択する。ステップ１０２で、検査対象経路ａ１−ａ６−ａ１０−ａ１４−ａ１７に遷移値（１，１，１，０，０）を設定する。この時の各信号線の値を図３のステップ１０２に示す。ステップ１０３で、検査対象経路の始点であるａ１に初期値０を設定する。この時の各信号線の値を図３のステップ１０３に示す。
【００５９】
ステップ１０４で、検査対象経路の検査対象外入力であるａ２、ａ７、ａ１３、ａ１６に遷移値として非制御値（１，０，０，１）を設定し、伝搬テストパターンｖ２を含意操作により求める。伝搬テストパターンｖ２＝（ａ１，ａ２，ａ４，ａ５，ａ７，ａ１５）＝＜“１，１、×、１，０，０”＞になる。この時の各信号線の値は図３のステップ１０４に示す。伝搬テストパターンｖ２が求められたので、ステップ１０６に進み、検査対象経路の始点に最も近いゲートＧ１を選択する。
【００６０】
ステップ１０７において、外部出力ではないと判定したので、ステップ１０８に進む。ステップ１０８において、ＡＮＤゲートＧ１の検査対象外入力ａ２の初期値は×であり、ＡＮＤゲートのロバスト条件を満たしているのでステップ１１０へ進み、さらにステップ１１１を通ってステップ１０６に進み、ステップ１０６において、検査対象経路の始点に次に近いゲートＧ２を選択する。外部出力ではないので、ステップ１０８に進む。ステップ１０８において、ＯＲゲートＧ２の検査対象外入力ａ７の値は決まっていないのでステップ１１０において、ＯＲゲートのロバスト条件を設定し含意操作を行う。このときの検査対象外入力ａ７には、ＯＲゲートのロバスト条件の値である“０”を設定する。
【００６１】
ステップ１１１において、矛盾が発生していないのでステップ１０６に進む。ステップ１０６おいて、検査対象経路の始点に次に近いゲートＧ３を選択する。外部出力ではないので、ステップ１０８に進む。ステップ１０８でＮＯＲゲートＧ３の検査対象外入力ａ１３の値は決まっていないので、ステップ１１０において、ＮＯＲゲートのロバスト条件を設定し含意操作を行う。このときの検査対象外入力ａ１３には、ＮＯＲゲートのロバスト条件の値である“０”を設定する。この時の各信号線の値は図３のステップ１１０に示す。
【００６２】
ステップ１１１において、含意操作で矛盾が発生したと判定したので、ステップ１１２で検査対象外入力ａ１３に設定した値をＮＯＲゲートのノンロバスト条件の値である×に設定する。この時の各信号線の値は図３のステップ１１２に示す。ステップ１１３において、初期化テストパターンｖ１を求める。初期化テストパターンｖ１＝（ａ１，ａ２，ａ４，ａ５，ａ７，ａ１５）＝＜“０，×、×、×，０，０”＞になる。この時の各信号線の値は図３のステップ１１３に示す。ステップ１１５において、テストパターン＜Ｖ１，Ｖ２＞＝＜“１１×１００”，“０×××００”＞となり、終了する。
【００６３】
以上により、ノンロバスト活性化パスと判定された検査対象経路ａ１−ａ６−ａ１０−ａ１４−ａ１７の検査対象経路上のゲートＧ１、Ｇ２を従来の方法によりノンロバスト条件で活性化した場合には検査できなかったａ１，ａ６，ａ１０に発生した大きな遅延故障を検査することが可能になる。
【００６４】
なお、本実施の形態では、ＡＮＤゲートＧ７の活性化条件を限定していないが、ロバスト条件で活性化できるように検査対象外入力の値を設定してもよい。
（実施の形態２）
本発明の実施の形態２のテストパターン生成方法を説明する。
【００６５】
図１３は本実施の形態２のテストパターン生成方法を示すフロー図である。図１３に示すように、実施の形態１のテストパターン生成フローのステップ１０１の代わりに、ステップ３０１〜３０４を用いる。
【００６６】
まず、ステップ３０１で、検査対象経路として選択する経路の伝搬遅延値の閾値を設定する。この閾値は、人手で設定してもよく、あるいは回路情報から電子計算機により自動的に取出して設定してもよい。ステップ３０２において、被検査半導体集積回路の検査対象経路を選択する。この検査対象経路は、人手で選択してもよく、あるいは回路情報から電子計算機により自動的に取出して作成してもよい。ステップ３０３において、ステップ３０２で選択した検査対象経路がステップ３０１で設定した伝搬遅延値の閾値より大きい場合は、ステップ３０４へ進む。小さい場合には、ステップ３０２で検査対象経路を選択する。ステップ３０４において、ステップ３０２で選択した検査対象経路がテスト可能パスかどうか判定する。テスト可能パスの場合は、ステップ１０２へ進む。テスト不可能パスと判定された場合は、ステップ３０２へ進む。
【００６７】
ステップ３０３で伝搬遅延値の閾値より大きい伝搬遅延値の経路を選択することにより、回路内のすべての経路を検査対象経路にできない場合など、伝搬遅延時間がより大きい経路を検査対象とすることで、実動作で動作不良となる遅延故障を検出する能力が高くなる。
【００６８】
なお、図１３のステップ３０４のテスト可能パスの選択方法は、文献「Ａ．Ｍｕｒａｋａｍｉ，Ｓ．Ｋａｊｉｈａｒａ，Ｔ．Ｓａｓａｏ，Ｉ．ｐｏｍｅｒａｎｚ  ａｎｄ  Ｓ．Ｍ．Ｒｅｄｄｙ，“Ｓｅｌｅｃｔｉｏｎ  ｏｆ  Ｐｏｔｅｎｔｉａｌｌｙ  Ｔｅｓｔａｂｌｅ  Ｐａｔｈ  Ｄｅｌａｙ  Ｆａｕｌｔｓ  ｆｏｒ  Ｔｅｓｔ  ｇｅｎｅｒａｔｉｏｎ，”Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｓｔ  Ｃｏｎｆ．，ｐｐ．３７６−３８４，Ｏｃｔ．２０００．」に示されている方法などを使用することで求められる。
【００６９】
図２の検査対象経路としてａ１−ａ８−ａ１１−ａ１３−ａ１６−ａ１７の立下り遷移を選択した場合は、この経路はロバスト条件およびノンロバスト条件ではテストパターンを生成できない。このような場合、テスト可能パスか否かを処理の早い段階で判別できるため従来の方法と比較し処理時間の高速化が図れる。
（実施の形態３）
本発明の実施の形態３のテストパターン生成方法を説明する。
【００７０】
図１４は本実施の形態３のテストパターン生成方法を示すフロー図である。図１４に示すように、実施の形態１のテストパターン生成フローのステップ１０１の代わりに、ステップ４０１〜４０３を用いる。
【００７１】
まず、ステップ４０１で、検査対象経路として選択する経路のコンタクト数の閾値を設定する。この閾値は、人手で設定してもよく、あるいは回路情報から電子計算機により自動的に取出して設定してもよい。ステップ４０２において、被検査半導体集積回路の検査対象経路を選択する。この検査対象経路は、人手で選択してもよく、あるいは回路情報から電子計算機により自動的に取出して作成してもよい。ステップ４０３において、ステップ４０２で選択した検査対象経路がステップ４０１で設定したコンタクト数の閾値より大きい場合は、ステップ１０２へ進む。小さい場合には、ステップ４０２で検査対象経路を選択する。
【００７２】
ステップ４０３、および後述のステップ６０３、ステップ８０３の経路上のコンタクト数は、市販レイアウトツールのパスダンプ機能などを使用することで、図１９に示すような各信号線のコンタクト数を求め、経路上のコンタクト数の合計から求めることができる。図２の経路ａ１−ａ８−ａ１２−ａ１３−ａ１４−ａ１７のコンタクト数は、図１９より、ａ１（３）＋ａ８（４）＋ａ１２（５）＋ａ１３（４）＋ａ１４（３）＋ａ１７（２）＝２１と求めることができる。
【００７３】
次に、本実施の形態３の検査対象経路の選択方法を図１９を用いて説明する。
まず、ステップ４０１でコンタクト数の閾値を１０に設定する。ステップ４０２で検査対象経路として、ａ１−ａ６−ａ１０−ａ１４−ａ１７を選択する。検査対象経路ａ１−ａ６−ａ１０−ａ１４−ａ１７のコンタクト数は、図１９から１１と求められる。ステップ４０３で検査対象経路のコンタクト数１１が閾値より大きいので、ステップ４０２で選択した経路を検査対象経路としてステップ１０２へ進む。ステップ１０２以降の処理は、実施の形態１の場合と同じである。
【００７４】
これにより、従来の方法ではコンタクト数が少ない経路でも検査対象経路として選択していたが、本実施の形態を使用することにより、１箇所に大きな遅延故障が発生する可能性が高い経路から優先してテストパターンを生成することが可能になる。
（実施の形態４）
本発明の実施の形態４のテストパターン生成方法を説明する。
【００７５】
図４は本実施の形態４のテストパターン生成方法を示すフロー図である。まず、ステップ２０１で、被検査半導体集積回路の検査対象箇所を選択する。この検査対象箇所は、人手で選択してもよく、あるいは回路情報から電子計算機により自動的に取出して作成してもよい。次に、ステップ２０２において、ステップ２０１で選択した検査対象箇所に初期値と遷移値を設定する。次に、ステップ２０３において、ステップ２０１で選択した検査対象箇所に遷移が発生することが可能な外部入力またはフリップフロップの出力から検査対象箇所までの遷移発生経路に初期値と遷移値を設定する。次に、ステップ２０４において、ステップ２０１で選択した検査対象箇所に設定した遷移を外部出力または観測フリップフロップまで活性化可能な活性化経路を求める。次に、ステップ２０５において、ステップ２０４で求めた活性化経路に対して遷移値を設定する。次に、ステップ２０６において、ステップ２０３で求めた遷移発生経路およびステップ２０４で求めた活性化経路上の対象外入力に非制御値を設定し、伝搬テストパターンｖ２を含意操作により求める。ステップ２０７において、ステップ２０６で伝搬テストパターンが求められない場合は、ステップ２２１に進む。次に、伝搬テストパターンが求められた場合は、ステップ２０８において、活性化経路の入力側からゲートを選択する。次に、ステップ２０９において、選択したゲートが外部出力または観測フリップフロップかどうか判定する。ステップ２１０において、ステップ２０８で選択したゲートの対象外入力の初期値が決まっているか調べる。対象外入力の１つでも初期値が決まっている場合は、ステップ２１１へ進む。ステップ２１１において、対象外入力の入力初期値がロバスト条件を満たしていない場合は、ステップ２１４へ進む。対象外入力の入力初期値がロバスト条件を満たしている場合には、ステップ２１２へ進む。ステップ２１２において、ステップ２０８で選択したゲートの対象外入力の初期値にロバスト条件を満たす値を設定し、含意操作を行う。ステップ２１３において、ステップ２１２で設定した値を用いた含意操作で矛盾が発生した場合は、ステップ２１４へ進む。矛盾が発生しない場合は、ステップ２０８へ進む。次に、ステップ２１４において、遷移発生経路の入力側からゲートを選択する。次に、ステップ２１５において、選択したゲートが検査対象箇所を入力とするゲートかどうか判定する。次に、ステップ２１６において、ステップ２１４で選択したゲートの対象外入力の初期値が決まっているか調べる。対象外入力の１つでも初期値が決まっている場合は、ステップ２１９へ進む。対象外入力の１つも初期値が決まっていない場合は、ステップ２１７へ進む。次に、ステップ２１７において、ステップ２１４で選択したゲートの対象外入力の初期値にロバスト条件を満たす値を設定し、含意操作を行う。次に、ステップ２１８において、ステップ２１４で設定した値を用いた含意操作で矛盾が発生した場合は、ステップ２２０へ進む。矛盾が発生しない場合は、ステップ２１４へ進む。ステップ２１９において、対象外入力の入力初期値がロバスト条件を満たしていない場合は、ステップ２２０へ進む。対象外入力の入力初期値がロバスト条件を満たしている場合には、ステップ２１７へ進む。次に、ステップ２２０において、回路内の初期値を用いて初期化テストパターンｖ１を求める。ステップ２２１において、ステップ２０１で選択した検査対象箇所はロバスト条件及びノンロバスト条件を満たすテストパターン生成が不可能と判定し、ステップ２２２において、ステップ２０１で選択した検査対象箇所に対するテストパターン生成処理を終了する。
【００７６】
次に、本実施の形態４の具体例を説明する。
図５に示すように、ａ１とａ２はＡＮＤゲートＧ１に供給され、ａ１とａ４はＮＡＮＤゲートＧ５の供給され、ａ１とａ５はＮＡＮＤゲートＧ６に供給され、ａ６とａ７はＯＲゲートＧ２に供給され、ａ７とａ８はＡＮＤゲートＧ７に供給され、ａ８とａ９はＡＮＤゲートＧ８に供給され、ａ１０とａ１３はＮＯＲゲートＧ３に供給され、ａ１１とａ１２はＯＲゲートＧ９に供給され、ａ１３とａ１５はＮＡＮＤゲートＧ１０に供給され、ａ１４とａ１６はＡＮＤゲートＧ４に供給され、ａ１７はＡＮＤゲートＧ４から出力されている。
【００７７】
ステップ２０１において、信号線ａ８の“１”から“０”への立下り遷移を検査対象箇所として選択する。ステップ２０２において、検査対象箇所ａ８に初期値“１”と遷移値“０”を設定する。この時の各信号線の値を図６のステップ２０２に示す。ステップ２０３において、外部入力から検査対象箇所ａ８までの遷移発生経路であるａ４−ａ８に初期値と遷移値を設定する。この時の各信号線の値を図６のステップ２０３に示す。
【００７８】
ステップ２０４において、検査対象箇所ａ８から外部出力ａ１７までの活性化経路であるａ８−ａ１２−ａ１３−ａ１６−ａ１７を求める。ステップ２０５において、ステップ２０４で求めた活性化経路上の信号線に遷移値を設定する。このときのａ１２−ａ１３−ａ１６−ａ１７はそれぞれ（０，０，１，１）となる。回路内の各信号線の値を図６のステップ２０５に示す。
【００７９】
ステップ２０６において、遷移発生経路上の対象外入力であるａ１と活性化経路上の対象外入力であるａ９、ａ１１、ａ１５、ａ１４の遷移値として非制御値（１，１，０，１，１）を設定し、伝搬テストパターンｖ２を求める。このときの伝搬テストパターンは（ａ１、ａ２，ａ４，ａ５、ａ７、ａ１５）＝（１，０，１，０，０，１）となる。回路内の各信号線の値を図６のステップ２０６に示す。ステップ２０６で伝搬テストパターンが求められたので、ステップ２０７の判断により、ステップ２０８において、活性化経路の入力側のゲートであるＡＮＤゲートＧ８を選択する。
【００８０】
ステップ２０９において、ステップ２０８で選択したゲートＧ８が外部出力でないと判定し、ステップ２１０において、ＡＮＤゲートＧ８の検査対象外入力ａ９に初期値が決まっているかどうか判定する。初期値が決まっていないので、ステップ２１２でＡＮＤゲートＧ８の対象外入力ａ９にロバスト条件の値である１を設定し、含意操作を行う。これにより、信号線ａ５の初期値が０に設定される。このときの回路内の各信号線の値を図６のステップ２１２に示す。
【００８１】
つづいて、ステップ２０８において活性化経路の入力側のゲートであるＯＲゲートＧ９を選択する。ステップ２０９において、ステップ２０８で選択したゲートＧ９が外部出力でないと判定し、ステップ２１０において、ＯＲゲートＧ９の対象外入力ａ１１に初期値が決まっているかどうか判定する。信号線ａ１１の初期値はロバスト条件の値である×に設定されているので、ステップ２０８において、活性化経路の入力側のゲートであるＮＡＮＤゲートＧ１０を選択する。
【００８２】
ステップ２０９において、ステップ２０８で選択したゲートＧ１０が外部出力でないと判定し、ステップ２１０において、ＮＡＮＤゲートＧ１０の対象外入力ａ１５に初期値が決まっているか判定する。初期値が決まっていないので、ステップ２１２でＮＡＮＤゲートＧ１０の対象外入力ａ１５にロバスト条件の値である１を設定し、ステップ２０８において、活性化経路の入力側のゲートであるＡＮＤゲートＧ４を選択する。
【００８３】
ステップ２０９において、ステップ２０８で選択したゲートＧ４が外部出力でないと判定する。ステップ２１０において、ＡＮＤゲートＧ４の対象外入力ａ１４に初期値が決まっているか判定する。初期値はロバスト条件の値である×に設定されているので、ステップ２０８において活性化経路の出力端子ａ１７を選択する。ステップ２０９において、ステップ２０８で選択した出力端子が外部出力であると判定されたので、ステップ２１４に進む。
【００８４】
ステップ２１４において、遷移発生経路の入力側のゲートであるＮＡＮＤゲートＧ５を選択する。このときの回路内の信号線の値を図６のステップ２１４に示す。次に、ステップ２１５において、ステップ２１４で選択したＮＡＮＤゲートＧ５が検査対象箇所を入力としているか判定する。入力としていないので、ステップ２１６へ進む。ステップ２１６において、ＮＡＮＤゲートＧ５の対象外入力に初期値が決まっているか判定する。初期値はロバスト条件の値である×に設定されているので、ステップ２１４において、遷移発生経路の入力側のゲートであるＡＮＤゲートＧ８を選択する。
【００８５】
ステップ２１５において、ステップ２１４で選択したＡＮＤゲートＧ８が検査対象箇所を入力としているか判定する。入力としているので、ステップ２２０へ進む。ステップ２２０において、初期化テストパターンｖ１を求める。このときの初期化テストパターンは（ａ１、ａ２，ａ４，ａ５、ａ７、ａ１５）＝（１，０，０，０，０，１）となる。このときの回路内の信号線の値を図６のステップ２２０に示す。
【００８６】
従来の方法では、外部入力ａ５にＵ０を設定してもよく、その場合にはＡＮＤゲートＧ８はノンロバスト条件での活性化になるので、ＡＮＤゲートＧ８以降の遷移故障を検査することはできなかったが、本実施の形態４に示す方法を用いることで、すべての活性化経路および遷移発生経路上のゲートをロバスト条件で活性化することが可能になり、活性化経路および遷移発生経路上に発生した遷移故障を検出することが可能である。
【００８７】
尚、本実施の形態４では、ノンロバスト条件の活性化条件を設定したゲート以降の活性化経路または遷移発生経路の活性化条件を限定していないが、ロバスト条件で活性化できるように検査対象外入力の値を設定してもよい。
（実施の形態５）
本発明の実施の形態５のテストパターン生成方法を説明する。
【００８８】
図１５は本実施の形態５のテストパターン生成方法を示すフロー図である。図１５に示すように、実施の形態４のテストパターン生成フローのステップ２０４の代わりに、ステップ５０１〜５０４を用いる。
【００８９】
まず、ステップ５０１で、活性化経路として選択する経路の伝搬遅延値の閾値を設定する。この閾値は、人手で設定してもよく、あるいは回路情報から電子計算機により自動的に取出して設定してもよい。ステップ５０２において、検査対象箇所から外部出力または観測フリップフロップまでの活性化経路を求める。ステップ５０３において、ステップ５０２で選択した活性化経路がステップ５０１で設定した伝搬遅延値の閾値より大きい場合は、ステップ５０４へ進む。小さい場合には、ステップ５０２で活性化経路を選択する。ステップ５０４において、ステップ５０２で選択した活性化経路がテスト可能な活性化経路かどうか判定する。テスト可能活性化経路の場合は、ステップ２０５へ進む。テスト不可能活性化経路と判定された場合は、ステップ５０２へ進む。ステップ２０５以降の処理は図４と同じである。
【００９０】
なお、図１５のステップ５０４のテスト可能パスの選択方法は、文献「Ａ．Ｍｕｒａｋａｍｉ，Ｓ．Ｋａｊｉｈａｒａ，Ｔ．Ｓａｓａｏ，Ｉ．ｐｏｍｅｒａｎｚ  ａｎｄ  Ｓ．Ｍ．Ｒｅｄｄｙ，“Ｓｅｌｅｃｔｉｏｎ  ｏｆ  Ｐｏｔｅｎｔｉａｌｌｙ  Ｔｅｓｔａｂｌｅ  Ｐａｔｈ  Ｄｅｌａｙ  Ｆａｕｌｔｓ  ｆｏｒ  Ｔｅｓｔ  ｇｅｎｅｒａｔｉｏｎ，”Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｓｔ  Ｃｏｎｆ．，ｐｐ．３７６−３８４，Ｏｃｔ．２０００．」に示されている方法などを使用することで求められる。
【００９１】
従来では、伝搬遅延時間が小さい活性化経路を選択する場合もあったが、本実施の形態５により、伝搬遅延時間の大きい活性化経路を選択するようになり、遅延故障の影響を観測する外部出力または観測フリップフロップまでの伝搬遅延時間の大きい経路を選択することが可能になる。
【００９２】
尚、本実施の形態５では、活性化経路と遷移発生経路を別のステップで選択しているが、検査対象箇所を通る伝搬遅延時間の閾値より大きなテスト可能な経路として、活性化経路と遷移発生経路を選択しても良い。
（実施の形態６）
本発明の実施の形態６のテストパターン生成方法を説明する。
【００９３】
図１６は本実施の形態６のテストパターン生成方法を示すフロー図である。図１６に示すように、実施の形態４のテストパターン生成フローのステップ２０４の代わりに、ステップ６０１〜６０３を用いる。
【００９４】
まず、ステップ６０１で、活性化経路として選択する経路のコンタクト数の閾値を設定する。この閾値は、人手で設定してもよく、あるいは回路情報から電子計算機により自動的に取出して設定してもよい。ステップ６０２において、検査対象箇所から外部出力または観測フリップフロップまでの活性化経路を求める。ステップ６０３において、ステップ６０２で選択した検査対象経路がステップ６０１で設定したコンタクト数の閾値より大きい場合は、ステップ２０５へ進む。小さい場合には、ステップ６０２で活性化経路を選択する。ステップ２０５以降の処理は図４と同じである。
【００９５】
図５の信号線ａ８の立下り遷移を検査するための本実施の形態６の活性化経路の特定方法を図１９を用いて説明する。
まず、ステップ６０１でコンタクト数の閾値を１５に設定する。ステップ６０２でａ８−ａ１２−ａ１３−ａ１６−ａ１７を活性化経路として求める。ステップ６０３で活性化経路ａ８−ａ１２−ａ１３−ａ１６−ａ１７のコンタクト数は、図１９よりａ８（４）＋ａ１２（５）＋ａ１３（４）＋ａ１６（１）＋ａ１７（２）＝１６と求められ、コンタクト数の閾値１５より大きいので活性化経路として選択しステップ２０５へ進む。ステップ２０５以降の処理は実施の形態４と同じである。
【００９６】
これにより、従来コンタクト数が少ない経路でも活性化経路として選択していたが、本実施の形態を使用することにより、コンタクト不良により遷移故障が発生する可能性が高い活性化経路を選択することが可能になる。
（実施の形態７）
本発明の実施の形態７のテストパターン生成方法を説明する。
【００９７】
図１７は本実施の形態７のテストパターン生成方法を示すフロー図である。図１７に示すように、実施の形態４のテストパターン生成フローのステップ２０３の代わりに、ステップ７０１〜７０５を用いる。
【００９８】
まず、ステップ７０１で、遷移発生経路として選択する経路の伝搬遅延値の閾値を設定する。この閾値は、人手で設定してもよく、あるいは回路情報から電子計算機により自動的に取出して設定してもよい。ステップ７０２において、外部入力またはフリップフロップから検査対象箇所までの遷移発生経路を求める。ステップ７０３において、ステップ７０２で選択した遷移発生経路がステップ７０１で設定した伝搬遅延値の閾値より大きい場合は、ステップ７０４へ進む。小さい場合には、ステップ７０２で遷移発生化経路を選択する。ステップ７０４において、ステップ７０２で選択した遷移発生経路がテスト可能な遷移発生経路かどうか判定する。テスト可能な遷移発生経路の場合は、ステップ７０５へ進む。テスト可能な遷移発生経路ではないと判定された場合は、ステップ７０２へ進む。ステップ７０５において、ステップ７０２で求めた遷移発生経路に初期値と遷移値を設定する。
【００９９】
なお、図１７のステップ７０４のテスト可能パスの選択方法は、文献「Ａ．Ｍｕｒａｋａｍｉ，Ｓ．Ｋａｊｉｈａｒａ，Ｔ．Ｓａｓａｏ，Ｉ．ｐｏｍｅｒａｎｚ  ａｎｄ  Ｓ．Ｍ．Ｒｅｄｄｙ，“Ｓｅｌｅｃｔｉｏｎ  ｏｆ  Ｐｏｔｅｎｔｉａｌｌｙ  Ｔｅｓｔａｂｌｅ  Ｐａｔｈ  Ｄｅｌａｙ  Ｆａｕｌｔｓ  ｆｏｒ  Ｔｅｓｔ  ｇｅｎｅｒａｔｉｏｎ，”Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｓｔ  Ｃｏｎｆ．，ｐｐ．３７６−３８４，Ｏｃｔ．２０００．」に示されている方法などを使用することで求められる。
【０１００】
これにより、従来では伝搬遅延時間が小さい遷移発生経路を選択する場合もあったが、本実施の形態７により、伝搬遅延時間の大きい遷移発生経路を選択するようになり、遅延故障の影響を観測する外部出力または観測フリップフロップまでの伝搬遅延時間の大きい経路を選択することが可能になる。
（実施の形態８）
本発明の実施の形態８のテストパターン生成方法を説明する。
【０１０１】
図１８は本実施の形態８のテストパターン生成方法を示すフロー図である。図１８に示すように、実施の形態４のテストパターン生成フローのステップ２０３の代わりに、ステップ８０１〜８０４を用いる。
【０１０２】
まず、ステップ８０１で、遷移発生経路として選択する経路のコンタクト数の閾値を設定する。この閾値は、人手で設定してもよく、あるいは回路情報から電子計算機により自動的に取出して設定してもよい。ステップ８０２において、外部入力またはフリップフロップから検査対象箇所までの遷移発生経路を求める。ステップ８０３において、ステップ８０２で選択した遷移発生経路がステップ８０１で設定したコンタクト数の閾値より大きい場合は、ステップ８０４へ進む。小さい場合には、ステップ８０２で遷移発生化経路を選択する。ステップ８０４において、ステップ８０２で求めた遷移発生経路に初期値と遷移値を設定する。
【０１０３】
図５の信号線ａ８の立下り遷移を検査するための本実施の形態８の遷移発生経路の特定方法を図１９を用いて説明する。
まず、ステップ８０１でコンタクト数の閾値を３に設定する。ステップ８０２でａ４−ａ８を遷移発生経路として求める。ステップ８０３で遷移発生経路ａ４のコンタクト数は図１９より２と求められ、コンタクト数の閾値より小さいので、ステップ８０２で遷移発生経路を再度選択する。ステップ８０２でａ１−ａ８を遷移発生経路として求める。ステップ８０３で遷移発生経路ａ１のコンタクト数は図１９より３と求められ、コンタクト数の閾値と同じであるため、ａ４−ａ８を遷移発生経路として選択する。ステップ８０４において、信号線ａ１に初期値“０”と遷移値“１”を設定し、ステップ２０４へ進む。ステップ２０４以降の処理は実施の形態４と同じである。
【０１０４】
これにより、従来コンタクト数が少ない経路でも遷移発生経路として選択していたが、本実施の形態８を使用することにより、コンタクト不良により遷移故障が発生する可能性が高い経路を遷移発生経路として選択することが可能になる。
【０１０５】
尚、検査対象経路および活性化経路および遷移発生経路の選択時に伝搬遅延値とコンタクト数がともに閾値より大きい経路を選択してもよい。また、検査対象経路および活性化経路および遷移発生経路の選択時にロバスト条件が多く割当てられる経路を選択しても良い。
【産業上の利用可能性】
【０１０６】
本発明のテストパターン生成方法は、パス遅延故障モデルまたは遷移故障モデルなどの遅延故障テストパターン生成方法を有し、より品質の高い遅延故障テストパターン生成方法として、また他の遅延故障モデル等の遅延故障テストパターン生成の用途にも適用できる。
【図面の簡単な説明】
【０１０７】
【図１】本発明の実施の形態１のテストパターン生成方法を示すフロー図
【図２】同実施の形態１のテストパターン生成方法を示す回路図
【図３】同実施の形態１のテストパターン生成方法を示す内部信号線の説明図
【図４】本発明の実施の形態４のテストパターン生成方法を示すフロー図
【図５】同実施の形態４のテストパターン生成方法を示す回路図
【図６】同実施の形態４のテストパターン生成方法を示す内部信号線の説明図
【図７】従来のテストパターン生成方法に用いられる経路活性化の説明図
【図８】従来のテストパターン生成方法に用いられる含意表の説明図
【図９】従来のパス遅延故障のテストパターン生成方法の一例を示す回路図
【図１０】従来のパス遅延故障のテストパターン生成方法の他の例を示す回路図
【図１１】従来の遷移故障のテストパターン生成方法の一例を示す回路図
【図１２】従来のテストパターン生成方法に用いられる５値論理の説明図
【図１３】本発明の実施の形態２のテストパターン生成方法を示すフロー図
【図１４】本発明の実施の形態３のテストパターン生成方法を示すフロー図
【図１５】本発明の実施の形態５のテストパターン生成方法を示すフロー図
【図１６】本発明の実施の形態６のテストパターン生成方法を示すフロー図
【図１７】本発明の実施の形態７のテストパターン生成方法を示すフロー図
【図１８】本発明の実施の形態８のテストパターン生成方法を示すフロー図
【図１９】同実施の形態８のテストパターン生成方法による各配線のコンタクト数をレイアウトツールから出力させた結果説明図
【符号の説明】
【０１０８】
Ｘ１〜Ｘ５    入力端子
ａ１〜ａ２、ａ４〜ａ５、ａ７、ａ１５    入力端子
ａ１７    出力端子
【図１】
2005140710.tif 000003
【図２】
2005140710.tif 000004
【図３】
2005140710.tif 000005
【図４】
2005140710.tif 000006
【図５】
2005140710.tif 000007
【図６】
2005140710.tif 000008
【図７】
2005140710.tif 000009
【図８】
2005140710.tif 000010
【図９】
2005140710.tif 000011
【図１０】
2005140710.tif 000012
【図１１】
2005140710.tif 000013
【図１２】
2005140710.tif 000014
【図１３】
2005140710.tif 000015
【図１４】
2005140710.tif 000016
【図１５】
2005140710.tif 000017
【図１６】
2005140710.tif 000018
【図１７】
2005140710.tif 000019
【図１８】
2005140710.tif 000020
【図１９】
2005140710.tif 000021