"複数のフリップフロップ回路と,前記複数のフリップフロップ回路がそれぞれ対応する複数の第1の論理回路と,前記複数のフリップフロップ回路が対応しない少なくとも1つの第2の論理回路と,前記第2の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記複数の第1の論理回路の何れか1つの論理回路の出力側と,前記1つの論理回路に対応するフリップフロップ回路の入力側との間に配置され,前記第2の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第2の論理回路に入力され,前記第2の論理回路の出力論理が前記対応するフリップフロップ回路に入力され,通常モード時に,前記1つの論理回路の出力論理が,前記対応するフリップフロップ回路に入力されることを特徴とする半導体集積回路。複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の前段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に対応する第2の論理回路の出力側と,前記第1のフリップフロップ回路の入力側との間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第1の論理回路に入力され,前記第1の論理回路の出力論理が前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1のフリップフロップ回路に入力されることを特徴とする半導体集積回路。複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の後段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記第1の論理回路の前段に配置された第2の論理回路の出力側と前記第1の論理回路の入力側の間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記故障検査用回路に入力され,前記故障検査用回路の出力が前記第1の論理回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1の論理回路を通して前記第1の論理回路に対応するフリップフロップ回路に入力されることを特徴とする半導体集積回路。半導体集積回路の故障検査方法において,前記半導体集積回路は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路がそれぞれ対応する複数の第1の論理回路と,前記複数のフリップフロップ回路が対応しない少なくとも1つの第2の論理回路と,前記第2の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記複数の第1の論理回路の何れか1つの論理回路の出力側と,前記1つの論理回路に対応するフリップフロップ回路の入力側との間に配置され,前記第2の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第2の論理回路に入力され,前記第2の論理回路の出力論理が前記対応するフリップフロップ回路に入力され,通常モード時に,前記1つの論理回路の出力論理が,前記対応するフリップフロップ回路に入力される半導体集積回路であって,前記故障検査用回路に試験モードを示す制御信号を入力し,前記試験モードに対応するテスト値を前記第2の論理回路に入力し,前記第2の論理回路の出力論理を前記対応するフリップフロップ回路を通して取得する工程と,前記テスト値に対応する期待値と,前記取得した出力論理とが一致するか否かを判定する工程を有することを特徴とする半導体集積回路の故障検査方法。半導体集積回路の故障検査方法において,前記半導体集積回路は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の前段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に対応する第2の論理回路の出力側と,前記第1のフリップフロップ回路の入力側との間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第1の論理回路に入力され,前記第1の論理回路の出力論理が前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1のフリップフロップ回路に入力される半導体集積回路であって,前記故障検査用回路に試験モードを示す制御信号を入力し,前記試験モードに対応するテスト値を前記第1の論理回路に入力し,前記第1の論理回路の出力論理を前記第1のフリップフロップ回路を通して取得する工程と,前記テスト値に対応する期待値と,前記取得した出力論理とが一致するか否かを判定する工程を有することを特徴とする半導体集積回路の故障検査方法。半導体集積回路の故障検査方法において,前記半導体集積回路は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の後段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記第1の論理回路の前段に配置された第2の論理回路の出力側と前記第1の論理回路の入力側の間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記故障検査用回路に入力され,前記故障検査用回路の出力が前記第1の論理回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1の論理回路を通して前記第1の論理回路に対応するフリップフロップ回路に入力される半導体集積回路であって,前記故障検査用回路に試験モードを示す制御信号を入力し,前記試験モードに対応するテスト値を前記故障検査用回路を通して前記第1の論理回路に入力する工程と,前記第1の論理回路の出力論理を前記第1の論理回路に対応するフリップフロップ回路を通して取得する工程と,前記テスト値に対応する期待値と,前記取得した出力論理とが一致するか否かを判定する工程を有することを特徴とする半導体集積回路の故障検査方法。ここで,図1のEN生成論理回路21における故障検査を行うことを考える。EN生成論理回路21のテストの際には,EN生成論理回路21の出力論理を保持するスキャンチェーン用のフリップフロップ回路が必要である。しかし,EN生成論理回路21の後段にはフリップフロップ回路が配置されていない。そのため,このままでは,EN生成論理回路21についてスキャンテストを実行することができない。そこで,EN生成論理回路21の出力論理を保持するための観測用フリップフロップ回路を有する故障検査用回路を配置する。図2は,図1の半導体集積回路に観測用フリップフロップ回路を有する故障検査用回路が配置された半導体集積回路の部分構成を示す。故障検査用回路31は,制御信号ENs,テストモード制御信号TSMの論理和を演算し結果をクロックゲーティング回路22に出力するOR回路311と,制御信号ENsを保持する観測用フリップフロップ回路312を有する。テストモード制御信号TSMは,半導体集積回路のテストを行う際に,例えば前記の検査装置から入力される信号であり,テストモード時にはハイレベル,通常動作時には,ローレベルである。このハイレベルのテストモード制御信号TSMが,例えば試験モードを示す制御信号である。テストモード時には,クロックゲーティング回路22は,クロックCLKをゲーティングせず後段の回路に常に出力する必要がある。これは,この回路もテスト対象の回路として動作する必要があるからである。そこで,テストモード時の制御信号TSMをそのままクロックゲーティング回路22に入力するためにOR回路311が設けられている。テストモード時には,EN生成論理回路21にテスト値が入力される。EN生成論理回路21は,このテスト値に対応する制御信号ENsを生成しOR回路311,観測用フリップフロップ回路312に出力する。観測用フリップフロップ回路312は,スキャンチェーンを形成するフリップフロップ回路としてのみ機能し,保持した制御信号ENsを,クロックCLKに基づく所定のタイミングで前記の検査装置に出力する。前記の検査装置は,観測用フリップフロップ回路312の出力と,前記のテスト値に対応する期待値とを比較し,不一致の場合には,半導体集積回路に故障有りと判定する。このようなクロックゲーティング回路,EN生成論理回路を多数有する半導体集積回路に前記したスキャンテストを行う場合,多数の観測用フリップフロップ回路を半導体集積回路に配置する必要がある。また,フリップフロップ回路を通さずに論理回路11,13が多段接続している場合がある。この接続構成の詳細については,後述する図11で説明する。このように多段接続している論理回路11,13のテストを行う場合各論理回路の後段に観測用フリップフロップ回路を設け,この観測用フリップフロップ回路を利用すればテストパターンのデータ量が減り,さらに,テスト精度が向上する。しかし,多数の観測用フリップフロップ回路を配置すると,半導体集積回路の回路面積が増える結果,小型化を実現することが困難になる。また,観測用フリップ回路は,電力を消費するため,消費電力が増加する。したがって,本発明の目的は,故障検査のために観測用フリップフロップ回路を配置することなく,故障検査を可能とする半導体集積回路,その検査方法を提供することにある。半導体集積回路の第1の側面は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路がそれぞれ対応する複数の第1の論理回路と,前記複数のフリップフロップ回路が対応しない少なくとも1つの第2の論理回路と,前記第2の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記複数の第1の論理回路の何れか1つの論理回路の出力側と,前記1つの論理回路に対応するフリップフロップ回路の入力側との間に配置され,前記第2の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第2の論理回路に入力され,前記第2の論理回路の出力論理が前記対応するフリップフロップ回路に入力され,通常モード時に,前記1つの論理回路の出力論理が,前記対応するフリップフロップ回路に入力される。第1の側面によれば,故障検査のために観測用フリップフロップ回路を配置することなく,故障検査を可能とすることができる。図3は,本実施の形態の半導体集積回路の部分構成図を示す。図3の半導体集積回路は,図2において,EN生成論理回路21を論理回路51として,さらに,故障検査用回路41を追加したものである。図3の半導体集積回路は,複数のフリップフロップ回路12,14と,複数のフリップフロップ回路12,14がそれぞれ対応する複数の第1の論理回路11,13と,複数のフリップフロップ回路12,14が対応しない少なくとも1つの第2の論理回路51と,論理回路51の故障の有無を検査する故障検査用回路41を有する。故障検査用回路41は,複数の第1の論理回路11,13の何れか1つの論理回路である例えば論理回路13の出力側と,この1つの論理回路に対応するフリップフロップ回路14の入力側に配置されている。フリップフロップ回路14は,論理回路51と同期して動作するフリップフロップ回路である。第2の論理回路51のテストの際に,半導体集積回路検査装置からテストモード試験モードを示す制御信号TSMが,故障検査用回路41,OR回路311に入力され,このテストモードに対応するテスト値が,論理回路51に入力される。この半導体集積回路検査装置については,図8で詳細に説明する。すると,故障検査用回路41により,論理回路51の出力論理が,前記した論理回路13に対応するフリップフロップ回路14に入力される。そのため,フリップフロップ回路14は,論理回路51のテストの際に,論理回路51の出力論理を保持し,前記したスキャンチェーンを通して半導体集積回路検査装置にこの出力論理を出力することができる。さらに,通常モード時に,論理回路13の出力論理が,故障検査用回路41により,前記した論理回路13に対応するフリップフロップ回路14にそのまま入力される。そのため,通常モード時において,故障検査用回路41を挿入したことにより,論理回路13の出力論理が変化することがない。図4は,本実施の形態の半導体集積回路の具体例を示す部分構成図である。図4の半導体集積回路は,図2の半導体集積回路の観測用フリップフロップ回路312に替えて,故障検査用回路41を半導体集積回路に配置したものである。故障検査用回路41は,AND回路411とOR回路412を有する。AND回路411は,第1の入力端に制御信号ENsが入力され,第2の入力端にテストモード制御信号TSMが入力される。AND回路411は,制御信号ENsとテストモード制御信号TSMとの論理積を演算し,OR回路412に出力する。OR回路412は,第1の入力端に論理回路13の出力論理が入力され,第2の入力端にAND回路411の出力論理が入力される。OR回路412は,論理回路13の出力論理とAND回路411の出力論理との論理和を演算し,フリップフロップ回路14に出力する。テストモードを示す制御信号TSMが入力されると,論理回路13の出力論理がローレベルの場合,故障検査用回路41は,論理的にEN生成論理回路21の出力論理ENsを出力する。論理回路13の出力論理がハイレベルの場合,故障検査用回路41は,論理的にハイレベルの出力論理を出力する。すなわち,テストモードを示す制御信号TSMがAND回路411の第2の入力端に入力されると,故障検査用回路41は,OR回路412の第1の入力端に入力された値に応じて,AND回路411の第1の入力端に入力された値,又は,この値の反転値を出力する。一方,通常動作モードを示す制御信号TSMが入力されると,故障検査用回路41は,論理的に,論理回路13の出力論理をそのまま出力する。すなわち,故障検査用回路41は,通常動作モードを示す制御信号TSMがAND回路411の第2の入力端に入力されると,故障検査用回路41は,OR回路412の第1の入力端に入力された値を出力する。ここで,テストモード時における半導体集積回路の動作について説明する。まず,後述する図8に示す半導体集積回路検査装置から,図4の半導体集積回路の入力端にテストモードを示す制御信号TSMが入力される。このとき,半導体集積回路は,この制御信号TSMに応答して,フリップフロップ回路12,14やその他のフリップフロップ回路をシリアル接続することでスキャンチェーンを形成するテストモードに移行する。次いで,テストパターンのテスト値が,前記の半導体集積回路検査装置から入力される。以下の説明では,論理回路1113,EN生成論理回路21は,入力されたテスト値に論理演算を実行する。故障検査用回路41は,論理回路13の出力論理,EN生成論理回路21の出力論理に対して論理演算を実行する。前述したように,論理回路13の出力論理がローレベルの場合に,故障検査用回路41は,論理的に,EN生成論理回路21の出力論理ENsを出力する。このテストの際に,EN生成論理回路21に入力されたテスト値の期待値と,このテスト値に対してEN生成論理回路21が論理演算して出力した出力論理ENsとが一致しない場合,半導体集積回路には,故障が有ると見なし破棄する。一致する場合には,このテストにおいて,EN生成論理回路21には故障が無いと見なす。また,論理回路13の出力論理がハイレベルの場合には,故障検査用回路41は,ハイレベルの出力論理を出力する。しかし,このとき,故障検査用回路41が,ローレベルの出力論理を出力した場合,期待値と一致しないので,この半導体集積回路には,故障があると見なし破棄する。故障検査用回路41に,通常動作モードを示す制御信号TSMが入力されると,AND回路411の出力は,常にローレベルである。従って,OR回路412は,論理回路13の出力論理をフリップフロップ回路14にそのまま出力する。そのため,通常動作モードにおいて,故障検査用回路41を配置することにより,半導体集積回路の出力論理が論理的に変化することがない。次に,本実施の形態における半導体集積回路を設計,製造,テストする工程について説明する。図5は,半導体集積回路設計支援機能を有するワークステーションのブロック図の一例である。設計者は,ワークステーション100を用いて半導体集積回路の設計を行う。ワークステーション100のCPU101は,ROM102,RAM103,ハードディスク104,表示部105,操作部106,接続IF107の制御を行う。ROM102は,各種制御情報などを記録する。RAM103は,CPU101が実行する各種プログラムや,データを一時記憶する。ハードディスク104は,半導体集積回路設計支援機能を提供するプログラムや,支援ツール108により作成されたネットリストを記録する。表示部105は,液晶表示装置などを有する。操作部106は,キーボード,マウスなどを有する。接続IF107は,ネットワークや図8に示す半導体集積回路検査装置と接続するためのインターフェイス機能を有する。CPU101は,支援ツール108をハードディスク104から読み出して,RAM103に展開し,実行する。図6は,本実施の形態の半導体集積回路の設計,製造,テスト行程を説明するフロー図である。なお,ここでは,既に,設計者がレジスタ転送レベルで記述した製造対象となる半導体集積回路の回路情報が例えば図5のハードディスク104に記録されているとする。このRTLソースとしては,例えは図1の半導体集積回路に対応するものである。ステップS1設計者は,支援ツール108を利用して,前記したRTLレベルの回路情報に対して論理合成を実行し,ネットリストを作成する。なお,ネットリストとは,ゲートレベルの回路情報であり,論理回路の論理素子,フリップフロップ回路の接続関係や配置情報が例えばハードウェア記述言語で記述されたものである。ステップS2ステップS1で作成した,ネットリストに対して,設計者が,図3,図4で説明した故障検査用回路の回路情報を挿入する。この回路情報の挿入は,支援ツール108やエディタを利用して設計者自らが行う。図7は,故障検査用回路の回路情報をネットリストに挿入する工程を説明するフロー図である。この工程においては,設計者は,ネットリストを,ワークステーション100の表示部105に表示させ,操作部106を介して故障検査用回路の回路情報をネットリストに挿入する作業を行う。ステップS21故障検査用回路を挿入する論理回路をネットリストの回路情報の中から特定する。図4の例では,EN生成論理回路21を特定する。ステップS22設計者は,ステップS21で特定した論理回路の出力論理を保持する出力用のフリップフロップ回路を特定する。このフリップフロップ回路は,EN生成論理回路21と同期して動作するフリップフロップ回路である。すなわち,EN生成論理回路21に入力されるクロック信号と同一周波数のクロック信号が入力されるフリップフロップ回路を特定する。図4の例では,フリップフロップ回路14を特定する。ステップS23設計者は,故障検査用回路の回路情報をネットリストに挿入する。図4の例では,設計者は,故障検査用回路41のAND回路411の第1の入力端にEN生成論理回路21の出力論理が入力され,第2の入力端にテストモード制御信号TSMが入力されるようにネットリストを編集する。そして,設計者は,OR回路412の第1の入力端に論理回路13の出力論理が入力され,第2の入力端にAND回路411の出力論理が入力されるようにネットリストを編集する。また,OR回路412の出力論理が,フリップフロップ回路14に入力されるようにネットリストを編集する。さらに,OR回路311の第1の入力端にEN生成論理回路21の出力が入力され,第2の入力端にテストモード制御信号TSMが入力されるようにネットリストを編集する。図6の説明に戻る。図6のステップS3設計者は,故障検査用回路の回路情報が挿入されたネットリストに,支援ツール108を利用して,テスト設計を行う。テスト設計は,テスト容易化設計とも呼ばれ,出荷検査時におけるテストを容易化するために行うものである。DFTとしては,例えば,前記したスキャン設計がある。この場合,半導体集積回路内のフリップフロップ回路12,14や,その他図示しないフリップフロップ回路をシリアル接続してスキャンチェーンを形成するために,これらのフリップフロップ回路にスキャンテスト用の回路を予め配置する設計を行う。このようにテスト設計をすることで,後段のステップで説明するようにATPGにより,自動的にテストパターンを生成することができる。なお,このとき,BIST回路を配置するようにしてもよい。ステップS4設計者は,テスト設計が行われたネットリストに,支援ツール108を利用して,配置配線などのレイアウト設計を行う。ステップS5設計者は,支援ツール108のATPGに,テスト値とこのテスト値に対応する期待値を有するテストパターンを作成させる。テストパターンは,ハードディスク104に記録される。ステップS6:設計者は,支援ツール108を利用して,テスト設計が行われたネットリストにタイミング検証などのシミュレーションを行う。ステップS7シュミレーション済みのネットリストに基づき,半導体集積回路製造装置により,半導体集積回路が製造される。ステップS8図8に示す半導体集積回路検査装置は,製造された半導体集積回路に対して出荷試験を行う。図8は,半導体集積回路検査装置のブロック図の一例である。半導体集積回路検査装置200は,ワークステーション100と接続用インターフェイスを通して接続される。半導体集積回路201は,図6のフロー図で説明した工程を経て製造された半導体集積回路であり,検査対象となる半導体集積回路である。テスト情報記憶部202は,半導体集積回路201のテストパターンを記憶する。このテストパターンは,ワークステーション100により作成されたものであり,テスト値と期待値を有する。テスト制御部203は,半導体集積回路201の検査を制御する。具体的には,テスト制御部203は,半導体集積回路201にテストモードを示す制御信号TSMを出力し,テスト情報記憶部202からテストパターンTPを読み出し,半導体集積回路201に出力する。半導体集積回路201は,テストモードを示す制御信号TSMに応答してスキャンテストを実行するテストモードに移行する。なお,このとき,半導体集積回路201のフリップフロップ回路によりスキャンチェーンが形成される。そして,半導体集積回路201は,入力されたテストパターンTPに対して論理演算を実行し,結果を出力論理OUTとしてスキャンチェーンを通してテスト制御部203に出力する。テスト制御部203は,期待値と出力論理OUTとを比較する。テスト制御部203は,全テストパターンに対応する期待値と出力論理OUTとが一致した場合には,半導体集積回路201が良品である旨を示す比較結果CMPを出力部204に出力する。不一致の場合には,半導体集積回路201が不良品である旨を示す比較結果CMPを出力部204に出力する。出力部204は,良品である旨を示す比較結果CMPが入力されると半導体集積回路201が良品である旨を表示出力する。一方,不良品である旨を示す比較結果CMPが入力されると,出力部204は,半導体集積回路201が不良品である旨を表示出力する。図9は,半導体集積回路のテスト工程を説明するフロー図である。なお,既に,半導体集積回路検査装置200に検査対象となる半導体集積回路201がセットされ,テスト情報記憶部202に半導体集積回路201のテストパターンが記憶されているものとする。この半導体集積回路201は,図4で説明した半導体集積回路であるとする。ステップS81テスト制御部203は,半導体集積回路201にテストモードを示す制御信号TSMを入力する。この工程が,例えば,故障検査用回路41にテストモードを示す制御信号を入力する工程である。半導体集積回路201は,この制御信号TSMに応答して,テストモードに移行する。ステップS82テスト制御部203は,テスト情報記憶部202からテストパターンTPを読み出し,半導体集積回路201に出力する。この工程が,例えば,テスト制御部203がステップS81におけるテストモードに対応するテスト値をEN生成論理回路21に入力する工程である。ステップS83テスト制御部203は,テストパターンTPを半導体集積回路201に実行させる。半導体集積回路201は,入力されたテストパターンTPに対して論理演算を実行し,結果を出力論理OUTとして出力する。図4の例では,EN生成論理回路21のテストの際には,論理回路13が常にローレベルの出力論理を出力するように作成されたテスト値を有するテストパターンが図5の支援ツール108により作成されたとする。そして,EN生成論理回路21のテストの際に,論理回路13にこのテスト値が入力される。さらに,前記したように,EN生成論理回路21にテスト値が入力されると,EN生成論理回路21は,このテスト値に論理演算を実行し,出力論理ENsを出力する。ステップS84テスト制御部203は,半導体集積回路201からの出力論理OUTを取得する。この工程が,例えば,テスト制御部203がEN生成論理回路21の出力論理をフリップフロップ回路14を通して取得する工程である。図4の例では,テスト制御部203は,出力論理OUTとして,EN生成論理回路21からの出力論理ENsを取得する。ステップS85テスト制御部203は,期待値と出力論理OUTとを比較する。図4の例では,テスト制御部203は,EN生成論理回路21に入力されたテスト値の期待値とこのテスト値の出力論理ENsとを比較する。この,期待値と出力論理OUTの比較処理を全テストパターンについて実行する。この工程が,例えば,前記のテスト値に対応する期待値と,前記の取得した出力論理とが一致するか否かを判定する工程である。ステップS86全テストパターンに対応する期待値と出力論理OUTが一致した場合,出力部204は,半導体集積回路201が良品である旨を表示する。良品の半導体集積回路201は,出荷される。ステップS87全テストパターンに対応する期待値と出力論理OUTが一致しない場合,出力部204は,半導体集積回路201が不良品である旨を表示する。不良品の半導体集積回路201は,破棄される。図10は,図4の半導体集積回路の他の具体例を示す部分構成図である。フリップフロップ回路14の入力端に論理回路13以外の論理回路が配置されている場合,故障検査用回路41を論理回路13とこの論理回路との間に挿入してもよい。図10の半導体集積回路は,前記の論理回路として,例えばAND回路151が配置されたものである。AND回路151の第1の入力端151aには,他の論理回路からの出力論理やフリップフロップ回路の出力が入力され,第2の入力端151bには,故障検査用回路41の出力論理が入力される。テストモード時において,EN生成論理回路21のテストを実行する場合,AND回路151の第1の入力端151aには,テストパターンとして,ハイレベルのテスト値が入力される。本実施の形態で説明した半導体集積回路によれば,観測用のフリップフロップ回路を配置することなく,半導体集積回路のスキャンテストが可能になる。観測用のフリップフロップ回路をD型のフリップフロップ回路で構成した場合,クロック入力用のインバータや,多数のAND回路を有する入力値保持用のラッチ回路などが必要である。そのため,この観測用のフリップフロップ回路の回路面積は,本実施の形態の故障検査用回路の回路面積に比べて約2倍ほど大きくなる。すなわち,本実施の形態で説明した故障検査用回路の回路規模は,観測用のフリップフロップ回路の回路規模に比べて約半分である。そのため,本実施の形態の半導体集積回路において,故障検査用回路の回路規模を約半分に削減することができる。回路規模を削減することにより,テスト時の消費電力も抑制することができる。図11は,一般的な半導体集積回路の部分構成図の他の例を示す。図11の半導体集積回路は,複数のフリップフロップ回路12,14,17,18と,この複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路,例えばフリップフロップ回路14に対応する多段接続して配置される複数の論理回路11,13を有する。フリップフロップ回路12の端子Qは,論理回路11の入力端に接続され,論理回路13の出力端は,フリップフロップ回路14の端子Dに接続される。複数の論理回路11,13の間には,フリップフロップ回路が配置されていない。また,半導体集積回路は,フリップフロップ回路17が対応する論理回路16を有する。図11の半導体集積回路において,初段側の論理回路11のテストを行うことを考える。論理回路11のテストの際,論理回路11に入力されたテスト値の出力論理は,フリップフロップ回路14を通して,半導体集積回路検査装置200のテスト制御部203に入力されることになる。論理回路11とフリップフロップ回路14との間には論理回路13が配置されているため,論理回路11の出力論理がフリップフロップ回路14に入力されるまでの遅延時間が長くなり,テスト時間が増える。また,テストパターンのデータ量も増える。さらに,論理回路11の出力論理が,テスト値の期待値と異なる場合であっても,この出力論理が論理回路13により論理演算される結果,テスト値の期待値と同値になり,テスト結果が不正確になる場合もある。そこで,多段接続された論理回路において,初段側に配置された論理回路11のテストを行う場合,論理回路11の出力をフリップフロップ回路17に入力する。図12は,本実施の形態における半導体集積回路の具体例を示す部分構成図である。図12の半導体集積回路は,多段接続して配置される複数の論理回路1113の内の1つの論理回路の前段側に接続される第1の論理回路,例えば論理回路11の故障の有無を検査する故障検査用回路41を有する。故障検査用回路41は,前記した1つのフリップフロップ回路14と異なる第1のフリップフロップ回路17に対応する第2の論理回路16の出力側と,第1のフリップフロップ回路17の入力側との間に配置されている。第1の論理回路11のテストの際に,半導体集積回路検査装置200からテストモードを示す制御信号TSMが,故障検査用回路41に入力され,このテストモードに対応するテスト値が,第1の論理回路11に入力される。すると,故障検査用回路41により,第1の論理回路11の出力論理が,前記した1つのフリップフロップ回路,例えばフリップフロップ回路14と異なる第1のフリップフロップ回路17に入力される。さらに,通常モード時に,第2の論理回路16の出力が,第1のフリップフロップ回路17に入力される。このような入出力を行うため,故障検査用回路41は,AND回路411とOR回路412を有する。AND回路411は,第1の入力端にテストモード制御信号TSMが入力され,第2の入力端に論理回路11の出力論理が入力される。AND回路411は,テストモード制御信号TSMと論理回路11の出力論理との論理積を演算し,OR回路412に出力する。OR回路412は,第1の入力端に論理回路16の出力論理が入力され,第2の入力端にAND回路411の出力論理が入力される。OR回路412は,論理回路16の出力論理とAND回路411の出力論理との論理和を演算し,フリップフロップ回路17に出力する。図4で説明したように,テストモードを示す制御信号TSMが入力されると,論理回路16の出力論理がローレベルの場合,故障検査用回路41は,論理的に論理回路11の出力論理を出力する。論理回路16の出力論理がハイレベルの場合,故障検査用回路41は,論理的にハイレベルの出力論理を出力する。従って,論理回路11のテストの際には,半導体集積回路検査装置200は,論理回路16が常にローレベルの出力論理を出力するように作成されたテスト値を論理回路16に入力する。そして,半導体集積回路検査装置200は,テストモードに対応するテスト値を論理回路11に入力する。すると,故障検査用回路41は,論理回路11の出力論理をフリップフロップ回路17に出力する。なお,フリップフロップ回路17は,スキャンチェーンを形成している。半導体集積回路検査装置200は,このスキャンチェーンを形成しているフリップフロップ回路17を通して論理回路11の出力論理を取得することで,論理回路11の故障の有無を検査することができる。一方,通常動作モードを示す制御信号TSMが入力されると,故障検査用回路41は,論理的に,論理回路16の出力論理をそのまま出力する。図12の半導体集積回路を製造する場合,設計者は,図6,図7のフロー図で説明した処理を行う。具体的には,図11の半導体集積回路に対応するネットリストの回路情報の中から故障検査用回路41を挿入する論理回路を特定する。図12の例では,論理回路11を特定する。そして,設計者は,論理回路11の出力論理を保持するフリップフロップ回路を特定する。このフリップフロップ回路は,論理回路11と同期して動作するフリップフロップ回路である。図12の例では,このフリップフロップ回路は,フリップフロップ回路17である。設計者は,故障検査用回路の回路情報をネットリストに挿入する。図12の例では,設計者は,故障検査用回路41のAND回路411の第1の入力端にテストモード制御信号TSMが入力され,第2の入力端に論理回路11の出力論理が入力されるようにネットリストを編集する。そして,設計者は,OR回路412の第1の入力端に論理回路16の出力論理が入力され,第2の入力端にAND回路411の出力論理が入力されるようにネットリストを編集する。また,OR回路412の出力論理が,フリップフロップ回路17に入力されるようにネットリストを編集する。以後は,図6のステップS3~S7の処理を実行して,図12の半導体集積回路を製造する。なお,図10に示したように故障検査用回路41とフリップフロップ回路17との間にAND回路が設けられていてもよい。図12の半導体集積回路のテストをする場合,半導体集積回路検査装置200は,図9のフロー図で説明した処理を実行する。例えば,論理回路11のテストの際には,論理回路16が常にローレベルの出力論理を出力するように作成されたテスト値が図5の支援ツール108により作成されたとする。そして,テスト制御部203により,論理回路11のテストの際に論理回路16にこのテスト値が入力される工程が実行され,さらに,テストモードに対応するテスト値が第1の論理回路11に入力される。この工程が,例えば,テスト制御部203がテストモードに対応するテスト値を第1の論理回路11に入力する工程である。この場合,前記したように,論理回路11は,入力されたテスト値に論理演算を実行し,出力論理を故障検査用回路41に出力する。故障検査用回路41は,この出力論理をフリップフロップ回路17に出力し,テスト制御部203がこの出力論理を取得する。この工程が,例えば,テスト制御部203が第1の論理回路11の出力論理を第1のフリップフロップ回路17を通して取得する工程である。半導体集積回路検査装置200のテスト制御部203は,論理回路11に入力されたテスト値の出力論理とこのテスト値の期待値とを比較し,一致するか否かを判定する工程を実行する。本実施の形態によれば,テストパターンデータの削減,テスト時間の短縮,テスト精度の向上を図ることができる。第3の実施の形態図11の半導体集積回路において,論理回路13のテストをすることを考える。この場合,論理回路13にテストパターンを直接入力し,このテストパターンの出力論理をフリップフロップ回路14を通して取得できれば,前記したように,テストパターンデータの削減,テスト時間の短縮,テスト精度の向上を図ることができる。図13は,本実施の形態の半導体集積回路の具体例を示す部分構成図を示す。図13は,図11に対応するものであるが,図11における半導体集積回路から論理回路16,フリップフロップ回路17を省略している。図13の半導体集積回路は,多段接続して配置される複数の論理回路11,13の内の1つの論理回路11の後段側に接続される第1の論理回路,例えば論理回路13の故障の有無を検査する故障検査用回路41を有する。故障検査用回路41は,第1の論理回路13の前段に配置された第2の論理回路11の出力側と第1の論理回路13の入力側の間に配置されている。第1の論理回路13のテストの際に,半導体集積回路検査装置200からテストモードを示す制御信号TSMが,故障検査用回路41に入力され,このテストモードに対応するテスト値が,故障検査用回路41に入力され,故障検査用回路41の出力が第1の論理回路13に入力される。このテスト値は,故障検査用回路41の後段側に配置されたフリップフロップ回路18から故障検査用回路41に入力される。さらに,通常モード時に,第2の論理回路11の出力が,第1の論理回路13を通して第1の論理回路13に対応するフリップフロップ回路14に入力される。このような入出力を行うため,故障検査用回路41は,AND回路411とOR回路412を有する。AND回路411は,第1の入力端にテストモード制御信号TSMが入力され,第2の入力端にフリップフロップ回路18の出力が入力される。フリップフロップ回路18は,半導体集積回路を構成するフリップフロップ回路であり,テスト用途だけではなく他の用途にも使用される。フリップフロップ回路18は,テストモード時において,半導体集積回路検査装置200から入力されたテストパターンのテスト値を故障検査用回路41に出力する。AND回路411は,テストモード制御信号TSMとフリップフロップ回路18の出力との論理積を演算し,OR回路412に出力する。OR回路412は,第1の入力端に論理回路11の出力論理が入力され,第2の入力端にAND回路411の出力論理が入力される。OR回路412は,論理回路11の出力論理とAND回路411の出力論理との論理和を演算し,論理回路13に出力する。図4で説明したように,テストモードを示す制御信号TSMが入力されると,論理回路11の出力論理がローレベルの場合,故障検査用回路41は,論理的にフリップフロップ回路18の出力,すなわちテスト値を論理回路13に出力する。論理回路11の出力論理がハイレベルの場合,故障検査用回路41は,論理的にハイレベルの出力論理を出力する。従って,論理回路13のテストの際には,半導体集積回路検査装置200は,論理回路11が常にローレベルの出力論理を出力するように作成されたテスト値を論理回路11に入力する。すると,故障検査用回路41は,フリップフロップ回路18から入力されたテスト値を論理回路13に入力する。そして,論理回路13は,このテスト値の出力論理をフリップフロップ回路14に出力する。なお,フリップフロップ回路14は,スキャンチェーンを形成している。半導体集積回路検査装置200は,このスキャンチェーンを形成しているフリップフロップ回路14を通して論理回路13の出力論理を取得することで,論理回路13の故障の有無を検査することができる。一方,通常動作モードを示す制御信号TSMが入力されると,故障検査用回路41は,論理的に,論理回路11の出力論理をそのまま出力する。そして,論理回路11の出力論理が,論理回路13を通して,フリップフロップ回路14に入力される。図13の半導体集積回路を製造する場合,設計者は,図6,図14のフロー図で説明した処理を行う。図14は,故障検査用回路の回路情報をネットリストに挿入する工程を説明するフロー図である。具体的には,図11の半導体集積回路に対応するネットリストの回路情報の中から故障検査用回路41を挿入する論理回路を特定する。図13の例では,論理回路13を特定する。そして,設計者は,論理回路13に直接入力されるテストパターンのテスト値を保持するテストパターン入力用のフリップフロップ回路を特定する。。図13の例では,このフリップフロップ回路は,フリップフロップ回路18である。設計者は,故障検査用回路の回路情報をネットリストに挿入する。図13の例では,設計者は,故障検査用回路41のAND回路411の第1の入力端にテストモード制御信号TSMが入力され,第2の入力端にフリップフロップ回路18の出力が入力されるようにネットリストを編集する。そして,設計者は,OR回路412の第1の入力端に論理回路11の出力論理が入力され,第2の入力端にAND回路411の出力論理が入力されるようにネットリストを編集する。また,OR回路412の出力論理が,論理回路13に入力されるようにネットリストを編集する。以後は,図6のステップS3~S7の処理を実行して,図13の半導体集積回路を製造する。図13の半導体集積回路のテストをする場合,半導体集積回路検査装置200は,図9のフロー図で説明した処理を実行する。例えば,論理回路13のテストの際には,論理回路11が常にローレベルの出力論理を出力するように作成されたテスト値が図5の支援ツール108により作成されたとする。そして,テスト制御部203により,論理回路13のテストの際に論理回路11にこのテスト値が入力される工程が実行され,さらにテストモードに対応するテスト値がフリップフロップ回路18,故障検査用回路41を通して論理回路13に入力される。この工程が,例えば,テスト制御部203がテストモードに対応するテスト値を故障検査用回路41を通して第1の論理回路13に入力する工程である。この場合,前記したように,論理回路13は,入力されたテスト値に論理演算を実行し,出力論理をフリップフロップ回路14に出力する。そして,テスト制御部203がこの出力論理を取得する。この工程が,例えば、テスト制御部203が第1の論理回路13の出力論理を論理回路13に対応するフリップフロップ回路14を通して取得する工程である。半導体集積回路検査装置200のテスト制御部203は,フリップフロップ回路14から出力された値と,フリップフロップ回路18に入力されたテスト値の期待値とを比較し,一致するか否かを判定する工程を実行する。本実施の形態によれば,論理回路13にテストパターンを直接入力し,このテストパターンの出力論理をフリップフロップ回路14を通して取得することができる。その結果,テストパターンデータの削減,テスト時間の短縮,テスト精度の向上を図ることができる。図15は,第1~第3の実施の形態における故障検査用回路41の他の例を示す構成図である。故障検査用回路41a~41cを上記実施の形態で説明した半導体集積回路に適用することができる。故障検査用回路41aは,NOR回路421とOR回路422を有する。NOR回路421は,第1の入力端に入力Tbが入力され,第2の入力端にはテストモード制御信号TSMが入力される。入力Tbは,図4の半導体集積回路では,EN生成論理回路21の出力論理,図12の半導体集積回路では,論理回路11の出力論理,図13の例では,フリップフロップ回路18の出力である。また,NOR回路421は,第2の入力端に反転素子421aを有する。OR回路422は,第1の入力端に入力Taが入力され,第2の入力端には,NOR回路421の出力が入力される。入力Taは,図4の半導体集積回路では,論理回路13の出力論理,図12の半導体集積回路では,論理回路16の出力論理,図13の例では,論理回路11の出力論理である。故障検査用回路41bは,NAND回路431とOR回路432を有する。NAND回路431は,第1の入力端に入力Tbが入力され,第2の入力端にはテストモード制御信号TSMが入力される。OR回路432は,第1の入力端に入力Taが入力され,第2の入力端には,AND回路431の出力が入力される。また,OR回路432は,第2の入力端に反転素子432aを有する。故障検査用回路41cは,NAND回路441とNAND回路442を有する。NAND回路441は,第1の入力端に入力Tbが入力され,第2の入力端にはテストモード制御信号TSMが入力される。NAND回路442は,第1の入力端に入力Taが入力され,第2の入力端には,NAND回路441の出力が入力される。また,NAND回路442は,第1の入力端に反転素子442aを有する。以上の実施の形態をまとめると,次の付記のとおりである。付記1複数のフリップフロップ回路と,前記複数のフリップフロップ回路がそれぞれ対応する複数の第1の論理回路と,前記複数のフリップフロップ回路が対応しない少なくとも1つの第2の論理回路と,前記第2の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記複数の第1の論理回路の何れか1つの論理回路の出力側と,前記1つの論理回路に対応するフリップフロップ回路の入力側との間に配置され,前記第2の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第2の論理回路に入力され,前記第2の論理回路の出力論理が前記対応するフリップフロップ回路に入力され,通常モード時に,前記1つの論理回路の出力論理が,前記対応するフリップフロップ回路に入力されることを特徴とする半導体集積回路。付記1において,前記対応するフリップフロップ回路は,前記第2の論理回路と同期して動作することを特徴とする半導体集積回路。付記3複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の前段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に対応する第2の論理回路の出力側と,前記第1のフリップフロップ回路の入力側との間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第1の論理回路に入力され,前記第1の論理回路の出力論理が前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1のフリップフロップ回路に入力されることを特徴とする半導体集積回路。付記3において,前記第1のフリップフロップ回路は,前記第1の論理回路と同期して動作することを特徴とする半導体集積回路。付記5複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の後段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記第1の論理回路の前段に配置された第2の論理回路の出力側と前記第1の論理回路の入力側の間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記故障検査用回路に入力され,前記故障検査用回路の出力が前記第1の論理回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1の論理回路を通して前記第1の論理回路に対応するフリップフロップ回路に入力されることを特徴とする半導体集積回路。付記5において,前記テスト値は,前記故障検査用回路の後段側に配置されたフリップフロップ回路から前記故障検査用回路に入力されることを特徴とする半導体集積回路。付記7半導体集積回路の故障検査方法において,前記半導体集積回路は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路がそれぞれ対応する複数の第1の論理回路と,前記複数のフリップフロップ回路が対応しない少なくとも1つの第2の論理回路と,前記第2の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記複数の第1の論理回路の何れか1つの論理回路の出力側と,前記1つの論理回路に対応するフリップフロップ回路の入力側との間に配置され,前記第2の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第2の論理回路に入力され,前記第2の論理回路の出力論理が前記対応するフリップフロップ回路に入力され,通常モード時に,前記1つの論理回路の出力論理が,前記対応するフリップフロップ回路に入力される半導体集積回路であって,前記故障検査用回路に試験モードを示す制御信号を入力し,前記試験モードに対応するテスト値を前記第2の論理回路に入力し,前記第2の論理回路の出力論理を前記対応するフリップフロップ回路を通して取得する工程と,前記テスト値に対応する期待値と,前記取得した出力論理とが一致するか否かを判定する工程を有することを特徴とする半導体集積回路の故障検査方法。付記8半導体集積回路の故障検査方法において,前記半導体集積回路は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の前段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に対応する第2の論理回路の出力側と,前記第1のフリップフロップ回路の入力側との間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記第1の論理回路に入力され,前記第1の論理回路の出力論理が前記1つのフリップフロップ回路と異なる第1のフリップフロップ回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1のフリップフロップ回路に入力される半導体集積回路であって,前記故障検査用回路に試験モードを示す制御信号を入力し,前記試験モードに対応するテスト値を前記第1の論理回路に入力し,前記第1の論理回路の出力論理を前記第1のフリップフロップ回路を通して取得する工程と,前記テスト値に対応する期待値と,前記取得した出力論理とが一致するか否かを判定する工程を有することを特徴とする半導体集積回路の故障検査方法。付記9半導体集積回路の故障検査方法において,前記半導体集積回路は,複数のフリップフロップ回路と,前記複数のフリップフロップ回路の少なくとも1つのフリップフロップ回路に対応する多段接続して配置される複数の論理回路と,前記多段接続して配置される複数の論理回路の内の1つの論理回路の後段側に接続される第1の論理回路の故障の有無を検査する故障検査用回路を有し,前記故障検査用回路は,前記第1の論理回路の前段に配置された第2の論理回路の出力側と前記第1の論理回路の入力側の間に配置され,前記第1の論理回路の試験の際に,試験モードを示す制御信号が前記故障検査用回路に入力され,前記試験モードに対応するテスト値が前記故障検査用回路に入力され,前記故障検査用回路の出力が前記第1の論理回路に入力され,通常モード時に,前記第2の論理回路の出力が,前記第1の論理回路を通して前記第1の論理回路に対応するフリップフロップ回路に入力される半導体集積回路であって,前記故障検査用回路に試験モードを示す制御信号を入力し,前記試験モードに対応するテスト値を前記故障検査用回路を通して前記第1の論理回路に入力する工程と,前記第1の論理回路の出力論理を前記第1の論理回路に対応するフリップフロップ回路を通して取得する工程と,前記テスト値に対応する期待値と,前記取得した出力論理とが一致するか否かを判定する工程を有することを特徴とする半導体集積回路の故障検査方法。"