(57)【要約】【課題】シフト動作に要する時間を短縮することができるスキャンパス回路及び半導体集積回路を提供する。【解決手段】シリアル接続された３個のスキャンＦＦ２１を有し、テスト入力端子３と接続される第１のスキャンＦＦ群７と、第１のスキャンＦＦ２１群の出力信号が与えられる３個のスキャンＦＦ２１を有する第２のスキャンＦＦ群８と、シリアル接続された３個のスキャンＦＦ２１を有し、テスト出力端子６と接続される第３のスキャンＦＦ群９と、スキャンＦＦ２１のシフト動作モードにおいて、第１のスキャンＦＦ２１群の出力信号を第２のスキャンＦＦ群８に入力するとともに、第３のスキャンＦＦ群９に入力するスキップ回路２２と、を備えた。【選択図】図１
2009042017.tif 000002
【特許請求の範囲】
【請求項１】
シリアル接続されたＫ個（Ｋは、Ｋ≧１を満たす整数）のスキャンＦＦを有し、入力端子と接続される第１のスキャンＦＦ群と、
前記第１のスキャンＦＦ群の出力信号が与えられるＳ個（Ｓは、Ｓ≧１を満たす整数）のスキャンＦＦを有する第２のスキャンＦＦ群と、
シリアル接続されたＮ個（Ｎは、Ｎ≧１を満たす整数）のスキャンＦＦを有し、出力端子と接続される第３のスキャンＦＦ群と、
前記スキャンＦＦのシフト動作モードにおいて、前記第１のスキャンＦＦ群の出力信号を前記第２のスキャンＦＦ群に入力するとともに、前記第３のスキャンＦＦ群に入力するスキップ回路と、
を備えるスキャンパス回路。
【請求項２】
前記スキップ回路は、前記第２のスキャンＦＦ群と前記第３のスキャンＦＦ群とを接続し、
前記シフト動作モードにおける第１の時間において、前記第１のスキャンＦＦ群の出力信号と前記第２のスキャンＦＦ群の出力信号とを論理演算した信号を前記第３のスキャンＦＦ群に入力し、
前記シフト動作モードにおける前記第１の時間以外の第２の時間において、前記第１のスキャンＦＦ群の出力信号を前記第３のスキャンＦＦ群に入力する請求項１に記載のスキャンパス回路。
【請求項３】
対象回路のテストを行うスキャンパス回路であって、
シリアル接続されたＫ個（Ｋは、Ｋ≧１を満たす整数）のスキャンＦＦを有し、テスト信号が入力される入力端子と接続される第１のスキャンＦＦ群と、
前記第１のスキャンＦＦ群の出力信号が与えられるＳ個（Ｓは、Ｓ≧１を満たす整数）のスキャンＦＦを有する第２のスキャンＦＦ群と、
シリアル接続されたＮ個（Ｎは、Ｎ≧１を満たす整数）スキャンＦＦを有し、出力信号が出力される出力端子と接続される第３のスキャンＦＦ群と、
前記スキャンＦＦのシフト動作モードにおいて、前記第１のスキャンＦＦ群の出力信号を前記第２のスキャンＦＦ群に入力するとともに、前記第３のスキャンＦＦ群に入力するスキップ回路と、
を備え、
前記スキャンＦＦは、通常動作モードにおいて、テスト信号を前記対象回路に入力するとともに、前記対象回路から出力される結果信号を保持し、
前記スキップ回路は、前記通常動作モードから前記シフト動作モードに遷移してから第１の時間において、前記第１のスキャンＦＦ群の出力信号と前記第２のスキャンＦＦ群の出力信号とを論理演算した信号を前記第３のスキャンＦＦ群に入力し、前記シフト動作モードにおける前記第１の時間以外の第２の時間において、前記第１のスキャンＦＦ群の出力信号を前記第３のスキャンＦＦ群に入力するスキャンパス回路。
【請求項４】
前記スキップ回路は、
前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦの出力信号と、前記第２のスキャンＦＦ群のＳ個の前記スキャンＦＦの出力信号とを論理演算する論理回路と、
前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦと前記論理回路とに接続され、前記第１の時間において前記論理回路の出力信号を前記第３のスキャンＦＦ群に入力し、前記第２の時間において前記最後段の前記スキャンＦＦの出力信号を前記第３のスキャンＦＦ群に入力するセレクタと、
を備える請求項１乃至３の何れか一項に記載のスキャンパス回路。
【請求項５】
前記スキップ回路は、
前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦの出力信号と、前記第２のスキャンＦＦ群の最後段の前記スキャンＦＦの出力信号とを論理演算する論理回路と、
前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦと前記論理回路とに接続され、前記第１の時間において前記論理回路の出力信号を前記第３のスキャンＦＦ群に入力し、前記第２の時間において前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦの出力信号を前記第３のスキャンＦＦ群に入力するセレクタと、
を備える請求項１乃至３の何れか一項に記載のスキャンパス回路。
【請求項６】
前記スキップ回路は、
前記第１のスキャンＦＦ群のｋ段目（ｋは、１≦ｋ≦Ｋを満たす整数）の前記スキャンＦＦの出力信号と、前記第２のスキャンＦＦ群のｓ段目（ｓは、１≦ｓ≦Ｓを満たす整数）の前記スキャンＦＦの出力信号とを論理演算する複数の論理回路を備える多入力シグネチャレジスタと、
前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦと前記第２のスキャンＦＦ群の最後段の前記スキャンＦＦとに接続され、前記第１の時間において前記第２のスキャンＦＦ群の最後段の前記スキャンＦＦの出力信号を前記第３のスキャンＦＦ群に入力し、前記第２の時間において前記第１のスキャンＦＦ群の最後段の前記スキャンＦＦの出力信号を前記第３のスキャンＦＦ群に入力するセレクタと、
を備え、
前記多入力シグネチャレジスタの出力信号が前記第２のスキャンＦＦ群に入力される請求項１乃至３の何れか一項に記載のスキャンパス回路。
【請求項７】
シフト動作モードにおいてシフト動作を行い、通常動作モードにおいて通常動作を行う複数のスキャンＦＦと、
一の前記スキャンＦＦと、他の前記スキャンＦＦとの間に接続されるスキップ回路と、
前記スキップ回路と接続され、前記スキップ回路を介して、前記スキップ回路の前段の前記スキャンＦＦの出力信号が与えられる複数のスキップスキャンＦＦと、
を備え、
前記スキップ回路は、当該スキップ回路の前段の前記スキャンＦＦの出力信号を前記スキップスキャンＦＦに入力するとともに、前記スキップ回路の後段の前記スキャンＦＦに入力するスキャンパス回路。
【請求項８】
請求項１乃至７の何れか一項に記載のスキャンパス回路を有する半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャンパス回路及び半導体集積回路に関し、特に、半導体集積回路に搭載された回路をテストする方法論としてスキャンパスを用いたスキャンパス回路及び当該スキャンパス回路を有する半導体集積回路に関する。
【背景技術】
【０００２】
近年、半導体集積回路の回路規模が増大している。このような半導体集積回路に搭載された回路をテストする回路として、スキャンパスを用いたスキャンパス回路が知られている。スキャンパス回路には、通常、スキャンチェーンが設けられている。
【０００３】
図１４に、従来の半導体集積回路の一例を示す。従来技術に係る半導体集積回路は、図１４に示すように、対象回路３０１、スキャンチェーン３０２、対象回路３０１の入力端子３０３（図１４のＩＮ１、ＩＮ２、ＩＮ３、ＩＮ４）、対象回路３０１の出力端子３０４（図１４のＯＵＴ１、ＯＵＴ２、ＯＵＴ３、ＯＵＴ４）、テスト入力端子３０５（図１４のＳＩＮ）、クロック入力端子３０６（図１４のＣＫＬ）、制御信号入力端子３０７（図１４のＳＣＡＮ＿ＥＮ）、テスト出力端子３０８（図１４のＳＯＴ）を備えている。
テスト信号は、テスト入力端子３０５からスキャンチェーン３０２に入力される。また、スキャンチェーン３０２の出力信号は、テスト出力端子３０８から出力される。
【０００４】
また、スキャンチェーン３０２は、対象回路３０１にテスト信号を入力する複数のフリップフロップ（以下、スキャンＦＦと称する。）３０９を備えている。また、当該複数のスキャンＦＦ３０９はシリアル接続されている。
また、スキャンチェーン３０２の一端側のスキャンＦＦ３０９にテスト入力端子３０５が接続されている。また、スキャンチェーン３０２の他端側のスキャンＦＦ３０９にテスト出力端子３０８が接続されている。そして、当該複数のスキャンＦＦ３０９はシフトレジスタとして機能する。
【０００５】
そして、各スキャンＦＦ３０９は、テスト入力端子３０５から入力されたテスト信号をシフト入力する。その後、各スキャンＦＦ３０９は、対象回路３０１にテスト信号を入力する。また、各スキャンＦＦ３０９は、対象回路３０１から出力される出力信号を保持する。その後、各スキャンＦＦ３０９は保持した信号をシフトさせて、テスト出力端子３０８から出力する。また、各スキャンＦＦ３０９は、制御信号入力端子３０７及びクロック入力端子３０６と接続される。そして、制御信号入力端子３０７から入力される制御信号と、クロック入力端子３０６から入力されるクロック信号とに基づいて、各スキャンＦＦ３０９は、テスト信号のシフト入力、テスト信号の各回路への入力、各回路から出力された出力信号の保持、出力信号のシフト出力を行う。
【０００６】
しかし、半導体集積回路に搭載される回路が増大すると、その分、スキャンＦＦの数が多くなりスキャンチェーンの長さが長くなる。また、半導体集積回路に搭載される回路が増大すると、通常、テスト信号のパタン数も多くなる。そして、テスト所要時間は、テスト信号のパタン数及びスキャンチェーンの長さに比例する。そのため、スキャンチェーンを用いてテストすると、半導体集積回路に搭載される回路の増大に従って、テスト所要時間が長くなってしまうという問題がある。そして、テスト所要時間の多くを占めるのがシフトにかかる時間であるため、シフトにかかる時間を削減する技術が求められている。
【０００７】
また、近年、半導体集積回路の設計の微細化が進んでいる。そして、ディープサブミクロンの設計ルールにより製造された半導体集積回路をテストする場合には、単一縮退故障をテストするだけでは不良を除去しきれず、遅延故障やブリッジ故障をテストする必要がある。そのため、半導体集積回路の設計の微細化によりテスト信号のパタン数が増加する。テスト信号はテスタのメモリに格納される。そして、テスタのメモリに占めるテスト信号のデータ量は、テスト信号のパタン数及びスキャンチェーンの長さに比例して増える。そのため、テスタのメモリ量によっては、テスト信号のパタンをテスタのメモリにロードする作業を複数回行うこととなり、さらにテスト所要時間が長くなってしまうという問題がある。
【０００８】
そこで、スキャンＦＦの数を減らすことにより長さを短くしたスキャンチェーンを複数設けるものが知られている（例えば、特許文献１）。特許文献１では、１本当たりのスキャンＦＦの数を少なくすることによるスキャンＦＦの減少分を、スキャンチェーンの本数を多くすることにより相殺している。特許文献１に記載の半導体集積回路を図１５、図１６に示す。
特許文献１に記載の半導体集積回路は、図１５、図１６に示すように、スキャンチェーン４０１、４０２、４０３、４０４、第１のテスト入力端子４０５（図１５のＳＩＮ１）、第２のテスト入力端子４０６（図１５のＳＩＮ２）、入力選択回路４０７、クロック入力端子４０８（図１５のＣＫＬ）、制御信号入力端子４０９（図１５のＳＣＡＮ＿ＥＮ）、第１のテスト出力端子４１０（図１５のＳＯＴ１）、第２のテスト出力端子４１１（図１５のＳＯＴ２）、出力選択回路４１２、コマンド解析部４１３、サイクル判定部４１４を備えている。
また、スキャンチェーン４０１、４０２、４０３、４０４は、対象回路に含まれる複数の回路にテスト信号を入力する複数のスキャンＦＦ４１５を備えている。スキャンＦＦ４１５は、各スキャンチェーン４０１、４０２、４０３、４０４毎に、シリアル接続されている。
【０００９】
また、図１７に、スキャンＦＦ４１５の一例を示す。スキャンＦＦ４１５は、図１７に示すように、ＳＩ端子、ＳＯ端子、Ｄ端子、Ｑ端子、ＣＬ端子、ＳＭＣ端子等を備えている。
スキャンチェーン４０１、４０２、４０３、４０４の入力側のスキャンＦＦ４１５のＳＩ端子は、入力選択回路４０７を介して第１のテスト入力端子４０５又は第２のテスト入力端子４０６と接続されている。また、スキャンチェーン４０１、４０２、４０３、４０４の入力側のスキャンＦＦ４１５以外のスキャンＦＦ４１５のＳＩ端子は、入力側に隣接するスキャンＦＦ４１５のＳＯ端子と接続されている。これにより、各スキャンＦＦ４１５がシリアル接続される。
また、スキャンチェーン４０１、４０２、４０３、４０４の出力側のスキャンＦＦ４１５のＳＯ端子は、出力選択回路４１２を介して第１のテスト出力端子４１０又は第２のテスト出力端子４１１と接続されている。
また、スキャンチェーン４０１、４０２、４０３、４０４のスキャンＦＦ４１５のＤ端子及びＱ端子は、対象回路（図示省略）に含まれる各回路に接続されている。そして、各スキャンＦＦ４１５のＱ端子から当該各回路にテスト信号が入力され、当該各回路の出力信号が各スキャンＦＦ４１５のＤ端子に入力される。
また、スキャンチェーン４０１、４０２、４０３、４０４のＣＬ端子は、クロック入力端子４０８と接続されている。また、スキャンチェーン４０１、４０２、４０３、４０４のＳＭＣ端子は、制御信号入力端子４０９と接続されている。そして、制御信号入力端子４０９から入力される制御信号と、クロック入力端子４０８から入力されるクロック信号とに基づいて、各スキャンＦＦ４１５は、テスト信号のシフト入力、テスト信号の各回路への入力、各回路から出力された出力信号の保持、出力信号のシフト出力を行う。
【００１０】
入力選択回路４０７は、第１のテスト入力端子４０５及び第２のテスト入力端子４０６と接続されている。
また、出力選択回路４１２は、第１のテスト出力端子４１０及び第２のテスト出力端子４１１と接続されている。
【００１１】
コマンド解析部４１３は、第１のテスト入力端子４０５及び第２のテスト入力端子４０６と接続されている。また、コマンド解析部４１３は、クロック入力端子４０８、入力選択回路４０７、出力選択回路４１２と接続されている。そして、コマンド解析部４１３は、第１のテスト入力端子４０５及び第２のテスト入力端子４０６から入力されるテスト信号を解析する。また、コマンド解析部４１３は、第１のテスト入力端子４０５及び第２のテスト入力端子４０６から入力されるテスト信号を解析した解析結果信号を入力選択回路４０７及び出力選択回路４１２に入力する。そして、入力選択回路４０７は、解析結果信号に基づいて、スキャンチェーン４０１、４０２、４０３、４０４の何れか２つを選択して、第１のテスト入力端子４０５及び第２のテスト入力端子４０６と接続する。また、出力選択回路４１２は、解析結果信号に基づいて、入力選択回路４０７が選択したスキャンチェーン４０１、４０２、４０３、４０４を選択し、第１のテスト出力端子４１０及び第２のテスト出力端子４１１と接続する。
【００１２】
サイクル判定部４１４は、クロック入力端子４０８、制御信号入力端子４０９、コマンド解析部４１３と接続されている。そして、サイクル判定部４１４は、予め設定された特定のサイクルにおいて、コマンド解析部４１３に解析指示信号を入力する。そして、コマンド解析部４１３は、解析指示信号が入力されると、第１のテスト入力端子４０５及び第２のテスト入力端子４０６のテスト信号を解析し、解析結果信号を入力選択回路４０７及び出力選択回路４１２に出力する。
【００１３】
次に、特許文献１に記載の半導体集積回路の動作について説明する。
まず、制御信号入力端子４０９から制御信号として「１」が入力されると、各スキャンＦＦ４１５及びサイクル判定部４１４がシフトモードに設定される。
また、コマンド解析部４１３が第１のテスト入力端子４０５及び第２のテスト入力端子４０６から入力されるテスト信号を解析する。例えば、第１のテスト入力端子４０５から入力されたテスト信号が「０１１０１１００」であり、第２のテスト入力端子４０６から入力されたテスト信号が「１０００１１００」であった場合、コマンド解析部４１３が第１のテスト入力端子４０５のテスト信号の第１の信号及び第２のテスト入力端子４０６のテスト信号の第１信号を解析すると、それぞれ、「０」、「１」となる。この解析結果信号が入力選択回路４０７及び出力選択回路４１２に入力される。そして、例えば、図１５に示すように、第１のテスト入力端子４０５、第１のテスト出力端子４１０は、スキャンチェーン４０１に接続され、第２のテスト入力端子４０６、第２のテスト出力端子４１１は、スキャンチェーン４０４に接続される。
そして、第１のテスト入力端子４０５及び第２のテスト入力端子４０６から、それぞれ、スキャンチェーン４０１、４０４にテスト信号が入力される。スキャンチェーン４０１、４０４の各スキャンＦＦ４１５は、クロック入力端子４０８から入力されるクロック信号に基づいて、テスト信号をシフト入力する。
【００１４】
また、サイクル判定部４１４は、予め決められた特定のサイクルにおいて、コマンド解析部４１３に解析指示信号を入力する。そして、コマンド解析部４１３による解析結果に基づいて、入力選択回路４０７は、第１のテスト入力端子４０５とスキャンチェーン４０１、４０２の接続を切り替える。また、解析結果に基づいて、入力選択回路４０７は、第２のテスト入力端子４０６とスキャンチェーン４０３、４０４の接続を切り替える（図１５、図１６参照）。同様に、解析結果に基づいて、出力選択回路４１２は、第１のテスト出力端子４１０とスキャンチェーン４０１、４０２の接続を切り替える。また、解析結果に基づいて、出力選択回路４１２は、第２のテスト出力端子４１１とスキャンチェーン４０３、４０４の接続を切り替える。
【００１５】
次に、制御信号入力端子４０９から制御信号として「０」が入力されると、各スキャンＦＦ４１５がキャプチャモードに設定される。そして、各スキャンＦＦ４１５は、シフトモードで保持したテスト信号をＱ端子から対象回路へ出力する。また、対象回路の出力信号がＤ端子から各スキャンＦＦ４１５に入力される。そして、各スキャンＦＦ４１５は、当該出力信号を保持する。
【００１６】
次に、制御信号入力端子４０９から制御信号として「１」が入力されると、各スキャンＦＦ４１５がシフトモードに設定される。そして、各スキャンＦＦ４１５は、キャプチャモードにおいて保持した出力信号をＳＯ端子から出力することによりシフトする。その結果、当該出力信号が第１のテスト出力端子４１０又は第２のテスト出力端子４１１から出力される。そして、当該出力信号は、テスタにより期待値と比較されて、対象回路に含まれる各回路の良否が判定される。
【００１７】
上述した特許文献１では、スキャンチェーンの本数を多くすることにより、スキャンチェーンの長さを従来よりも短くしている。そして、第１のテスト入力端子４０５及び第１のテスト出力端子４１０、第２のテスト入力端子４０６及び第２のテスト出力端子４１１を接続するスキャンチェーンを切り替える。これにより、テスト所要時間の短縮を図っている。
【００１８】
また、テスト信号を入力するテスト入力端子に２本のスキャンチェーンを並列接続し、各スキャンチェーンの出力信号をＸＯＲ演算して出力するものも知られている（例えば、特許文献２）。
【特許文献１】特開２００４−２２６２９１号公報
【特許文献２】特開２００３−１９４８８６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら、特許文献１では、スキャンチェーンの本数が多いほど、テスト信号のパタン数が多くなる。その分、スキャンチェーンの長さを短くしたことによるテスト所要時間の短縮効果が低くなってしまう。また、テスタが接続できるスキャンチェーンの本数はテスタにより制限されるため、スキャンチェーンの本数を多くするほど１回のテストによりテストできる範囲は制限されることとなる。そのため、全ての範囲をテストする場合には、テスト所要時間の短縮効果はさらに低くなる。そして、半導体集積回路が大規模になるほど、スキャンチェーンの本数は多くなるため、テスト所要時間の短縮効果はさらに低くなる。
また、特許文献２では、スキャンチェーンを２本に分けているが、それだけでは、スキャンチェーンの長さを十分に短くすることができない。そのため、テスト所要時間を十分に短縮することができない。
【課題を解決するための手段】
【００２０】
本発明の第１の態様にかかるスキャンパス回路は、シリアル接続されたＫ個（Ｋは、Ｋ≧１を満たす整数）のスキャンＦＦを有し、入力端子と接続される第１のスキャンＦＦ群と、前記第１のスキャンＦＦ群とシリアル接続されるＳ個（Ｓは、Ｓ≧１を満たす整数）のスキャンＦＦを有する第２のスキャンＦＦ群と、シリアル接続されたＮ個（Ｎは、Ｎ≧１を満たす整数）のスキャンＦＦを有し、出力端子と接続される第３のスキャンＦＦ群と、前記スキャンＦＦのシフト動作モードにおいて、前記第１のスキャンＦＦ群の出力信号を前記第３のスキャンＦＦ群に入力するスキップ回路と、を備える。
本発明においては、シフト動作モードにおいて、第１のスキャンＦＦ群から第２のスキャンＦＦ群へと信号がシフト入力されるとともに、第１のスキャンＦＦ群から、スキップ回路を介して第３のスキャンＦＦ群へも信号がシフト入力される。即ち、同時に、第２のスキャンＦＦ群と第３のスキャンＦＦ群に信号がシフト入力される。そのため、シフト動作モードにおいて、全てのスキャンＦＦへ信号をシフトするのに要する時間が、全てのスキャンＦＦを１本にシリアル接続しているスキャンチェーンを用いる場合に比べて、短縮できる。
【発明の効果】
【００２１】
本発明により、スキャンパス回路のシフト動作に要する時間を短縮することができる。
【発明を実施するための最良の形態】
【００２２】
以下に、本発明を適用可能な実施の形態を説明する。なお、本発明は、以下の実施の形態に限定されるものではない。
【００２３】
発明の実施の形態１．
本発明の実施の形態１にかかるにかかるスキャンパス回路２００及びスキャンパス回路２００を有する半導体集積回路１００について図１〜図４を用いて説明する。図１は、本発明にかかる半導体集積回路１００の概略構成を示す回路図である。
半導体集積回路１００は、図１に示すように、対象回路１、スキャンパス回路２００、テスト入力端子３（入力端子；図１のＳＩＮ）、クロック入力端子４（図１のＣＬＫ）、制御信号入力端子５（図１のＳＣＡＮ＿ＥＮ）、テスト出力端子６（出力端子；図１のＳＯＴ）等を備えている。
なお、対象回路１には、対象回路１に信号を入力する通常入力端子（図示省略）、対象回路１の信号を出力する通常出力端子（図示省略）が備えられている。
【００２４】
テスト信号は、テスト入力端子３からスキャンパス回路２００に入力される。また、スキャンパス回路２００から出力される出力信号は、テスト出力端子６から出力される。
【００２５】
スキャンパス回路２００は、図１に示すように、複数のスキャンフリップフロップ（以下、スキャンＦＦと称する。）２１、スキップ回路２２を備えている。
スキップ回路２２は、一のスキャンＦＦ２１と他のスキャンＦＦ２１との間に接続されている。また、スキップ回路２２の前段側の各スキャンＦＦ２１は、シリアル接続されている。また、スキップ回路２２の後段側の各スキャンＦＦ２１は、シリアル接続されている。また、最前段のスキャンＦＦ２１は、テスト入力端子３と接続され、最後段のスキャンＦＦ２１はテスト出力端子６と接続されている。
【００２６】
また、スキャンパス回路２００は、スキップ回路２２に接続され、スキップ回路２２の前段のスキャンＦＦ２１の出力信号が与えられる複数のスキップスキャンＦＦ２３を備えている。そして、テスト入力端子３から入力されたテスト信号は、スキップ回路２２の前段側の各スキャンＦＦ２１においてシフト入力される。次いで、テスト信号は、スキップ回路２２の前段側の最後段のスキャンＦＦ２１から、スキップ回路２２を介して、スキップ回路２２の後段側の最前段のスキャンＦＦ２１に入力される。同時に、テスト信号は、スキップ回路２２の前段側の最後段のスキャンＦＦ２１から、スキップ回路２２を介して、各スキップスキャンＦＦ２３に入力される。また、テスト信号は、スキップ回路２２の後段側の各スキャンＦＦ２１においてシフト入力される。
【００２７】
また、スキャンＦＦ２１及びスキップスキャンＦＦ２３として用いられるフリップフロップの一例を図２（ａ）に示す。
スキャンＦＦ２１及びスキップスキャンＦＦ２３は、図２（ａ）に示すように、ＳＩ端子、ＳＯ端子、Ｄ端子、Ｑ端子、ＣＬ端子、ＳＭＣ端子等を備えている。そして、最前段に設けられるスキャンＦＦ２１のＳＩ端子は、テスト入力端子３に接続されている。また、最後段に設けられるスキャンＦＦ２１のＳＯ端子は、テスト出力端子６と接続されている。また、シリアル接続されたスキャンＦＦ２１では、前段のスキャンＦＦ２１のＳＯ端子と後段のスキャンＦＦ２１のＳＩ端子とが接続されている。そして、テスト入力端子３から入力されたテスト信号は、各スキャンＦＦ２１及び各スキップスキャンＦＦ２３において、ＳＩ端子から入力され、ＳＯ端子から出力される。これにより、テスト信号が各スキャンＦＦ２１及び各スキップスキャンＦＦ２３にシフト入力される。
【００２８】
また、各スキャンＦＦ２１及び各スキップスキャンＦＦ２３のＤ端子及びＱ端子は対象回路１と接続されている。そして、各スキャンＦＦ２１及び各スキップスキャンＦＦ２３のＱ端子からテスト信号が対象回路１に入力される。また、対象回路１から出力される結果信号が各スキャンＦＦ２１及び各スキップスキャンＦＦ２３のＤ端子に入力される。
【００２９】
また、各スキャンＦＦ２１及びスキップスキャンＦＦ２３のＳＭＣ端子は制御信号入力端子５と接続されている。そして、制御信号入力端子５からシフト動作モードを指示する制御信号（例えば、「１」の信号）が入力された場合に、各スキャンＦＦ２１及びスキップスキャンＦＦ２３は、テスト信号又は結果信号のシフトを行う。また、制御信号入力端子５からキャプチャ動作モード（通常動作モード）を指示する制御信号（例えば、「０」の信号）が入力された場合に、各スキャンＦＦ２１及びスキップスキャンＦＦ２３は、Q端子からテスト信号を対象回路１に入力するとともに、対象回路１から出力された結果信号を保持する。
【００３０】
また、各スキャンＦＦ２１及び各スキップスキャンＦＦ２３のＣＬ端子はクロック入力端子４と接続されている。そして、各スキャンＦＦ２１及びスキップスキャンＦＦ２３は、クロック入力端子４から入力されるクロック信号に同期して、シフト入力、対象回路１へのテスト信号の入力及び対象回路１から出力された出力信号の保持の各処理を行う。
従って、各スキャンＦＦ２１及び各スキップスキャンＦＦ２３は、シフトレジスタとして機能する。以下の説明において、各スキャンＦＦ２１と各スキップスキャンＦＦ２３とを、特に区別しない場合には、単に、スキャンＦＦ２１と記載する。なお、スキャンＦＦ２１は、論理値を保持する機能を有する回路であればよい。スキャンＦＦ２１の代わりに、例えば、ＲＡＭ（Random  ）Access  Memory）などが用いられてもよい。
【００３１】
ここで、スキップ回路２２の前段側に設けられた複数のスキャンＦＦ２１を第１のスキャンＦＦ群７とし、スキップ回路２２に接続された複数のスキップスキャンＦＦ２３を第２のスキャンＦＦ群８とし、スキップ回路２２の後段側に設けられた複数のスキャンＦＦ２１を第３のスキャンＦＦ群９とする。
【００３２】
即ち、スキャンパス回路２００は、図１に示すように、第１のスキャンＦＦ群７、第２のスキャンＦＦ群８、第３のスキャンＦＦ群９、スキップ回路２２等を備えている。
第１のスキャンＦＦ群７は、シリアル接続されたＫ個（Ｋは、Ｋ≧１を満たす整数）のスキャンＦＦ２１を有し、テスト入力端子３と接続されている。
第２のスキャンＦＦ群８は、第１のスキャンＦＦ２１群の出力信号が与えられるＳ個（Ｓは、Ｓ≧１を満たす整数）のスキャンＦＦ２１を備えている。
第３のスキャンＦＦ群９は、シリアル接続されたＮ個（Ｎは、Ｎ≧１を満たす整数）のスキャンＦＦ２１を有し、テスト出力端子６と接続されている。
【００３３】
本実施形態では、説明の簡単のため、Ｋ＝３、Ｓ＝３、Ｎ＝３の場合を例示して説明する。即ち、図１に示すように、第１のスキャンＦＦ群７は、スキャンＦＦ＿Ａ２１、スキャンＦＦ＿Ｂ２１、スキャンＦＦ＿Ｃ２１を備えている。また、第２のスキャンＦＦ群８は、スキャンＦＦ＿Ｘ２１、スキャンＦＦ＿Ｙ２１、スキャンＦＦ＿Ｚ２１を備えている。また、第３のスキャンＦＦ群９は、スキャンＦＦ＿Ｄ２１、スキャンＦＦ＿Ｅ２１、スキャンＦＦ＿Ｆ２１を備えている。以下の説明において、特に、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、Ｘ、Ｙ、Ｚ２１を特に区別しない場合、単に、スキャンＦＦ２１と称する。
【００３４】
半導体集積回路１００の詳細な構成を図３に示す。
スキップ回路２２は、図３に示すように、ＸＯＲ回路２２１（論理回路）、制御フリップフロップ（以下、制御ＦＦと称する）２２２、セレクタ２２３等を備えている。
また、スキップ回路２２は、第１のスキャンＦＦ群７の最後段のスキャンＦＦ＿Ｃ２１のＳＯ端子と、第２のスキャンＦＦ群８のスキャンＦＦ＿Ｘ２１、スキャンＦＦ＿Ｙ２１、スキャンＦＦ＿Ｚ２１のＳＩ端子とをそれぞれ接続する。
【００３５】
ＸＯＲ回路２２１は、スキャンＦＦ＿Ｃ２１、スキャンＦＦ＿Ｘ２１、スキャンＦＦ＿Ｙ２１、スキャンＦＦ＿Ｚ２１の出力信号の排他的論理和を演算する。
【００３６】
制御ＦＦ２２２として用いられるフリップフロップの一例を図２（ｂ）に示す。制御ＦＦ２２２は、図２（ｂ）に示すように、Ｄ端子、Ｑ端子、ＣＬ端子を備えている。
Ｄ端子は、制御信号入力端子５と接続されている。また、Ｑ端子は、セレクタ２２３の制御端（後述）に接続されている。また、ＣＬ端子は、クロック入力端子４に接続されている。そして、制御ＦＦ２２２は、クロック入力端子４から入力されるクロック信号の立ち上がり時に、制御信号入力端子５から入力される制御信号を保持する。また、制御ＦＦ２２２は、クロック入力端子４から入力されるクロック信号の立ち上がり時に、保持していた制御信号をＱ端子からセレクタ２２３の制御端に入力する。
【００３７】
セレクタ２２３は、第１の入力端、第２の入力端、制御端、出力端を備えている。
第１の入力端（図３の「１」）は、第１のスキャンＦＦ群７の最後段のスキャンＦＦ＿Ｃ２１のＳＯ端子と接続されている。また、第２の入力端（図３の「０」）は、ＸＯＲ回路２２１と接続されている。また、出力端は、第３のスキャンＦＦ群９の最前段のスキャンＦＦ＿Ｄ２１のＳＩ端子に接続されている。
そして、セレクタ２２３は、制御端に入力される制御信号に基づいて、第１の入力端に入力される信号又は第２の入力端に入力される信号の何れかを選択して、スキャンＦＦ＿Ｄ２１に入力する。
具体的には、セレクタ２２３は、制御端に「１」の制御信号が入力された場合に、第１の入力端に入力された信号を選択してスキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２２３は、「１」の制御信号が入力された場合に、スキャンＦＦ＿Ｃ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。
また、セレクタ２２３は、制御端に「０」の制御信号が入力された場合に、第２の入力端に入力された信号を選択してスキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２２３は、「０」の制御信号が入力された場合に、ＸＯＲ回路２２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。
【００３８】
次に、本発明にかかるスキャンパス回路２００を用いたテスト方法について図４に示すフローチャートを参照しながら説明する。
まず、制御信号入力端子５、クロック入力端子４、テスト入力端子３、テスト出力端子６等の各端子がテスト可能な状態に初期設定される（ステップＳ１）。具体的には、各端子にテスタの対応する端子が接続され、各端子に入力される信号が設定される。
【００３９】
次に、制御信号入力端子５に、シフト動作モードを指示する「１」の制御信号が入力されると（ステップＳ２）、クロック入力端子４に入力されるクロック信号の立ち上がりに同期して、各スキャンＦＦ２１のＳＭＣ端子に「１」の制御信号が入力される。これにより、各スキャンＦＦ２１はシフト動作モードに設定される。そして、各スキャンＦＦ２１は、テスト入力端子３又は前段のスキャンＦＦ２１から入力されるテスト信号を保持する。同時に、各スキャンＦＦ２１は、保持していたテスト信号を後段のスキャンＦＦ２１に入力する（ステップＳ３）。
【００４０】
次に、シフト動作が完了したか否か、即ち、各スキャンＦＦ２１にテスト信号が入力されたか否かが判断される（ステップＳ４）。当該判断は、例えば、テスタが、各スキャンＦＦ２１にテスト信号を入力するのに要するクロック信号を出力したか否かに基づいて自動で判断してもよいし、スキャンパス回路２００のテスト出力端子６から出力される信号に基づいて、テストを行っている作業者が判断してもよい。また、他の方法により判断が行われてもよい。
【００４１】
ステップＳ４において、シフト動作が完了していないと判断された場合には（ステップＳ４；Ｎｏ）、ステップＳ３の処理に戻る。
ステップＳ４において、シフト動作が完了したと判断された場合には（ステップＳ４；Ｙｅｓ）、制御信号入力端子５に、キャプチャ動作モードを指示する「０」の制御信号が入力される（ステップＳ５）。次いで、クロック入力端子４に入力されるクロック信号の立ち上がりに同期して、各スキャンＦＦ２１のＳＭＣ端子に「０」の制御信号が入力され、各スキャンＦＦ２１はキャプチャモードに設定される。そして、各スキャンＦＦ２１は、対象回路１にテスト信号を出力するとともに、対象回路１から出力される結果信号を保持する（ステップＳ６）。
【００４２】
次に、制御信号入力端子５に、シフト動作モードを指示する「１」の制御信号が入力されると（ステップＳ７）、クロック入力端子４に入力されるクロック信号の立ち上がりに同期して、各スキャンＦＦ２１のＳＭＣ端子に「１」の制御信号が入力され、各スキャンＦＦ２１はシフト動作モードに設定される。そして、各スキャンＦＦ２１は、各スキャンＦＦ２１は、保持していた結果信号を後段のスキャンＦＦ２１に入力する。同時に、各スキャンＦＦ２１は、テスト入力端子３又は前段のスキャンＦＦ２１から入力されるテスト信号を保持する（ステップＳ８）。
【００４３】
次に、シフト動作が完了したか否か、即ち、各スキャンＦＦ２１の結果信号が出力されたか否かが判断される（ステップＳ９）。当該判断は、例えば、テスタが、各スキャンＦＦ２１の結果信号を出力するのに要するクロック信号を出力したか否かに基づいて自動で判断してもよいし、スキャンパス回路２００のテスト出力端子６から出力される信号に基づいて、テストを行っている作業者が判断してもよい。また、他の方法により判断が行われてもよい。
【００４４】
ステップＳ９において、シフト動作が完了していないと判断された場合には（ステップＳ９；Ｎｏ）、ステップＳ８の処理に戻る。
ステップＳ９において、シフト動作が完了したと判断された場合には（ステップＳ９；Ｙｅｓ）、テストが行われていないテスト信号のパタンが残っているか否かが判断される（ステップＳ１０）。当該判断は、例えば、テスタが、全てのテスト信号のパタンについてテストを行うのに要するクロック信号を出力したか否かに基づいて自動で判断してもよいし、スキャンパス回路２００のテスト出力端子６から出力される信号に基づいて、テストを行っている作業者が判断してもよい。また、他の方法により判断が行われてもよい。
【００４５】
ステップＳ１０において、テストが行われていないテスト信号のパタンが残っていると判断した場合には（ステップＳ１０；Ｎｏ）、ステップＳ５に戻る。
ステップＳ１０において、テストが行われていないテスト信号のパタンが残っていないと判断した場合には、本処理を終了する。
【００４６】
次に、本発明の実施の形態１にかかるスキャンパス回路２００におけるシフト動作について、図５に示すフローチャートを参照しながら説明する。
まず、テスト入力端子３からテスト信号が入力されると（ステップＳ１０１）、クロック入力端子４から入力されるクロック信号の1個目の立ち上がりに同期して、１ビット目のテスト信号がスキャンＦＦ＿Ａ２１に保持される。また、クロック信号の２個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１に保持されていた１ビット目のテスト信号がスキャンＦＦ＿Ｂ２１に保持される。同時に、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力される２ビット目のテスト信号を保持する。また、クロック信号の３個目の立ち上がりに同期して、スキャンＦＦ＿Ｂ２１に保持されていた１ビット目のテスト信号がスキャンＦＦ＿Ｃ２１に保持される。同時に、スキャンＦＦ＿Ｂ２１は、スキャンＦＦ＿Ａ２１に保持されていた２ビット目のテスト信号を保持する。また、同時に、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力される３ビット目のテスト信号を保持する（ステップＳ１０２）。
【００４７】
次に、クロック入力端子４から入力されるクロック信号の４個目の立ち上がりに同期して、スキャンＦＦ＿Ｃ２１に保持されていた１ビット目のテスト信号がスキャンＦＦ＿Ｘ２１、スキャンＦＦ＿Ｙ２１、スキャンＦＦ＿Ｚ２１に保持される（ステップＳ１０３）。
【００４８】
また、この時、セレクタ２２３は、制御ＦＦ２２２から制御端に入力された信号が「１」か否かを判断する（ステップＳ１０４）。
【００４９】
ステップＳ１０４において、セレクタ２２３が、制御端に入力された信号が「０」であると判断した場合には（ステップＳ１０４；Ｎｏ）、セレクタ２２３は、第２の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。換言すれば、セレクタ２２３は、ＸＯＲ回路２２１から出力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２２３は、スキャンＦＦ＿Ｃ２１、スキャンＦＦ＿Ｘ２１、スキャンＦＦ＿Ｙ２１、スキャンＦＦ＿Ｚ２１の出力信号を排他的論理和した信号をスキャンＦＦ＿Ｄ２１に入力する。
また、スキャンＦＦ＿Ｄ２１は、セレクタ２２３から入力される信号を保持する（ステップＳ１０５）。
【００５０】
ステップＳ１０４において、セレクタ２２３が、制御端に入力された信号が「１」であると判断した場合には（ステップＳ１０４；Ｙｅｓ）、セレクタ２２３は、第１の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。換言すれば、セレクタ２２３は、スキャンＦＦ＿Ｃ２１から出力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２２３は、１ビット目のテスト信号をスキャンＦＦ＿Ｄ２１に入力する。
また、スキャンＦＦ＿Ｄ２１は、セレクタ２２３から入力される信号を保持する（ステップＳ１０６）。
【００５１】
次に、クロック入力端子４から入力されるクロック信号の５個目の立ち上がりに同期して、スキャンＦＦ＿Ｄ２１に保持されていた信号がスキャンＦＦ＿Ｅ２１に保持される。具体的には、スキャンＦＦ＿Ｅ２１は、スキャンＦＦ＿Ｃ２１、スキャンＦＦ＿Ｘ２１、スキャンＦＦ＿Ｙ２１、スキャンＦＦ＿Ｚ２１の出力信号を排他的論理和した信号、又は、１ビット目のテスト信号を保持する。また、クロック信号の６個目の立ち上がりに同期して、スキャンＦＦ＿Ｅ２１に保持されていた信号がスキャンＦＦ＿Ｆ２１に保持される。また、クロック信号の７個目の立ち上がりに同期して、スキャンＦＦ＿Ｆ２１に保持されていた信号がテスト出力端子６から出力される（ステップＳ１０７）。
【００５２】
即ち、本実施形態にかかるスキャンパス回路２００では、９つのスキャンＦＦ２１に信号をシフト入力するのに６クロック分の時間を要する。
【００５３】
次に、本発明の実施の形態１にかかるスキャンパス回路２００における各端子の出力信号、各スキャンＦＦ２１の保持信号、制御ＦＦ２２２の保持信号、及びセレクタ２２３の出力信号の経時変化について、図６に示すタイミングチャートを参照しながら説明する。
ここで、初期状態において、各スキャンＦＦ２１は、不定値を保持していることとし、制御ＦＦ２２２は「０」を保持していることとする。
【００５４】
まず、制御信号入力端子５からシフト動作モードを指示する「１」の制御信号が入力されるとともに、テスト入力端子３から「Ｉ１１」のテスト信号が入力される。そして、スキャンＦＦ２１は、クロック信号の１個目の立ち上がりに同期して、シフト動作モードに設定される。これにより、スキャンＦＦ＿Ａ２１が「Ｉ１１」のテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。また、図６に示すように、クロック入力端子４から入力されるクロック信号の１個目の立ち上がりに同期して、制御ＦＦ２２２が「１」の信号を保持する。同時に、制御ＦＦ２２２は、「０」の信号をセレクタ２２３の制御端に入力する。そのため、セレクタ２２２は、ＸＯＲ回路２２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、ＸＯＲ回路２２１の出力信号を保持する。即ち、スキャンＦＦ＿Ｂ〜Ｆ、Ｘ〜Ｚは不定値を保持する。
【００５５】
次に、クロック信号の２個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力される「Ｉ１２」のテスト信号を保持する。同時に、スキャンＦＦ＿Ａ２１は、「Ｉ１１」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ２１は、スキャンＦＦ＿Ａ２１から入力された「Ｉ１１」のテスト信号を保持する。また、制御ＦＦ２２２は、クロック信号の２個目の立ち上がりに同期して、「１」の信号をセレクタ２２３の制御端に入力する。そのため、セレクタ２２３は、スキャンＦＦ＿Ｃ２１の出力信号をスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１の出力信号を保持する。その他のスキャンＦＦ２１は、前段のスキャンＦＦ２１の信号を保持する。即ち、スキャンＦＦ＿Ｃ〜Ｆ、Ｘ〜Ｚ２１は不定値を保持する。
【００５６】
同様にして、クロック信号の３個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は「Ｉ１３」のテスト信号を保持し、スキャンＦＦ＿Ｂ２１は「Ｉ１２」のテスト信号を保持し、スキャンＦＦ＿Ｃ２１は「Ｉ１１」のテスト信号を保持する。その他のスキャンＦＦ２１は不定値を保持する。
【００５７】
そして、クロック信号の４個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は「Ｉ１４」のテスト信号を保持し、スキャンＦＦ＿Ｂ２１は「Ｉ１３」のテスト信号を保持し、スキャンＦＦ＿Ｃ２１は「Ｉ１２」のテスト信号を保持する。
また、同時に、スキャンＦＦ＿Ｘ、Ｙ、Ｚ２１は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１１」のテスト信号を保持する。
また、同時に、スキャンＦＦ＿Ｄ２１は、セレクタ２２３の出力信号を保持する。このとき、制御ＦＦ２２２は「１」の制御信号を入力する。そのため、セレクタ２２３は、第１の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１１」のテスト信号を保持する。即ち、スキャンＦＦ＿Ｘ、Ｙ、Ｚ、Ｄは、同じ信号を保持する。
その他のスキャンＦＦ２１は不定値を保持する。
【００５８】
同様にして、クロック信号の５個目の立ち上がりに同期して、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ２１は、それぞれ、「Ｉ１５」、「Ｉ１４」、「Ｉ１３」、「Ｉ１２」、「Ｉ１２」、「Ｉ１２」、「Ｉ１２」を保持する。また、スキャンＦＦ＿Ｅ２１は、スキャンＦＦ＿Ｄ２１に保持されていた「Ｉ１１」のテスト信号を保持する。また、スキャンＦＦ＿Ｆ２１は不定値を保持する。
【００５９】
また、同様にして、クロック信号の６個目の立ち上がりに同期して、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１６」、「Ｉ１５」、「Ｉ１４」、「Ｉ１３」、「Ｉ１３」、「Ｉ１３」、「Ｉ１３」、「Ｉ１２」、「Ｉ１１」を保持する。
【００６０】
次に、クロック信号の６個目の立ち下がり時に、制御信号入力端子５からキャプチャ動作モードを指示する「０」の制御信号が入力される。そして、図６に示すように、クロック入力端子４から入力されるクロック信号の７個目の立ち上がりに同期して、制御ＦＦ２２２が「０」の信号を保持する。また、スキャンＦＦ２１は、クロック信号の１個目の立ち上がりに同期して、キャプチャ動作モードに設定される。これにより、各スキャンＦＦ２１は保持していたテスト信号を対象回路１に入力する。また、各スキャンＦＦ２１は、対象回路１から出力される結果信号を保持する。具体的には、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１は、それぞれ、「ａ１」、「ｂ１」、「ｃ１」、「ｘ１」、「ｙ１」、「ｚ１」、「ｄ１」、「ｅ１」、「ｆ１」の結果信号を保持する。
【００６１】
次に、クロック信号の７個目の立ち下がり時に、制御信号入力端子５からシフト動作モードを指示する「１」の制御信号が入力される。そして、スキャンＦＦ２１は、クロック信号の８個目の立ち上がりに同期して、シフト動作モードに設定される。これにより、スキャンＦＦ＿Ａ２１が「Ｉ１８」のテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。即ち、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｅ、Ｆ２１は、それぞれ、「ａ１」、「ｂ１」、「ｃ１」、「ｃ１」、「ｃ１」、「ｄ１」、「ｅ１」の結果信号を保持する。
また、図６に示すように、クロック入力端子４から入力されるクロック信号の８個目の立ち上がりに同期して、制御ＦＦ２２２は「１」の信号を保持する。同時に、制御ＦＦ２２２は、「０」の信号をセレクタ２２３の制御端に入力する。そのため、セレクタ２２３は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２２３は、ＸＯＲ回路２２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ、Ｘ、Ｙ、Ｚ２１の信号の排他的論理和の信号を保持する。具体的には、スキャンＦＦ＿Ｄ２１は、「ｃ１」、「ｘ１」、「ｙ１」、「ｚ１」の排他的論理和「ｘｏｒ１」の信号を保持する。
また、テスト出力端子６から「ｆ１」の信号が出力される。
【００６２】
次に、クロック信号の９個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ１９」のテスト信号を保持するとともに、「Ｉ１８」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１８」、「ａ１」、「ｂ１」、「ｂ１」、「ｂ１」、「ｘｏｒ１」、「ｄ１」の信号を保持する。
また、制御ＦＦ２２２は、「１」の信号をセレクタ２２３の制御端に入力する。そのため、セレクタ２２３は、第１の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２２３は、スキャンＦＦ＿Ｃ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「ｂ１」の信号を保持する。
また、テスト出力端子６から「ｅ１」の信号が出力される。
【００６３】
同様にして、クロック信号の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力されるテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。また、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１の出力信号を保持する。そして、クロック信号の立ち上がりに同期して、テスト出力端子６から、順次、「ｄ１」、「ｘｏｒ１」、「ｂ１」、「ａ１」の結果信号が出力される。また、同時に、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１に、それぞれ、「Ｉ２３」、「Ｉ２２」、「Ｉ２１」、「Ｉ２０」、「Ｉ２０」、「Ｉ２０」、「Ｉ２０」、「Ｉ１９」、「Ｉ１８」のテスト信号が保持される。
【００６４】
即ち、セレクタ２２３は、スキャンＦＦ２１がキャプチャ動作モードからシフト動作モードに遷移してから、１クロック分の時間（第１の時間）、ＸＯＲ回路２２１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。また、セレクタ２２３は、シフト動作モードにおける当該１クロック以外の時間（第２の時間）において、スキャンＦＦ＿Ｃ２１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。これにより、テスト出力端子６から、「ｆ１」、「ｅ１」、「ｄ１」、「ｘｏｒ１」、「ｂ１」、「ａ１」の結果信号が出力される。そして、「ｘｏｒ１」は、「ｃ１」、「ｘ１」、「ｙ１」、「ｚ１」の排他的論理和であるので、テスト出力端子６から、スキャンＦＦ＿Ｃ、Ｘ、Ｙ、Ｚ２１が保持した結果信号を反映させた信号が出力されることとなる。
【００６５】
以上、説明したように、本発明の実施の形態１にかかるスキャンパス回路２００及び半導体集積回路１００によれば、シリアル接続された３個のスキャンＦＦ２１を有し、テスト入力端子３と接続される第１のスキャンＦＦ群７と、第１のスキャンＦＦ群７とシリアル接続される３個のスキャンＦＦ２１を有する第２のスキャンＦＦ群８と、シリアル接続された３個のスキャンＦＦ２１を有し、テスト出力端子６と接続される第３のスキャンＦＦ群９と、スキャンＦＦ２１のシフト動作モードにおいて、第１のスキャンＦＦ群７の出力信号を第３のスキャンＦＦ群９に入力するスキップ回路２２と、を備える。
これにより、シフト動作モードにおいて、第１のスキャンＦＦ群７から第２のスキャンＦＦ群８へと信号がシフト入力されるとともに、第１のスキャンＦＦ群７から、スキップ回路２２を介して第３のスキャンＦＦ群９へも信号がシフト入力される。即ち、同時に、第２のスキャンＦＦ群８と第３のスキャンＦＦ群９に信号がシフト入力される。そのため、シフト動作モードにおいて、全てのスキャンＦＦ２１へ信号をシフトするのに要する時間が、全てのスキャンＦＦ２１を１本にシリアル接続しているスキャンチェーンを用いる場合に比べて、短縮できる。本実施形態に示す例では、６クロック分の時間で、９つのスキャンＦＦ２１に信号をシフト入力するため、３クロック分の時間を短縮することができる。
【００６６】
また、各スキャンＦＦ２１は、キャプチャ動作モードにおいて、テスト信号を対象回路１に入力するとともに、対象回路１から出力される結果信号を保持し、スキップ回路２２のセレクタ２２３は、キャプチャ動作モードからシフト動作モードに遷移してから１クロック分の時間において、第１のスキャンＦＦ群７のスキャンＦＦ＿Ｃ２１の出力信号と第２のスキャンＦＦ群８のスキャンＦＦ＿Ｘ、Ｙ、Ｚの出力信号とを排他的論理和演算した信号を第３のスキャンＦＦ群９のスキャンＦＦ＿Ｄ２１に入力し、シフト動作モードにおける当該１クロック以外の時間において、第１のスキャンＦＦ群７のスキャンＦＦ＿Ｃ２１の出力信号を第３のスキャンＦＦ群９のスキャンＦＦ＿Ｄ２１に入力する。
これにより、テスト出力端子６から、スキャンＦＦ＿Ａ、Ｂ、Ｄ〜Ｆ２１の結果信号が出力されるとともに、スキャンＦＦ＿Ｃ、Ｘ、Ｙ、Ｚの結果信号の排他的論理和した信号が出力される。そのため、テスト出力端子６から出力される信号を期待される信号と比較することによって、対象回路１をテストすることができる。
【００６７】
発明の実施の形態２．
本発明の実施の形態２にかかる半導体集積回路１０１及びスキャンパス回路２０１は、図７に示すように、第２のスキャンＦＦ群８１及びスキップ回路２４の構成が実施の形態１にかかる半導体集積回路１００及びスキャンパス回路２００と異なり、その他の構成については、図３と同様であるため、同一の符号を付すとともに、その説明を省略する。
【００６８】
第２のスキャンＦＦ群８１は、シリアル接続されたＳ個（Ｓは、Ｓ≧１を満たす整数）のスキャンＦＦ２１を備えている。ここでは、説明の簡単のため、Ｓ＝３の場合を例示して説明する。即ち、第２のスキャンＦＦ群８１は、３個のスキャンＦＦ＿Ｘ、Ｙ、Ｚ２１を備えている。
また、第２のスキャンＦＦ群８１の最前段のスキャンＦＦ＿Ｘ２１は、第１のスキャンＦＦ群７の最後段のスキャンＦＦ＿Ｃ２１とスキップ回路２４を介して接続されている。
また、第２のスキャンＦＦ群８１の最後段のスキャンＦＦ＿Ｚ２１は、第３のスキャンＦＦ２１の最前段のスキャンＦＦ＿Ｄ２１とスキップ回路２４を介して接続されている。
なお、第２のスキャンＦＦ群８１に備えられるスキャンＦＦ２１の数は本実施形態に限られるものではない。
【００６９】
スキップ回路２４は、図７に示すように、ＸＯＲ回路２４１（論理回路）、３つの制御ＦＦ２４２、セレクタ２４３等を備えている。なお、スキップ回路２４に備えられる制御ＦＦ２４２の数は本実施形態に限られるものではなく、第２のスキャンＦＦ群８１に備えられるスキャンＦＦ２１と同数設けられればよい。
【００７０】
ＸＯＲ回路２４１は、スキャンＦＦ＿Ｃ２１とスキャンＦＦ＿Ｚ２１との出力信号の排他的論理和を演算する。
【００７１】
３つの制御ＦＦ２４２はシリアル接続されている。
制御ＦＦ２４２として用いられるフリップフロップの一例を図２（ｃ）に示す。制御ＦＦ２４２は、図２（ｃ）に示すように、Ｄ端子、Ｑ端子、ＣＬ端子、ＲＢ端子を備えている。
最前段の制御ＦＦ２４２のＤ端子は、固定値「１」が入力されるようになっている。また、最後段の制御ＦＦ２４２のＱ端子は、セレクタ２４３の制御端に接続されている。また、ＣＬ端子は、クロック入力端子４に接続されている。また、ＲＢ端子は、制御信号入力端子５と接続されている。
【００７２】
そして、３つの制御ＦＦ２４２は、制御信号入力端子５から「０」の制御信号が入力されると、クロック入力端子４から入力されるクロック信号の立ち上がり時に、リセットされて「０」固定される。また、３つの制御ＦＦ２４２は、制御信号入力端子５から入力される制御信号が「１」となってから、クロック信号の１個目の立ち上がり時に、リセット解除される。同時に、最前段の制御ＦＦ２４２は、Ｄ端子から入力される固定値「１」を保持する。また、クロック信号の２個目の立ち上がり時に、最前段の制御ＦＦ２４２は、保持していた「１」の信号を２段目の制御ＦＦ２４２に入力するとともに、Ｄ端子から入力される固定値「１」の信号を保持する。また、２段目の制御ＦＦ２４２は、最前段の制御ＦＦ２４２が保持していた「１」の信号を保持する。同様にして、クロック信号の３個目の立ち上がり時に、最後段の制御ＦＦ２４２は、「１」の信号を保持する。そして、クロック信号の４個目の立ち上がり時に、最後段の制御ＦＦ２４２は、「１」の信号をセレクタ２４３の制御端に入力する。
従って、最後段の制御ＦＦ２４２は、制御信号入力端子５から「１」の制御信号が入力されてから、３クロック分の間、セレクタ２４３の制御端に「０」の信号を入力する。
【００７３】
セレクタ２４３は、第１の入力端、第２の入力端、制御端、出力端を備えている。
第１の入力端（図７の「１」）は、第１のスキャンＦＦ群７の最後段のスキャンＦＦ＿Ｃ２１のＳＯ端子と接続されている。また、第２の入力端（図７の「０」）は、ＸＯＲ回路２４１と接続されている。また、出力端は、第３のスキャンＦＦ群９の最前段のスキャンＦＦ＿Ｄ２１のＳＩ端子に接続されている。
そして、セレクタ２４３は、制御端に入力される制御信号に基づいて、第１の入力端に入力される信号又は第２の入力端に入力される信号の何れかを選択して、スキャンＦＦ＿Ｄ２１に入力する。
具体的には、セレクタ２４３は、制御端に「１」の制御信号が入力された場合に、第１の入力端に入力された信号を選択してスキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、「１」の制御信号が入力された場合に、スキャンＦＦ＿Ｃ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。
また、セレクタ２４３は、制御端に「０」の制御信号が入力された場合に、第２の入力端に入力された信号を選択してスキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、「０」の制御信号が入力された場合に、ＸＯＲ回路２４１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。
【００７４】
次に、本発明の実施の形態２にかかるスキャンパス回路２０１におけるシフト動作について、図８に示すフローチャートを参照しながら説明する。なお、ステップＳ２０１、Ｓ２０２、Ｓ２０８の処理は、図５に示すステップＳ１０１、Ｓ１０２、Ｓ１０７と同様であるため、その説明を省略する。
【００７５】
次に、クロック入力端子４から入力されるクロック信号の４個目の立ち上がりに同期して、スキャンＦＦ＿Ｃ２１に保持されていた１ビット目のテスト信号とスキャンＦＦ＿Ｚ２１に保持されていた信号との排他的論理和がスキャンＦＦ＿Ｘ２１に保持される（ステップＳ２０３）。
【００７６】
また、この時、セレクタ２４３は、最後段の制御ＦＦ２４２から制御端に入力された信号が「１」か否かを判断する（ステップＳ２０４）。
【００７７】
ステップＳ２０４において、セレクタ２４３が、制御端に入力された信号が「０」であると判断した場合には（ステップＳ２０４；Ｎｏ）、セレクタ２４３は、第２の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。換言すれば、セレクタ２４３は、ＸＯＲ回路２４１から出力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、スキャンＦＦ＿Ｃ２１とスキャンＦＦ＿Ｚ２１の出力信号を排他的論理和した信号をスキャンＦＦ＿Ｄ２１に入力する。
また、スキャンＦＦ＿Ｄ２１は、セレクタ２４３から入力される信号を保持する（ステップＳ２０５）。
【００７８】
ステップＳ２０４において、セレクタ２４３が、制御端に入力された信号が「１」であると判断した場合には（ステップＳ２０４；Ｙｅｓ）、セレクタ２４３は、第１の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。換言すれば、セレクタ２４３は、スキャンＦＦ＿Ｃ２１から出力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、１ビット目のテスト信号をスキャンＦＦ＿Ｄ２１に入力する。
また、スキャンＦＦ＿Ｄ２１は、セレクタ２４３から入力される信号を保持する（ステップＳ２０６）。
【００７９】
次に、クロック入力端子４から入力されるクロック信号の５個目の立ち上がりに同期して、スキャンＦＦ＿Ｘ２１に保持されていた信号がスキャンＦＦ＿Ｙ２１に保持される。また、クロック信号の６個目の立ち上がりに同期して、スキャンＦＦ＿Ｙ２１に保持されていた信号がスキャンＦＦ＿Ｚ２１に保持される（ステップＳ２０７）。
【００８０】
即ち、本実施形態にかかるスキャンパス回路２０１では、９つのスキャンＦＦ２１に信号をシフト入力するのに６クロック分の時間を要する。
【００８１】
次に、本発明の実施の形態２にかかるスキャンパス回路２０１における各端子の出力信号、各スキャンＦＦ２１の保持信号、最後段の制御ＦＦ２４２の保持信号、及びセレクタ２４３の出力信号の経時変化について、図９に示すタイミングチャートを参照しながら説明する。
ここで、初期状態において、各スキャンＦＦ２１は、不定値を保持していることとし、最後段の制御ＦＦ２４２は「０」を保持していることとする。
【００８２】
まず、制御信号入力端子５からシフト動作モードを指示する「１」の制御信号が入力されるとともに、テスト入力端子３から「Ｉ１１」のテスト信号が入力される。また、スキャンＦＦ２１は、クロック信号の１個目の立ち上がりに同期して、シフト動作モードに設定される。これにより、スキャンＦＦ＿Ａ２１が「Ｉ１１」のテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。
また、図９に示すように、クロック入力端子４から入力されるクロック信号の１個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号「０」を保持する。同時に、最後段の制御ＦＦ２４２は、セレクタ２４３の制御端に「０」の信号を出力する。そのため、セレクタ２４３は、第２の入力端に入力される信号をスキャンＦＦ＿Ｄ２１に入力する。そして、スキャンＦＦ＿Ｄ２１は、ＸＯＲ回路２４１の出力信号を保持する。また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｚ２１の出力信号との排他的論理和の信号を保持する。即ち、スキャンＦＦ＿Ｂ〜Ｆ、Ｘ〜Ｚは不定値を保持する。
【００８３】
同様にして、クロック信号の２個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力される「Ｉ１２」のテスト信号を保持する。同時に、スキャンＦＦ＿Ａ２１は、「Ｉ１１」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ２１は、スキャンＦＦ＿Ａ２１から入力された「Ｉ１１」のテスト信号を保持する。
また、クロック信号の２個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号「０」を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２４３の制御端に入力する。そのため、セレクタ２４３は、第２の入力端に入力される信号をスキャンＦＦ＿Ｄ２１に入力する。そして、スキャンＦＦ＿Ｄ２１は、ＸＯＲ回路２４１の出力信号を保持する。
スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｚ２１の出力信号との排他的論理和の信号を保持する。その他のスキャンＦＦ２１は、前段のスキャンＦＦ２１の信号を保持する。即ち、スキャンＦＦ＿Ｃ〜Ｆ、Ｘ〜Ｚ２１は不定値を保持する。
【００８４】
次に、クロック信号の３個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は「Ｉ１３」のテスト信号を保持し、スキャンＦＦ＿Ｂ２１は「Ｉ１２」のテスト信号を保持し、スキャンＦＦ＿Ｃ２１は「Ｉ１１」のテスト信号を保持する。
また、クロック信号の３個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号「１」を保持する。同時に、最後段の制御ＦＦ２４２は、セレクタ２４３の制御端に「０」の信号を入力する。そのため、スキャンＦＦ＿Ｄ２１は、ＸＯＲ回路２４１の出力信号を保持する。
スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｚ２１の出力信号との排他的論理和の信号を保持する。その他のスキャンＦＦ２１は不定値を保持する。
【００８５】
そして、クロック信号の４個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は「Ｉ１４」のテスト信号を保持し、スキャンＦＦ＿Ｂ２１は「Ｉ１３」のテスト信号を保持し、スキャンＦＦ＿Ｃ２１は「Ｉ１２」のテスト信号を保持する。
また、同時に、スキャンＦＦ＿Ｄ２１は、セレクタ２４３の出力信号を保持する。このとき、最後段の制御ＦＦ２４２は、「１」の信号をセレクタ２４３の制御端に入力する。そのため、セレクタ２４３は、第１の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１１」のテスト信号を保持する。
また、同時に、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１１」の信号とスキャンＦＦ＿Ｚ２１に保持されていた不定値との排他的論理和「ｘｏｒ１０」を保持する。
その他のスキャンＦＦ２１は不定値を保持する。
【００８６】
同様にして、クロック信号の５個目の立ち上がりに同期して、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｄ２１は、それぞれ、「Ｉ１５」、「Ｉ１４」、「Ｉ１３」、「ｘｏｒ１１」、「ｘｏｒ１０」、「Ｉ１２」を保持する。また、スキャンＦＦ＿Ｅ２１は、スキャンＦＦ＿Ｄ２１に保持されていた「Ｉ１１」のテスト信号を保持する。また、その他のスキャンＦＦ２１は不定値を保持する。なお、「ｘｏｒ１１」は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１２」とスキャンＦＦ＿Ｚ２１に保持されていた不定値との排他的論理和である。
【００８７】
また、同様にして、クロック信号の６個目の立ち上がりに同期して、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１６」、「Ｉ１５」、「Ｉ１４」、「ｘｏｒ１２」、「ｘｏｒ１１」、「ｘｏｒ１０」、「Ｉ１３」、「Ｉ１２」、「Ｉ１１」を保持する。なお、「ｘｏｒ１１」は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１３」とスキャンＦＦ＿Ｚ２１に保持されていた不定値との排他的論理和である。
【００８８】
次に、クロック信号の６個目の立ち下がり時に、制御信号入力端子５からキャプチャ動作モードを指示する「０」の制御信号が入力される。そして、図９に示すように、クロック入力端子４から入力されるクロック信号の７個目の立ち上がりに同期して、最後段の制御ＦＦ２４２が「０」の信号を保持する（「０」固定）。また、スキャンＦＦ２１は、クロック信号の１個目の立ち上がりに同期して、キャプチャ動作モードに設定される。これにより、各スキャンＦＦ２１は保持していたテスト信号を対象回路１に入力する。また、各スキャンＦＦ２１は、対象回路１から出力される結果信号を保持する。具体的には、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１は、それぞれ、「ａ１」、「ｂ１」、「ｃ１」、「ｘ１」、「ｙ１」、「ｚ１」、「ｄ１」、「ｅ１」、「ｆ１」の結果信号を保持する。
【００８９】
次に、クロック信号の７個目の立ち下がり時に、制御信号入力端子５からシフト動作モードを指示する「１」の制御信号が入力される。そして、スキャンＦＦ２１は、クロック信号の８個目の立ち上がりに同期して、シフト動作モードに設定される。これにより、スキャンＦＦ＿Ａ２１が「Ｉ１８」のテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。即ち、スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は、それぞれ、「ａ１」、「ｂ１」、「ｘ１」、「ｙ１」、「ｄ１」、「ｅ１」の結果信号を保持する。
また、クロック入力端子４から入力されるクロック信号の８個目の立ち上がりに同期して、３つの制御ＦＦ２４２は、リセット解除される。そして、最前段の制御ＦＦ２４２は固定値「１」の信号を保持する。この時点で、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号である「０」を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２４３の制御端に入力する。そのため、セレクタ２４３は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、ＸＯＲ回路２４１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ、Ｚ２１の信号の排他的論理和の信号を保持する。具体的には、スキャンＦＦ＿Ｄ２１は、「ｃ１」、「ｚ１」の排他的論理和「ｘｏｒ２０」の信号を保持する。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｚ２１の出力信号の排他的論理和の信号を保持する。即ち、スキャンＦＦ＿Ｘ２１は、「ｃ１」と「ｚ１」の排他的論理和「ｘｏｒ１３」を保持する。また、テスト出力端子６から「ｆ１」の信号が出力される。
【００９０】
次に、クロック信号の９個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ１９」のテスト信号を保持するとともに、「Ｉ１８」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１８」、「ａ１」、「ｘｏｒ１３」、「ｘ１」、「ｘｏｒ２０」、「ｄ１」の信号を保持する。また、スキャンＦＦ＿Ｘ２１は、「ｂ１」と「ｙ１」の排他的論理和「ｘｏｒ１４」を保持する。また、テスト出力端子６から「ｅ１」の信号が出力される。
また、クロック信号の９個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の「０」の信号を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２４３の制御端に入力する。そのため、セレクタ２４３は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、スキャンＦＦ＿Ｃ、Ｚ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「ｂ１」、「ｙ１」の排他的論理和「ｘｏｒ２１」の信号を保持する。
【００９１】
次に、クロック信号の１０個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ２０」のテスト信号を保持するとともに、「Ｉ１９」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１９」、「Ｉ１８」、「ｘｏｒ１４」、「ｘｏｒ１３」、「ｘｏｒ２１」、「ｘｏｒ２０」の信号を保持する。また、スキャンＦＦ＿Ｘ２１は、「ａ１」と「ｘ１」の排他的論理和「ｘｏｒ１５」を保持する。また、テスト出力端子６から「ｄ１」の信号が出力される。
また、クロック信号の１０個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の「１」の信号を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２４３の制御端に入力する。そのため、セレクタ２４３は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、スキャンＦＦ＿Ｃ、Ｚ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「ａ１」、「ｘ１」の排他的論理和「ｘｏｒ２２」の信号を保持する。
【００９２】
次に、クロック信号の１１個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ２１」のテスト信号を保持するとともに、「Ｉ２０」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は、それぞれ、「Ｉ２０」、「Ｉ１９」、「ｘｏｒ１５」、「ｘｏｒ１４」、「ｘｏｒ２２」、「ｘｏｒ２１」の信号を保持する。また、スキャンＦＦ＿Ｘ２１は、「Ｉ１８」と「ｘｏｒ１３」の排他的論理和「ｘｏｒ１６」を保持する。また、テスト出力端子６から「ｘｏｒ２０」の信号が出力される。
また、クロック信号の１１個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の「１」の信号を保持する。同時に、最後段の制御ＦＦ２４２は、「１」の信号をセレクタ２４３の制御端に入力する。そのため、セレクタ２４３は、第１の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２４３は、スキャンＦＦ＿Ｃ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「Ｉ１８」の信号を保持する。
【００９３】
同様にして、クロック信号の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力されるテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｙ、Ｚ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｚ２１の出力信号の排他的論理和の信号を保持する。また、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１の出力信号を保持する。そして、クロック信号の立ち上がりに同期して、テスト出力端子６から、順次、「ｘｏｒ２１」、「ｘｏｒ２２」、「Ｉ１８」の信号が出力される。また、同時に、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１に、それぞれ、「Ｉ２３」、「Ｉ２２」、「Ｉ２１」、「ｘｏｒ１８」、「ｘｏｒ１７」、「ｘｏｒ１６」、「Ｉ２０」、「Ｉ１９」、「Ｉ１８」のテスト信号が保持される。なお、「ｘｏｒ１７」は、「Ｉ１９」と「ｘｏｒ１４」の排他的論理和である。また、「ｘｏｒ１８」は「Ｉ２０」と「ｘｏｒ１５」の排他的論理和である。
【００９４】
即ち、セレクタ２４３は、スキャンＦＦ２１がキャプチャ動作モードからシフト動作モードに遷移してから、３クロック分の時間（第１の時間）、ＸＯＲ回路２４１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。また、セレクタ２４３は、シフト動作モードにおける当該３クロック以外の時間（第２の時間）において、スキャンＦＦ＿Ｃ２１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。これにより、テスト出力端子６から、「ｆ１」、「ｅ１」、「ｄ１」、「ｘｏｒ２０」、「ｘｏｒ２１」、「ｘｏｒ２２」の結果信号が出力される。そして、「ｘｏｒ２０」は、「ｃ１」、「ｚ１」の排他的論理和であり、「ｘｏｒ２１」は、「ｂ１」、「ｙ１」の排他的論理和であり、「ｘｏｒ２２」は、「ａ１」、「ｘ１」の排他的論理和であるので、テスト出力端子６から、スキャンＦＦ＿Ｃ、Ｘ、Ｙ、Ｚ２１が保持した結果信号を反映させた信号が出力されることとなる。
【００９５】
以上、説明したように、本発明の実施の形態２にかかるスキャンパス回路２０１及び半導体集積回路１０１によれば、実施の形態１と同様の効果が得られることは勿論のこと、特に、テスト出力端子６から、「ｃ１」、「ｚ１」の排他的論理和である「ｘｏｒ２０」と、「ｂ１」、「ｙ１」の排他的論理和である「ｘｏｒ２１」と、「ａ１」、「ｘ１」の排他的論理和である「ｘｏｒ２２」とが順次出力される。
これにより、「ｃ１」、「ｘ１」、「ｙ１」、「ｚ１」の全ての排他的論理和である「ｘｏｒ１」と期待値とを比較する場合に比べて、テスト信号のパタンをより容易に設計することができる。
【００９６】
変形例１．
本発明の実施の形態２の変形例１にかかる半導体集積回路１０２及びスキャンパス回路２０２について、図１０を参照しながら説明する。変形例１にかかる半導体集積回路１０２は、図１０に示すように、スキップ回路２５の構成が実施の形態２にかかる半導体集積回路１０１及びスキャンパス回路２０１と異なり、その他の構成については、図７と同様であるため、同一の符号を付すとともに、その説明を省略する。
【００９７】
スキップ回路２５は、図１０に示すように、ＯＲ回路２５１、ＸＯＲ回路２５２（論理回路）、３つの制御ＦＦ２４２、セレクタ２４３、論理制御端子２５３（図１０のＸＣＴＬ）等を備えている。なお、スキップ回路２５に備えられる制御ＦＦ２４２の数は本実施形態に限られるものではなく、第２のスキャンＦＦ群８１に備えられるスキャンＦＦ２１と同数設けられればよい。
【００９８】
ＯＲ回路２５１は、論理制御端子２５３及びスキャンＦＦ＿Ｚ２１のＳＯ端子と接続されている。そして、ＯＲ回路２５１は、論理制御端子２５３から入力される制御信号と、スキャンＦＦ＿Ｚ２１から出力される出力信号との論理和をＸＯＲ回路２５２に出力する。
【００９９】
ＸＯＲ回路２５２は、スキャンＦＦ＿Ｃ２１のＳＯ端子とＯＲ回路２５１の出力信号の排他的論理和を演算する。
【０１００】
そして、図９に示すように、スキャンＦＦ２１がキャプチャ動作モードからシフト動作モードに遷移してから３クロック分の時間（第１の時間）において、クロック信号の立ち上がりに同期して、スキャンＦＦ＿Ｄ２１には、「ｘｏｒ２０」、「ｘｏｒ２１」、「ｘｏｒ２２」の信号が順次保持される。ここで、例えば、論理制御端子２５３から「１」の信号を入力された場合、信号「ｘｏｒ２０」、「ｘｏｒ２１」、「ｘｏｒ２２」には、それぞれ、「ｚ１」、「ｙ１」、「ｘ１」の信号が反映されなくなる。即ち、信号「ｘｏｒ２０」、「ｘｏｒ２１」、「ｘｏｒ２２」は、それぞれ、「ｃ１」、「ｂ１」、「ａ１」のみを反映する値となる。
従って、論理制御端子２５３から「１」の信号を入力することにより、テスト出力端子６から出力される「ｘｏｒ２０」、「ｘｏｒ２１」、「ｘｏｒ２２」の値を、それぞれ、「ｃ１」、「ｂ１」、「ａ１」のみを反映する値とすることができる。
これにより、テスト出力端子６から出力された「ｘｏｒ２０」、「ｘｏｒ２１」、「ｘｏｒ２２」の信号が期待値と異なった場合に、第１のスキャンＦＦ群７のスキャンＦＦ２１と、第２のスキャンＦＦ群８１のスキャンＦＦ２１の何れの結果信号が期待値と異なるのかを容易に判別することが可能となる。そして、さらに容易に対象回路１の故障を検出することができる。
【０１０１】
発明の実施の形態３．
本発明の実施の形態３にかかる半導体集積回路１０３及びスキャンパス回路２０３は、図１１に示すように、第１のスキャンＦＦ群７１、第２のスキャンＦＦ群８２及びスキップ回路２６の構成が実施の形態２にかかる半導体集積回路１０１及びスキャンパス回路２０１と異なり、その他の構成については、図７と同様であるため、同一の符号を付すとともに、その説明を省略する。
【０１０２】
第１のスキャンＦＦ群７１は、シリアル接続されたＫ個（Ｋは、Ｋ≧１を満たす整数）のスキャンＦＦ２１を備えている。ここでは、説明の簡単のため、Ｋ＝３の場合を例示して説明する。即ち、第１のスキャンＦＦ群７１は、３個のスキャンＦＦ＿Ａ、Ｂ、Ｃ２１を備えている。
また、第１のスキャンＦＦ群７１の最前段のスキャンＦＦ＿Ａ２１は、テスト入力端子３と接続されている。
また、第１のスキャンＦＦ群７１のスキャンＦＦ２１のＳＯ端子は後段のスキャンＦＦ２１のＳＩ端子に接続されるとともに、スキップ回路２６と接続されている。
また、第１のスキャンＦＦ群７１の最後段のスキャンＦＦ＿Ｃ２１のＳＯ端子はスキップ回路２６に接続されている。
なお、第１のスキャンＦＦ群７１に備えられるスキャンＦＦ２１の数は本実施形態に限られるものではない。
【０１０３】
第２のスキャンＦＦ群８２は、Ｓ個（Ｓは、Ｓ≧１を満たす整数）のスキャンＦＦ２１を備えている。ここでは、説明の簡単のため、Ｓ＝３の場合を例示して説明する。即ち、第２のスキャンＦＦ群８２は、３個のスキャンＦＦ＿Ｘ、Ｙ、Ｚ２１を備えている。
また、第２のスキャンＦＦ群８２のスキャンＦＦ２１のＳＩ端子は、スキップ回路２６を介して、第１のスキャンＦＦ群７１と接続されている。また、第２のスキャンＦＦ群８２の最後段のスキャンＦＦ＿Ｚ２１のＳＯ端子はスキップ回路２６のセレクタ２６２の第２の入力端（後述）に接続されるとともに、スキップ回路２６に接続されている。また、第２のスキャンＦＦ群８２のその他のスキャンＦＦ２１のＳＯ端子は、スキップ回路２６に接続されている。
なお、第２のスキャンＦＦ群８２に備えられるスキャンＦＦ２１の数は本実施形態に限られるものではない。
【０１０４】
スキップ回路２６は、図１１に示すように、多入力シグネチャレジスタ（ＭＩＳＲ（Multi  Input  Signature  Regisuter））２６１、３つの制御ＦＦ２４２、セレクタ２６２等を備えている。なお、スキップ回路２６に備えられる制御ＦＦ２４２の数は本実施形態に限られるものではなく、第２のスキャンＦＦ群８２に備えられるスキャンＦＦ２１と同数設けられればよい。
【０１０５】
多入力シグネチャレジスタ２６１は、第１のスキャンＦＦ群７１のｋ段目（ｋは、１≦ｋ≦Ｋ）のスキャンＦＦ２１の出力信号と、第２のスキャンＦＦ群８２のｓ段目（ｋは、１≦ｓ≦Ｓ）のスキャンＦＦ２１の出力信号との排他的論理和を演算する複数のＸＯＲ回路を備えている。
【０１０６】
具体的には、多入力シグネチャレジスタ２６１は、第１のＸＯＲ回路２６３、第２のＸＯＲ回路２６４、第３のＸＯＲ回路２６５、第４のＸＯＲ回路２６６を備えている。
第１のＸＯＲ回路２６３は、スキャンＦＦ＿Ｙ２１の出力信号とスキャンＦＦ＿Ｚ２１の出力信号との排他的論理和を演算し、第２のＸＯＲ回路２６４に入力する。
第２のＸＯＲ回路２６４は、スキャンＦＦ＿Ａ２１の出力信号と第１のＸＯＲ回路２６３の出力信号との排他的論理和を演算し、スキャンＦＦ＿Ｘ２１に入力する。
第３のＸＯＲ回路２６５は、スキャンＦＦ＿Ｂ２１の出力信号とスキャンＦＦ＿Ｘ２１の出力信号との排他的論理和を演算し、スキャンＦＦ＿Ｙ２１に入力する。
第４のＸＯＲ回路２６６は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｙ２１の出力信号との排他的論理和を演算し、スキャンＦＦ＿Ｚ２１に入力する。
【０１０７】
セレクタ２６２は、第１の入力端、第２の入力端、制御端、出力端を備えている。
第１の入力端（図１１の「１」）は、第１のスキャンＦＦ群７１の最後段のスキャンＦＦ＿Ｃ２１のＳＯ端子と接続されている。また、第２の入力端（図１１の「０」）は、第２のスキャンＦＦ群８２の最後段のスキャンＦＦ＿Ｚ２１のＳＯ端子と接続されている。また、出力端は、第３のスキャンＦＦ群９の最前段のスキャンＦＦ＿Ｄ２１のＳＩ端子に接続されている。
そして、セレクタ２６２は、制御端に入力される制御信号に基づいて、第１の入力端に入力される信号又は第２の入力端に入力される信号の何れかを選択して、スキャンＦＦ＿Ｄ２１に入力する。
具体的には、セレクタ２６２は、制御端に「１」の制御信号が入力された場合に、第１の入力端に入力された信号を選択してスキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、「１」の制御信号が入力された場合に、スキャンＦＦ＿Ｃ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。
また、セレクタ２６２は、制御端に「０」の制御信号が入力された場合に、第２の入力端に入力された信号を選択してスキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、「０」の制御信号が入力された場合に、スキャンＦＦ＿Ｚ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。
【０１０８】
次に、本発明の実施の形態３にかかるスキャンパス回路２０３におけるシフト動作について、図１２に示すフローチャートを参照しながら説明する。なお、ステップＳ３０１、Ｓ３０２、Ｓ３０８の処理は、図８に示すステップＳ２０１、Ｓ２０２、Ｓ２０８と同様であるため、その説明を省略する。
【０１０９】
次に、クロック入力端子４から入力されるクロック信号の４個目の立ち上がりに同期して、スキャンＦＦ＿Ｙ２１及びスキャンＦＦ＿Ｚ２１の排他的論理和と、スキャンＦＦ＿Ａ２１に保持されていた３ビット目のテスト信号との排他的論理和がスキャンＦＦ＿Ｘ２１に保持される（ステップＳ３０３）。
【０１１０】
また、この時、セレクタ２６２は、最後段の制御ＦＦ２４２から制御端に入力された信号が「１」か否かを判断する（ステップＳ３０４）。
【０１１１】
ステップＳ３０４において、セレクタ２６２が、制御端に入力された信号が「０」であると判断した場合には（ステップＳ３０４；Ｎｏ）、セレクタ２６２は、第２の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。換言すれば、セレクタ２６２は、スキャンＦＦ＿Ｚ２１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。
また、スキャンＦＦ＿Ｄ２１は、セレクタ２６２から入力される信号を保持する（ステップＳ３０５）。
【０１１２】
ステップＳ３０４において、セレクタ２６２が、制御端に入力された信号が「１」であると判断した場合には（ステップＳ３０４；Ｙｅｓ）、セレクタ２６２は、第１の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。換言すれば、セレクタ２６２は、スキャンＦＦ＿Ｃ２１から出力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、１ビット目のテスト信号をスキャンＦＦ＿Ｄ２１に入力する。
また、スキャンＦＦ＿Ｄ２１は、セレクタ２６２から入力される信号を保持する（ステップＳ３０６）。
【０１１３】
次に、クロック入力端子４から入力されるクロック信号の５個目の立ち上がりに同期して、スキャンＦＦ＿Ｂ２１の出力信号とスキャンＦＦ＿Ｘ２１の出力信号との排他的論理和の信号がスキャンＦＦ＿Ｙ２１に保持される。また、クロック信号の６個目の立ち上がりに同期して、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｙ２１に保持されていた信号がスキャンＦＦ＿Ｚ２１に保持される（ステップＳ３０７）。
【０１１４】
即ち、本実施形態にかかるスキャンパス回路２０３では、９つのスキャンＦＦ２１に信号をシフト入力するのに６クロック分の時間を要する。
【０１１５】
次に、本発明の実施の形態３にかかるスキャンパス回路２０３における各端子の出力信号、各スキャンＦＦ２１の保持信号、最後段の制御ＦＦ２４２の保持信号、及びセレクタ２６２の出力信号の経時変化について、図１３に示すタイミングチャートを参照しながら説明する。
ここで、初期状態において、各スキャンＦＦ２１は、不定値を保持していることとし、最後段の制御ＦＦ２４２は「０」を保持していることとする。
【０１１６】
まず、制御信号入力端子５からシフト動作モードを指示する「１」の制御信号が入力されるとともに、テスト入力端子３から「Ｉ１１」のテスト信号が入力される。また、スキャンＦＦ２１は、クロック信号の１個目の立ち上がりに同期して、シフト動作モードに設定される。これにより、スキャンＦＦ＿Ａ２１が「Ｉ１１」のテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。
また、図１３に示すように、クロック入力端子４から入力されるクロック信号の１個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号「１」を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２６２の制御端に入力する。そのため、セレクタ２６２は、第２の入力端に入力される信号をスキャンＦＦ＿Ｄ２１に入力する。そして、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｚ２１の出力信号を保持する。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号及びスキャンＦＦ＿Ｚ２１の出力信号の排他的論理和とスキャンＦＦ＿Ａ２１の出力信号との排他的論理和の信号を保持する。スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号とスキャンＦＦ＿Ｘ２１の出力信号との排他的論理和の信号を保持する。スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｙ２１の出力信号との排他的論理和の信号を保持する。即ち、スキャンＦＦ＿Ｂ〜Ｆ、Ｘ〜Ｚは不定値を保持する。
【０１１７】
同様にして、クロック信号の２個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力される「Ｉ１２」のテスト信号を保持する。同時に、スキャンＦＦ＿Ａ２１は、「Ｉ１１」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ２１は、スキャンＦＦ＿Ａ２１から入力された「Ｉ１１」のテスト信号を保持する。
また、クロック信号の２個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号「０」を保持する。同時に、最後段の制御ＦＦ２４２は、セレクタ２６２の制御端に「０」の信号を入力する。そのため、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｚ２１の出力信号を保持する。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号及びスキャンＦＦ＿Ｚ２１の出力信号の排他的論理和とスキャンＦＦ＿Ａ２１の出力信号との排他的論理和の信号を保持する。スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号とスキャンＦＦ＿Ｘ２１の出力信号との排他的論理和の信号を保持する。スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｙ２１の出力信号との排他的論理和の信号を保持する。その他のスキャンＦＦ２１も前段のスキャンＦＦ２１の信号を保持する。即ち、スキャンＦＦ＿Ｃ〜Ｆ、Ｘ〜Ｚ２１は不定値を保持する。
【０１１８】
次に、クロック信号の３個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は「Ｉ１３」のテスト信号を保持し、スキャンＦＦ＿Ｂ２１は「Ｉ１２」のテスト信号を保持し、スキャンＦＦ＿Ｃ２１は「Ｉ１１」のテスト信号を保持する。
また、クロック信号の３個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号「１」を保持する。同時に、最後段の制御ＦＦ２４２は、セレクタ２６２の制御端に「０」の信号を入力する。そのため、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｚ２１の出力信号を保持する。また、その他のスキャンＦＦ２１は不定値を保持する。
【０１１９】
そして、クロック信号の４個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は「Ｉ１４」のテスト信号を保持し、スキャンＦＦ＿Ｂ２１は「Ｉ１３」のテスト信号を保持し、スキャンＦＦ＿Ｃ２１は「Ｉ１２」のテスト信号を保持する。
また、同時に、スキャンＦＦ＿Ｄ２１は、セレクタ２６２の出力信号を保持する。このとき、最後段の制御ＦＦ２４２は、「１」の信号をセレクタ２６２の制御端に入力する。そのため、セレクタ２６２は、第１の入力端に入力される信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１に保持されていた「Ｉ１１」のテスト信号を保持する。
また、同時に、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１及びスキャンＦＦ＿Ｚ２１の排他的論理和である不定値と、スキャンＦＦ＿Ａ２１に保持されていた「Ｉ１３」との排他的論理和「ｘｏｒ３０」を保持する。
その他のスキャンＦＦ２１は不定値を保持する。
【０１２０】
同様にして、クロック信号の５個目の立ち上がりに同期して、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｄ２１は、それぞれ、「Ｉ１５」、「Ｉ１４」、「Ｉ１３」、「ｘｏｒ３１」、「Ｉ１２」を保持する。また、スキャンＦＦ＿Ｅ２１は、スキャンＦＦ＿Ｄ２１に保持されていた「Ｉ１１」のテスト信号を保持する。また、スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１に保持されていた「Ｉ１３」とスキャンＦＦ＿Ｘ２１に保持されていた「ｘｏｒ３０」との排他的論理和「ｘｏｒ４０」を保持する。また、その他のスキャンＦＦ２１は不定値を保持する。なお、「ｘｏｒ３１」は、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１及びスキャンＦＦ＿Ｚ２１の排他的論理和である不定値と、スキャンＦＦ＿Ａ２１に保持されていた「Ｉ１４」との排他的論理和である。
【０１２１】
また、同様にして、クロック信号の６個目の立ち上がりに同期して、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１６」、「Ｉ１５」、「Ｉ１４」、「ｘｏｒ３２」、「ｘｏｒ４１」、「ｘｏｒ５０」、「Ｉ１３」、「Ｉ１２」、「Ｉ１１」を保持する。なお、「ｘｏｒ３２」は、スキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４０」及びスキャンＦＦ＿Ｚ２１の不定値の排他的論理和とスキャンＦＦ＿Ａ２１に保持されていた「Ｉ１５」との排他的論理和である。「ｘｏｒ４１」は、スキャンＦＦ＿Ｂ２１の出力信号「Ｉ１４」とスキャンＦＦ＿Ｘ２１に保持されていた「ｘｏｒ３１」との排他的論理和である。「ｘｏｒ５０」は、スキャンＦＦ＿Ｃ２１の出力信号「Ｉ１３」とスキャンＦＦ＿Ｙ２１に保持されていた「ｘｏｒ４０」との排他的論理和である。
【０１２２】
次に、クロック信号の６個目の立ち下がり時に、制御信号入力端子５からキャプチャ動作モードを指示する「０」の制御信号が入力される。そして、図１３に示すように、クロック入力端子４から入力されるクロック信号の７個目の立ち上がりに同期して、最後段の制御ＦＦ２４２が「０」の信号を保持する（「０」固定）。また、スキャンＦＦ２１は、クロック信号の１個目の立ち上がりに同期して、キャプチャ動作モードに設定される。これにより、各スキャンＦＦ２１は保持していたテスト信号を対象回路１に入力する。また、各スキャンＦＦ２１は、対象回路１から出力される結果信号を保持する。具体的には、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１は、それぞれ、「ａ１」、「ｂ１」、「ｃ１」、「ｘ１」、「ｙ１」、「ｚ１」、「ｄ１」、「ｅ１」、「ｆ１」の結果信号を保持する。
【０１２３】
次に、クロック信号の７個目の立ち下がり時に、制御信号入力端子５からシフト動作モードを指示する「１」の制御信号が入力される。そして、スキャンＦＦ２１は、クロック信号の８個目の立ち上がりに同期して、シフト動作モードに設定される。これにより、スキャンＦＦ＿Ａ２１が「Ｉ１８」のテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。即ち、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は、それぞれ、「ａ１」、「ｂ１」、「ｄ１」、「ｅ１」の結果信号を保持する。
また、クロック入力端子４から入力されるクロック信号の８個目の立ち上がりに同期して、３つの制御ＦＦ２４２は、リセット解除される。そして、最前段の制御ＦＦ２４２は固定値「１」の信号を保持する。この時点で、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の保持信号である「０」を保持し、「０」の信号をセレクタ２６２の制御端に入力する。そのため、セレクタ２６２は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、スキャンＦＦ＿Ｚ２１の出力信号「ｚ１」を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「ｚ１」の信号を保持する。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号「ｙ１」及びスキャンＦＦ＿Ｚ２１の出力信号「ｚ１」の排他的論理和とスキャンＦＦ＿Ａ２１に保持されていた「ａ１」との排他的論理和「ｘｏｒ３３」の信号を保持する。また、スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号「ｂ１」とスキャンＦＦ＿Ｘ２１の出力信号「ｘ１」の排他的論理和「ｘｏｒ４２」の信号を保持する。また、スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号「ｃ１」とスキャンＦＦ＿Ｙ２１の出力信号「ｙ１」の排他的論理和「ｘｏｒ５１」の信号を保持する。また、テスト出力端子６から「ｆ１」の信号が出力される。
【０１２４】
次に、クロック信号の９個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ１９」のテスト信号を保持するとともに、「Ｉ１８」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。そして、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１８」、「ａ１」、「ｚ１」、「ｄ１」の信号を保持する。
また、クロック信号の９個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の「０」の信号を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２６２の制御端に入力する。そのため、セレクタ２６２は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、スキャンＦＦ＿Ｚ２１の出力信号「ｘｏｒ５１」を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「ｃ１」、「ｙ１」の排他的論理和「ｘｏｒ５１」の信号を保持する。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４２」及びスキャンＦＦ＿Ｚ２１の出力信号「ｘｏｒ５１」の排他的論理和とスキャンＦＦ＿Ａ２１に保持されていた「Ｉ１８」との排他的論理和「ｘｏｒ３４」の信号を保持する。また、スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号「ａ１」とスキャンＦＦ＿Ｘ２１の出力信号「ｘｏｒ３３」の排他的論理和「ｘｏｒ４３」の信号を保持する。また、スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号「ｂ１」とスキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４２」の排他的論理和「ｘｏｒ５２」の信号を保持する。また、テスト出力端子６から「ｅ１」の信号が出力される。
【０１２５】
次に、クロック信号の１０個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ２０」のテスト信号を保持するとともに、「Ｉ１９」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は、それぞれ、「Ｉ１９」、「Ｉ１８」、「ｘｏｒ５１」、「ｚ１」の信号を保持する。
また、クロック信号の１０個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の「１」の信号を保持する。同時に、最後段の制御ＦＦ２４２は、「０」の信号をセレクタ２６２の制御端に入力する。そのため、セレクタ２６２は、第２の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、スキャンＦＦ＿Ｚ２１の出力信号「ｘｏｒ５２」を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「ｂ１」と「ｘｏｒ４２」の排他的論理和「ｘｏｒ５２」の信号を保持する。ここで、「ｘｏｒ４２」は、「ｂ１」と「ｘ１」の排他的論理和である。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４３」及びスキャンＦＦ＿Ｚ２１の出力信号「ｘｏｒ５２」の排他的論理和とスキャンＦＦ＿Ａ２１に保持されていた「Ｉ１９」との排他的論理和「ｘｏｒ３５」の信号を保持する。また、スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号「Ｉ１８」とスキャンＦＦ＿Ｘ２１の出力信号「ｘｏｒ３４」の排他的論理和「ｘｏｒ４４」の信号を保持する。また、スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号「ａ１」とスキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４３」の排他的論理和「ｘｏｒ５３」の信号を保持する。また、テスト出力端子６から「ｄ１」の信号が出力される。
【０１２６】
次に、クロック信号の１１個目の立ち上がりに同期して、スキャンＦＦ＿Ａ２１が「Ｉ２１」のテスト信号を保持するとともに、「Ｉ２０」のテスト信号をスキャンＦＦ＿Ｂ２１に入力する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は、それぞれ、「Ｉ２０」、「Ｉ１９」、「ｘｏｒ５２」、「ｘｏｒ５１」の信号を保持する。
また、クロック信号の１１個目の立ち上がりに同期して、最後段の制御ＦＦ２４２は、前段の制御ＦＦ２４２の「１」の信号を保持する。同時に、最後段の制御ＦＦ２４２は、「１」の信号をセレクタ２６２の制御端に入力する。そのため、セレクタ２６２は、第１の入力端に入力される信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。即ち、セレクタ２６２は、スキャンＦＦ＿Ｃ２１の出力信号を選択してスキャンＦＦ＿Ｄ２１に入力する。従って、スキャンＦＦ＿Ｄ２１は、「Ｉ１８」の信号を保持する。
また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４４」及びスキャンＦＦ＿Ｚ２１の出力信号「ｘｏｒ５３」の排他的論理和とスキャンＦＦ＿Ａ２１に保持されていた「Ｉ２０」との排他的論理和「ｘｏｒ３６」の信号を保持する。また、スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号「Ｉ１９」とスキャンＦＦ＿Ｘ２１の出力信号「ｘｏｒ３５」の排他的論理和「ｘｏｒ４５」の信号を保持する。また、スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号「Ｉ１８」とスキャンＦＦ＿Ｙ２１の出力信号「ｘｏｒ４４」の排他的論理和「ｘｏｒ５４」の信号を保持する。また、テスト出力端子６から「ｚ１」の信号が出力される。
【０１２７】
同様にして、クロック信号の立ち上がりに同期して、スキャンＦＦ＿Ａ２１は、テスト入力端子３から入力されるテスト信号を保持する。また、スキャンＦＦ＿Ｂ、Ｃ、Ｅ、Ｆ２１は前段のスキャンＦＦ２１の信号を保持する。また、スキャンＦＦ＿Ｘ２１は、スキャンＦＦ＿Ｙ２１の出力信号及びスキャンＦＦ＿Ｚ２１の出力信号の排他的論理和とスキャンＦＦ＿Ａ２１の出力信号との排他的論理和の信号を保持する。また、スキャンＦＦ＿Ｙ２１は、スキャンＦＦ＿Ｂ２１の出力信号とスキャンＦＦ＿Ｘ２１の出力信号との排他的論理和を保持する。また、スキャンＦＦ＿Ｚ２１は、スキャンＦＦ＿Ｃ２１の出力信号とスキャンＦＦ＿Ｙ２１の出力信号との排他的論理和を保持する。また、スキャンＦＦ＿Ｄ２１は、スキャンＦＦ＿Ｃ２１の出力信号を保持する。そして、クロック信号の立ち上がりに同期して、テスト出力端子６から、順次、「ｘｏｒ５１」、「ｘｏｒ５２」、「Ｉ１８」の信号が出力される。また、同時に、スキャンＦＦ＿Ａ、Ｂ、Ｃ、Ｘ、Ｙ、Ｚ、Ｄ、Ｅ、Ｆ２１に、それぞれ、「Ｉ２３」、「Ｉ２２」、「Ｉ２１」、「ｘｏｒ３８」、「ｘｏｒ４７」、「ｘｏｒ５６」、「Ｉ２０」、「Ｉ１９」、「Ｉ１８」のテスト信号が保持される。
【０１２８】
即ち、セレクタ２６２は、スキャンＦＦ２１がキャプチャ動作モードからシフト動作モードに遷移してから、３クロック分の時間（第１の時間）、スキャンＦＦ＿Ｚ２１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。また、セレクタ２６２は、シフト動作モードにおける当該３クロック以外の時間（第２の時間）において、スキャンＦＦ＿Ｃ２１の出力信号を選択して、スキャンＦＦ＿Ｄ２１に入力する。これにより、テスト出力端子６から、「ｆ１」、「ｅ１」、「ｄ１」、「ｚ１」、「ｘｏｒ５１」、「ｘｏｒ５２」の結果信号が出力される。そして、「ｘｏｒ５１」は、「ｃ１」、「ｙ１」の排他的論理和であり、「ｘｏｒ５２」は、「ｂ１」、「ｘｏｒ４２」の排他的論理和であり、「ｘｏｒ４２」は、「ｂ１」、「ｘ１」の排他的論理和であるので、テスト出力端子６から、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ２１が保持した結果信号を反映させた信号が出力されることとなる。
【０１２９】
以上、説明したように、本発明の実施の形態３にかかるスキャンパス回路２０３及び半導体集積回路１０３によれば、実施の形態２と同様の効果が得られることは勿論のこと、特に、テスト出力端子６から、スキャンＦＦ＿Ｂ、Ｃ、Ｘ、Ｙ、Ｚ２１が保持した結果信号を反映させた信号が出力される。
そして、テスト出力端子６から出力される信号と期待信号とを比較することにより、各スキャンＦＦ２１が接続された回路の故障について検出することができる。
【０１３０】
なお、第１のスキャンＦＦ群７（７１）、第２のスキャンＦＦ群８（８１、８２）、第３のスキャンＦＦ群９のセットが複数接続されてスキャンパス回路２００（２０１、２０２、２０３）が構成されてもよい。その場合に、実施の形態１、２、変形例１においては、前段の第３のスキャンＦＦ群９が後段の第１のスキャンＦＦ群７として機能し、後段の第１のスキャンＦＦ群７が省略されて、各セットが接続されてもよい。
【０１３１】
以上、説明したように、本発明においては、スキャンＦＦ２１のシフト動作モードに要する時間が短縮される。そして、テスト所要時間の多くを占めるのがシフトにかかる時間である。本発明では、シフト動作モードに要する時間を短縮できるため、テスト所要時間を短縮することができる。
例えば、１０，０００個のスキャンＦＦがシリアル接続されたスキャンチェーンにおいて、パタン数５，０００個のテスト信号をシフト入力する場合に、シフト動作モードにかかるテスト所要時間が２００ｎｓとする。ここで、スキャンチェーン長はスキャンチェーン１本に設けられるスキャンＦＦの数で表される。また、テスト所要時間は、おおよそ（テスト信号のパタン数）×（スキャンチェーン長）に比例する。
まず、従来技術のように、１本のスキャンチェーンを４本に分割した場合のテスト所要時間を算出する。１本のスキャンチェーンを４本に分割したことにより、テスト信号のパタン数は増加する。そして、テスト信号のパタン数が、５，０００パタンのうちの２割の１、０００パタンが１、３００パタンに増加したとすると、テスト所要時間は、（１０，０００×４，０００＋（１０，０００÷４）×１，３００）×２００（ｎｓ）＝８．６５（ｓｅｃ）となる。
次に、本発明のようにスキャンＦＦ２１をスキップする場合のテスト所要時間を算出する。ここで、スキップするスキャンＦＦ２１の割合を全体の３割とする。また、スキャンＦＦ２１をスキップすることによるテスト信号の増加を全体の１割とすると、テスト所要時間は、（（１０，０００×０．７）×５，５００×２００（ｎｓ）＝７．７０（ｓｅｃ）となる。従って、本発明により、従来技術のテスト所要時間を約１１％短縮することができる。実際には、半導体集積回路には多数のスキャンパス回路が搭載されるため、スキャンパス回路１つあたりでは僅かなテスト時間の削減であっても、半導体集積回路のテスト所要時間の削減効果は大きい。
【０１３２】
なお、分割されたスキャンチェーンに本発明にかかるスキップ回路２２（２４、２５、２６）を有するスキャンパス回路２００（２０１、２０２、２０３）を適用してもよい。
【図面の簡単な説明】
【０１３３】
【図１】本発明にかかる半導体集積回路の概略構成を示す回路図である。
【図２】本発明にかかるスキャンＦＦの一例を示す模式図（図２（ａ））、制御ＦＦの一例を示す模式図（図２（ｂ）、（ｃ））である。
【図３】本発明の実施の形態１にかかる半導体集積回路の詳細な構成を示す回路図である。
【図４】本発明のテスト方法を示すフローチャートである。
【図５】本発明の実施の形態１にかかるスキャンパス回路におけるシフト動作を説明するフローチャートである。
【図６】本発明の実施の形態１にかかる半導体集積回路の各端子の信号、スキャンＦＦの保持信号、制御ＦＦの保持信号、セレクタの出力信号の経時変化を示すタイミングチャートである。
【図７】本発明の実施の形態２にかかる半導体集積回路の詳細な構成を示す回路図である。
【図８】本発明の実施の形態２にかかるスキャンパス回路におけるシフト動作を説明するフローチャートである。
【図９】本発明の実施の形態２にかかる半導体集積回路の各端子の信号、スキャンＦＦの保持信号、制御ＦＦの保持信号、セレクタの出力信号の経時変化を示すタイミングチャートである。
【図１０】本発明の実施の形態２の変形例１にかかる半導体集積回路の詳細な構成を示す回路図である。
【図１１】本発明の実施の形態３にかかる半導体集積回路の詳細な構成を示す回路図である。
【図１２】本発明の実施の形態３にかかるスキャンパス回路におけるシフト動作を説明するフローチャートである。
【図１３】本発明の実施の形態２にかかる半導体集積回路の各端子の信号、スキャンＦＦの保持信号、制御ＦＦの保持信号、セレクタの出力信号の経時変化を示すタイミングチャートである。
【図１４】従来技術にかかるスキャンチェーン及び半導体集積回路の詳細な構成を示す回路図である。
【図１５】従来技術にかかるスキャンチェーン及び半導体集積回路の詳細な構成を示す回路図である。
【図１６】従来技術にかかるスキャンチェーン及び半導体集積回路の詳細な構成を示す回路図である。
【図１７】従来技術にかかるスキャンチェーンに設けられるスキャンＦＦを示す模式図である。
【符号の説明】
【０１３４】
１  対象回路
２１  スキャンＦＦ
２２、２４、２５、２６  スキップ回路
２２１、２４１、２５２  ＸＯＲ回路（論理回路）
２２３、２４３、２６２  セレクタ
２６１  多入力シグネチャレジスタ
２３  スキップスキャンＦＦ
３  テスト入力端子（入力端子）
６  テスト出力端子（出力端子）
７、７１  第１のスキャンＦＦ群
８、８１、８２  第２のスキャンＦＦ群
９  第３のスキャンＦＦ群
１００、１０１、１０２、１０３  半導体集積回路
２００、２０１、２０２、２０３  スキャンパス回路
【図１】
2009042017.tif 000003
【図２】
2009042017.tif 000004
【図３】
2009042017.tif 000005
【図４】
2009042017.tif 000006
【図５】
2009042017.tif 000007
【図６】
2009042017.tif 000008
【図７】
2009042017.tif 000009
【図８】
2009042017.tif 000010
【図９】
2009042017.tif 000011
【図１０】
2009042017.tif 000012
【図１１】
2009042017.tif 000013
【図１２】
2009042017.tif 000014
【図１３】
2009042017.tif 000015
【図１４】
2009042017.tif 000016
【図１５】
2009042017.tif 000017
【図１６】
2009042017.tif 000018
【図１７】
2009042017.tif 000019