半導体集積回路であって、フリップフロップと、前記フリップフロップに信号を出力する組み合わせ回路と、前記組み合わせ回路に判定信号を出力する判定回路と、を含み、前記判定回路は、所定の条件下で所定のセル遅延量を有するセル遅延回路と、前記所定の条件下で所定の配線遅延量を有する配線遅延回路と、を含み、前記セル遅延回路のセル遅延量と前記配線遅延回路の配線遅延量とを比較した結果に応じて前記判定信号を生成し、前記組み合わせ回路は、同一の論理であって異なる遅延量を有する複数の論理回路で構成される遅延選択回路を1つ以上含み、前記判定信号に基づいて、前記遅延選択回路において前記複数の論理回路の中から1つを選択する半導体集積回路。請求項1に記載の半導体集積回路において、前記遅延選択回路は、第1の論理回路と、前記第1の論理回路よりも遅延量が大きい第2の論理回路と、を含み、前記判定回路は、前記所定の条件下で前記セル遅延回路のセル遅延量と前記配線遅延回路の配線遅延量とが同じであるように設計され、前記組み合わせ回路は、前記セル遅延回路のセル遅延量よりも前記配線遅延回路の配線遅延量が大きいことを表す前記判定信号を受け取った場合に、前記遅延選択回路において前記第2の論理回路を選択する半導体集積回路。請求項1乃至2のいずれかに記載の半導体集積回路において、前記判定回路は、1つのDフリップフロップである判定用フリップフロップを含み、パルス信号を受け取り、前記判定用フリップフロップは、前記パルス信号を、前記セル遅延回路を介してデータ端子に入力し、前記パルス信号を、前記配線遅延回路を介してクロック端子に入力し、前記判定信号を出力する半導体集積回路。請求項3に記載の半導体集積回路において、前記判定回路は、前記パルス信号を、半導体集積回路の起動時に1度だけ受け取る半導体集積回路。請求項1乃至4のいずれかに記載の半導体集積回路において、前記判定信号に基づいて、前記フリップフロップに供給するクロック信号の周波数を調整する周波数調整回路を含む半導体集積回路。請求項1乃至5のいずれかに記載の半導体集積回路において、前記判定回路は、1つ以上のマクロセルで構成されたセル遅延回路および配線遅延回路を含む半導体集積回路。請求項1乃至5のいずれかに記載の半導体集積回路において、前記判定回路は、ゲートアレイ、スタンダードセル、エンベディドアレイのいずれかの1つ以上の基本セルで構成されたセル遅延回路および配線遅延回路を含む半導体集積回路。しかし、特許文献1の発明では、使用環境の変化にあわせて電源電圧の上昇、下降を頻繁に行う必要がある。また、使用環境によっては、高い電源電圧でトランジスタを動作させ続ける必要が生じる。このとき、半導体集積回路の寿命が短くなる等の品質保証上の問題が生じ得る。本発明はこのような問題点に鑑みてなされたものである。本発明のいくつかの態様によれば、過剰なマージンをとることなく、シミュレーションと乖離した遅延の変動率が生じた場合でも、設計を変更せずに正常動作を可能にする回路を含む半導体集積回路を提供する。1本発明は、半導体集積回路であって、フリップフロップと、前記フリップフロップに信号を出力する組み合わせ回路と、前記組み合わせ回路に判定信号を出力する判定回路と、を含み、前記判定回路は、所定の条件下で所定のセル遅延量を有するセル遅延回路と、前記所定の条件下で所定の配線遅延量を有する配線遅延回路と、を含み、前記セル遅延回路のセル遅延量と前記配線遅延回路の配線遅延量とを比較した結果に応じて前記判定信号を生成し、前記組み合わせ回路は、同一の論理であって異なる遅延量を有する複数の論理回路で構成される遅延選択回路を1つ以上含み、前記判定信号に基づいて、前記遅延選択回路において前記複数の論理回路の中から1つを選択する。本発明によれば、判定回路がセル遅延量と配線遅延量とを比較して、結果に応じた判定信号を生成し、組み合わせ回路に出力する。そして、組み合わせ回路は、異なる遅延量を有する複数の論理回路で構成される遅延選択回路を含んでおり、判定信号に基づいて遅延選択回路のそれぞれで適切な遅延量の論理回路を選択する。これにより、フリップフロップには、例えばホールドエラー等を生じさせない適切な遅延量の信号が入力されることになる。よって、シミュレーションと乖離した遅延の変動率をもつ半導体集積回路が生産された場合であっても、設計変更することなく正常動作させることが可能になる。このことにより、シミュレーションで遅延の変動率を大きくとって、過剰な設計マージンを確保する必要はなくなる。遅延の変動率がシミュレーションとほぼ一致するような場合には、過剰な設計マージンをとっていないため、高い周波数で動作させることが可能であり、結果として半導体集積回路の性能が向上する。ここで、フリップフロップは例えばDフリップフロップでもよいし、JK型、T型、その他の種類のフリップフロップであってもよい。半導体集積回路は、1つ以上のフリップフロップを含んでいる。そして、フリップフロップは、組み合わせ回路から信号を受け取る。組み合わせ回路は、様々な論理回路の組み合わせで構成される。組み合わせ回路は、遅延選択回路を1つ又は複数含む。遅延選択回路は、例えば、同一の論理であって異なる遅延量を有する複数の論理回路の中から1つを排他的に選択できるように構成された回路である。例えば、ある遅延選択回路の論理がNANDであるとする。このとき、この遅延選択回路は、例えば3つのNANDセル、2つの入力例えばA、Bとする、1つの出力例えばQとするを有していてもよい。そして、入力A、Bは遅延量の異なる3つのNANDセルのそれぞれに入力されており、3つのNANDセルのそれぞれの出力信号が互いに異なるスイッチを介して出力Qに接続されていてもよい。組み合わせ回路は、判定信号に基づいて1つのスイッチをオン状態にして、1つのNANDセルを選択することができる。なお、遅延選択回路が含む複数の論理回路とは、それぞれが1つのセルで構成されているとは限らない。例えば論理NOTを実現する論理回路は、1つのインバーターで構成されていてもよいし、3つの直列接続されたインバーターで構成されていてもよい。ここで、組み合わせ回路の全てが遅延選択回路を含んでもよい。全ての組み合わせ回路において、適切な遅延量を選択することができるので、シミュレーションと大きく乖離した遅延の変動率が生じた場合でも、正常動作する可能性が高くなる。一方で、組み合わせ回路の全てが遅延選択回路を含むように設計すると、半導体集積回路の回路規模によっては、面積が著しく増加する可能性がある。このとき、例えばSTAStaticTimingAnalysisの解析結果に基づいて、タイミングの厳しいパス例えば、1ns未満の余裕でタイミングをミートしたパスに含まれる組み合わせ回路だけが遅延選択回路を持つようにしてもよい。また、例えば、テスト用のスキャンパスに集中的に遅延選択回路を含ませることによって、シミュレーションと大きく乖離した遅延の変動率が生じた場合でも、ホールドエラーを発生させずに正常にテストを行うことが可能になる。このように、組み合わせ回路を選択して遅延選択回路を含ませることで、面積が著しく増加することを回避できる。判定回路は、セル遅延回路と配線遅延回路とを含む。セル遅延回路とは、セルの内部遅延であるセル遅延ゲート遅延を測定するための回路である。一方、配線遅延回路とは、信号を伝える配線の遅延である配線遅延を測定するための回路である。セル遅延回路では、例えば配線をなるべく短くすることでセル遅延だけを測定できるようにする。一方配線遅延回路では例えばセルをなるべく配置しないことで配線遅延だけを測定できるようにする。なお、セルとは、ASIC設計手法で用いられる、ゲートアレイ、スタンダードセル、およびエンベディッドアレイの少なくとも1つにおける基本セルであってもよい。基本セルとは、回路を構成する基本要素であるバッファー、インバーター、AND、NAND、OR、NOR等のセルをいう。2この半導体集積回路において、前記遅延選択回路は、第1の論理回路と、前記第1の論理回路よりも遅延量が大きい第2の論理回路と、を含み、前記判定回路は、前記所定の条件下で前記セル遅延回路のセル遅延量と前記配線遅延回路の配線遅延量とが同じであるように設計され、前記組み合わせ回路は、前記セル遅延回路のセル遅延量よりも前記配線遅延回路の配線遅延量が大きいことを表す前記判定信号を受け取った場合に、前記遅延選択回路において前記第2の論理回路を選択してもよい。本発明によれば、遅延選択回路は遅延量の小さい第1の論理回路と、遅延量の大きい第2の論理回路とを含む。判定回路は、例えばTYP条件typical条件で同じ遅延量のセル遅延回路と配線遅延回路とを含み、使用環境条件でセル遅延量と配線遅延量のどちらが大きいかを判定して、その判定結果に応じた判定信号を出力する。そして、組み合わせ回路は、配線遅延量の方が大きい場合には遅延量の大きい第2の論理回路を選択するので、例えばホールドエラーの発生を回避し、設計変更することなく正常動作を可能にする。なお、TYP条件とは例えば使用環境温度が25°Cであって、電源電圧が1.8Vであるような場合である。例えばTYP条件を基準にして、セル遅延量と配線遅延量の変化率変化の度合いをそれぞれについて測定する。そして、相対的に、配線遅延量の変化率がセル遅延量の変化率よりも大きくなる場合に、ホールドエラーが生じる恐れがあると判断する。例えば、より低温例えば0°Cかつ高い電源電圧例えば2.2Vで動作させた場合に、TYP条件と比べて配線遅延量の変化率がセル遅延量の変化率よりも大きいとする。このとき、組み合わせ回路は、遅延量の大きい第2の論理回路を選択してホールドエラーの発生を回避する。3この半導体集積回路において、前記判定回路は、1つのDフリップフロップである判定用フリップフロップを含み、パルス信号を受け取り、前記判定用フリップフロップは、前記パルス信号を、前記セル遅延回路を介してデータ端子に入力し、前記パルス信号を、前記配線遅延回路を介してクロック端子に入力し、前記判定信号を出力してもよい。4この半導体集積回路において、前記判定回路は、前記パルス信号を、半導体集積回路の起動時に1度だけ受け取ってもよい。これらの発明によれば、複雑な判定用回路を設けなくても、1つのDフリップフロップの値を判定信号とすることができる。そのため、回路規模を抑えることが可能である。さらに、パルス信号を起動時に1度だけ受け取って、判定信号を生成すれば、その後の半導体集積回路の動作時には判定回路が電力を消費することがなく、低消費電力を実現できる。なお、セル遅延回路を経由したパルス信号を判定用フリップフロップのクロック端子に入力し、配線遅延回路を経由したパルス信号を判定用フリップフロップのデータ端子に入力してもよい。5この半導体集積回路において、前記判定信号に基づいて、前記フリップフロップに供給するクロック信号の周波数を調整する周波数調整回路を含んでもよい。ホールドエラーの発生を回避するために遅延量の大きい論理回路を選択すると、セットアップエラーが生じ得る。本発明によれば、クロック信号の周波数を調整遅くすることでセットアップエラーの発生も同時に回避することが可能である。また、判定信号に基づいてホールドエラーの発生が無いことを確認した場合に、クロック信号の周波数を調整速くすることで、半導体集積回路の性能を向上させることが可能である。6この半導体集積回路において、前記判定回路は、1つ以上のマクロセルで構成されたセル遅延回路および配線遅延回路を含んでもよい。7この半導体集積回路において、前記判定回路は、ゲートアレイ、スタンダードセル、エンベディドアレイのいずれかの1つ以上の基本セルで構成されたセル遅延回路および配線遅延回路を含んでもよい。これらの発明によれば、セル遅延回路および配線遅延回路は設計方針に応じて、適切な方法で作成することが可能である。セル遅延回路および配線遅延回路は、1つ以上のマクロセルで構成されてもよい。このとき、自動配置配線を行う場合に生じるセル遅延、配線遅延の遅延量の誤差、すなわちセルの配置場所や配線の長さの変化に伴う遅延量の違いを気にする必要がない。このとき、判定回路は、正確な判定信号を生成することができる。セル遅延回路および配線遅延回路は、ゲートアレイ、スタンダードセル、エンベディドアレイのいずれかの基本セルで構成されていてもよい。基本セルとは、マクロセルを含まない、バッファー、インバーター、AND、NAND、OR、NOR等の通常のASIC設計手法で用いるセルを意味する。このとき、主要な回路を配置した後のスペースを利用してセル遅延回路および配線遅延回路を作ることができるので、半導体集積回路全体の面積を小さくできる。以下、本発明の実施形態について図面を参照して説明する。なお、変形例の説明において、第1実施形態と同様の構成については同一符号を付し、説明を省略する。1.第1実施形態1.1.半導体集積回路の構成本発明の第1実施形態について図1~図5を参照して説明する。図1は、本実施形態の半導体集積回路1のブロック図である。図1の例では、半導体集積回路1はフリップフロップ10-1~10-3、組み合わせ回路20、判定回路30、周波数調整回路40、スイッチ50を含む。半導体集積回路1は、他にもフリップフロップと組み合わせ回路とを含み、図1には一部のみが記載されている。また、図1の例ではフリップフロップ10-1~10-3はDフリップフロップであるが、他の種類のフリップフロップであってもよい。本実施形態の組み合わせ回路20は、判定信号104に基づいて遅延量を選択する遅延選択回路22-1~22-Nを1つ以上含む。Nは自然数であり、N=1の場合には遅延選択回路22-1と遅延選択回路22-Nとは同一の回路となる。遅延量を選択するとは、具体的には同一の論理であって異なる遅延量を有する複数の論理回路の中から1つを選択することをいう。本実施形態の組み合わせ回路20は、例えばフリップフロップのデータ入力として用いられる信号以下、データ信号と表すやイネーブル入力として用いられる信号等を生成して出力する。ここで、1つのフリップフロップの出力がそのまま他のフリップフロップの入力となる場合がある。その場合には、フリップフロップの出力である配線を組み合わせ回路20として扱う。組み合わせ回路20は、判定信号104に基づいて配線遅延が大きいと判断した場合に、フリップフロップ10-3でホールドエラーが発生することを回避するために、大きな遅延量を有する論理回路を選択することが可能である。ホールドエラーが発生すると動作周波数を下げても正常動作させることはできないが、遅延量を調整することでホールドエラーの発生を回避し、半導体集積回路1を正常動作させることができる。本実施形態の判定回路30は、所定の条件において、所定のセル遅延量を有するセル遅延回路32と所定の配線遅延量を有する配線遅延回路34とを含む。所定の条件とは、例えばTYP条件であって、使用環境温度が25°C、電源電圧が1.8Vといった条件であってもよい。この条件下において、所定のセル遅延量とは、例えば2nsといった具体的な数値であってもよいし、配線遅延回路34の配線遅延と同じといった相対的な遅延量であってもよい。なお、所定の配線遅延量についても同様である。本実施形態では、前記のTYP条件において、セル遅延回路32のセル遅延量を、配線遅延回路34の配線遅延量と同じにしている。判定回路30は、セル遅延回路32のセル遅延量と配線遅延回路34の配線遅延量とを比較した結果に応じた判定信号104を生成する。本実施形態の判定回路30は、1つのDフリップフロップである判定用フリップフロップ36を含み、そのQ出力を判定信号104としている。本実施形態の判定回路30は、パルス信号102を、セル遅延回路32を介して判定用フリップフロップ36のデータ端子に入力する。そして、同じパルス信号102を、配線遅延回路34を介して判定用フリップフロップ36のクロック端子に入力する。この構成により、セル遅延回路32のセル遅延量と配線遅延回路34の配線遅延量の相対的な差に基づいて判定信号104を変化させることができる。本実施形態では、TYP条件においてセル遅延量と配線遅延量とが同じであるため、TYP条件からの遅延量の変化率の差に基づいて、判定信号104は変化することになる。なお、以下において、判定用フリップフロップ36のデータ端子に入力される信号を、判定用フリップフロップのデータ信号37という。また、判定用フリップフロップ36のクロック端子に入力される信号を、判定用フリップフロップのクロック信号38という。スイッチ50は、パルス信号102を生成するのに用いられる。本実施形態のスイッチ50は、セル遅延回路32のセル遅延量と配線遅延回路34の配線遅延量とが、その半周期を超えることがない十分に遅いクロックであるCLK0判定回路用クロック信号から、パルス信号102を生成する。具体的には、CLK0の1つのパルスだけをグローバルリセットの解除後に伝導させてもよい。CLK0の1つのパルスとは、例えば‘L’‘H’‘L’の変化を有するパルスである。ここで、‘L’は信号のローレベルを、‘H’は信号のハイレベルを表す。スイッチ50は、前記の1つのパルスによって判定回路30が判定信号104を生成した後はCLK0を伝導させない。そのため、判定回路30が電力を消費することがなく、低消費電力を実現できる。なお、スイッチ50がオフ状態の場合にも、パルス信号102が不定とならないように設計されているものとする。スイッチ50は、例えば判定回路用クロック信号CLK0と、ローレベルを供給する定電圧源例えばグランドとを選択するマルチプレクサーであってもよい。ここで、本実施形態の組み合わせ回路20は、ホールドエラーを回避するために、大きな遅延量を有する論理回路を選択することがある。しかし、その選択の結果、フリップフロップ10-3でセットアップエラーが生じる可能性がある。このとき、本実施形態の周波数調整回路40は、組み合わせ回路20の選択と連動して、すなわち判定信号104に基づいて遅い周波数のクロックを選択する。遅い周波数のクロックがフリップフロップ10-1~10-3に供給されることで正常動作が可能になる。本実施形態の周波数調整回路40は、判定信号104に基づいて、2つのクロック信号CLK1、CLK2から1つを選択する。そして、選択されたクロック信号が、周波数を調整されたクロック信号周波数調整クロック信号106としてフリップフロップ10-1~10-3に供給される。例えば、CLK1の周波数がCLK2よりも高いとする。周波数調整回路40は、判定信号104に基づいて配線遅延が大きいと判断した場合に、周波数調整クロック信号106としてCLK2を選択し、セットアップエラーの発生を回避する。周波数調整回路40によってセットアップエラーも回避できるので、半導体集積回路1を正常動作させることができる。しかし、遅い周波数のクロックが使用された場合には、その性能は通常時よりも低下する。しかし、再設計をすることなく正常動作を可能にすることは、新たなフォトマスクを作成する場合のコストと期間を考慮すると大きな利点を有する。なお、組み合わせ回路20および周波数調整回路40は、判定信号104に基づいてセル遅延が大きいと判断した場合には、小さな遅延量を有する論理回路を選択し、高い周波数のクロック信号を選択するので、半導体集積回路1は期待される性能で動作する。このとき、シミュレーション等において過剰な設計マージンをとる場合と比べると、高い周波数で動作させることが可能であり、性能のよい半導体集積回路1を実現できる。1.2.判定回路の構成図2は、本実施形態の判定回路30の構成例を表す。なお、図1と同じ要素には同じ符号を付しており説明を省略する。セル遅延回路32は、セル遅延ゲート遅延を測定するために、配線をできるだけ短くしてセルを接続している。セルとは、ASIC設計手法で用いられる、ゲートアレイ、スタンダードセル、およびエンベディッドアレイの少なくとも1つの基本セルを意味する。図2では、バッファーだけを24個直列に並べた構成になっているが、複数の種類のセルが含まれていてもよい。配線遅延回路34は、配線遅延を測定するために、セルをできるだけ含めずに配線を長く引き回している。なお、複数の層のメタル配線等を含んで構成されていてもよい。前記のように、本実施形態の判定回路30では、TYP条件において、セル遅延回路32のセル遅延量を、配線遅延回路34の配線遅延量と同じにしている。つまり、TYP条件においては、判定用フリップフロップのデータ信号37と判定用フリップフロップのクロック信号38とが、同じタイミングで入力されるように設計されている。そして、本実施形態の半導体集積回路1の起動時に、配線遅延とセル遅延のTYP条件からの変化率の差に応じた判定信号104が出力される。後述するように、例えば配線遅延の変化率がセル遅延の変化率よりも大きく、ホールドエラーが発生し得る場合には、判定信号104はローレベルからハイレベルへと変化する。ここで、セル遅延回路32、配線遅延回路34は、あらかじめレイアウトパターンが固定されているマクロハードマクロを1つ以上用いて構成されていてもよい。本実施形態では、セル遅延回路32はマクロ33-1~33-4が並んだ構成であり、配線遅延回路34はマクロ35-1~35-4が並んだ構成となっている。マクロを用いることで、自動配置配線を行う場合に生じるセル遅延、配線遅延の遅延量の誤差、すなわちセルの配置場所や配線の長さの変化に伴う遅延量の違いを気にする必要がなくなる。このとき、判定回路30は、正確な判定信号104を生成することができる。一方で、マクロを使用すると、レイアウトパターンが固定されているために、一定の面積を必要とする。そのため、半導体集積回路1の面積を最小にしたい場合には不向きである。このとき、バッファー、インバーター、AND、NAND、OR、NOR等の基本セルを自動配置配線することによって、セル遅延回路32、配線遅延回路34を作成してもよい。主要な回路を配置した後のスペースを利用してセル遅延回路および配線遅延回路を配置できるので、半導体集積回路全体の面積を小さくできる。なお、基本セルを自動配置配線することでセル遅延回路32、配線遅延回路34を作成する場合には、例えばセルの種類、セルを配置する位置、配線の長さ等をレイアウトツールのオプションで指定することで、誤差を小さくしてもよい。1.3.判定信号図3A~図3Cは本実施形態の判定信号104の変化を説明する図である。なお、図1~図2と同じ要素には同じ符号を付しており説明を省略する。図3Aは、前記のTYP条件のときの判定信号104を説明する図である。時刻t0において、グローバルリセットが解除される。このとき、判定用フリップフロップのデフォルト値は0であり、判定信号104として‘L’が出力される。なお、以下ではフリップフロップ等の値0と‘L’を対応させ、値1と‘H’とを対応させる。その後の時刻t1でスイッチ50がオン状態となり、判定回路用クロック信号CLK0の1周期分がパルス信号102として用いられる。なお、スイッチ50は時刻t4で再びオフ状態となる。パルス信号102は、セル遅延回路32図2参照を経由して判定用フリップフロップのデータ信号37となる。また、パルス信号102は、配線遅延回路34図2参照を経由して判定用フリップフロップのクロック信号38となる。TYP条件では、判定用フリップフロップのデータ信号37と判定用フリップフロップのクロック信号38の遅延量は同じである時刻t2~時刻t3。判定用フリップフロップは、判定用フリップフロップのクロック信号38の立ち上がりエッジで、判定用フリップフロップのデータ信号37を取り込む。このとき、判定用フリップフロップの値は0から変化しないものとし、判定信号104として‘L’が出力され続ける。図3Bは、セル遅延の遅延量の変化率が、配線遅延の遅延量の変化率よりも大きい場合の判定信号104を説明する図である。このとき、ホールドエラーは発生しない。なお、図3Bでは、判定信号104の生成に直接関係のない信号の記載は省略する。図3Bの例では、判定用フリップフロップのデータ信号37が表すセル遅延の遅延量は、時刻t2~時刻t3Dが対応する。一方、判定用フリップフロップのクロック信号38が表す配線遅延の遅延量は、時刻t2~時刻t3Cが対応する。よって、セル遅延の方が、配線遅延よりも大きい。ここで、判定用フリップフロップのクロック信号38の立ち上がりエッジで、判定用フリップフロップのデータ信号37を取り込まれる時刻t3C。このとき、判定用フリップフロップの値は0のままであり、判定信号104として‘L’が出力され続ける。図3Cは、セル遅延の遅延量の変化率が、配線遅延の遅延量の変化率よりも小さい場合の判定信号104を説明する図である。このとき、ホールドエラーが発生しやすい。なお、図3Cでも、判定信号104の生成に直接関係のない信号の記載は省略する。図3Cの例では、判定用フリップフロップのデータ信号37が表すセル遅延の遅延量は、時刻t2~時刻t3Dが対応する。一方、判定用フリップフロップのクロック信号38が表す配線遅延の遅延量は、時刻t2~時刻t3Cが対応する。よって、配線遅延の方が、セル遅延よりも大きい。すると、時刻t3Cにおいて、判定用フリップフロップのクロック信号38の立ち上がりエッジで判定用フリップフロップのデータ信号37が取り込まれるため、判定信号104は‘L’から‘H’へと変化する時刻t5。このように、本実施形態の判定回路30は、図2のように簡易な構成ながら、ホールドエラーが発生しやすい状態を判定信号104によって的確に知らせることが可能である。判定回路30は、内部で生成される信号に基づいて、このような判断を行うことができ、半導体集積回路の外部からの制御等を必要としない。1.4.遅延選択回路と周波数調整回路1.4.1.判定信号に応じた処理図4は、判定信号の値と選択される遅延セル、周波数の関係を説明する図である。判定信号の値は、判定信号104が‘L’のときに0を、‘H’のときに1を対応させている。判定信号の値が0であることは、判定回路30図2参照によってホールドエラーが発生しないと判定されていることを示している。配線遅延のTYP条件時からの変化率が、セル遅延のTYP条件時からの変化率以下である場合等に、判定信号の値が0になる。このとき、遅延選択回路22-1~22-N図1参照は、遅延量が小さい論理回路を選択することができる。また、周波数調整回路40図1参照も、高い周波数のクロックを選択することができる。一方、判定信号の値が1であることは、判定回路30図2参照によってホールドエラーが発生し得ると判定されていることを示している。配線遅延のTYP条件時からの変化率が、セル遅延のTYP条件時からの変化率よりも大きい場合等に、判定信号の値が1になる。このとき、遅延選択回路22-1~22-N図1参照は、遅延量が大きい論理回路を選択して、ホールドエラーを回避する必要がある。また、周波数調整回路40図1参照も、遅延量の大きい論理回路を使用することにより生じるセットアップエラーを回避するために、低い周波数のクロックを選択する必要がある。本実施形態では、遅延選択回路と周波数調整回路図1参照とが連動して、論理回路の遅延量と周波数を選択することで、外部から煩雑な制御を行うこともなく、半導体集積回路に正常動作を行わせる。以下に、遅延選択回路と周波数調整回路の構成の具体例を示す。なお、以下において、本実施形態の組み合わせ回路は1つだけ遅延選択回路を含むN=1として説明する。1.4.2.遅延選択回路と周波数調整回路の構成図5は、本実施形態における遅延選択回路22-1、周波数調整回路40の構成例を表す。図5は、図1の半導体集積回路1において判定回路30とスイッチ50を除く部分2に対応する。なお、図1~図4と同じ要素には同じ符号を付しており説明を省略する。本実施形態の組み合わせ回路20は、遅延選択回路22-1と、遅延選択回路以外の組み合わせ回路68とを含む。遅延選択回路以外の組み合わせ回路68は、例えばフリップフロップ10-1、10-2からの入力信号に基づいて、1つのデータ信号を遅延選択回路22-1に出力する。図5の例では、同じ反転の論理を有する2つの論理回路である、第1の論理回路61、第2の論理回路62のそれぞれがこのデータ信号を受け取る。ここで、第1の論理回路61と第2の論理回路62は、遅延選択回路22-1に含まれている。そして、第2の論理回路62は、第1の論理回路61よりも遅延量が大きい。なお、遅延選択回路22-1に含まれる論理回路とは、1つの基本セルであってもよいし第1の論理回路61参照、基本セルを組み合わせて遅延量を調整したものであってもよい第2の論理回路62参照。そして、遅延選択回路22-1は、マルチプレクサー66を含み、判定信号104を選択信号として第1の論理回路61、第2の論理回路62の一方の出力を選択する。例えば、判定信号104の値が1であれば、遅延量の大きい第2の論理回路62の出力を選択する図4参照。本実施形態の周波数調整回路40は、判定信号104を選択信号とするマルチプレクサー42を含み、2つのクロック信号CLK1、CLK2の一方を選択する。ここで、CLK1の周波数がCLK2よりも高いとする。そして、例えば判定信号104の値が1であれば、周波数の低いCLK2が周波数調整クロック信号106として選択される。本実施形態の半導体集積回路では、判定回路30図1参照がセル遅延量と配線遅延量とを比較して判定信号104を生成し、組み合わせ回路20の遅延選択回路22-1、周波数調整回路40に出力する。そして、遅延選択回路22-1は、判定信号104に基づいて適切な遅延量の論理回路を選択する。また、周波数調整回路40も遅延選択回路22-1に連動して、適切な周波数のクロック信号を選択する。これにより、シミュレーションと乖離した遅延の変動率をもつ半導体集積回路が生産された場合であっても、ホールドエラーとセットアップエラーを回避して、設計変更することなく正常動作させることが可能になる。そのため、シミュレーションで遅延の変動率を大きくとって、過剰な設計マージンを確保する必要はなくなる。そして、遅延の変動率がシミュレーションとほぼ一致するような場合には、過剰な設計マージンをとっていないため、高い周波数で動作させることが可能であり、結果として半導体集積回路の性能が向上することになる。2.変形例第1実施形態の変形例について図6~図9を参照して説明する。なお、第1実施形態と同じの要素については、図1~図5と同じ符号を付して説明を省略する。変形例の半導体集積回路は、遅延選択回路に互いに遅延量の異なる3つ以上の論理回路を含み、その中の1つを選択する。また、周波数調整回路40は、遅延選択回路22-1に連動して、適切な周波数のクロック信号が出力されるように調整を行う。以下では、遅延選択回路が3つの論理回路を含み、その中の1つを選択する例について説明する。なお、第1実施形態と同じ構成フリップフロップ10-1~10-3、スイッチ50等については、重複説明を避けるために図示および説明を省略する。2.1.判定回路の構成図6は、本変形例の判定回路30Aの構成例を表す。なお、図2と同じ要素には同じ符号を付しており説明を省略する。本変形例の判定回路30Aは、2つの判定用フリップフロップ36A、36Bを含む。そして、それぞれから判定信号104A、104Bが出力される。本変形例のセル遅延回路32Aは、マクロ33-1~33-4を含む。そして、マクロ33-1、33-2による遅延以下、セル遅延Aともいうを含む信号は、判定用フリップフロップ36Aのデータ入力として用いられる。また、全てのマクロ33-1~33-4による遅延以下、セル遅延Bともいうを含む信号は、判定用フリップフロップ36Bのデータ入力として用いられる。配線遅延回路34Aは、マクロ35-1、35-2を含む。そして、マクロ35-1、35-2による配線遅延は、TYP条件において、セル遅延Aと同じになるように設計されている。そして、この配線遅延を含む信号判定用フリップフロップのクロック信号38は、判定用フリップフロップ36A、36Bのクロック入力として用いられる。なお、以下では、セル遅延Aを含む信号を判定用フリップフロップのデータ信号37Aといい、セル遅延Bを含む信号を判定用フリップフロップのデータ信号37Bという。2.2.判定信号図7A~図7Cは本実施形態の判定信号の変化を説明する図である。なお、図3A~図3Cと同じ要素には同じ符号を付しており説明を省略する。図7Aは、TYP条件のときの判定信号104A、104Bを説明する図である。時刻t0において、グローバルリセットが解除される。このとき、判定用フリップフロップ36A、36B図6参照のデフォルト値は共に0であり、判定信号104A、104Bとして‘L’が出力される。その後の時刻t1でスイッチ50がオン状態となり、判定回路用クロック信号CLK0の1周期分がパルス信号102として用いられる。なお、スイッチ50は時刻t4で再びオフ状態となる。TYP条件では、判定用フリップフロップのデータ信号37Aと判定用フリップフロップのクロック信号38の遅延量は同じである時刻t2~時刻t3A。このとき、判定用フリップフロップ36Aの値は0から変化しないものとし、判定信号104Aとして‘L’が出力され続ける。また、判定用フリップフロップのデータ信号37Bは、マクロセル33-3、33-4を経由するため遅延が大きいセル遅延A<セル遅延B。よって、時刻t3Bまで‘H’とならないので、判定用フリップフロップ36Bの値も0から変化せず、判定信号104Bとして‘L’が出力され続ける。図7Bは、配線遅延の遅延量の変化率が大きく、セル遅延Aの遅延量よりも大きな遅延が生じた場合の判定信号104A、104Bを説明する図である。このとき、ホールドエラーが発生しやすい。なお、図7Bでは、判定信号104A、104Bの生成に直接関係のない信号の記載は省略する。図7Bの例では、判定用フリップフロップのデータ信号37Aは、時刻t3Eで‘H’となる。そして、時刻t3Cにおいて、判定用フリップフロップのクロック信号38の立ち上がりエッジで、判定用フリップフロップのデータ信号37Aが取り込まれ、判定信号104Aは‘L’から‘H’へと変化する時刻t5A。一方、判定用フリップフロップのデータ信号37Bは、時刻t3Fまで‘H’とならないので、判定信号104Bとして‘L’が出力され続ける。図7Bの例は、第1実施形態において判定信号が変化する場合に対応する図3C参照。本変形例では、配線遅延の遅延量の変化率が更に大きい場合についても、判定を行うことができる。図7Cは、配線遅延の遅延量の変化率が更に大きく、セル遅延Bの遅延量よりも大きな遅延が生じた場合の判定信号104A、104Bを説明する図である。このとき、ホールドエラーが発生しやすく、より遅延量の大きい論理回路を選択する必要が生じる。なお、図7Cでも、判定信号104A、104Bの生成に直接関係のない信号の記載は省略する。図7Cの例では、判定用フリップフロップのデータ信号37A、37Bは、それぞれ、時刻t3E、t3Fで‘H’となる。そして、時刻t3Cにおいて、判定用フリップフロップのクロック信号38の立ち上がりエッジで、判定用フリップフロップのデータ信号37A、37Bが取り込まれ、判定信号104A、104Bは共に‘L’から‘H’へと変化する時刻t5A。本変形例では、判定信号104Bの状態によって、配線遅延の遅延量の変化率の大きさを把握することが可能になる。本変形例の判定回路30は、図6のように簡易な構成ながら、ホールドエラーが発生しやすい状態を判定信号104A、104Bによって的確に知らせ、更に配線遅延の遅延量の変化率の大きさについての情報も伝えることができる。2.3.遅延選択回路と周波数調整回路2.3.1.判定信号に応じた処理図8は、判定信号の値と選択される遅延セル、周波数の関係を説明する図である。なお、図4と対応する箇所はそのことを示して説明は省略する。本変形例では、遅延量を意図的に大きくしたセル遅延Bも用いる。そのため、配線遅延の変化率の大きさが非常に大きく、配線遅延量がセル遅延Bを超えるような場合には、更に遅延量の大きな論理回路を選択させることを可能にする。図8において、判定信号の値が0、0の場合、0、1の場合は、それぞれ、図4において、判定信号の値が0の場合、1の場合に対応する。そして、判定信号の値が1、1の場合には、配線遅延量がセル遅延Bを超えることを意味する。このとき、ホールドエラーを回避するには、更に遅延量に大きい論理回路を選択する必要がある図8の遅延セルの遅延量の最下段。そして、このとき、フリップフロップに供給するクロックの周波数も更に低くして、セットアップエラーを回避する必要がある図8の周波数の最下段。本変形例でも、遅延選択回路と周波数調整回路図1参照とが連動して、論理回路の遅延量と周波数を選択することで、外部から煩雑な制御を行うこともなく、半導体集積回路に正常動作を行わせることができる。以下に、遅延選択回路と周波数調整回路の構成の具体例を示す。2.3.2.遅延選択回路の構成図9Aは、本変形例における遅延選択回路22-1Aの構成例を表す。なお、図5と同じ要素には同じ符号を付しており説明を省略する。遅延選択回路22-1Aは、反転の論理を有する3つの論理回路である、第1の論理回路61、第2の論理回路62、第3の論理回路63を含む。ここで、第2の論理回路62は第1の論理回路61よりも遅延量が大きく、第3の論理回路63は第2の論理回路62よりも遅延量が大きい。そして、遅延選択回路22-1Aは、マルチプレクサー66Aを含み、判定信号104A、104Bを組み合わせて選択信号とし、第1の論理回路61、第2の論理回路62、第3の論理回路63のうちの1つを選択する。例えば、判定信号104A、104Bの値が共に1であれば、遅延量の最も大きい第3の論理回路63の出力を選択する図8参照。2.3.3.周波数調整回路の構成図9Bは、本変形例における周波数調整回路40Aの構成例を表す。なお、図5と同じ要素には同じ符号を付しており説明を省略する。図9Bの周波数調整回路40AはPLL回路を構成している。周波数調整回路40Aは、基準信号90例えば、図1のCLK0が対応してもよいと比較信号98との位相差を比較して差信号92を発生する位相比較器80と、ローパスフィルターであって差信号92に基づく制御電圧94を出力するループフィルター82と、制御電圧94によって周波数調整クロック信号106Aを制御するVCOvoltagecontrolledoscillator84と、周波数調整クロック信号106Aを分周した比較信号98を生成する分周器86とを含む。分周器86は、外部からの制御信号によって分周数を変更できるプログラマブル分周器である。周波数調整回路40Aは、分周器86の制御信号として判定信号104A、104Bを受け取る。そして、遅延選択回路22-1Aで遅延量の大きい論理回路が選択された場合に、連動して周波数調整クロック信号106Aの周波数が低くなるようにする。例えば、判定信号104A、104Bが共に0のときには、分周器86の分周数設定を16としてもよい。そして、例えば判定信号104A、104Bが共に1のときには、分周器86の分周数設定を256としてもよい。また、それ以外の場合には、分周器86の分周数設定を128としてもよい。本変形例のように、遅延選択回路に互いに遅延量の異なる3つ以上の論理回路を用意し、周波数調整回路が連動して適切な周波数のクロック信号を出力することで、回路の遅延量がシミュレーションモデルと大きく乖離する場合であっても正常動作する可能性が高くなる。そして、シミュレーションにおけるマージンを更に減らすことができ、更に高い周波数で動作させることが可能になる。3.その他これらの例示に限らず、本発明は、実施の形態で説明した構成と実質的に同一の構成例えば、機能、方法および結果が同一の構成、あるいは目的および効果が同一の構成を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。特に、フリップフロップの一部をIOセルに置き換えた構成では、入出力信号のタイミングを調整することが可能であり、実施の形態で説明した効果を奏する。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。