(57)【要約】【課題】  束ねる端子群の端子間の短絡又は多重故障がある場合であっても、これらを検出し、入出力端子を束ねても安定したテストを行なう。【解決手段】  ＬＳＩ１は、バウンダリスキャン回路１２に接続された双方向バッファ２０ａ〜２０ｃを有し、バウンダリスキャン回路１２は、各双方向バッファ２０ａを入力モード又は出力モードに非同期に設定する非同期設定回路７ａ〜７ｃを有する。先ず双方向バッファ２０ａ〜２０ｃを非同期に一律出力モードに設定して論理故障を検出し、論理故障がない場合に、双方向バッファ２０ａ〜２０ｃに接続される入出力端子ＩＯ１〜ＩＯ３を束ね、その双方向バッファ２０ａ〜２０ｃを非同期に一律入力モードに固定し、バウンダリスキャン回路１２に所望のイネーブル状態に設定する設定値を設定した後、非同期に一律入力モードを解除し、バウンダリスキャン回路１２によりＤＣテストを実行する。【選択図】  図１
2007003338.tif 000002
【特許請求の範囲】
【請求項１】
バウンダリスキャン回路に接続された双方向バッファを有する半導体装置のテスト方法であって、
前記双方向バッファを入力モード又は出力モードに非同期に設定する非同期設定回路により、前記双方向バッファを一律出力モードに設定して論理故障を検出し、
前記論理故障がない場合に、双方向バッファに接続される入出力端子複数を束ね、前記非同期設定回路により前記束ねた入出力端子の双方向バッファを一律入力モードに固定し、
前記バウンダリスキャン回路に前記各双方向バッファを所望のイネーブル状態とする設定値を設定した後前記非同期設定回路により前記一律入力モードを解除し、
前記入出力端子を束ねた状態で前記バウンダリスキャン回路によりＤＣテストを実行する半導体装置のテスト方法。
【請求項２】
前記双方向バッファを一律出力モードに固定して論理故障を検出する際は、
スキャンフリップフロップを使用し、内部回路を介して各双方向バッファの論理故障を検出する
ことを特徴とする請求項１記載の半導体装置のテスト方法。
【請求項３】
前記双方向バッファを一律出力モードに固定して論理故障を検出する際は、
内部回路と前記双方向バッファとの接続を切り離し、前記バウンダリスキャン回路によって論理故障を検出する
ことを特徴とする請求項１記載の半導体装置のテスト方法。
【請求項４】
前記双方向バッファを一律出力モードに固定して論理故障を検出する際は、
前記双方向バッファ間の短絡故障及び／又は前記双方向バッファの縮退故障を検出する
ことを特徴とする請求項１乃至３のいずれか１項記載の半導体装置のテスト方法。
【請求項５】
バウンダリスキャン回路に接続された双方向バッファを複数備える半導体装置において、
前記双方向バッファを入力モード又は出力モードに非同期に設定する非同期設定回路を有する半導体装置。
【請求項６】
前記非同期設定回路は、２以上の制御信号により、前記双方向バッファを非同期に入力モード又は出力モードに切り替え制御される
ことを特徴とする請求項５記載の半導体装置。
【請求項７】
前記非同期設定回路は、非同期にイネーブル状態を固定するか否かを制御する非同期イネーブル切り替え信号と、前記イネーブル状態を固定とした際に入力モードとするか出力モードとするかを切り替え制御する非同期イネーブル入出力制御信号とにより、前記双方向バッファを非同期に入力モード又は出力モードに切り変え制御する
ことを特徴とする請求項６記載の半導体装置。
【請求項８】
前記バウンダリスキャン回路は、
前記双方向バッファの入出力モードを設定する設定値を受け取る第１のバウンダリスキャンレジスタ及びラッチと、
前記双方向バッファに入力する入力値を受け取る第２のバウンダリスキャンレジスタ及びラッチとを有し、
前記非同期設定回路は、前記内部回路の出力及び前記第１のラッチに接続され、
非同期にイネーブル状態を固定するか否かを制御する非同期イネーブル切り替え信号により前記非同期設定回路の非同期設定機能がオフされている場合に、モード切替信号により、前記非同期設定回路は前記内部回路の出力又は前記第１のラッチの前記設定値を選択出力し、前記双方向バッファには前記第２のラッチの前記入力値又は内部回路からの出力が選択出力される
ことを特徴とする請求項５乃至７のいずれか１項記載の半導体装置。
【請求項９】
前記内部回路及び前記第２のラッチに接続され前記入力値を前記双方向バッファへ選択出力する第１の選択回路と、
前記双方向バッファの出力及び前記第１の選択回路の出力に接続されその出力値を前記第２のバウンダリスキャン回路に選択出力する第２の選択回路とを有し、
前記第１及び第２の選択回路は、前記モード切替信号に応じて前記選択出力を実行する
ことを特徴とする請求項８記載の半導体装置。
【請求項１０】
前記内部回路及び前記第２のラッチに接続され前記入力値を前記双方向バッファへ選択出力する第１の選択回路と、
前記双方向バッファの出力に接続された第３のバウンダリスキャンレジスタとを有し、
前記第１の選択回路は、前記モード切替信号に応じて前記選択出力を実行する
ことを特徴とする請求項８記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置及びそのテスト方法に関し、特にＬＳＩ信号端子を複数短絡したものをＬＳＩテスタ信号端子の１つに接続してテストを行なう半導体装置及びそのテスト方法に関する。
【背景技術】
【０００２】
近年、ＬＳＩ信号端子の増加は止まることを知らず、増加の一途をたどっているが、ＬＳＩテスタのテスタ端子の増加はそれに追いついていない。特にＬＳＩテスタは非常に高価であり、超多ピンのＬＳＩテスタの導入は、製品のテストコストに直結するため、容易ではない。そこで、少ないテスタ端子を複数のＬＳＩ信号端子に割り当ててテストを行なうことを可能にする技術が種々検討されている。
【０００３】
通常、ＬＳＩ信号端子（以下、外部端子という）とＬＳＩテスタ端子（以下、テスタ端子という）は、１対１で接続してＬＳＩをテストする。これに対し、複数の外部端子をＬＳＩ外部（治工具）で短絡（以下、束ねるという）して１つのテスタ端子に接続し、テスト対象の１つの外部端子のみ入力／出力モードのイネーブル（以下、ＥＮという）値をＯＮ値として活性化し、１端子ずつテストする方法がある（例えば特許文献１、２参照）。
【０００４】
なお、ＥＮのＯＮ／ＯＦＦ値はＬＳＩ毎、又はＩ／Ｆ（インターフェース）バッファ毎に任意であるが、本明細書においては、ＥＮ値のＯＮ（出力モード）値を"１"、ＯＦＦ値（入力モード）を"０"として説明することする。
【０００５】
図１７は、従来技術のバウンダリスキャン（以下、ＢＳＣＡＮという）回路の全体を示す回路図である。図１７に示すように、この従来のＬＳＩは、ＬＳＩ基板１０１上に、所望の機能を実現する内部論理回路１０２と、データ入出力回路１１１ａ、１１１ｂ、１１１ｃとを有している。データ入出回路１１１ａは、ＬＳＩ外部と論理信号をやり取りする双方向バッファ２００と、ＢＳＣＡＮ回路２１０とを有する。ＢＳＣＡＮ回路２１０は、データ側ＢＳＣＡＮレジスタ１１５ａと、データ側Ｕｐｄａｔｅラッチ１１６ａとを有する。さらに、ＥＮ側ＢＳＣＡＮ回路１１５ｂと、ＥＮ側Ｕｐｄａｔｅラッチ１１６ｂと、セレクタ１１４ａ〜１１４ｃ及びＡＮＤゲート（ＡＮＤ回路）１１８とを有する。
【０００６】
双方向バッファ２００の双方向端子Ａが接続されるＬＳＩ外部端子ＩＯ１は、ＬＳＩ外部のＬＳＩテスタ（不図示）、又はＬＳＩ基板１０１とテスタ端子とを接続する治具２２０により、他の外部端子同士、短絡されている（束ねられている）。
【０００７】
双方向バッファ２００とＢＳＣＡＮ回路２１０の接続は次のようになっている。双方向バッファ２００は、データ入力端子Ｂにセレクタ１１４ａの出力が接続され、ＥＮ入力端子Ｃにセレクタ１１４ｂの出力が接続され、データ出力端子Ｄは内部論理回路１０２の入力ＮＯ２へ接続される。この入力Ｎ０２は、セレクタ１１４ｃの切り替え入力値が"０"の選択入力にも接続される。
【０００８】
また、ＡＮＤ回路１１８は、一方の入力（論理反転）にＴＡＰ（Test Access Port）回路１１０のＢＳＣＡＮ制御信号ＭＯＤＥ１が接続され、他方の入力にセレクタ１１４ｂの出力が接続され、出力にセレクタ１１４ｃの切り替え入力が接続される。セレクタ１１４ａは、切り替え入力値が"０"の選択入力に内部論理回路１０２の出力Ｈ０１が接続され、切り替え入力値が"１"の選択入力にデータ側Ｕｐｄａｔｅラッチ１１６の出力が接続される。さらに、その切り替え入力にＴＡＰ回路１１０のＢＳＣＡＮ制御信号ＭＯＤＥ１が接続され、その出力は双方向バッファ２００のデータ入力端子Ｂ及びセレクタ１１４ｃの切り替え入力値が"１"の選択入力に接続される。
【０００９】
セレクタ１１４ｂは、切り替え入力値が"０"の選択入力に内部論理回路１０２の出力Ｈ０３が接続され、切り替え入力値"１"の選択入力にＥＮ側Ｕｐｄａｔｅラッチ１１６の出力が接続され、切り替え入力にＴＡＰ回路１１０のＢＳＣＡＮ制御信号ＭＯＤＥ１が接続され、出力に双方向バッファ２００のＥＮ入力端子Ｃが接続される。
【００１０】
セレクタ１１４ｃは、切り替え入力値が"０"の選択入力に双方向バッファ２００のデータ出力端子Ｄが接続され、切り替え入力値が"１"の選択入力にセレクタ１１４ａの出力が接続される。またその切り替え入力にＡＮＤ回路１１８の出力が接続され、その出力にデータ側ＢＳＣＡＮレジスタ１１５ａのＰＩＮ入力に接続される。
【００１１】
データ側ＢＳＣＡＮレジスタ１１５ａは、ＰＩＮ入力にセレクタ１１４ｃの出力が接続され、ＳＦＤＲ入力にＴＡＰ回路１１０のＢＳＣＡＮ制御信号ＳＦＤＲが接続され、ＣＬＫＤＲ入力にＴＡＰ回路１１０のＢＳＣＡＮ制御信号ＣＬＫＤＲが接続され、ＰＯＵＴ出力にデータ側Ｕｐｄａｔｅラッチ１１６ａのデータ入力が接続される。また、そのＢＳＩＮ入力にＥＮ側ＢＳＣＡＮレジスタ１１５ｂのＢＳＯＵＴが接続され、データ側ＢＳＣＡＮレジスタ１１５ａのＢＳＯＵＴ出力はＴＡＰ回路１０のＢＳ＿ＳＩＮに接続される。
【００１２】
ＥＮ側ＢＳＣＡＮレジスタ１１５ｂは、ＰＩＮ入力に内部論理回路１０２の出力Ｈ０３が接続され、ＳＦＤＲ入力にＴＡＰ回路１１０のＢＳＣＡＮ制御信号ＳＦＤＲが接続され、クロック入力（ＧＢ＝ＣＬＫＤＲ）にＴＡＰ回路１１０のＢＳＣＡＮ制御信号ＣＬＫＤＲが接続され、ＰＯＵＴ出力にＥＮ側Ｕｐｄａｔｅラッチ１１６ｂのデータ入力が接続され、ＢＳＩＮ入力にデータ入出力回路１１１ｂのＢＳＯＵＴが接続され、ＢＳＯＵＴ出力はデータ側ＢＳＣＡＮレジスタ１１５ａのＢＳＩＮ入力に接続されている。
【００１３】
データ側Ｕｐｄａｔｅラッチ１１６ａは、データ入力にデータ側ＢＳＣＡＮレジスタ１１５ａのＰＯＵＴ出力が接続され、クロック入力(Ｇ＝ＵＰＤＤＲ)にＴＡＰ回路１１０のＵＰＤＤＲが接続され、出力にセレクタ１１４ａの切り替え入力値が"１"の選択入力が接続されている。
【００１４】
ＥＮ側Ｕｐｄａｔｅラッチ１１６ｂは、データ入力にＥＮ側ＢＳＣＡＮレジスタ１１５ｂのＰＯＵＴ出力が接続され、クロック入力(Ｇ＝ＵＰＤＤＲ)にＴＡＰ回路１１０のＵＰＤＤＲが接続され、出力にセレクタ１１４ｂの切り替え入力値が"１"の選択入力が接続されている。
【００１５】
データ入出力回路１１１ｂ、１１１ｃにおいては、データ側、ＥＮ側ＢＳＣＡＮレジスタ等同様の回路を有する。そして、データ入出力回路１１１ｂのデータ側ＢＳＣＡＮレジスタ（不図示）のＢＳＯＵＴ出力にデータ入出力回路１１１ａのＥＮ側ＢＳＣＡＮレジスタ１５ｂのＢＳＩＮ入力が接続される。データ入出力回路１１１ｂのＥＮ側ＢＳＣＡＮレジスタ（不図示）は、そのＢＳＩＮ入力にデータ入出力回路１１１ｃのデータ側ＢＳＣＡＮレジスタ（不図示）のＢＳＯＵＴ出力が接続される。
【００１６】
また、データ入出力回路１１１ｃのデータ側ＢＳＣＡＮレジスタ（不図示）は、そのＢＳＯＵＴにデータ入出力回路１１１ｂのＥＮ側ＢＳＣＡＮレジスタ（不図示）のＢＳＩＮ入力が接続され、データ入出力回路１１１ｃのＥＮ側ＢＳＣＡＮレジスタ（不図示）は、そのＢＳＩＮ入力にＴＡＰ回路１１０のＢＳ＿ＳＯＵＴが接続される。データ入出力回路１１１ｂ、１１１ｃにおいて、それ以外は、データ入出力回路１１１ａと同様に接続される。
【００１７】
次に、従来技術のテスト動作について説明する。図１８は、従来技術のテスト動作を示すフローチャートであり、図１９は、図１８に示すステップＳ１０５の詳細を示すフローチャートである。また、図２０、図２１は、従来のテスト動作説明のため、図１７からデータ入力回路１１１ａの双方向バッファ２００を、"１"、"０"、"High-Z（ハイインピーダンス）"の３つの状態を有する３ｓｔ（スリーステート）出力バッファ２０３に置き換えたものとし、更に、ＢＳＣＡＮ回路２１０のＡＮＤ回路１１８、並びにＴＡＰ回路１１０の各制御信号のＳＦＤＲ、ＣＬＫＤＲ、ＵＰＤＤＲ、ＭＯＤＥ１、及びＴＡＰ回路１０を省略したものとなっている。また、図２０、図２１においては、各データ入力回路１１１ａ、１１１ｂ、１１１ｃにおいて、入力側、ＥＮ側の各ＢＳＣＡＮレジスタにおける"Ｘ"は、"１"又は"０"の値をとることを示し、各Ｕｐｄａｔｅラッチにおける"１"又は"０"は、ＤＣテスト時に保持する値を示すものとする。なお、ＢＳＣＡＮ動作（ＴＡＰ回路１０の状態遷移＝モード変更を含む）は、ＩＥＥＥ１１４９．１に定義されており、更に当業者にとって周知の事項であるため、その詳細は省略する。
【００１８】
先ず、図１８に示すように、ＬＳＩのテスト対象端子となる外部端子ＯＴ１〜ＯＴ３を治工具２２０により束ね（短絡し）（図１８：ステップＳ１０１）、電源をＯＮする（図１８：ステップＳ１０２）。以下、束ねる対象の外部端子を束ね端子群といい、束ねられた外部端子数＝Ｎとして説明する。そして、ＢＳＣＡＮをＥｘｔｅｓｔモードに設定し（ステップＳ１０３）、順次ＥＮ値を制御し、データ入力回路１１１ａの３ｓｔバッファ２０３、及びデータ入力回路１１１ｂ、１１１ｃの双方向バッファ２００のＤＣテストを行う（ステップＳ１０４、１０５）。更に、ＥＮ値を制御しながら、スキャンパス（以下、ＳＣＡＮという）などの機能テストパタンで、内部論理回路１０２の故障検出を行い、ＢＳＣＡＮで入力／出力／双方向バッファを含む故障検出（動作テスト）を行う（ステップＳ１０６）。
【００１９】
ステップＳ１０３で使用するＢＳＣＡＮの仕組みはＥｘｔｅｓｔモードを用いる。このＥｘｔｅｓｔモードは、ＬＳＩの内部論理回路１０２の出力の双方向バッファ又は出力バッファへの伝播をセレクタ１１４ａ、１１４ｂにて切り離し、ＬＳＩ外部よりＢＳＣＡＮレジスタに設定値を入力するＢＳＣＡＮデータ入力端子ＴＤＩより順次シフト入力（ＳｈＩ／Ｆｔ＿ＤＲ）されたＢＳＣＡＮレジスタ１１５ａの値を、Ｕｐｄａｔｅラッチ１１６ａに読み込み、双方向バッファ又は出力バッファへ出力する（Ｕｐｄａｔｅ＿ＤＲ）。または、双方向バッファ又は入力バッファに入力された値をセレクタ１１４ｃを経由してＥＮ側ＢＳＣＡＮレジスタ１１５ｂに取り込み（Ｃａｐｔｕｒｅ＿ＤＲ）、ＥＮ側ＢＳＣＡＮレジスタ１１５ｂの値をＬＳＩ外部に出力する端子ＴＤＯに順次シフト出力(ＳｈＩ／Ｆｔ＿ＤＲ)をする動作である。
【００２０】
図２２は、双方向バッファ２００のＢＳＣＡＮ回路の詳細を示す図である。この場合、Ｅｘｔｅｓｔモード中ＴＡＰ回路より供給されるＭＯＤＥ１値は"１"固定で、それ以外は"０"固定である。
【００２１】
次に、ステップＳ１０５の３ｓｔ出力バッファ、双方向バッファ２００のＤＣテストの詳細について説明する。図１９に示すように、初期設定を行うかを判断する（ステップＳ１１１）。ここで、ｎは束ね対象端子群に含まれるＮ個の外部端子のいずれかを示し、初期設定を行なう場合はｎ＝０としてステップＳ１１２に進む。なお、ｎは０,１,・・・,Ｎとし、後述する終了条件は、ｎ＝Ｎである。
【００２２】
次に、全てのセレクタ１１４ａのＥＮがＯＦＦ値になるよう、ＥＮ側ＢＳＣＡＮレジスタ１１５ｂに"０"をＢＳＣＡＮデータ入力端子ＴＤＩからシフト入力し、また全データ側ＢＳＣＡＮレジスタ１１５ａに"０"をＢＳＣＡＮデータ入力端子ＴＤＩからシフト入力する（ステップＳ１１２）。各ＢＳＣＡＮレジスタ１１５ａ、１１５ｂに値"０"を設定後、各Ｕｐｄａｔｅラッチ１１６ａ、１１６ｂにＢＳＳＣＡＮレジスタ１１５ａ、１１５ｂの値を取り込むため、そして、ＴＡＰモードをＳｈｉｆｔ＿ＤＲ→Ｅｘｉｔｅ＿ＤＲ→Ｕｐｄａｔｅ＿ＤＲに切り替えＵｐｄａｔｅ＿ＤＲに設定する（ステップＳ１１４）。そして、各ＢＳＣＡＮレジスタ１１５ａ、１１５ｂの値をＵｐｄａｔｅラッチ１１６ａ、１１６ｂに取り込ませ（ステップＳ１１５）る。
【００２３】
そして、ＴＡＰモードをＵｐｄａｔｅ＿ＤＲ→Ｓｅｌｅｃｔ＿ＤＲ＿ｓｃａｎ→Ｃａｐｔｕｒｅ＿ＤＲ→Ｓｈｉｆｔ＿ＤＲに切り替え、Ｓｈｉｆｔ＿ＤＲモードに設定する（ステップＳ１１７）。この動作によって、全ての３ｓｔ出力バッファ２０３、双方向バッファ２００のＥＮがＯＦＦに設定される。
【００２４】
こうして全ての３ｓｔ出力バッファ２０３、双方向バッファ２００のＥＮがＯＦＦの状態でＤＣテストを実行する（ステップＳ１１７）。テスト後、現在のテスト対象の外部端子ｎが束ね端子数Ｎに達していなければ、すなわち終了条件が成立しなければ（ステップＳ１１８：ＮＯ）、ｎをインクリメントし、次のテスト対象端子（バッファ）を指定して（ステップＳ１１９）、テスト対象のバッファ２００のＥＮのみＯＮ値となるようにＢＳＣＡＮデータ入力端子ＴＤＩから順次値を入力し、ＢＳＣＡＮレジスタ１１５ａに設定値"１"を設定する（ステップＳ１１３）。一連のステップＳ１１２〜ステップＳ１１６の動作は、ＢＳＣＡＮのＥｘｔｅｓｔモードそのものの動作であり、このＥｘｔｅｓｔの動作で３ｓｔ出力バッファ、双方向バッファにＤＣテスト条件を設定してＤＣテストを実施し、以降、全３ｓｔ出力バッファ、双方向バッファ２００のＤＣテストが完了するまで、これを繰り返す。
【特許文献１】特許３０７２７１８号公報
【特許文献２】特開２０００−３３７１５７号公報
【発明の開示】
【発明が解決しようとする課題】
【００２５】
しかしながら、上述の従来技術には、以下に説明する問題点がある。先ず、第１の問題点は、外部端子間の短絡故障は、異なる束ね端子群間であれば、外部端子とテスタ端子とが１対１で接続されている場合と同様に故障検出することが可能であるが、図２０のようにその短絡故障が同一束ね端子群内にて閉じている端子同士で発生している場合、原理的にこの短絡故障を観測することは不可能となることである。これは束ね治工具２２０を用いて意図的に短絡経路をＬＳＩ外部に構成するので、短絡故障と束ねによる短絡経路とを区別することができず、したがって短絡故障を検出することができないためである。
【００２６】
従前のテスト方法のように、外部端子とテスタ端子を１対１で接続した場合においては、短絡故障をテストする１方法例として、短絡故障をテスト対象の端子とそれ以外の端子とで、条件を変えて行う方法がある。例えばＶＤＤ＝ＧＮＤに設定後、テスト対象端子以外に０．１Ｖの信号を与え、テスト対象端子で電流を観測できれば短絡故障（経路）の存在を検出することができる。しかし、上述の従来のテスト方法のように、外部端子を束ねると、従前のように端子毎に異なる条件を設定することができないこと、またＬＳＩ外部で束ねた経路（短絡経路）が存在することのため、同一束ね群内の短絡故障のテストできないという問題点がある。
【００２７】
次に、第２の問題点としては、図２１に示すように、"１"や"０"に論理固定される縮退故障が同一束ね対象端子群に複数存在した場合（束ね端子群に多重故障が存在した場合）、その故障のうち少なくとも１つが"１"固定（またはＶＤＤに到達する経路）であり、少なくとも１つが"０"固定（またはＧＮＤに到達する経路）が形成される故障であれば、電源を印加し、束ね治工具２２０を接続した時点で、束ね治工具２２０でＶＤＤ−ＧＮＤ短絡が形成され、過大電流が流れてしまうことである。
【００２８】
従前のテスト方法のように、外部端子とテスタ端子とを１対１で接続した場合においては、駆動力の高い３ｓｔ出力バッファ、または双方向バッファが故障していても電流経路は構成されないが、従来のテスト方法のように、端子を束ねる治工具２２０によりＬＳＩ外部で端子を束ねると多重故障により電流経路が生成され、過大電流が流れプローブカード等の治工具を破壊してしまうる場合があるという問題点がある。
【００２９】
更に、第３の問題は、各々束ね対象端子群は、多くとも１端子のみを出力モードにすることがテストを安定して実行するための条件があるが、電源投入後、ＢＳＣＡＮ動作によるＥＮ値設定完了まで、上記の条件を満たすことができず、ＶＤＤ−ＧＮＤ短絡が形成される可能性があることである。
【００３０】
図１８、図１９に示すように、ステップＳ１０１において、外部端子をＬＳＩ外部（治具）で束ねて、ステップＳ１０２にて電源投入後、ＢＳＣＡＮ動作で３ｓｔ出力バッファ２０３、双方向バッファ２００のＥＮ値を設定するには、ＢＳＣＡＮ回路リセット後、ステップＳ１０３にてＥｘｔｅｓｔモードに設定してから、ステップＳ１１２にてＢＳＣＡＮレジスタに所望のＥＮ値をＢＳＣＡＮデータ入力端子ＴＤＩより順次シフトさせ、シフト完了後、ステップＳ１１４のＵｐｄａｔｅ＿ＤＲ動作を経てＥＮ値を設定する必要がある。
【００３１】
ここで、ＢＳＣＡＮ回路リセット後Ｅｘｔｅｓｔモードに設定する動作（ステップＳ１０３）には数パタン（クロック）を必要とする。更に、ＢＳＣＡＮレジスタに所望のＥＮ値をＢＳＣＡＮデータ入力端子ＴＤＩより順次シフトさせる（ステップＳ１１２）ために少なくともＢＳＣＡＮレジスタ個数分のパタン（クロック）を必要とする。即ち、双方向バッファのＢＳＣＡＮレジスタを２つで実現している図１７の構成であっても、双方向端子が例えば５００存在すれば、１０００パタン（クロック）を要する。つまり、ＥＮ値を設定するまでの時間が電源投入直後の一時的な短い時間ではなく、十分長い時間となる。
【００３２】
ＥＮ値設定完了までは、電源投入時にＥＮ値が"０"、"１"のいずれで安定したか不明であり、したがって双方向バッファ２００や、３ｓｔ出力バッファ２０３等の出力バッファを有する束ね対象端子を束ねた場合、一方が"１"、他方が"０"を出力すると、ＶＤＤ−ＧＮＤ短絡の経路が形成され、第２の問題と同様、プローブカード等の治工具を破壊する場合があるという問題点がある。
【課題を解決するための手段】
【００３３】
本発明にかかる半導体装置のテスト方法は、バウンダリスキャン回路に接続された双方向バッファを有する半導体装置のテスト方法であって、前記双方向バッファを入力モード又は出力モードに非同期に設定する非同期設定回路により、前記双方向バッファを一律出力モードに設定して論理故障を検出し、前記論理故障がない場合に、双方向バッファに接続される入出力端子複数を束ね、前記非同期設定回路により前記束ねた入出力端子の双方向バッファを一律入力モードに固定し、前記バウンダリスキャン回路に前記各双方向バッファを所望のイネーブル状態とする設定値を設定した後前記非同期設定回路により前記一律入力モードを解除し、前記入出力端子を束ねた状態で前記バウンダリスキャン回路によりＤＣテストを実行するものである。
【００３４】
本発明においては、先ず双方向バッファを非同期に一律出力モードに設定して各双方向バッファの論理故障を検出するため、入出力端子を束ねた状態でＤＣテストすると原理的に検出不可能であった故障、すなわち束ねた入出力端子群に含まれる入出力端子間の短絡故障又は双方向バッファの多重縮退故障を検出することができる。その後、双方向バッファに接続される入出力端子複数を１つに束ね、バウンダリスキャン回路に所望の設定値を設定するまで当該束ねた入出力端子の双方向バッファを非同期で一律入力モードに設定する。よって、バウンダリスキャン回路によりＤＣテストを実行する際、スキャン回路に設定値を入力して設定が完了するまでの間、双方向バッファを出力モードに固定した安定した条件とすることができる。
【００３５】
本発明の半導体装置は、バウンダリスキャン回路に接続された双方向バッファを複数備える半導体装置において、前記双方向バッファを入力モード又は出力モードに非同期に設定する非同期設定回路を有するものである。
【００３６】
本発明によれば、非同期設定回路により、双方向バッファを非同期に入力モード又は出力モードに設定することができる。よって、当該半導体装置をテストする際、この非同期設定回路により、先ず双方向バッファを出力モードに固定し、各双方向バッファの論理故障を検出し、故障があれば当該半導体装置を除去する。故障がない場合、双方向バッファに接続される入出力端子複数を１つに束ねてテスタに接続しＤＣテストする際、双方向バッファに設定する設定値をバウンダリスキャン回路に設定する間、非同期に一律入力モードに固定しておくこができる。よって、安定した条件で複数の入出力端子を束ねた状態でバウンダリスキャン回路よるＤＣテストを開始することができ、半導体装置の故障検出を安定かつ正確に実行することができる。
【発明の効果】
【００３７】
本発明によれば、束ねる端子群の端子間の短絡又は多重故障がある場合であっても、これらを検出し、入出力端子を束ねても安定したテストを行なうことができる半導体装置及びそのテスト方法を提供することができる。
【発明を実施するための最良の形態】
【００３８】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
【００３９】
実施の形態１.  
図１は、本実施の形態における半導体装置（以下、ＬＳＩという）を示す回路図である。図１に示すように、本実施の形態においては、ＬＳＩ１のＬＳＩ基板３１上に、所望の機能を実現する内部論理回路２と、内部論理回路２と外部端子ＩＯ１、ＩＯ２、ＩＯ３を接続するデータ入出力回路１１ａ〜１１ｃとを有する場合について説明する。内部論理回路２は、ＳＣＡＮ回路を構成するＳＣＡＮ−ＦＦ２０ａ、２０ｂ、２０ｃ、２０ｄ及び組合せ回路１０３を有する。
【００４０】
各データ入出力回路１１ａ〜１１ｃは、ＢＳＣＡＮ回路１２とそれぞれ双方向バッファ２０ａ〜２０ｃとを有する。各ＢＳＣＡＮ回路１２は、それぞれＥＮ非同期制御回路７ａ〜７ｃを有する。このＢＣＡＮ回路１２の詳細は後述する。ＥＮ非同期制御回路７ａ〜７ｃの出力は、それぞれ双方向バッファ２０ａ〜２０ｃのＥＮ入力端子Ｃに接続される。ＥＮ非同期制御回路７ａ〜７ｃの入力には、組合せ回路１０３の出力と、ＥＮ側のＵｐｄａｔｅラッチ６ｂの出力とが接続される。さらに、ＥＮ非同期制御回路７ａ〜７ｃは、非同期ＥＮ制御切り替え端子ＥＮＭＯＤＥ、非同期ＥＮ入出力制御端子ＥＮＣＮＴ及びＴＡＰ回路１０の出力ＭＯＤＥ１と接続され、各制御信号が入力される。
【００４１】
ＳＣＡＮ−ＦＦ２ａは、ＳＣＡＮ−ＦＦにＬＳＩ外部より設定値を入力するＳＣＡＮデータ入力端子ＳＩＮからのＳＩＮ信号及び組合せ回路３からの出力が入力され、出力を組み合わせ回路３及びＳＣＡＮ−ＦＦ２ｂに供給する。ＳＣＡＮ−ＦＦ２ｂは、ＳＣＡＮ−ＦＦ２ａの出力及び組合せ回路３の出力が入力され、出力を組み合わせ回路３及びＳＣＡＮ−ＦＦ２ｃに供給する。ＳＣＡＮ−ＦＦ２ｃは、ＳＣＡＮ−ＦＦ２ｂの出力及び組合せ回路３の出力が入力され、出力を組み合わせ回路３とＳＣＡＮ−ＦＦ２ｄに供給する。ＳＣＡＮ−ＦＦ２ｄは、ＳＣＡＮ−ＦＦ２ｃの出力及び組合せ回路３の出力が入力され、出力（ＳＣＡＮ−ＦＦの値）を組み合わせ回路３及びＬＳＩ外部に出力するＳＣＡＮデータ出力端子ＳＯＴに出力する。
【００４２】
次に、ＥＮ非同期制御回路７ａ〜７ｃを含むＢＳＣＡＮ回路１２について詳細に説明する。ここでは、ＥＮ非同期制御回路７ａについて説明するが、他のＥＮ非同期制御回路７ｂ、７ｃも同様に構成される。図２は、ＥＮ非同期制御回路７ａを含むＢＳＣＡＮ回路１２の詳細を示す回路図である。図２に示すように、ＥＮ非同期制御回路７ａは、セレクタ４ｂの他、セレクタ４ｄ及びＯＲ回路９を有する。
【００４３】
そして、ＥＮ非同期制御回路７ａは、非同期ＥＮ制御切り替え端子、非同期ＥＮ入出力制御端子及びＢＳＣＡＮ制御端子に接続され、それぞれ非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥ、非同期ＥＮ入出力制御信号ＥＮＣＮＴ及びＢＳＣＡＮ制御信号ＭＯＤＥ１が入力される。非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥは、非同期にＥＮを固定するか否かを制御し、非同期ＥＮ入出力制御信号ＥＮＣＮＴは、非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥがＥＮを固定の状態としたとき、入力モードとするか出力モードとするかを切り替え制御する。なお、これらの制御値は、任意であるが、電源ＯＮ時の過渡状態を考慮し、非同期ＥＮ制御切り替え端子ＥＮＭＯＤＥ＝０で非同期にＥＮ固定、非同期ＥＮ入出力制御端子ＥＮＣＮＴ＝０で入力モードとして説明する。
【００４４】
セレクタ４ｂは、切り替え入力値が"０"の選択入力に内部論理回路２の出力Ｈ０３に接続され、切り替え入力値が"１"の選択入力にセレクタ４ｄの出力が接続される。さらに、その切り替え入力にＯＲ回路９の出力が接続され、その出力が双方向バッファ２０ａのＥＮ入力端子Ｃ及びＡＮＤ回路８の一方（論理正転）に接続される。
【００４５】
ＯＲ回路９は、一方の入力（論理反転）に非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥが入力され、他方の入力（論理正転）にＢＳＣＡＮ制御信号ＭＯＤＥ１が入力される。
【００４６】
セレクタ４ｄは、切り替え入力値が"０"の選択入力に非同期ＥＮ入出力制御信号ＥＮＣＮＴが入力され、切り替え入力値が"１"の選択入力にＥＮ側のＵｐｄａｔｅラッチ６ｂの出力が接続され、切り替え入力に非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥが入力される。
【００４７】
なお、ＴＡＰ回路１０を含む他の構成は、従来のテスト回路と同様である。すなわち、図１に示すように、双方向バッファ２０ａの双方向端子Ａが接続されるＬＳＩ外部端子ＩＯ１は、ＬＳＩ外部のＬＳＩテスタ（不図示）、又はＬＳＩ基板３１とテスタ端子とを接続する治具（不図示）により、他の外部端子同士、短絡される（束ねられる）。
【００４８】
また、双方向バッファ２０ａは、データ入力端子Ｂにセレクタ４ａの出力が接続され、ＥＮ入力端子ＣにＥＮ非同期制御回路７ａの出力が接続され、データ出力端子Ｄに内部論理回路２の入力ＮＯ２が接続される。この入力Ｎ０２は、セレクタ４ｃの切り替え入力値が"０"の選択入力にも接続される。
【００４９】
また、ＡＮＤ回路８は、一方の入力（論理反転）にＴＡＰ回路１０のＢＳＣＡＮ制御信号ＭＯＤＥ１が接続され、他方の入力にＥＮ非同期制御回路７ａの出力が接続され、出力にセレクタ４ｃの切り替え入力が接続される。セレクタ４ａは、切り替え入力値が"０"の選択入力に内部論理回路２の出力Ｈ０１が接続され、切り替え入力値が"１"の選択入力にデータ側Ｕｐｄａｔｅラッチ６ａの出力が接続され、切り替え入力にＴＡＰ回路１０のＢＳＣＡＮ制御信号ＭＯＤＥ１が接続され、出力は双方向バッファ２０ａのデータ入力端子Ｂ及びセレクタ４ｃの切り替え入力値が"１"の選択入力に接続される。
【００５０】
セレクタ４ｃは、切り替え入力値が"０"の選択入力に双方向バッファ２０ａのデータ出力端子Ｄが接続され、切り替え入力値が"１"の選択入力にセレクタ４ａの出力が接続され、切り替え入力にＡＮＤ回路８の出力が接続され、出力にデータ側ＢＳＣＡＮレジスタ５ａのＰＩＮに接続される。
【００５１】
データ側ＢＳＣＡＮレジスタ５ａは、ＰＩＮ入力にセレクタ４ｃの出力が接続され、ＰＯＵＴ出力にデータ側Ｕｐｄａｔｅラッチ６ａのデータ入力が接続され、ＢＳＩＮ入力はＥＮ側ＢＳＣＡＮレジスタ５ｂのＢＳＯＵＴ出力が接続され、ＢＳＯＵＴ出力はＴＡＰ回路１０のＢＳ＿ＳＩＮに入力される。
【００５２】
ＥＮ側ＢＳＣＡＮレジスタ５ｂは、ＰＩＮ入力に内部論理回路２の出力Ｈ０３が接続され、ＰＯＵＴ出力にＥＮ側Ｕｐｄａｔｅラッチ６ｂのデータ入力が接続され、また、ＥＮ側ＢＳＣＡＮレジスタ５ｂのＢＳＩＮ入力はデータ入出力回路１１ｂのＢＳＯＵＴ出力と接続され、ＢＳＯＵＴ出力はデータ側ＢＳＣＡＮレジスタ５ａのＢＳＩＮ入力に接続される。
【００５３】
データ側Ｕｐｄａｔｅラッチ６ａは、データ入力にデータ側ＢＳＣＡＮレジスタ５ａのＰＯＵＴ出力が接続され、出力はセレクタ４ａの切り替え入力値が"１"の選択入力と接続されている。ＥＮ側Ｕｐｄａｔｅラッチ６ｂは、データ入力にＥＮ側ＢＳＣＡＮレジスタ５ｂのＰＯＵＴ出力が接続され、出力はセレクタ１４ｂの切り替え入力値が"１"の選択入力に接続されている。
【００５４】
データ入出力回路１１ｂ、１１ｃにおいてもデータ側、ＥＮ側ＢＳＣＡＮレジスタ等同様の回路を有する。そして、データ入出力回路１１ｂのデータ側ＢＳＣＡＮレジスタ５ａのＢＳＯＵＴ出力がデータ入出力回路１１ａのＥＮ側ＢＳＣＡＮレジスタ５ｂのＢＳＩＮ入力に接続され、データ入出力回路１１ｂのＥＮ側ＢＳＣＡＮレジスタ５ｂは、そのＢＳＩＮ入力にデータ入出力回路１１ｃのデータ側ＢＳＣＡＮレジスタ５ａのＢＳＯＵＴ出力が接続される。
【００５５】
また、データ入出力回路１１ｃのデータ側ＢＳＣＡＮレジスタ５ａは、そのＢＳＯＵＴにデータ入出力回路１１ｂのＥＮ側ＢＳＣＡＮレジスタ５ｂのＢＳＩＮ入力が接続され、データ入出力回路１１ｃのＥＮ側ＢＳＣＡＮレジスタ５ｂは、そのＢＳＩＮ入力にＴＡＰ回路１０のＢＳ＿ＳＯＵＴが接続される。データ入出力回路１１ｂ、１１ｃにおいて、それ以外は、データ入出力回路１１ａと同様に接続される。
【００５６】
ＴＡＰ回路１０は、ＢＳＣＡＮ回路の状態遷移をコントロールするためのステート・マシーンであって、ＴＣＫ（Test Clock Input）とＴＭＳ（Test Mode Select Input）の２つの信号に応答して、ステート・ダイアグラムを遷移することによって、ＢＳＣＡＮ回路にテストとコントロール信号とを送出する。ＴＣＫは、すべてのテスト・オペレーションとスキャン・オペレーションのクロッキングを行うクロック信号である。ＴＭＳは、テストモードを選択するためのコントロール信号である。ＴＤＩ（Test Data Input ）は、テストデータの入力であって、シリアルなシフト・データからなっている。ＴＤＯ（Test Data Output）は、テストデータの出力であって、シリアルなシフト・データからなっている。ＴＲＳＴ（Test ResetInput）は、ＴＡＰ回路１０を非同期にリセットするための信号である。
【００５７】
また、ＣＬＫＤＲ（Clock DR) は、ＢＳＣＡＮ回路に対するクロック信号であって、ＴＣＫに対応し、ＴＣＫと同様に変化する。ＵＰＤＤＲ（Update DR ）は、シフト・オペレーションの間、ＢＳＣＡＮ回路内のラッチを現在の状態のまま保持する。ＳＦＤＲ（Shift DR) は、ＢＳＣＡＮ回路内のレジスタに対するデータのロードとシフト・サイクルをコントロールする。ＴＤＯ＿ＥＮ（Enable）は、ＴＤＯのトライステート出力バッファをコントロールする。ＭＯＤＥ１はＢＳＣＡＮ動作のＥｘｔｅｓｔモードをコントロールする。
【００５８】
次に、本実施の形態におけるテスト方法について説明する。図３は、本実施の形態におけるＤＣテスト動作を示すフローチャートである。また、図４は、図３の各双方向バッファのＤＣテスト（ステップＳ９及びステップＳ１１）の詳細を示すフローチャートである。更に、図５は、図２に示す回路に入力する各信号の真理値表を示す図である。なお、図４に示す動作は従来と同様である。以下の説明においては、図１に示す双方向バッファ２０ａ、２０ｂ、２０ｃに接続される外部端子ＩＯ１、ＩＯ２、ＩＯ３を１つに束ねる外部端子（束ね対象端子群）として説明する。
【００５９】
先ず、束ね対象端子群（ＩＯ１、ＩＯ２、ＩＯ３）を開放する治工具に接続する（ステップＳ１）。すなわち、ここでは、束ねる対象端子群を束ねず、開放した状態（Ｏｐｅｎ状態）にて以下のテストを実行する。始めに非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥ＝０、非同期ＥＮ入出力制御端子ＥＮＣＮＴ＝１に設定することで、ＥＮ非同期制御回路７ａ〜７ｃにより、双方向バッファ２０ａ〜２０ｃを非同期に出力モード固定とし、電源ＯＮする（ステップＳ２）。図６及び図７は、この状態における回路を示す。
【００６０】
この状態でＳＣＡＮ等の機能テストを実行する（ステップＳ３）。図８は、本実施の形態におけるＳＣＡＮ回路を用いた短絡故障を検出する場合を示す回路図、図９は、本実施の形態におけるＳＣＡＮ回路を用いた多重故障を検出する場合を示す回路図である。なお、図８、図９においては、セレクタ４ａ〜４ｄの制御回路の図示を省略している。
【００６１】
先ず、外部端子ＩＯ１に短絡故障及び縮退故障（論理が"１"または"０"に固定して変化しない故障）が発生していないか否かをテストする。図８は、ＬＳＩの外部端子ＩＯ１と外部端子ＩＯ２とで短絡故障が発生し、外部端子ＩＯ３は正常な例を示している。短絡故障の有無のテストは、最初に、ＳＣＡＮ−ＦＦ２ａ、２ｂ、２ｃ、２ｄをＳＣＡＮ動作させ、組合せ回路３を経由して、外部端子ＩＯ１の双方向バッファ２０ａに"１"、外部端子ＩＯ２及び外部端子ＩＯ３のそれぞれ双方向バッファ２０ｂ、２０ｃに"０"を伝播する。ここで外部端子ＩＯ１は、外部端子ＩＯ２と短絡する故障が発生しているので、組み合わせ回路２に戻ってくる論理は、外部端子ＩＯ１の双方向バッファ２０ａからは不定値"Ｘ"（正常であれば"１"）、外部端子ＩＯ２の双方向バッファ２０ｂは不定値"Ｘ"（正常であれば"０"）となる。外部端子ＩＯ３の双方向バッファ２０ｃからの戻りは"０"となる。
【００６２】
この各双方向バッファ２０ａ、２０ｂ、２０ｃの出力は、組合せ回路３を経由しＳＣＡＮ−ＦＦ２ａ、２ｂ、２ｃ、２ｄで読み取られ、ＳＣＡＮ動作によりＳＣＡＮデータ出力端子ＳＯＴから出力される。この出力値と期待値との論理の不一致により、短絡故障の有無を検出し、不良判定をすることができる。すなわち、故障がない場合であれば、出力値（＝期待値）は"１"、"０"、"０"となるべきが、本例では出力値が"Ｘ"、"Ｘ"、"０"であって期待値と不一致となり、これにより不良と判定することができる。これを全ての束ね対象端子群の各外部端子に対し、順次実施する。
【００６３】
図９は、束ね対象端子群において縮退故障が同一束ね対象端子群に複数存在した場合（束ね端子群に多重故障が存在した場合）を示す例である。本例においては、ＬＳＩの外部端子ＩＯ２に"１"固定となる故障が発生し、外部端子ＩＯ３に"０"固定となる故障が発生し、外部端子ＩＯ１のみ正常な例を示している。この場合には、ＳＣＡＮ−ＦＦ２ａ、２ｂ、２ｃ、２ｄをＳＣＡＮ動作させ、組合せ回路２を経由して、外部端子ＩＯ１及び外部端子ＩＯ２のそれぞれ双方向バッファ２０ａ、２０ｂに"０"、外部端子ＩＯ３の双方向バッファ２０ｃに"１"を伝播すると外部端子ＩＯ２には"１"固定となる故障が発生しており、外部端子ＩＯ３には"０"固定となる故障が発生しているので、組み合わせ回路１０３に戻ってくる論理は、外部端子ＩＯ１の双方向バッファ２０ａからは"０"、外部端子ＩＯ２の双方向バッファ２０ｂからは"１"（正常であれば"０"）、外部端子ＩＯ３の双方向バッファは"０"（正常であれば"１"）となる。
【００６４】
この各双方向バッファ２０ａ、２０ｂ、２０ｃの出力は、組合せ回路３を経由しＳＣＡＮ−ＦＦ２ａ、２ｂ、２ｃ、２ｄで読み取られ、ＳＣＡＮ動作でＳＣＡＮデータ出力端子ＳＯＴから出力される。そして、その出力値と期待値との論理の不一致を検出することで、同じく不良判定することができる。すなわち、故障がない場合であれば、出力値（＝期待値）は"０"、"０"、"１"となるべきが、本例では、出力値が"０"、"１"、"０"であって期待値と不一致となり、これにより不良と判定することができる。このステップＳ３の機能試験により、短絡故障、縮退故障、多重故障が発見された場合はその回路を不良とし、不良回路を除去し、良品のみを抽出する。
【００６５】
なお、一般にＳＣＡＮ−ＦＦと双方向バッファの間には、組み合わせ回路３が介在するため、必要とするＳＣＡＮ−ＦＦの個数は双方向バッファの数には依存せず任意であり、双方向バッファに所望の値を入力するためのＳＣＡＮ−ＦＦの設定値、個数はテストするＬＳＩの外部端子によって変化する。更に双方向バッファの出力値を読み込むＳＣＡＮ−ＦＦは、必ずしも双方向バッファに所望の値を入力する際に使用したＳＣＡＮ−ＦＦと個数も含め、同一とは限らない。
【００６６】
図３に戻って、上述の双方向バッファの動作検証を含むＳＣＡＮテストなどの機能試験が終了したら、一旦電源をＯＦＦする（ステップＳ４）。そして、束ね対象端子群を、束ね治工具３２に接続して束ねる（短絡する）（ステップＳ５）。次に、図５に示すように、非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥ＝０、非同期ＥＮ入出力制御端子ＥＮＣＮＴ＝０とすることで、ＥＮ非同期制御回路７ａ〜７ｃにより、非同期に入力モード固定とし、電源ＯＮする（ステップＳ６）。
【００６７】
図１０は、この状態の回路を示す。束ね対象端子群は全て入力モードに設定されており、双方向バッファ２０ａ、２０ｂ、２０ｃに短絡故障や多重故障を含めた論理不良は含まれていないので、ＬＳＩテスタ側より、"０"または"１"の論理を与え、安定状態を確保することができる。
【００６８】
次に、ＢＳＣＡＮ回路をＥｘｔｅｓｔモードに設定する（ステップＳ７）。Ｅｘｔｅｓｔモード（命令）は、ＬＳＩの内部回路と入出力端子である束ね端子群とを切り離して外部端子から信号を出力してテストすることができるモードである。このモードでは、各セレクタにて、ＬＳＩの組み合わせ回路３を双方向バッファ２０ａ〜２０ｃと切り離し、ＬＳＩ外部よりＢＳＣＡＮレジスタに設定値を入力するＢＳＣＡＮデータ入力端子ＴＤＩより、ＢＳＣＡＮレジスタ５ｂ、５ａに設定値をシフト入力(Ｓｈｉｆｔ＿ＤＲ)する。そして、ＢＳＣＡＮレジスタ５ｂにシフト入力(Ｓｈｉｆｔ＿ＤＲ)された設定値を、Ｕｐｄａｔｅラッチ６ｂに読み込み(Ｕｐｄａｔｅ＿ＤＲ)、双方向バッファ２０ａ〜２０ｃのＥＮ入力端子Ｃへ入力する、又は双方向バッファ２０ａ〜２０ｃのデータ出力端子Ｄから出力された値をセレクタ４ｃを経由してＢＳＣＡＮレジスタ５ａに取り込み(Ｃａｐｔｕｒｅ＿ＤＲ)、ＢＳＣＡＮレジスタ５ａの値をＬＳＩ外部に出力する端子ＴＤＯに順次シフト出力(Ｓｈｉｆｔ＿ＤＲ)する動作である。 
【００６９】
このようにＥｘｔｅｓｔモードとし、組み合わせ回路３と双方向バッファ２０ａ〜２０ｃとを切り離した後、ＢＳＣＡＮレジスタ５ｂの値を、束ね端子の双方向バッファ２０ａ〜２０ｃの各ＥＮ制御を入力モードにするための値に設定する（ステップＳ９）。すなわち、初期設定として、ｎ＝０（ｎは検査対象の端子：１〜Ｎ（＝３））、終了＝０（終了は、終了条件となるｎ）とし、Ｓｈｉｆｔ＿ＤＲ状態に設定する。
【００７０】
具体的には、上記初期設定により、図４に示すように、ステップＳ２１にて初期設定を行なうか否かを判定し、本例ではステップＳ２２に進む。そして、ＢＳＣＡＮ端子ＴＤＩから全ＥＮ側ＢＳＣＡＮレジスタ５ｂに"０"、全データ側ＢＳＣＡＮレジスタ５ａに"０"をシフト入力する。そして、ＴＡＰモードをＳｈｉｆｔ＿ＤＲ→Ｅｘｉｔｅ＿ＤＲ→Ｕｐｄａｔｅ＿ＤＲに切り替えＵｐｄａｔｅ＿ＤＲに設定する（ステップＳ２４）。そして、ＢＳＣＡＮレジスタ５ａ、５ｂの値をＵｐｄａｔｅラッチ６ａ、６ｂに取りこむ（ステップＳ２５）。次に、ＴＡＰモードをＵｐｄａｔｅ＿ＤＲ→Ｓｅｌｅｃｔ＿ＤＲ＿ｓｃａｎ→Ｃａｐｔｕｒｅ＿ＤＲ→Ｓｈｉｆｔ＿ＤＲに切り替え、Ｓｈｉｆｔ＿ＤＲモードに設定する（ステップＳ２６）。この動作によって、全ての双方向バッファ２０ａ〜２０ｃを入力モードに設定させることができる。
【００７１】
次に、ＥＮ非同期制御回路７ａ〜７ｃの非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥ＝１、非同期ＥＮ入出力制御端子ＥＮＣＮＴ＝０として、非同期に入力モードを固定としている制御を解除する。そして、初期設定をｎ＝１、終了＝対象端子数ＮとしＢＳＣＡＮ回路の制御に切り替える（ステップＳ１０）。そして、各双方向バッファのＤＣテストを行う（ステップＳ１１）。
【００７２】
双方向バッファ２０ａ〜２０ｃのＤＣテストの方法は従来と同様である。具体的には、図４に示すように、先ず、初期設定を行うかを判断する（ステップＳ２１）。本例においては、初期値ｎ＝１であるのでステップＳ２３に進む。そして、テスト対象の外部端子に接続される双方向バッファのＥＮ入力端子ＣのみＯＮ値となるようにＢＳＣＡＮデータ入力端子ＴＤＩから順次設定値をＢＳＣＡＮレジスタにシフト入力する。すなわち、全てのＥＮ側ＢＳＣＡＮレジスタ５ｂには"０"、データ側ＢＳＣＡＮレジスタ５ａのうちｎ番目の外部端子に対応するデータ側ＢＳＣＡＮレジスタ５ａのみ"１"、それ以外のデータ側ＢＳＣＡＮレジスタ５ａには"０"を入力する。
【００７３】
そして、ＴＡＰモードをＳｈｉｆｔ＿ＤＲ→Ｅｘｉｔｅ＿ＤＲ→Ｕｐｄａｔｅ＿ＤＲに切り替えＵｐｄａｔｅ＿ＤＲに設定する（ステップＳ２４）。そして、ＢＳＣＡＮレジスタ５ａ、５ｂの値をＵｐｄａｔｅラッチ６ａ、６ｂに取りこむ（ステップＳ２５）。次に、ＴＡＰモードをＵｐｄａｔｅ＿ＤＲ→Ｓｅｌｅｃｔ＿ＤＲ＿ｓｃａｎ→Ｃａｐｔｕｒｅ＿ＤＲ→Ｓｈｉｆｔ＿ＤＲに切り替え、Ｓｈｉｆｔ＿ＤＲモードに設定する（ステップＳ２６）。以上の動作によって、ｎ番目の外部端子からのみ"１"が出力されるよう設定される。図１１は、この状態を示している。次いで、ＤＣ測定をし（ステップＳ２７）、現在のｎが終了値より小さければ（ステップＳ２８：Ｙｅｓ）ｎをインクリメントし、束ね対象端子群に含まれる次の外部端子のＤＣテストを実行する（ステップＳ２９）。こうして、全ての外部端子について双方向バッファ２０のＤＣテストが完了するまで、これを繰り返す。
【００７４】
なお、ＢＳＣＡＮ制御信号ＭＯＤＥ１は図５のＳＣＡＮテストに示すように、ＢＳＣＡＮ動作のＥｘｔｅｓｔモード時のみ"１"となり、他の状態では"０"となる。
【００７５】
本実施の形態においては、束ね対象端子群を入出力端子に限定し、先ず束ねず、かつＬＳＩテスタにも接続せずオープン（開放）状態とし、束ね対象端子群に接続される双方向バッファを非同期に出力モード固定にし、ＬＳＩ内部から双方向バッファの出力値を設定して、その出力値を一旦ＬＳＩ内部に戻してからＬＳＩ外部に出力し期待値照合することで双方向バッファの論理故障を検出する。よって、束ねた状態では原理的に観測不可能である端子間の短絡や、過大電流発生の原因となる多重故障を事前に不良検出し、除去することができる。よって、同一束ね端子群内の入出力端子間に流れてしまう過電流の発生を防止し、プローブカード等の治工具の破壊を回避することができる。
【００７６】
そして、束ね端子群内の双方向バッファに短絡及び多重故障がないＬＳＩについて、束ね対象端子群を束ねて１つにまとめてテスタに接続し、電源投入時に非同期に束ね対象端子群の双方向バッファのＥＮ値を入力モード固定としておき、ＢＳＣＡＮ動作で所望の値をＢＳＣＡＮレジスタに設定する。設定後に、非同期にＥＮ値の入力モード固定を解除してＢＳＣＡＮ動作でＤＣテストを実行する。すなわち、電源投入〜ＢＳＣＡＮレジスタに所望の設定値を設定するまでの間、ＥＮ非同期制御回路７ａ〜７ｃにより、ＥＮ値を入力固定とした状態とすることができ、安定したテスト条件を満たすことができる。その後、束ね端子群のテスト対象となる一の双方向バッファのイネーブル値及びデータ値を所望の値に変更してＤＣテストを行なう。
【００７７】
このように、束ね対象端子群を束ねる前に故障検出しておくため、過大電流が流れることを防止しかつ束ねてしまうと検出不能になる端子間の短絡故障も除去することができると共に、電源投入と同時にＥＮ値を固定しておくことで、電源投入後に予測不可能な値に設定される双方向バッファのＥＮ値、データ値の影響を受けない安定したテストが可能となる。
【００７８】
実施の形態２．  
上述の実施の形態１においては、双方向バッファの短絡故障や多重故障のテストをＳＣＡＮ−ＦＦによって行なったのに対し、本実施の形態においては、ＢＳＣＡＮ回路で行うものである。すなわち、図３に示すステップＳ３におけるＳＣＡＮ等の機能テストを、ＢＳＣＡＮ回路のＥｘｔｅｓｔモードによって実行する。図１２は、本実施の形態におけるＢＳＣＡＮ回路を用いた短絡故障を検出する動作を説明するための回路図、図１３は、同じくＢＳＣＡＮ回路を用いた多重故障を検出する動作を説明するための回路図である。
【００７９】
図１２は、外部端子ＩＯ１と外部端子ＩＯ２で短絡故障が発生しており、外部端子ＩＯ３は正常な例を示している。外部端子ＩＯ１に短絡故障及び縮退故障が発生していないか否かをテストするため、ＢＳＣＡＮ動作により機能テストを実行する。先ず、外部端子ＩＯ１、ＩＯ２、ＩＯ３の各データ側ＢＳＣＡＮレジスタ５ａに、それぞれ"１"、"０"、"０"をＢＳＣＡＮデータ入力端子ＴＤＩからシフト動作で設定し、Ｕｐｄａｔｅ動作でＵｐｄａｔｅラッチ６ａにこの値をキャプチャさせる。Ｕｐｄａｔｅラッチ６ａからそれぞれ双方向バッファ２０ａ〜２０ｃ、セレクタ４ｃを経由して戻ってくる論理値を、キャプチャ動作（Ｃａｐｔｕｒｅ＿ＤＲ）でそれぞれのＢＳＣＡＮレジスタ５ａに取り込み、シフト動作でＢＳＣＡＮデータ出力端子ＴＤＯに順次出力させる。本例においては、外部端子ＩＯ１の双方向バッファ２０ａを経由した値は、不定値"Ｘ"（正常であれば"１"）、外部端子ＩＯ２の双方向バッファ２０ｂは不定値"Ｘ"（正常であれば"０"）となり、期待値と不一致となる。一方、外部端子ＩＯ３の双方向バッファ２０ｃからの戻りは"０"となり期待値と一致する。このように、ＢＳＣＡＮデータ出力端子ＴＤＯの出力値と期待値との論理の不一致により、本例においては、ＩＯ１、ＩＯ２の不良を検出する。これを全ての束ね対象端子に対し順次実施することで、全ての端子についての故障判定を行なう。
【００８０】
また、図１３は、外部端子ＩＯ２には"１"固定となる故障が、外部端子ＩＯ３には"０"固定となる故障が発生しており、外部端子ＩＯ１は正常な例を示している。このようなＬＳＩに対し、外部端子ＩＯ３に短絡故障及び縮退故障（論理が"１"又は"０"に固定し変化しない故障）が存在するか否かをテストする場合、ＢＳＣＡＮ動作させて外部端子ＩＯ１、ＩＯ２、ＩＯ３の各データ側ＢＳＣＡＮレジスタ１５ａに、それぞれ"０"、"０"、"１"をＢＳＣＡＮデータ入力端子ＴＤＩからシフト動作で設定し、Ｕｐｄａｔｅ動作でＵｐｄａｔｅラッチ１６ａにキャプチャさせる。そして、双方向バッファ２０ａ〜２０ｃ及びセレクタ１４ｃを経由して戻ってくる論理値を、キャプチャ動作(Ｃａｐｔｕｒｅ＿ＤＲ)でデータ側ＢＳＣＡＮレジスタ１５ａに取り込み、シフト動作でＢＳＣＡＮデータ出力端子ＴＤＯに順次出力させる。本例においては、外部端子ＩＯ１の双方向バッファ２０ａからは"０"となりＢＳＣＡＮデータ出力端子ＴＤＯの出力値と期待値とが一致する。一方、外部端子ＩＯ２の双方向バッファ２０ｂを経由した出力値は"１"（正常であれば"０"）、外部端子ＩＯ３の双方向バッファを経由した出力値は"０"（正常であれば"１"）となり出力値は、期待値と不一致となる。この期待値との論理不一致を検出することにより、本例においては、ＩＯ２、ＩＯ３の不良を検出する。これを全ての束ね対象端子に対し順次実施することで、全ての端子についての故障判定を行なう。
【００８１】
なお、ＢＳＣＡＮ制御信号ＭＯＤＥ１はＢＳＣＡＮ動作のＥｘｔｅｓｔモード時のみ"１"となり、他の状態では"０"、また図１２、図１３においては、セレクタ４ａ〜４ｄの制御回路の図示を省略している。
【００８２】
上述の実施の形態１のように、ＳＣＡＮ−ＦＦでテストする場合には、組合せ回路１０３が介在するため、効率的にパタン生成ができない場合があるが、本実施の形態においては、Ｅｘｔｅｓｔモードにより、組合せ回路３を切り離し、組合せ回路３を介在させることなくテストを実行できるため、パタン設計が容易であるという更なる効果を奏する。
【００８３】
実施の形態３.  
実施の形態２におけるＢＳＣＡＮ動作において双方向バッファの短絡故障や多重故障をテストする場合、少なくとも図５の共通項目及びＢＳＣＡＮ（Ｅｘｔｅｓｔ）テストを可能とする他のＥＮ非同期制御回路を使用することも可能である。
【００８４】
図１４は、本実施の形態における非同期制御回路及びその周辺回路を示す回路図である。図２に示す実施の形態１においては、ＢＳＣＡＮ制御信号ＭＯＤＥ１がＡＮＤ回路８の一方の入力（論理反転）に接続されていたのに対し、本実施の形態においては、図１４に示すように、ＥＮ非同期制御回路１７ａのＯＲ回路９の出力がセレクタ４ｂの切り替え入力に接続されると共にＡＮＤ回路８の一方の入力（論理反転）に接続される構成となっている。
【００８５】
その他の構成は、図２に示す実施の形態１と同様である。すなわち、ＥＮ非同期制御回路１７ａは、セレクタ４ｂ、セレクタ４ｄ及びＯＲ回路９を有する。そして、非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥ、非同期ＥＮ入出力制御信号ＥＮＣＮＴ及びＢＳＣＡＮ制御信号ＭＯＤＥ１が入力される。
【００８６】
セレクタ４ｂは、切り替え入力値が"０"の選択入力に内部論理回路２の出力Ｈ０３が接続され、切り替え入力値が"１"の選択入力にセレクタ４ｄの出力が接続される。さらに、切り替え入力にＯＲ回路９の出力が接続され、出力が双方向バッファ２０ａのＥＮ入力Ｃ及びＡＮＤ回路８の一方（論理正転）に接続される。
【００８７】
ＯＲ回路９は、一方の入力（論理反転）に非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥが入力され、他方の入力（論理正転）にＢＳＣＡＮ制御信号ＭＯＤＥ１が入力される。そして、上述したように、その出力がセレクタ４ｂの切り替え入力及びＡＮＤ回路８の一方の入力に接続される。
【００８８】
セレクタ４ｄは、切り替え入力値が"０"の選択入力に非同期ＥＮ入出力制御信号ＥＮＣＮＴが入力され、切り替え入力値が"１"の選択入力にＥＮ側のＵｐｄａｔｅラッチ６ｂの出力が接続され、切り替え入力に非同期ＥＮ制御切り替え信号ＥＮＭＯＤＥが入力される。なお、その他の構成は、実施の形態２と同様であり、同様に動作する。
【００８９】
本実施の形態においても、実施の形態１と同様の効果を奏する。すなわち、従来では観測不可能であった端子間の短絡や、過大電流発生の原因となる多重故障を事前に不良判定することができると共にＥＮ非同期制御回路１７を設けることで電源投入と同時にＥＮを入力固定とした状態とすることができ、安定したテスト条件を満たすことができる。また、実施の形態２と同様に、ＳＣＡＮ−ＦＦではなくＢＳＣＡＮ回路を用いて故障検出することも可能である。
【００９０】
その他の変形例  
上述の実施の形態においては、各ＢＳＣＡＮ回路には、ＢＳＣＡＮレジスタが２つであったのに対し、ＢＳＣＡＮレジスタを３つ有する構成とすることも可能である。図１５、図１６は、ＢＳＣＡＮ回路部分の変形例を示す回路図であって、図１５は、図２に対応し、図１６は、図１４に対応する。
【００９１】
図１５に示すように、図２に示すＬＳＩのセレクタ４ｃ、ＡＮＤ回路８の代わりに、ＢＳＣＡＮレジスタ５ｃを有する。ＢＳＣＡＮレジスタ５ｃは、双方向バッファ２０の出力を入力し、双方向バッファ２０の出力又はＢＳＣＡＮレジスタ５ａの出力のいずれかを選択出力するものである。その他の構成は、図２と同様である。
【００９２】
また、図１６に示すように、図１４に示すＬＳＩのセレクタ１４ｃ、ＡＮＤ回路１８の代わりに、第３のＢＳＣＡＮ回路としてＢＳＣＡＮレジスタ１５ｃを有してもよい。ＢＳＣＡＮレジスタ１５ｃは、双方向バッファ２０の出力を入力し、双方向バッファ２０の出力又はＢＳＣＡＮレジスタ１５ａの出力のいずれかを選択出力するものである。その他の構成は、図１４と同様である。本変形例においては、ＢＳＣＡＮレジスタを３つとするため、ＢＳＣＡＮ回路に設定値をセットするまでの時間が上述より長くなるものの、上述のように、ＥＮ非同期制御回路７により電源ＯＮからＢＳＣＡＮ回路に設定値をセットするまでの間、双方向バッファを入力モードに固定しておくことができ、安定した条件でテストを行うことができる。
【００９３】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【００９４】
【図１】本発明の実施の形態１における半導体装置（ＬＳＩ）を示す回路図である。
【図２】本発明の実施の形態１におけるＥＮ非同期制御回路を含むＢＳＣＡＮ回路の詳細を示す回路図である。
【図３】本発明の実施の形態１におけるＤＣテスト動作を示すフローチャートである。
【図４】本発明の実施の形態１における各双方向バッファのＤＣテストの詳細を示すフローチャートである。
【図５】図２に示す回路に入力する各信号の真理値表を示す図である。
【図６】双方向バッファを非同期に出力モード固定とし、電源ＯＮした状態を示す図である。
【図７】同じく、双方向バッファを非同期に出力モード固定とし、電源ＯＮした状態を示す図である。
【図８】本発明の実施の形態１におけるＳＣＡＮ回路を用いた短絡故障を検出する場合を示す回路図である。
【図９】本発明の実施の形態１におけるＳＣＡＮ回路を用いた多重故障を検出する場合を示す回路図である。
【図１０】非同期に入力モード固定とし、電源ＯＮした状態を示す図である。
【図１１】ｎ番目の外部端子からのみ"１"が出力されるよう設定された状態を示す図である。
【図１２】本発明の実施の形態２におけるＢＳＣＡＮ回路を用いた短絡故障を検出する動作を説明するための回路図である。
【図１３】本発明の実施の形態２におけるＢＳＣＡＮ回路を用いた多重故障を検出する動作を説明するための回路図である。
【図１４】本発明の実施の形態３における非同期制御回路及びその周辺回路を示す回路図である。
【図１５】図２に示すＢＳＣＡＮ回路部分の変形例を示す回路図である。
【図１６】図１４に示すＢＳＣＡＮ回路部分の変形例を示す回路図である。
【図１７】従来のバウンダリスキャン（ＢＳＣＡＮ）回路の全体を示す回路図である。
【図１８】従来のテスト動作を示すフローチャートである。
【図１９】図１８に示すステップＳ１０５の詳細を示すフローチャートである。
【図２０】従来のテスト動作説明するための図である。
【図２１】同じく、従来のテスト動作説明するための図である。
【図２２】従来の双方向バッファのＢＳＣＡＮ回路の詳細を示す図である。
【符号の説明】
【００９５】
２ａ，２ｂ，２ｃ，２ｄ  ＳＣＡＮ−ＦＦ
３  組み合わせ回路
４ａ，４ｂ，４ｃ，４ｄ  セレクタ
５ａ  データ側ＢＳＣＡＮレジスタ
５ｂ  ＥＮ側ＢＳＣＡＮレジスタ
６ａ  データ側Ｕｐｄａｔｅラッチ
６ｂ  ＥＮ側Ｕｐｄａｔｅラッチチ
７ａ，７ｂ，７ｃ，１７  非同期制御回路
８  ＡＮＤ回路
９  ＯＲ回路
１０  ＴＡＰ回路
１１ａ，１１ｂ，１１ｃ  データ入出力回路
１２  ＢＳＣＡＮ回路
２０ａ，２０ｂ，２０ｃ  各双方向バッファ
３１  基板
３２  治工具
【図１】
2007003338.tif 000003
【図２】
2007003338.tif 000004
【図３】
2007003338.tif 000005
【図４】
2007003338.tif 000006
【図５】
2007003338.tif 000007
【図６】
2007003338.tif 000008
【図７】
2007003338.tif 000009
【図８】
2007003338.tif 000010
【図９】
2007003338.tif 000011
【図１０】
2007003338.tif 000012
【図１１】
2007003338.tif 000013
【図１２】
2007003338.tif 000014
【図１３】
2007003338.tif 000015
【図１４】
2007003338.tif 000016
【図１５】
2007003338.tif 000017
【図１６】
2007003338.tif 000018
【図１７】
2007003338.tif 000019
【図１８】
2007003338.tif 000020
【図１９】
2007003338.tif 000021
【図２０】
2007003338.tif 000022
【図２１】
2007003338.tif 000023
【図２２】
2007003338.tif 000024