"テスト入力パターンが入力された論理回路から出力された複数の出力論理値に基づいて当該論理回路の故障を検出する故障検出システムであって、前記複数の出力論理値は、前記論理回路に対して新たなテスト入力パターンとして入力されるものであり、前記複数の出力論理値の一部又は全部を取り出す第1取出手段と、前記第1取出手段が取り出した出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値とを比較する比較手段と、前記比較手段による比較結果に基づいて前記論理回路の故障の有無を判定する故障判定手段とを備える、故障検出システム。前記複数の出力論理値は、複数の個別保持手段に論理値を1つずつ保持させる保持手段に保持され、前記第1取出手段は、前記保持手段に保持された前記複数の出力論理値の一部又は全部を取り出すものであり、前記複数の個別保持手段が保持する出力論理値の一部又は全部を、他の個別保持手段を経由することなく直接取り出す、請求項1記載の故障検出システム。前記第1取出手段は、前記保持手段が前記複数の出力論理値を保持してから、前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの間に、前記保持手段に保持された前記複数の出力論理値の一部又は全部を取り出す、請求項2記載の故障検出システム。前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御手段をさらに備える、請求項3記載の故障検出システム。各前記個別保持手段に保持された前記出力論理値の故障検出への寄与を算出する算出手段と、前記寄与の大きさに基づいて各前記個別保持手段に順位を付ける順位付け手段とをさらに備え、前記第1取出手段は、前記複数の個別保持手段が保持する前記出力論理値のうち、前記順位に基づいて所定の個数のみを取り出す、請求項2から4のいずれかに記載の故障検出システム。前記複数の個別保持手段が保持する出力論理値の一部又は全部を、他の個別保持手段を経由させて取り出す第2取出手段をさらに備え、前記比較手段は、前記第2取出手段が取り出した出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値との比較も行うものであり、前記第1取出手段が前記出力論理値を取り出す回数は、前記第2取出手段が前記出力論理値を取り出す回数以上である、請求項2から5のいずれかに記載の故障検出システム。前記出力論理値のデータサイズを圧縮する第1圧縮手段と、前記出力論理値を記憶する第1記憶手段とをさらに備え、前記第1取出手段の取出処理と同期して、前記第1圧縮手段は、前記第1取出手段が取り出した前記出力論理値を圧縮し、前記第1記憶手段は、前記第1圧縮手段が圧縮した前記出力論理値を記憶する、請求項1から6のいずれかに記載の故障検出システム。テスト入力パターンが入力された論理回路から出力された複数の出力論理値の一部又は全部を取り出す取出装置であって、前記複数の出力論理値は、論理値を保持する保持手段により保持されると共に、前記論理回路に対して新たなテスト入力パターンとして入力されるものであり、前記保持手段は、論理値を1つずつ保持する複数の個別保持手段を有し、前記複数の個別保持手段が保持する出力論理値の一部又は全部を、他の個別保持手段を経由することなく直接取り出す、取出装置。テスト入力パターンが入力された論理回路から出力された複数の出力論理値の一部又は全部を取り出す取出装置であって、前記複数の出力論理値は、論理値を保持する保持手段により保持されると共に、前記論理回路に対して新たなテスト入力パターンとして入力されるものであり、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御手段を備え、前記保持手段に保持された前記複数の出力論理値の一部又は全部を取り出す、取出装置。テスト入力パターンが入力された論理回路から出力された複数の出力論理値に基づいて当該論理回路の故障を検出する故障検出方法であって、前記論理回路に初期テスト入力パターンの入力が行われる第1入力ステップと、複数の個別保持手段に論理値を1つずつ保持させる保持手段が、前記複数の出力論理値を保持する保持ステップと、前記保持手段が保持する前記複数の出力論理値が、新たなテスト入力パターンとして前記論理回路に対して入力される第2入力ステップと、前記保持手段が前記複数の出力論理値を保持してから、前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの間に、前記複数の個別保持手段が保持する前記複数の出力論理値の一部又は全部が他の個別保持手段を経由することなく直接取り出される第1取出ステップと、前記複数の個別保持手段が保持する前記複数の出力論理値の一部又は全部が他の個別保持手段を経由して取り出される第2取出ステップと、前記第1取出ステップ及び前記第2取出ステップにおいて取り出された出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値とを比較する比較ステップと、前記比較ステップにおける比較結果に基づいて前記論理回路の故障の有無を判定する故障判定ステップとを含む、故障検出方法。前記第1取出ステップと前記第2取出ステップとの間に、前記第1取出ステップと同期して、前記第1取出ステップにおいて取り出された前記出力論理値が圧縮される第1圧縮ステップと、前記圧縮ステップにおいて圧縮された前記出力論理値が記憶される第1記憶ステップとを備え、前記保持ステップから前記第1記憶ステップまでが所定の回数だけ繰り返される、請求項10記載の故障検出方法。前記第1記憶ステップと前記保持ステップの間に、制御手段が、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御ステップを含む、請求項11記載の故障検出方法。前記制御ステップにおいて、制御手段が、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を短縮する、請求項12記載の故障検出方法。テスト入力パターンが入力された論理回路から出力された複数の出力論理値に基づいて当該論理回路の故障を検出する故障検出方法であって、前記論理回路に初期テスト入力パターンの入力が行われる第1入力ステップと、前記複数の出力論理値を保持手段が保持する保持ステップと、前記保持手段が保持する前記複数の出力論理値が、新たなテスト入力パターンとして前記論理回路に対して入力される第2入力ステップと、前記複数の出力論理値の一部又は全部が取り出される取出ステップと、前記取出ステップにおいて取り出された出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値とを比較する比較ステップと、前記比較ステップにおける比較結果に基づいて前記論理回路の故障の有無を判定する故障判定ステップとを含み、前記保持ステップと前記第2入力ステップが所定の回数だけ繰り返され、前記第2入力ステップと前記保持ステップとの間に、制御手段が、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御ステップを含む、故障検出方法。前記保持手段と接続されたコンピュータに、請求項10から14のいずれかに記載の故障検出方法を実行させることが可能なプログラム。前記保持手段と接続されたコンピュータが実行することが可能なコンピュータに読み取り可能な記録媒体であって、請求項15記載のプログラムを記録する記録媒体。非特許文献1の技術において、式1に示すように、テストパターン保持部133が記憶すべきテストデータ量は、テスト入力パターン数に比例する。また、式2に示すように、テスト出力パターン数は、テスト入力パターン数に等しい。さらに、故障検出率は、テスト出力パターン数と正の相関関係にある。したがって、テスト入力パターン数を減らすと、故障検出率が低下する。そのため、故障検出率を維持するためには、テスト入力パターン数を削減できなかった。結果として、テストデータ量を削減することができなかった。ゆえに、本発明は、記憶されるべきテスト入力パターンのテストデータ量を削減しつつ、故障検出率を向上させる故障検出システム等を提供することを目的とする。本願発明の第1の観点は、テスト入力パターンが入力された論理回路から出力された複数の出力論理値に基づいて当該論理回路の故障を検出する故障検出システムであって、前記複数の出力論理値は、前記論理回路に対して新たなテスト入力パターンとして入力されるものであり、前記複数の出力論理値の一部又は全部を取り出す第1取出手段と、前記第1取出手段が取り出した出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値とを比較する比較手段と、前記比較手段による比較結果に基づいて前記論理回路の故障の有無を判定する故障判定手段とを備える故障検出システムである。本願発明の第2の観点は、第1の観点の故障検出システムであって、前記複数の出力論理値は、複数の個別保持手段に論理値を1つずつ保持させる保持手段に保持され、前記第1取出手段は、前記保持手段に保持された前記複数の出力論理値の一部又は全部を取り出すものであり、前記複数の個別保持手段が保持する出力論理値の一部又は全部を、他の個別保持手段を経由することなく直接取り出す。本願発明の第3の観点は、第2の観点の故障検出システムであって、前記第1取出手段は、前記保持手段が前記複数の出力論理値を保持してから、前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの間に、前記保持手段に保持された前記複数の出力論理値の一部又は全部を取り出す。本願発明の第4の観点は、第3の観点の故障検出システムであって、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御手段をさらに備える。本願発明の第5の観点は、第2から第4のいずれかの観点の故障検出システムであって、各前記個別保持手段に保持された前記出力論理値の故障検出への寄与を算出する算出手段と、前記寄与の大きさに基づいて各前記個別保持手段に順位を付ける順位付け手段とをさらに備え、前記第1取出手段は、前記複数の個別保持手段が保持する前記出力論理値のうち、前記順位に基づいて所定の個数のみを取り出す。本願発明の第6の観点は、第2から第5のいずれかの観点の故障検出システムであって、前記複数の個別保持手段が保持する出力論理値の一部又は全部を、他の個別保持手段を経由させて取り出す第2取出手段をさらに備え、前記比較手段は、前記第2取出手段が取り出した出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値との比較も行うものであり、前記第1取出手段が前記出力論理値を取り出す回数は、前記第2取出手段が前記出力論理値を取り出す回数以上である。本願発明の第7の観点は、第1から第6のいずれかの観点の故障検出システムであって、前記出力論理値のデータサイズを圧縮する第1圧縮手段と、前記出力論理値を記憶する第1記憶手段とをさらに備え、前記第1取出手段の取出処理と同期して、前記第1圧縮手段は、前記第1取出手段が取り出した前記出力論理値を圧縮し、前記第1記憶手段は、前記第1圧縮手段が圧縮した前記出力論理値を記憶する。本願発明の第8の観点は、テスト入力パターンが入力された論理回路から出力された複数の出力論理値の一部又は全部を取り出す取出装置であって、前記複数の出力論理値は、論理値を保持する保持手段により保持されると共に、前記論理回路に対して新たなテスト入力パターンとして入力されるものであり、前記保持手段は、論理値を1つずつ保持する複数の個別保持手段を有し、前記複数の個別保持手段が保持する出力論理値の一部又は全部を、他の個別保持手段を経由することなく直接取り出す。本願発明の第9の観点は、テスト入力パターンが入力された論理回路から出力された複数の出力論理値の一部又は全部を取り出す取出装置であって、前記複数の出力論理値は、論理値を保持する保持手段により保持されると共に、前記論理回路に対して新たなテスト入力パターンとして入力されるものであり、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御手段を備え、前記保持手段に保持された前記複数の出力論理値の一部又は全部を取り出す。本願発明の第10の観点は、テスト入力パターンが入力された論理回路から出力された複数の出力論理値に基づいて当該論理回路の故障を検出する故障検出方法であって、前記論理回路に初期テスト入力パターンの入力が行われる第1入力ステップと、複数の個別保持手段に論理値を1つずつ保持させる保持手段が、前記複数の出力論理値を保持する保持ステップと、前記保持手段が保持する前記複数の出力論理値が、新たなテスト入力パターンとして前記論理回路に対して入力される第2入力ステップと、前記保持手段が前記複数の出力論理値を保持してから、前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの間に、前記複数の個別保持手段が保持する前記複数の出力論理値の一部又は全部が他の個別保持手段を経由することなく直接取り出される第1取出ステップと、前記複数の個別保持手段が保持する前記複数の出力論理値の一部又は全部が他の個別保持手段を経由して取り出される第2取出ステップと、前記第1取出ステップ及び前記第2取出ステップにおいて取り出された出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値とを比較する比較ステップと、前記比較ステップにおける比較結果に基づいて前記論理回路の故障の有無を判定する故障判定ステップとを含む。本願発明の第11の観点は、第10の観点の故障検出方法であって、前記第1取出ステップと前記第2取出ステップとの間に、前記第1取出ステップと同期して、前記第1取出ステップにおいて取り出された前記出力論理値が圧縮される第1圧縮ステップと、前記圧縮ステップにおいて圧縮された前記出力論理値が記憶される第1記憶ステップとを備え、前記保持ステップから前記第1記憶ステップまでが所定の回数だけ繰り返される。本願発明の第12の観点は、第11の観点の故障検出方法であって、前記第1記憶ステップと前記保持ステップの間に、制御手段が、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御ステップを含む。本願発明の第13の観点は、第12の観点の故障検出方法であって、前記制御ステップにおいて、制御手段が、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を短縮する。本願発明の第14の観点は、テスト入力パターンが入力された論理回路から出力された複数の出力論理値に基づいて当該論理回路の故障を検出する故障検出方法であって、前記論理回路に初期テスト入力パターンの入力が行われる第1入力ステップと、前記複数の出力論理値を保持手段が保持する保持ステップと、前記保持手段が保持する前記複数の出力論理値が、新たなテスト入力パターンとして前記論理回路に対して入力される第2入力ステップと、前記複数の出力論理値の一部又は全部が取り出される取出ステップと、前記取出ステップにおいて取り出された出力論理値と、前記論理回路に故障がない場合に予測される出力論理値又は特定の故障がある場合に予測される出力論理値とを比較する比較ステップと、前記比較ステップにおける比較結果に基づいて前記論理回路の故障の有無を判定する故障判定ステップとを含み、前記保持ステップと前記第2入力ステップが所定の回数だけ繰り返され、前記第2入力ステップと前記保持ステップとの間に、制御手段が、前記保持手段が前記出力論理値を保持してから前記新たなテスト入力パターンが入力された前記論理回路から出力された新たな複数の出力論理値が前記保持手段に保持されるまでの時間を制御する制御ステップを含む。本願発明の第15の観点は、前記保持手段と接続されたコンピュータに、第10から14のいずれかの観点の故障検出方法を実行させることが可能なプログラムである。本願発明の第16の観点は、前記保持手段と接続されたコンピュータが実行することが可能なコンピュータに読み取り可能な記録媒体であって、第15の観点のプログラムを記録する記録媒体である。なお、本願各請求項の発明に係る故障検出システムは、初期テスト入力パターンを記憶する初期パターン記憶手段をさらに備えるものであってもよい。初期パターン記憶手段が記憶するパターンは、初期テスト入力パターンが圧縮された種パターンシードであってもよい。このとき、故障検出システムは、種パターンを展開する展開手段を備えるものであってもよい。また、故障検出システムは、第2取出手段が取り出した出力論理値を圧縮する、第2圧縮手段を備えるものであってもよい。さらに、1つの圧縮手段が、第1圧縮手段と第2圧縮手段を兼ねるものであってもよい。また、本願各請求項の発明に係る故障検出システムは、第2取出手段が取り出した出力論理値を記憶する、第2記憶手段を備えるものであってもよい。さらに、1つの記憶手段が、第1記憶手段と第2記憶手段を兼ねるものであってもよい。本願発明の各観点によれば、取出手段又は取出装置により、1つの初期テスト入力パターンから複数のテスト出力パターンを得ることが可能となる。キャプチャの度に得られるテスト出力パターンが、初期テスト入力パターンとは別の新たなテスト入力パターンとして論理回路に入力されるからである。このとき、テストデータ量は、従来と同様に、式3で表される。しかし、テスト出力パターン数は、式4で表される。テストデータ量は、キャプチャ数によらず初期テスト入力パターン数に正比例する。そのため、キャプチャ数を増やすことで、初期テスト入力パターン数を減らして記憶されるべきテスト入力パターンのテストデータ量を削減しつつ、故障検出率を向上させることが可能となる。図18を参照して、従来のマルチキャプチャ方式で検出されなかった故障を本願各請求項に係る発明で検出できることを具体的に説明する。図18は、従来のマルチキャプチャ方式を用いた場合の一例を示す時間展開図である。簡単のため、マルチキャプチャの回数は2回であるとする。図18には、シフトモードにおいて初期テスト入力パターンがスキャンインした直後から2回目にキャプチャした後までの論理値の流れが示されている。ここで、Aで示されているNORゲートに注目する。このNORゲートが正常であれば、フリップフロップ53は、論理値0を保持すべきである。しかし、NORゲートの故障例えば遅延故障のために、1回目のキャプチャ後のフリップフロップ53は、論理値1を保持しているとする。従来のマルチキャプチャ方式では、最後にキャプチャされた出力論理値のみが取り出されていた。つまり、フリップフロップ53の論理値は、所定の回数ここでは2回だけキャプチャされてシフトモードにならない限り、取り出されていなかった。一方、2回目のキャプチャ後には、フリップフロップ53は、正常な場合と同じ0を保持している。したがって、従来の方式では、このNORゲートの故障は検出されなかった。しかし、本願発明の各観点によれば、1回目キャプチャ後の保持手段が保持する値を取出手段又は取出装置が取り出す。これにより、従来の方法では他のテスト入力パターンでしか検出できなかった故障も、同じ初期テスト入力パターンで検出することが可能となる。したがって、記憶容量の必要量を削減することが可能となる。また、本願発明の第2の観点によれば、第1取出手段が、各個別保持手段から直接的に出力論理値を取り出す。そのため、多数の外部出力線及び個別保持手段が存在する場合であっても、速やかに取り出したい出力論理値を取り出すことが可能となる。しかも、出力論理値を取り出す際に、他の個別保持手段が保持する論理値を上書きせずに取り出すことが可能となる。さらに、本願発明の第3の観点によれば、第1取出手段が、保持手段による出力論理値の保持と同期して保持手段が出力論理値を保持してから、新たなテスト入力パターンが入力された論理回路から出力された新たな複数の出力論理値が保持手段に保持されるまでの間に、保持手段に保持された出力論理値を取り出す。このため、第1取出手段が、キャプチャの度に保持手段が取り出して保持する値を、次にキャプチャされる出力論理値に上書きされることなく、確実に取り出すことができる。さらに、本願発明の第4、9、12又は14の観点によれば、クロック周期を長くすることで縮退故障のみを検出し、クロック周期を短くすることで遅延故障を含めて検出することが可能となる。これにより、故障原因の解析やデバッグに資する情報を得ることが可能となる。さらに、本願発明の第13の観点によれば、長いクロック周期でIRドロップを抑えながら複数回テスト対象の論理回路にテスト入力パターンを入力した後に、クロック周期を短縮して遅延故障を検出することが可能となる。ここで、キャプチャサイクルにおいてテスト対象回路から出力されたパターンを再度テスト入力パターンとして回路に入力することを2-3回繰り返すことにより、少ない遷移数のみを生じさせるテスト入力パターンを得られることが知られている。そのため、キャプチャ時の消費電力やノイズを低減して遅延故障を精度よく検出することが可能となる。また、本願発明の第5の観点によれば、第1取出手段が、例えば故障検出率の向上という所定の目的のために特に有効な保持手段が保持する値を重点的に取り出すことが可能となる。よって、さらに効率よく故障検出率を向上させることが可能となる。すなわち、さらにテストデータ量を削減することが可能となる。加えて、保持手段の保持処理に同期して全ての保持手段が保持する値を取り出す場合と比べて、出力されるデータ量を削減することが可能となる。さらに、回路サイズを縮小することも可能となる。さらに、1つのテスト入力パターンに対して、スキャンシフト時に与えられるクロックパルスの数は一般に多い。例えば、あるスキャンチェーン内のすべてのスキャンフリップフロップに新しい値を設定するために、数百から数千に上るスキャンフリップフロップ個数分のクロックパルスを与える必要がある。このため、式5に示すように、テストに要する時間の大半は、シフトモードに費やされる。マルチキャプチャ方式において、キャプチャモード時にクロックが数個から数十個与えられたとしても、テスト時間の大半はシフトモードに費やされる。従来は、スキャンインされるテスト入力パターン数を削減できないことから、テスト時間を削減できなかった。しかし、本願各請求項に係る発明によれば、シフトモードの時間を短縮することができる。特に、スキャンインされる初期テスト入力パターン数の削減により、スキャンインの時間が短縮される。したがって、テスト時間を短縮することが可能となる。従来、故障検出率を向上させるために多数のテスト入力パターンを費やす結果、テスト時間が増大していたこととは対照的といえる。出荷後のフィールドテストにおいては、テスト時間は半導体集積回路の非動作時に限られているため、テスト時間の短縮は特に重要である。しかも、本願発明の第6の観点によれば、キャプチャモードのまま保持手段の保持に同期して取り出す第1取出手段が、シフトモードで取り出す第2取出手段よりも頻繁にテスト出力を取り出す。すなわち、スキャンアウトの時間も短縮することができる。そのため、テスト時間をさらに短縮することが容易となる。さらに、本願発明の第7又は第11の観点によれば、保持処理及びテスト処理と同期して、取出処理、圧縮処理及び記憶処理が行われる。したがって、シフトモードで記憶する場合と比べて、マルチキャプチャによって取り出される大量のデータをキャプチャモードのまま迅速に記憶させることが可能となる。よって、スキャンアウトされるパターン数を削減することが可能となり、テスト時間の短縮がさらに容易となる。また、出力されるデータ量も削減することがさらに容易となる。以下、図面を参照して、本願発明の実施例について述べる。なお、本願発明は、実施例に限定されるものではない。まず、図1を参照して本願発明の実施の形態に係る故障検出システムの構成について述べる。図1は、本願発明の実施の形態に係る故障検出システムの一例を示すブロック図である。故障検出システム1は、組合せ回路部3本願請求項の論理回路の一例から出力された複数の出力論理値に基づいて組み合わせ回路部3の故障を検出する故障検出システムである。組合せ回路部3は、複数の出力論理値を保持する複数のフリップフロップ51~57本願請求項の個別保持手段の一例に接続されている。フリップフロップ5は、それぞれ論理値を1つずつ保持する。なお、以後、特に必要が無い限り、添え字を省略してフリップフロップ5と記す。また、複数のフリップフロップ5を総称して保持部4本願請求項の保持手段の一例とする。さらに、組合せ回路部3からの出力は全て疑似外部出力線であると仮定し、疑似外部出力線の個数出力論理値の個数とフリップフロップ5の個数とが等しいと仮定している。しかし、疑似外部出力線の個数とフリップフロップ5の個数は、異なってもよい。故障検出システム1は、図15に示した従来の故障検出システム101と同様に、マルチキャプチャ方式を用いる。故障検出システム1は、取出装置7本願請求項の取出手段の一例と、選択装置9と、判定装置11と、パターン制御装置13とを備える。取出装置7は、フリップフロップ5が保持する出力論理値の一部又は全部を取り出す。選択装置9は、取出手段7が重点的に値を取り出すべきフリップフロップを選択する。判定装置11は、取り出された出力論理値と予測された値とを比較し、組合せ回路部3の故障の有無を判定する。パターン制御装置13は、組合せ回路部3へのテスト入力パターン及び組合せ回路部3からのテスト出力パターンのサイズ等を制御する。故障検出システム1の最大の特徴は、取出装置7にある。取出装置7は、キャプチャモード取出部15本願請求項の第1取出手段の一例と、シフトモード取出部17本願請求項の第2取出手段の一例と、キャプチャモード記憶部19本願請求項の第1記憶手段の一例と、シフトモード記憶部21本願請求項の第2記憶手段の一例とを備える。キャプチャモード取出部15は、キャプチャモードにおいてフリップフロップ5が複数の出力論理値をキャプチャするキャプチャ処理本願請求項の保持処理の一例及び新たなテスト入力パターンに基づく組合せ回路部3のテスト処理本願請求項のテスト処理の一例と同期して、出力論理値の一部又は全部を取り出す。ここで、同期して取り出すとは、フリップフロップ5が出力論理値をキャプチャしてから次の出力論理値をキャプチャするまでの間に取り出すことをいう。また、キャプチャモード取出部15は、フリップフロップ5i1≦i≦7が保持する出力論理値の一部又は全部を、他のフリップフロップ5k1≦k≦7,k≠iを経由することなく直接取り出す。さらに、キャプチャモード取出部15は、取り出した出力論理値をキャプチャモード記憶部19に記憶させる。シフトモード取出部17は、シフトモードにおいてフリップフロップ5がスキャンアウトした値を取り出す。また、取り出した出力論理値をシフトモード記憶部21に記憶させる。ここで、シフトモード取出部17の取り出しは、例えばテスト処理がすべて終了して取り出しており、キャプチャ処理及びテスト処理と同期するものではない。また、シフトモード取出部17は、フリップフロップ5i1≦i≦7が保持する出力論理値の一部又は全部を、他のフリップフロップ5k1≦k≦7,k≠iを経由させて取り出す。選択装置9は、シミュレーション部23と、算出部25本願請求項の算出手段の一例と、順位付け部27本願請求項の順位付け手段の一例とを備える。シミュレーション部23は、組合せ回路部3の故障シミュレーションを行う。算出部25は、故障シミュレーションの結果に基づいて、各フリップフロップ5の故障検出への寄与を算出する。順位付け部27は、寄与の大きさに基づいて各フリップフロップ5に順位を付ける。判定装置11は、比較部29と故障判定部31とを備える。比較部29は、取り出された値と予測された値とを比較する。ここで、予測された値とは、組合せ回路部3に故障がない場合の出力論理値であると予測された値でもよいし、組合せ回路部3に特定の故障がある場合の出力論理値であると予測された値でもよい。故障判定部31は、比較結果に基づいて組合せ回路部3の故障の有無を判定する。パターン制御装置13は、初期テスト入力パターン保持部33と、展開回路35と、圧縮回路37とを備える。初期テスト入力パターン保持部33は、組合せ回路部3に入力されるテストパターンを備える。この初期テスト入力パターンは、圧縮された種パターンシードであってもよい。以後、本実施例では、初期テスト入力パターン保持部33が有するパターンは、シードであることを前提とする。続いて、図2を参照して、故障検出システム1を用いた故障検出の手順について述べる。図2は、故障検出システム1を用いた場合の手順の一例を示すフロー図である。ステップST001において、初期テスト入力パターン保持部33が有するシードのうちの1つが選択され、組合せ回路部3への入力が開始される。ステップST002において、選択されたシードが展開回路35により展開される。ステップST003において、スキャンイネーブル信号が1とされ、シフトモードとなる。ステップST004において、展開された初期テスト入力パターンがクロック信号に合わせてフリップフロップ5へとスキャンインされる。ステップST005において、スキャンイネーブル信号が0とされ、キャプチャモードとなる。ステップST006において、フリップフロップ5が、クロック信号に合わせて、組合せ回路部3からの出力論理値をキャプチャする。ステップST007において、キャプチャモード取出部15が、フリップフロップ5のキャプチャ処理と同期してフリップフロップ5が保持する値を取り出す。また、フリップフロップ5は、保持する値を新たなテスト入力パターンとして組合せ回路部3に与える。さらに、組合せ回路部3は、与えられた新たなテスト入力パターンに基づいてテスト処理を行う。ここで、キャプチャモード取出部15は、キャプチャモードの途中で出力論理値を取り出す中間取出を行っている。従来は、キャプチャモードに続くシフトモードにおいてのみ出力論理値の取り出しが行われており、キャプチャモード内での取り出しは行われていなかった。この中間取出を行うことにより、初期テストパターン数を削減してテストデータ量を削減しつつ、故障検出率を向上させることが可能となる。また、キャプチャモード取出部15によって値が取り出されるフリップフロップ5は、選択装置9が選択したフリップフロップ本実施例では、53、55、57に限られる。そのため、テスト時間当たりの故障検出率を向上させることが可能となる。フリップフロップを選択する手順は、後に述べる。ステップST008において、キャプチャモード取出部15が取り出した値は、圧縮回路37が圧縮してデータサイズを縮小し、キャプチャモード記憶部19が記憶する。ステップST006からステップST008までが決められた回数N回だけ繰り返された後、次のステップへと進む。ステップST009において、スキャンイネーブル信号が1とされ、シフトモードとなる。ステップST010において、フリップフロップ5に保持されていた値がクロック信号に合わせてシフトモード取出部17へとスキャンアウトされる。また、スキャンアウトされた値は、圧縮回路37により圧縮されてシフトモード記憶部21に記憶される。ここで、シフトモード取出部17による取り出しは、シフトモードにおける取り出しであるため、キャプチャ処理及びテスト処理と同期したものではない。シフトモードでの取り出しには多くの時間を要する。そこで、キャプチャモード取出部15による取り出しの回数を少なくともシフトモード取出部17による取り出しの回数以上とすることにより、テスト時間全体を短縮することが可能である。ステップST011において、判定装置11は、初期テスト入力パターン保持部33に未入力のシードがあるか否かを判定する。未入力のシードがあれば、ステップST001に戻る。未入力のシードがなければ、次のステップへと進む。ステップST012において、判定装置11がキャプチャモード記憶部19に記憶された圧縮データシグネチャを読み出す。同時に、ステップST013において、判定装置11は、シフトモード記憶部21に記憶されたシグネチャも読み出す。ステップST014において、比較部29は、読み出された値と、組合せ回路部3が正常である場合に予測される値又は特定の故障がある場合に予測される値とを比較する。ステップST015において、故障判定部31は、比較部29による比較結果に基づいて、組合せ回路部3の故障の有無を判定する。続いて、図3を参照して、故障検出システム1を用いた場合の故障検出の具体例について述べる。図3は、故障検出システム1を用いた場合の一例を示す時間展開図である。故障検出システム1を用いることにより、図3中にAで示した故障しているNOR素子Aの故障を検出することができる。1回目キャプチャ後のフリップフロップ53の出力論理値をキャプチャモード取出部15が取り出すからである。NOR素子が正常であれば、1回目キャプチャ後のフリップフロップ53の出力論理値として0が取り出される。一方、NOR素子が故障していれば、1が取り出される。また、シフトモードにおいてシフトモード取出部17が全てのフリップフロップ5の値を取り出すため、従来の故障検出システムよりも取り出される出力論理値が少なくなることはない。結果として、キャプチャモード取出部15が取り出したテスト出力パターンの分だけ故障検出率が向上する。続いて、図4を参照して、故障検出率を向上させる上で特に効率のよいフリップフロップ5を選択する手順について述べる。図4は、選択装置9がフリップフロップ5を選択する手順の一例を示すフロー図である。ステップST101において、全てのフリップフロップ5の値を取り出し可能とする。ステップST102において、シミュレーション部23が、全てのテスト入力パターンを用いて故障シミュレーションを行う。ステップST103において、算出部25が、それぞれのフリップフロップ5の値を取り出すことによる故障検出率の増加分本願請求項の寄与の一例を算出する。ステップST104において、順位付け部27が、故障検出率の増加分が大きいフリップフロップ5から順に順位を付ける。ステップST105において、選択装置9が、フリップフロップ5に付けられた順位に基づいて、故障検出率の向上に特に貢献するフリップフロップ5を選択する。ここで、テスト時間の短縮等の目的のために、キャプチャモード取出部15が、所定の順位までのフリップフロップ5の値のみを取り出すこととしてもよい。続いて、キャプチャモード取出部15と、選択されたフリップフロップ5とを接続する。ここでいう接続は、電気的に接続されればどのような手段でもよい。例えば、オフになっていたスイッチをオンとすることも含まれるし、物理的に結線することも含まれる。こうして、キャプチャモード取出部15は、特に効率のよいフリップフロップ5の値のみを取り出すことが可能となる。故障検出の効率が上がることで、テストデータ量をさらに削減することも可能となる。続いて、図5を参照して、故障検出システム1を用いた実験結果について述べる。図5は、故障検出システム1を用いた場合の実験結果の一例を示すグラフである。横軸は、キャプチャモード取出部15によって値が取り出されるフリップフロップ5の比率を示す。縦軸は、故障検出率を示す。図5において、0は、キャプチャモード取出部15をどのフリップフロップ5とも接続しない場合を意味する。100は、キャプチャモード取出部15を全てのフリップフロップ5と接続する場合を意味する。ここで、今回の実験では、ゲート数を38,417個、マルチキャプチャのキャプチャ回数を5回とした。図5の実験結果から、キャプチャモード取出部15を接続するフリップフロップ15の比率を大きくするほど故障検出率が向上することが分かる。また、少数のフリップフロップのみを選択したときの故障検出率の増加率グラフの傾きが最も大きく、一定の比率以上では、故障検出率の伸びが飽和している。このことから、故障検出率向上のために効率よいフリップフロップを選択できていることも分かる。100近くのフリップフロップ5をキャプチャモード取出部15と接続することにより、故障検出率が約6増加した。この増加分は、式3に示したように、キャプチャ回数を増やすことで増加させることが可能である。続いて、図6を用いて中間取出を行うことで、テストベクトル数を減少させることができる点について説明する。図6は、テストベクトル数と故障検出率との関係を示すグラフである。横軸はテストベクトル数を表し、縦軸は故障検出率を表す。図6には、中間取出を行わない場合と、20、50及び100のフリップフロップ5について5回キャプチャを行って中間取出を行う場合について示す。図6を参照して、同じテストベクトル数で比較した場合、中間取出を行う方が故障検出率が向上したことが分かる。また、より多くのフリップフロップの値の中間取出を行う方が故障検出率が向上することが示されている。加えて、20のフリップフロップ5について中間取出を行うだけでも効果があることが分かる。従来の故障検出方法を用いた場合、故障検出率を例えば95から98にするのに、従来は約2倍のテスト入力パターンを要していた。本願発明の実施の形態に係る故障検出方法は、従来の方法に加えて用いることができるものである。したがって、テスト入力パターンのテストデータ量を削減しつつ、従来の方法で得られた故障検出率をさらに向上させることが可能となる。さらに、図7を用いて、部分的にフリップフロップの値を取り出すことでオーバーヘッド率を抑えられる点について述べる。図7は、論理値を取り出すフリップフロップの割合と回路のオーバーヘッドとの関係を示す図である。横軸は、中間取出を行うフリップフロップ5の割合を表す。縦軸は、回路のオーバーヘッドの割合を表す。図7を参照して、中間取出を行うフリップフロップ5の割合にほぼ正比例して回路のオーバーヘッドが増大していることが分かる。例えば、100のフリップフロップについて中間取出を行う場合、オーバーヘッドの増加は9.3である。一方、20のフリップフロップの場合、オーバーヘッドの増加は2.0にとどまる。したがって、必要に応じてフリップフロップを選択して中間取出を行うことにより、オーバーヘッドの増加を抑えつつ故障検出率を向上させることが可能である。続いて、キャプチャモードにおいてクロック周期を変更する処理について説明する。クロック周期を変更することにより、異なる種類の故障検出が可能となる。また、テスト時の消費電力やノイズを低減させることが可能となる。なお、クロック周期は、フリップフロップ5が組合せ回路部3からの複数の出力論理値を保持してから、新たなテスト入力パターンが入力された組合せ回路部3から出力された新たな複数の出力論理値がフリップフロップ5に保持されるまでの間に対応する。図8は、クロック周期を変更することができる故障検出システムの一例を示すブロック図である。図9は、キャプチャモードにおいてクロック周期を変更する場合におけるテストサイクルを示す図である。図9a全てのクロックで故障を検出する場合、図9bは、遅延故障のみを検出する場合について説明する。図8において、故障検出システム201は、クロック制御部218本願請求項の制御手段の一例を備える点以外は、図1の故障検出システム1と同様の構成である。クロック制御部218は、フリップフロップ5が組合せ回路部3からの出力論理値をキャプチャする周期、及び、フリップフロップ5が保持する値を新たなテスト入力パターンとして組合せ回路部3に与える周期を制御する。マルチキャプチャを行うと、テスト対象回路である組合せ回路部3に複数回テスト入力パターンが与えられる。このとき、3回目程度以降はテスト入力パターンの入力によって組合せ回路部3内の素子の論理値が遷移する割合トグル率が大きく減少することが知られている。一般に、トグル率は、ランダムなテスト入力パターンよりもスキャンテストで小さく、ユーザーの通常使用ではさらに小さい。典型的には、ランダムなテスト入力パターンでは50程度、スキャンテストでは20-30程度、ユーザーの通常使用では5程度と言われている。複数回テスト入力パターンを組合せ回路部3に入力することにより、ユーザーの通常使用に近づくことがトグル率の低下の一因として考えられる。論理値の遷移は、消費電力ひいてはノイズの増大につながるため、トグル率を抑えられれば精度よく故障検出を行うことが可能となる。そこで、図9aに示すように、例えば最初の4クロックでは周期を長めにとり、縮退故障の検出のみを行う。初めの2-3クロックでは、トグル率が高いと考えられるため、クロックの周期を短くすると多数の遷移と電圧の急激な変化IRドロップを招く。すると、回路が誤動作し、誤った出力論理値をフリップフロップ5がキャプチャする可能性がある。初めの方のクロック周期を長くとることにより、このようなテスト誘発性の歩留り損失リスクを避けられる。クロック周期が長いため、クロックタイミングに依存して検出される遅延故障は検出できないものの、クロックタイミングに依存しない縮退故障を検出可能である。後に続く3クロックでは、クロック制御部218が短縮したクロックの周期で、遅延故障を含めて検出が行われる。すでに組合せ回路部3にテスト入力パターンを4回通している。そのため、トグル率の低いテスト入力パターンとなっており、クロック周期を短縮しても電圧の過度の変化が起こりにくくなっている。したがって、遅延故障検出に伴う消費電力及びノイズを低減することが可能である。また、図9bに示すように、後の3クロックで検出される遅延故障のみを検出対象としてもよい。このためには、例えば、キャプチャモード取出部215をキャプチャイネーブル信号線CEで制御することとすればよい。具体例として、フリップフロップ5が短い周期でキャプチャするとき、CE=0としてキャプチャモード取出部215にフリップフロップ105の論理値を取り出させる。一方、それ以外のときは、CE=1としてキャプチャモード取出部215にフリップフロップ5の論理値を取り出させないこととしてもよい。さらに、フリップフロップの順位付けを行うに際し、シミュレーションを行う代わりにSCOAPSandiaControlabilityObservabilityAnalysisProgram解析として知られる手法を用いてもよい。これにより、順位付けに要する計算量を減少させることが可能である。図10は、SCOAP解析を用いる故障検出システムの一例を示すブロック図である。図10において、故障検出システム301は、図1のシミュレーション部23及び算出部25の代わりに可制御性算出部324及び可観測性算出部326可制御性算出部324及び可観測性算出部326は、本願請求項の算出手段の一例を備える点以外は、図1の故障検出システム1と同様の構成である。可制御性算出部324は、組合せ回路部3内の素子の可制御性を算出する。可観測性算出部326は、組合せ回路部3内の素子及びフリップフロップ5の可観測性を算出する。順位付け部327は、算出された可観測性が大きいフリップフロップ5から順に順位を付ける。比較及び故障判定については、図1の故障検出システム1と同様に行われる。図11を参照して、SCOAP解析による順位付けの効果について述べる。図11は、3つの選択方法によりFFを順位付けして中間取出を行ったときの故障検出率のリストを示す図である。図11に示すように、複数の回路のそれぞれについて20のフリップフロップ5について中間取出を行った。その結果、いずれの回路においても、SCOAP解析をふまえてフリップフロップ5を選択した場合、シミュレーションを用いた場合ほどではないが、ランダムに20のフリップフロップを選択した場合よりも故障検出率の向上が見られた。図12は、フリップフロップの順位付けに要する時間を比較して示す図である。図12に示すように、SCOAP解析を用いてフリップフロップ5を選択する場合、シミュレーションを用いる場合と比べ、要するCPU時間が大幅に短縮された。なお、ステップST004において、スキャンインとスキャンアウトは同時に行われるものであってもよい。すなわち、ステップST004において、展開された初期テスト入力パターンがクロック信号に合わせてフリップフロップ5へとスキャンインされると同時に、フリップフロップ5に保持されていた値がシフトモード取出部17へとスキャンアウトされるものであってもよい。スキャンインとスキャンアウトを同時に行うことにより、シフトモードの時間を短縮することが可能である。ステップST010においても同様である。また、図2のフローにおけるステップST008において、キャプチャモード記憶部19による記憶処理と圧縮回路37による圧縮処理とは、どちらが先に行われてもよい。また、圧縮回路37が圧縮した出力をキャプチャモード取出部15が取り出すものであってもよい。同様のことがシフトモード取出部17、シフトモード記憶部21及び圧縮回路37の処理の順序についてもいえる。さらに、ステップST012の読み出し処理は、ステップST011に続く繰り返し処理におけるステップST004と共に実行されることとしてもよい。さらに、テスト時間が長くなるおそれはあるものの、ステップST006からステップST008までの処理の繰り返し処理の中にステップST012の処理を含めてもよい。ステップST013からステップST015の処理についてもステップST012と同様である。さらに、初期テスト入力パターン保持部33は、例えば線形帰還シフトレジスタLFSR;LinearFeedbackShiftRegisterのようなテストパターン発生器を有するものであってもよい。この場合、初期テスト入力パターンは、初期テスト入力パターン保持部33が有するシードを基にLFSRが次々と新しいシードを生成したものを展開したものであってもよい。また、圧縮回路37は、例えばN本のスキャンチェーンからの出力論理値をNビットのシグネチャに圧縮する多入力シグネチャレジスタMISR;MultiInputSignatureRegisterであってもよい。図13に例示するMISRを用いることにより、図7に示すように、値を取り出すフリップフロップが増えても回路のオーバーヘッドをわずか0.2ほど増加させるにとどまる。なお、圧縮回路は、取出装置が備えるものであってもよい。上記の実施例の構成を採用することで、従来のスキャン回路の構成を前提として故障検出を行うことが可能である。しかし、テスト対象の論理回路からのテスト出力パターンを二股に分岐するとしてもよい。このとき、一方の出力を新たなテスト入力パターンとしてテスト対象の論理回路に入力することと同期して、取出装置にテスト出力パターンを出力することが可能となる。したがって、保持手段が不要となる。さらに、故障検出システム1の一部又は全部は、組合せ回路部3とフリップフロップ5とを有する半導体論理回路に組み込まれていてもよいし、テスタとして実現されてもよいし、一部が半導体論理回路に組み込まれて別の一部がテスタとして実現されてもよい。"