(57)【要約】【課題】半導体集積回路のスキャンパステストにおいて、各スキャンチェーンのテストパターン長のばらつきを一定の範囲に抑える方法を実現することにより、スキャンパステスト時間の短縮を図る。【解決手段】論理回路をそれぞれが内部スキャンチェーンを有する複数の機能グループに分割し（１０１〜１０３）、機能グループそれぞれに論理複雑度を算出し（１０４、１０５）、論理複雑度に基づき機能グループの内部スキャンチェーンを適宜接続して複数のスキャンチェーンを構成し（１０６）、スキャンチェーンそれぞれのテストパターン長を算出し（１０７）、テストパターン長のばらつきが一定の範囲を超えた場合に（１０８）スキャンチェーンを構成する機能グループの接続関係を修正することにより（１０９）、テストパターン長のばらつきを一定の範囲にそろえる。【選択図】  図１
2005043259.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路のスキャンパステスト回路設計方法であって、複数のスキャンチェーンにおけるそれぞれのテストパターン長のばらつきを一定の範囲にそろえるように、前記スキャンチェーンの構成を修正するスキャンチェーン形成工程を有するスキャンパステスト回路設計方法。
【請求項２】
前記スキャンチェーン形成工程は、半導体集積回路の論理回路をそれぞれが内部スキャンチェーンを有する複数の機能グループに分割する工程と、前記機能グループそれぞれに対して所定の評価値を算出する工程と、前記評価値に基づき前記機能グループの内部スキャンチェーンを適宜接続して複数のスキャンチェーンを構成する工程と、前記複数のスキャンチェーンそれぞれのテストパターン長を算出する工程と、前記テストパターン長のばらつきが一定の範囲を超えた場合に前記スキャンチェーンを構成する機能グループの内部スキャンチェーンの接続関係を修正する工程とを有する請求項１記載のスキャンパステスト回路設計方法。
【請求項３】
前記所定の評価値は、前記機能グループ内の条件付分岐数を評価した論理複雑度である請求項２記載のスキャンパステスト回路設計方法。
【請求項４】
前記機能グループごとに、単独でスキャンパステスト動作を可能にするスキャンモード制御信号を備える請求項２または３記載のスキャンパステスト回路設計方法。
【請求項５】
スキャンパステスト機能を有する半導体集積回路において、内部の論理回路が内部スキャンチェーンをそれぞれ有する複数の機能グループに分割され、前記機能グループそれぞれにスキャンチェーン接続切り替え回路を有し、請求項１から４のいずれか一項記載のスキャンパステスト回路設計方法により決定された複数のスキャンチェーンを構成するように、前記機能グループの内部スキャンチェーンが前記スキャンチェーン接続切り替え回路により縦続接続されたスキャンパステスト回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路のスキャンパステスト技術に係り、特にスキャンパステスト時間の短縮を可能にするスキャンパステスト回路及びスキャンパステスト回路設計方法に関する。
【背景技術】
【０００２】
半導体集積回路の機能テストの容易化を図るテスト手法として、スキャンパステスト方式が一般に採用されている。図６はスキャンパステスト方式を採用した半導体集積回路の構成を示すブロック図である。図６において、内部に設けられた第１〜第ｍのフリップフロップ回路がシフトレジスタ回路として動作するように縦続接続され、スキャンパステスト回路を構成している。
【０００３】
スキャンパステスト時には、スキャンモードコントロール信号をスキャンパステストモードに設定し、スキャンインとしてスキャンテストデータを送り込んで第１〜第ｍのフリップフロップ回路の値を設定し、キャプチャ動作後に再びスキャンモードコントロール信号をスキャンパステストモードに設定し、第１〜第ｍのフリップフロップ回路の値をスキャンアウトとして順に読み出す構成になっている。
【０００４】
従来、スキャンパステストのテスト時間を短縮するために、各スキャンチェーンの長さを比較し、スキャンチェーンに適当な間隔でセレクタ回路を挿入してスキャンチェーンを分断可能にし、スキャンチェーンの短いスキャンパスのスキャンアウトを分断したスキャンチェーンの長いスキャンパスに入力し、スキャンチェーンの長さを均等化することでスキャンパステストのテスト時間を短縮する手法が考案されている（例えば、特許文献１参照）。
【特許文献１】特開２００２−９２３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のスキャンパステスト手法では、１つのスキャンモードコントロール信号を用いてすべてのスキャンチェーンのシフト動作とキャプチャ動作を切り替えていた。回路全体のテスト時間はテストパターン長が最も長いスキャンチェーンに依存するため、各スキャンチェーンの長さがなるべくそろうように設計していた。
【０００６】
しかし、各スキャンチェーンの長さをそろえた場合でも、あるフリップフロップ間のロジックに複雑な条件分岐式を含む回路がある場合、一定の故障検出率を得るためにそのロジックを含むスキャンチェーンのテストパターン長がとりわけ長くなる可能性がある。その結果、テスト時間がそのスキャンチェーンを含むスキャンパスに律足してしまうという問題があった。
【０００７】
本発明はかかる点に鑑みてなされたものであり、半導体集積回路のスキャンパステストにおいて、各スキャンチェーンのテストパターン長のばらつきを一定の範囲に抑える方法を実現することにより、スキャンパステスト時間の短縮を図ることができるスキャンパステスト回路及びスキャンパステスト回路設計方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の半導体集積回路のスキャンパステスト回路設計方法は、複数のスキャンチェーンにおけるそれぞれのテストパターン長のばらつきを一定の範囲にそろえるように、前記スキャンチェーンの構成を修正するスキャンチェーン形成工程を有する。
【０００９】
上記構成によれば、半導体集積回路のスキャンパステスト回路設計の際に、それぞれのテストパターン長のばらつきが一定の範囲にそろうようにスキャンチェーンの構成が修正されるため、各スキャンチェーンのフリップフロップ数にばらつきがあった場合でも、一定の故障検出率を得るために要するテストパターン長がスキャンチェーンごとに同程度となり、スキャンパステスト時間の短縮を図ることができる。
【００１０】
前記スキャンチェーン形成工程は、半導体集積回路の論理回路をそれぞれが内部スキャンチェーンを有する複数の機能グループに分割する工程と、前記機能グループそれぞれに対して所定の評価値を算出する工程と、前記評価値に基づき前記機能グループの内部スキャンチェーンを適宜接続して複数のスキャンチェーンを構成する工程と、前記複数のスキャンチェーンそれぞれのテストパターン長を算出する工程と、前記テストパターン長のばらつきが一定の範囲を超えた場合に前記スキャンチェーンを構成する機能グループの内部スキャンチェーンの接続関係を修正する工程とを有する。
【００１１】
上記構成によれば、それぞれの機能グループの評価値に基づき最初のスキャンチェーンを構成し、それぞれのスキャンチェーンのテストパターン長が一定の範囲にそろうように機能グループごとに接続関係を修正することができるため、より好適なスキャンチェーン形成が容易になり、結果的に、テスト時間の短縮をさらに進めることができる。
【００１２】
前記所定の評価値は、前記機能グループ内の条件付分岐数を評価した論理複雑度とする。
【００１３】
上記構成によれば、機能グループ内の条件付分岐数を評価した論理複雑度を用いて最初のスキャンチェーンを構成するため、テストパターン長と密接に関係する論理複雑度がスキャンチェーン形成に的確に反映され、より好適なスキャンチェーン形成がなされることにより、テスト時間の短縮をさらに進めることができる。
【００１４】
さらに、前記機能グループごとに、単独でスキャンパステスト動作を可能にするスキャンモード制御信号を備える。
【００１５】
上記構成によれば、論理シミュレーションにおいて機能グループごとにスキャンパステスト動作をさせることができるため、スキャンチェーンそれぞれのテストパターン長を算出する作業が容易になる。
【００１６】
本発明のスキャンパステスト回路は、内部の論理回路が内部スキャンチェーンをそれぞれ有する複数の機能グループに分割され、前記機能グループそれぞれにスキャンチェーン接続切り替え回路を有し、上記スキャンパステスト回路設計方法により決定された複数のスキャンチェーンを構成するように、前記機能グループの内部スキャンチェーンが前記スキャンチェーン接続切り替え回路により縦続接続される。
【００１７】
上記構成によれば、スキャンチェーン接続切り替え回路により機能グループが接続され、それぞれのテストパターン長のばらつきが一定の範囲にそろうようにスキャンチェーンが構成されるため、一定の故障検出率を得るために要するテストパターン長がスキャンチェーンごとに同程度となり、スキャンパステスト時間の短縮を図ることができる。
【発明の効果】
【００１８】
本発明によれば、半導体集積回路のスキャンパステスト回路において、スキャンチェーンの構成を修正し、それぞれのテストパターン長のばらつきを一定の範囲にそろえることができるため、各スキャンチェーンのフリップフロップ数にばらつきがあった場合でも、回路全体で一定の故障検出率を得るために要するテストパターン長がスキャンチェーンごとに同程度となりことで、スキャンパステスト時間を短縮することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態について図面を参照しながら説明する。図１は本発明の一実施の形態に係るスキャンパステスト回路設計方法を示す流れ図である。図２に示す従来のスキャンパステスト回路設計方法との第一の相違点は、機能グループごとにスキャンチェーンを張り、各機能グループ間にスキャンチェーン切り替え用の回路を挿入することである。
【００２０】
第二の相違点は、機能グループごとに回路内の条件分岐数を抽出し、機能グループごとのロジック部の論理複雑度を示すプロファイルを作成し、このプロファイルの結果から各スキャンチェーンのテストパターン長がそろうように、スキャンチェーン切り替え回路でスキャンチェーンを接続することである。
【００２１】
第三の相違点は、スキャンチェーンごとに用意したスキャンモードコントロール信号で各スキャンチェーンのスキャン動作を行うことである。
【００２２】
第四の相違点は、各スキャンチェーンが一定の故障検出率を得るためのテストパターン長を算出し、スキャンチェーン間のテストパターン長のばらつきが低くなるまでスキャンチェーン切り替え回路でスキャンパスをつなぎ変えることである。
【００２３】
図３は本発明の一実施の形態に係るスキャンパステスト回路の構成例を示すブロック図である。図３において、３０１〜３０６は機能グループ１〜機能グループ６、３１１〜３１３はセレクタ１〜セレクタ３、３２１〜３２３はスキャンイン１〜スキャンイン３、３３１〜３３３はスキャンアウト１〜スキャンアウト３である。
【００２４】
スキャンイン１〜スキャンイン３、およびスキャンアウト１〜スキャンアウト３は、スキャンテストデータ用の信号線である。機能グループ１〜機能グループ６は、機能グループに分割した回路ブロックであり、各機能グループ内部は、スキャンイン、スキャンアウト、スキャンクロック、スキャンモードコントロール信号を備え、通常のスキャン設計手法でスキャンチェーンが張られている。
【００２５】
また、セレクタ１〜セレクタ３は、スキャンイン１〜スキャンイン３、機能グループ１〜機能グループ６、スキャンアウト１〜スキャンアウト３の間の接続を任意に選択し、スキャンチェーンを自在につなぎ変えることができるスキャンチェーン切り替え回路である。
【００２６】
図１において、まず、ステップ１０１〜１０３で、図３に示したブロック図を実現する。
ステップ１０１：半導体集積回路を機能グループごとに分割する。
ステップ１０２：スキャンイン、各機能グループ、スキャンアウトの間に、スキャンチェーン切り替え回路用のセレクタを挿入する。
ステップ１０３：各機能グループの内部に従来のスキャン設計手法でスキャンチェーンを張る。
【００２７】
次に、ステップ１０４〜１０６で、論理複雑度のプロファイルに基づきテストパターン長がそろうようにスキャンチェーンをつなぎ変える。
【００２８】
ステップ１０４：あるロジックに複雑な条件分岐式があると、そのロジックを含むスキャンチェーンはその条件分岐式を網羅するために長いスキャンテストパターンを要する。そこで、各機能グループ内のロジック部にある条件分岐を洗い出す。
【００２９】
ステップ１０５：ステップ１０４で抽出した条件分岐数から、機能グループごとに回路の論理複雑度を求め、プロファイル化する。
【００３０】
ステップ１０６：ステップ１０５で求めたプロファイルの結果から、機能グループごとに回路の論理複雑度の合計が同程度になるように、各機能グループの組み合わせ方法を割り出し、スキャンチェーン切り替え回路の接続を切り替える。
【００３１】
さらに、ステップ１０７〜１１１で、各スキャンチェーンのスキャン動作を行い、スキャンチェーン間のテストパターン長のばらつきが低くなるまでスキャンチェーンをつなぎ変えを繰り返す。
【００３２】
ステップ１０７：ステップ１０６のスキャンチェーン切り替え回路の接続状態で、スキャンチェーンごとに用意したスキャンモードコントロール信号により各スキャンチェーンのスキャン動作を独立に実行し、ある一定の故障検出率を満足するまでのテストパターン長をスキャンチェーンごとに算出する。
【００３３】
ステップ１０８：ステップ１０７で求めた各スキャンチェーンのテストパターン長から、スキャンチェーン間のテストパターン長のばらつきを求める。
【００３４】
ステップ９：各スキャンチェーンのテストパターン長のばらつきが大きいと、結果的にテスト時間はテストパターン長が最大のスキャンチェーンに律足してしまう。そのため、ステップ１０８で求めたテストパターン長のばらつきの結果から、ばらつき度が大きい場合は、テストパターン長が長いスキャンチェーンは接続されている機能ブロックをセレクタ回路により分割し、テストパターン長が短いスキャンチェーンはお互いを接続するようにセレクタ回路の接続を切り替える。
【００３５】
セレクタ回路の接続を切り替えた後は、再度ステップ１０７に戻り、スキャンチェーンごとのテストパターン長のばらつきを求める。各テストパターンのばらつきが低くなるまでスキャンチェーン切り替え回路の接続を切り替え、テストパターン長を算出する。
【００３６】
ステップ１１０：各スキャンチェーンのテストパターン長のばらつきが低くなれば、スキャンチェーン切り替え回路の接続を固定する。
【００３７】
次に、図３に示したスキャンパステスト回路により、上記スキャンパス設計手順を具体的に説明する。図４は、図３のスキャンパステスト回路における各機能グループの条件分岐式の具体例を示した図である。
【００３８】
まず、各機能グループのロジック回路の条件分岐（ｃａｓｅ文、ｉｆ文など）から、そのロジック回路の論理複雑度を次のように算出する。
【００３９】
機能グループ１：０００〜１１１までの９通りの条件文があるため、このグループのロジック回路の論理複雑度を９とする。
【００４０】
機能グループ２：ｉｆ−ｅｌｓｅ文による条件分岐が５つあるため、このグループのロジック部の論理複雑度を５とする。
【００４１】
機能グループ３：条件分岐式がないため、このグループのロジック部の論理複雑度を１とする。
【００４２】
機能グループ４：条件分岐式がないため、このグループのロジック部の論理複雑度を１とする。
【００４３】
機能グループ５：ｉｆ−ｅｌｓｅ文による条件分岐が２つあるため、このグループのロジック部の論理複雑度を２とする。
【００４４】
機能グループ６：条件文がネスト構造になっていて、深さ方向に条件文が３つ、ｉｆ−ｅｌｓｅ文による条件分岐が２つあるため、このグループの論理複雑度を３×２＝６とする。
【００４５】
実際には１つのロジックに複数の条件分岐式がある場合があるが、その場合は最も論理複雑度が大きい条件分岐式をそのグループの論理複雑度とする。このようなルールに基づいて、各機能グループの論理複雑度を求めプロファイルを作成する。
【００４６】
次に、各機能グループの接続方法を、各機能グループの論理複雑度のプロファイルに基づき、図５に示すように決定する。すなわち、機能グループ１は論理複雑度９で最も大きいため、そのままスキャンイン１、スキャンアウト１と接続する。
【００４７】
次に、機能グループ２、３、４を接続して論理複雑度の合計を７にする。同様に、機能グループ５、６を接続して論理複雑度の合計を８とする。このようにして、３本のスキャンチェーンにおける論理複雑度のばらつきを抑える。
【００４８】
次に、スキャンチェーン切り替え回路の上記接続状態で、スキャンチェーンごとに用意したスキャンモードコントロール信号により、各スキャンチェーンごとに独立にスキャン動作を行い、ある一定の故障検出率を満足するまでテストパターン長を算出する。
【００４９】
テストパターン長のばらつきが大きい場合は、再度スキャンチェーン切り替え用のセレクタ回路の接続を切り替え、テストパターン長を算出する。図５の回路例では、「スキャンイン１-機能グループ１-スキャンアウト１（複雑度９）」、「スキャンイン２-機能グループ５-機能グループ４-機能グループ２-スキャンアウト２（複雑度８）」、「スキャンイン３-機能グループ３-機能グループ６-スキャンアウト３（複雑度７）」という組み合わせが考えられる。
【００５０】
上記動作を繰り返すことにより、各スキャンチェーンのテストパターン長のばらつきを最小限に抑えることができる。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施の形態に係るスキャンパステスト回路設計方法を示す流れ図。
【図２】従来のスキャンパステスト回路設計方法を示す流れ図。
【図３】本発明の一実施の形態に係るスキャンパステスト回路の構成例を示すブロック図。
【図４】スキャンパステスト回路における各機能グループの条件分岐式の具体例を示す図。
【図５】論理複雑度のプロファイルに基づく各機能グループの接続関係決定の具体例を示す図。
【図６】スキャンパステスト方式を採用した半導体集積回路の構成を示すブロック図。
【符号の説明】
【００５２】
１０１〜１１０  スキャンパステスト回路設計方法のステップ
３０１  機能グループ１
３０２  機能グループ２
３０３  機能グループ３
３０４  機能グループ４
３０５  機能グループ５
３０６  機能グループ６
３１１  セレクタ１
３１２  セレクタ２
３１３  セレクタ３
３２１  スキャンイン１
３２２  スキャンイン２
３２３  スキャンイン３
３３１  スキャンアウト１
３３２  スキャンアウト２
３３３  スキャンアウト３
【図１】
2005043259.tif 000003
【図２】
2005043259.tif 000004
【図３】
2005043259.tif 000005
【図４】
2005043259.tif 000006
【図５】
2005043259.tif 000007
【図６】
2005043259.tif 000008