(57)【要約】【課題】  クロック回路が集積化されているストラクチャードＡＳＩＣの遅延計算に必要な時間を削減し、ストラクチャードＡＳＩＣの設計のＴＡＴを減少させる。【解決手段】  本発明による遅延計算装置は、クロック回路（５）がマスタスライス（２、３）に集積化されているストラクチャードＡＳＩＣ（１）の遅延計算を行うためのものである。当該遅延計算装置は、クロック回路（５）の遅延計算によって得られたクロック回路遅延データを格納するクロック回路遅延ライブラリ（１７）を保持する記憶装置（１４）と、前記クロック回路（５）を含むストラクチャードＡＳＩＣ（１）の遅延計算を行って前記ストラクチャードＡＳＩＣ（１）の遅延計算結果データを生成する遅延計算手段（１１、１６）とを具備する。遅延計算手段（１１、１６）は、前記クロック回路遅延データの少なくとも一部を前記クロック回路遅延ライブラリ（１７）から取り出し、前記遅延計算結果データにマージするように構成されている。【選択図】  図３
2006309643.tif 000002
【特許請求の範囲】
【請求項１】
クロック回路がマスタスライスに集積化されているストラクチャードＡＳＩＣの遅延計算を行うための遅延計算装置であって、
前記クロック回路の遅延計算によって得られたクロック回路遅延データを格納するクロック回路遅延ライブラリを保持する記憶装置と、
前記クロック回路を含むストラクチャードＡＳＩＣの遅延計算を行って前記ストラクチャードＡＳＩＣの遅延計算結果データを生成する遅延計算手段
とを具備し、
前記遅延計算手段は、前記クロック回路遅延データの少なくとも一部を前記クロック回路遅延ライブラリから取り出し、前記遅延計算結果データにマージするように構成された
遅延計算装置。
【請求項２】
請求項１に記載の遅延計算装置であって、
前記クロック回路は、クロックツリーを形成するように接続されたセル及び配線を備え、
前記セルは、前記クロックツリーの葉に対応する複数のリーフセルを含み、
前記クロック回路遅延データは、前記クロック回路の所定位置から前記リーフセルの入力端子までの範囲に対応するクロック回路遅延時間データを含み、
前記クロック回路遅延ライブラリは、前記リーフセルの遅延時間を示すデータを含まない
遅延計算装置。
【請求項３】
請求項２に記載の遅延計算装置であって、
前記クロック回路遅延時間データは、前記所定位置から前記リーフセルまでのセル及び配線のそれぞれの遅延時間を含む
遅延計算装置。
【請求項４】
請求項２又は請求項３に記載の遅延計算装置であって、
前記クロック回路遅延時間データは、前記所定位置から前記リーフセルの前記入力端子までのパスの遅延時間を含む
遅延計算装置。
【請求項５】
請求項２乃至請求項４のいずれか一項に記載の遅延計算装置であって、
前記クロック回路遅延ライブラリに格納されている前記クロック回路遅延データは、前記リーフセルの入力信号のスルーレートであるリーフセル入力波形鈍りを含み、
前記遅延計算手段は、前記リーフセル入力波形鈍りを前記クロック回路遅延ライブラリから取得し、取得した前記リーフセル入力波形鈍りから前記リーフセルの遅延時間を算出し、算出した前記リーフセルの遅延時間を前記遅延計算結果データに記述する
遅延計算装置。
【請求項６】
請求項２乃至請求項５のいずれか一項に記載の遅延計算装置であって、
前記セルは、前記クロックツリーの根に対応するルートセルを含み、
前記所定位置は、前記ルートセルの出力端子であり、
前記クロック回路遅延ライブラリは、前記ルートセルの遅延時間を示すデータを含まない
遅延計算装置。
【請求項７】
請求項６に記載の遅延計算装置であって、
前記クロック回路遅延ライブラリに格納されている前記クロック回路遅延データは、前記ルートセルの出力端子の負荷容量を含み、
前記遅延計算手段は、前記前記ルートセルの出力端子の負荷容量を前記クロック回路遅延ライブラリから取得し、取得した前記負荷容量から前記ルートセルの遅延時間を算出し、算出した前記ルートセルの遅延時間を前記遅延計算結果データに記述する
遅延計算装置。
【請求項８】
請求項１に記載の遅延計算装置であって、
前記クロック回路は、クロックツリーを形成するように接続されたセル及び配線を備え、
前記セルは、前記クロックツリーの根に対応するルートセルと、前記クロックツリーの葉に対応する複数のリーフセルとを含み、
前記遅延計算手段には、前記ストラクチャードＡＳＩＣのネットリストが与えられ、
前記遅延計算手段は、
前記ストラクチャードＡＳＩＣのネットリストから前記ルートセルの出力端子から前記リーフセルの入力端子までの部分を削除することによりロジック回路ネットリストを作成する手段と、
前記ロジック回路ネットリストから、前記ストラクチャードＡＳＩＣの前記ルートセルの出力端子から前記リーフセルの入力端子までの部分以外の遅延計算を行ってロジック回路遅延計算データを生成する手段と、
前記ロジック回路遅延計算データと前記クロック回路遅延データの少なくとも一部をマージすることにより、前記ストラクチャードＡＳＩＣの前記遅延計算結果データを生成する手段
とを備える
遅延計算装置。
【請求項９】
クロック回路がマスタスライスに集積化されているストラクチャードＡＳＩＣの遅延計算に使用されるクロック回路遅延ライブラリを作成するためのクロック回路遅延ライブラリ作成装置であって、
ストラクチャードＡＳＩＣのネットリストから、前記ストラクチャードＡＳＩＣのクロック回路に対応する部分のネットリストであるクロック回路ネットリストを抽出する抽出手段と、
前記クロック回路ネットリストに基づいて前記クロック回路の遅延計算を行う遅延計算手段と、
前記クロック回路の遅延計算によって得られたクロック回路遅延データをクロック回路遅延ライブラリに格納するライブラリ化手段
と具備する
クロック回路遅延ライブラリ作成装置。
【請求項１０】
請求項９に記載のクロック回路遅延ライブラリ作成装置であって、
前記クロック回路は、クロックツリーを形成するように接続されたセル及び配線を備え、
前記セルは、前記クロックツリーの葉に対応する複数のリーフセルを含み、
前記クロック回路遅延データは、前記クロック回路の所定位置から前記リーフセルの入力端子までの範囲に対応するクロック回路遅延時間データを含み、
前記クロック回路遅延ライブラリは、前記リーフセルの遅延時間を示すデータを含まない
クロック回路遅延ライブラリ作成装置。
【請求項１１】
請求項１０に記載の遅延計算装置であって、
前記クロック回路遅延ライブラリに格納されている前記クロック回路遅延データは、前記リーフセルの入力信号のスルーレートであるリーフセル入力波形鈍りを含む
クロック回路遅延ライブラリ作成装置。
【請求項１２】
請求項１０に記載の遅延計算装置であって、
前記セルは、前記クロックツリーの根に対応するルートセルを含み、
前記所定位置は、前記ルートセルの出力端子であり、
前記クロック回路遅延ライブラリは、前記ルートセルの遅延時間を示すデータを含まない
クロック回路遅延ライブラリ作成装置。
【請求項１３】
請求項１２に記載の遅延計算装置であって、
前記クロック回路遅延ライブラリに格納されている前記クロック回路遅延データは、前記ルートセルの出力端子の負荷容量を含む
クロック回路遅延ライブラリ作成装置。
【請求項１４】
請求項１２に記載のクロック回路遅延ライブラリ作成装置であって、
更に、
前記ルートセルの出力端子に接続されているセルの遅延時間の、前記ルートセルの入力波形鈍りによる影響の程度に対応するタイミングマージンを算出する手段を備え、
前記ライブラリ化手段は、前記タイミングマージンを示すデータを前記クロック回路遅延ライブラリに格納する
クロック回路遅延ライブラリ作成装置。
【請求項１５】
請求項９に記載のクロック回路遅延ライブラリ作成装置であって、
前記遅延計算手段は、前記クロック回路のアナログシミュレーションによって前記遅延計算を行う
クロック回路遅延ライブラリ作成装置。
【請求項１６】
請求項１５に記載のクロック回路遅延ライブラリ作成装置であって、
前記遅延計算手段は、前記クロック回路ネットリストに基づいたアナログシミュレーションにより前記アナログ回路のシグナルインテグリティ検証を行う
クロック回路遅延ライブラリ作成装置。
【請求項１７】
請求項１６に記載のクロック回路遅延ライブラリ作成装置であって、
前記クロック回路は、クロックツリーを形成するように接続されたセル及び配線を備え、
前記セルは、前記クロックツリーの根に対応するルートセルと前記クロックツリーの葉に対応するリーフセルとを含み、
前記シグナルインテグリティ検証では、前記クロックツリーの根に対応するルートセルの入力端子に許容最大周波数のクロックが入力されているという条件の下、前記リーフセルの入力端子に入力されるクロックが接地電位と電源電位との間をフルスイングするかが検証される
クロック回路遅延ライブラリ作成装置。
【請求項１８】
請求項１６に記載のクロック回路遅延ライブラリ作成装置であって、
前記クロック回路は、クロックツリーを形成するように接続されたセル及び配線を備え、
前記シグナルインテグリティ検証では、前記セルのそれぞれの出力端子の電流波形に基づくエレクトロマイグレーション検証が行われる
クロック回路遅延ライブラリ作成装置。
【請求項１９】
請求項１６に記載のクロック回路遅延ライブラリ作成装置であって、
前記クロック回路は、クロックツリーを形成するように接続されたセル及び配線を備え、
前記シグナルインテグリティ検証では、前記セルのそれぞれの出力端子の電流波形に基づくホットキャリア信頼性検証が行われる
クロック回路遅延ライブラリ作成装置。
【請求項２０】
クロック回路がマスタスライスに集積化され、且つ、カスタマイズレイヤに配線が形成されていない第１ストラクチャードＡＳＩＣのネットリストから、前記クロック回路に対応する部分のネットリストである第１クロック回路ネットリストを抽出する第１抽出手段と、
前記クロック回路がマスタスライスに集積化され、且つ、カスタマイズレイヤに配線が形成されている第２ストラクチャードＡＳＩＣのネットリストから、前記クロック回路に対応する部分のネットリストである第２クロック回路ネットリストを抽出する第２抽出手段と、
前記第１クロック回路ネットリストと前記第２クロック回路ネットリストのそれぞれについて遅延計算を行い、前記クロック回路の内部のパスの遅延時間であるパス遅延時間を算出する遅延計算手段と、
前記第１ストラクチャードＡＳＩＣと前記第２ストラクチャードＡＳＩＣの間のパス遅延時間の差分を算出する手段と、
前記第１クロック回路ネットリストの前記遅延計算によって得られたクロック回路遅延データと前記パス遅延時間の差分とをクロック回路遅延ライブラリに格納するライブラリ化手段
とを備える
クロック回路遅延ライブラリ作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遅延計算装置に関し、特に、クロックを分配するクロック回路が集積化された集積回路の遅延計算を行うための技術に関する。
【背景技術】
【０００２】
遅延計算は、集積回路の設計において重要な技術の一つである。集積回路に所望の動作をさせるためには、遅延計算によって遅延時間が算出され、算出された遅延時間から集積回路の動作タイミングが検証される必要がある。例えば、集積回路は、それに集積化されているクロック回路の遅延時間が計算され、クロックスキューが検証される必要がある。加えて、集積回路は、ノード間のパスの遅延時間の適正さが検証される必要がある。このような背景から、様々な遅延計算方法が提案されている。
【０００３】
最も典型的な遅延計算方法の一つが、セルの遅延時間を記述したセル遅延ライブラリを使用する方法である（例えば、特開平１１−２５９５５５号公報参照）。この方法は、セルベースの集積回路の遅延計算をその対象としている。セル遅延ライブラリには、典型的には、セルの遅延時間の入力波形鈍り（即ち、入力信号のスルーレート）及び／又は負荷容量に対する依存性を記述したテーブルが格納される。計算対象の集積回路のネットリストが与えられると、セル遅延ライブラリのテーブルルックアップによって対象の集積回路に集積化されているセルそれぞれの遅延時間が取得され、取得された各セルの遅延時間から対象部分の遅延計算が行われる。
【０００４】
マクロを含む集積回路については、マクロの遅延時間を記述したマクロ遅延ライブラリを使用して遅延計算を行う技術が知られている（例えば、特開平１０−１６２０４０号公報、特開２００１−２７３３３８号公報参照）。遅延ライブラリには、例えば、マクロの入力端子に接続された境界セルの遅延時間の入力波形鈍り（即ち、入力信号のスルーレート）に対する依存性を記述したテーブル、出力端子に接続された境界セルの遅延時間の負荷容量に対する依存性を記述したテーブル、及び、境界セルの間の遅延時間が格納される。このマクロ遅延ライブラリから得られた遅延時間を用いて、集積回路の対象部分の遅延計算が行われる。
【０００５】
他の典型的な遅延計算方法は、アナログシミュレーションによって遅延計算を行う方法である。ＳＰＩＣＥは、アナログシミュレーションを行う最も典型的なシミュレータである。アナログシミュレーションでは、対象の集積回路が、抵抗、キャパシタ、コイルその他のプリミティブ素子で記述された回路モデルによって表現され、その回路モデルの回路方程式を解くことによって遅延時間が計算される。例えば、非特許文献１は、ＡＳＩＣのクロック回路のクロックスキュー解析のために、ＳＰＩＣＥ互換の回路シミュレーションを適用することを開示している。
【特許文献１】特開平１１−２５９５５５号公報
【特許文献２】特開平１０−１６２０４０号公報
【特許文献３】特開２００１−２７３３３８号公報
【非特許文献１】寺井  正幸他、「大規模高速ＡＳＩＣ用クロック分配回路レイアウト設計ツールの開発」、情報処理学会論文誌、２００２年５月、Ｖｏｌ．４３、Ｎｏ．５、ｐ．１２９４−１３０３
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、発明者は、ストラクチャードＡＳＩＣの遅延計算において従来の遅延計算手法を適用するとクロック回路の遅延計算を冗長して行うことになる、ということを見出した。従来の遅延計算手法では、集積回路の設計が行われる毎に当該集積回路に集積化されているクロック回路の遅延時間の計算が行われる。例えば、２つの集積回路の設計が行われる場合には、当該集積回路のそれぞれについて別々にクロック回路の遅延時間の計算が行われる。発明者の検討によれば、ストラクチャードＡＳＩＣ技術が採用されている場合には、個々の集積回路についてクロック回路の遅延計算を行うことは無駄であり、集積回路の設計のＴＡＴを無駄に増大させている。
【課題を解決するための手段】
【０００７】
本発明は、ストラクチャードＡＳＩＣ（Application Specific Integrated Circuit）が適用されている集積回路では、クロック回路の遅延計算の結果を格納した遅延ライブラリを作成することによって様々な集積回路の遅延計算を簡便に実行することができる、という発見に基づくものである。ストラクチャードＡＳＩＣ技術が採用される場合には、設計されたクロック回路をストラクチャードＡＳＩＣのマスタスライスに組み込むことにより、当該クロック回路を様々なストラクチャードＡＳＩＣに共通に集積化することができる。従って、クロック回路の遅延計算の結果を格納した遅延ライブラリを作成しておけば、その遅延ライブラリを当該クロック回路が集積化されたストラクチャードＡＳＩＣの遅延時間の計算において共通に使用し、これによりストラクチャードＡＳＩＣの遅延計算に必要な時間を削減することができる。
【０００８】
発明者が知る限りにおいて、クロック回路について遅延ライブラリを作成するという技術は存在しない。これは、一般的な集積回路では、クロック回路のレイアウトが個々の集積回路で異なり、したがってクロック回路の遅延ライブラリを作成する技術的意義が存在しないためであると考えられる。クロック回路のレイアウトが異なるとクロック回路の配線の抵抗値や容量値も変わる。クロック回路のレイアウトが個々の集積回路で異なる場合には、クロック回路について遅延ライブラリを作成するという技術は有効でない。しかしながら、ストラクチャードＡＳＩＣでは、クロック回路を様々な集積回路に共通に使用可能である。従って、ストラクチャードＡＳＩＣでは、クロック回路の遅延ライブラリを作成することは、遅延計算に必要な時間の削減に有効である。
【０００９】
より具体的には、本発明は、以下に述べられる手段を採用する。その手段を構成する技術的事項の記述には、［特許請求の範囲］の記載と［発明を実施するための最良の形態］の記載との対応関係を明らかにするために、［発明を実施するための最良の形態］で使用される番号・符号が付加されている。但し、付加された番号・符号は、［特許請求の範囲］に記載されている発明の技術的範囲を限定的に解釈するために用いてはならない。
【００１０】
本発明による遅延計算装置は、クロック回路（５）がマスタスライス（２、３）に集積化されているストラクチャードＡＳＩＣ（１）の遅延計算を行うためのものである。当該遅延計算装置は、クロック回路（５）の遅延計算によって得られたクロック回路遅延データを格納するクロック回路遅延ライブラリ（１７）を保持する記憶装置（１４）と、前記クロック回路（５）を含むストラクチャードＡＳＩＣ（１）の遅延計算を行って前記ストラクチャードＡＳＩＣ（１）の遅延計算結果データを生成する遅延計算手段（１１、１６）とを具備する。遅延計算手段（１１、１６）は、前記クロック回路遅延データの少なくとも一部を前記クロック回路遅延ライブラリ（１７）から取り出し、前記遅延計算結果データにマージするように構成されている。
【００１１】
このような遅延計算装置は、クロック回路（５）が共通に集積化された様々なストラクチャードＡＳＩＣ（１）の遅延計算結果データ（２３）を生成する際に、クロック回路遅延ライブラリ（１７）に格納されたクロック回路遅延データを遅延計算結果データ（２３）にマージすることにより、クロック回路（５）の遅延計算を重複的に行う必要をなくすことができる。これは、ストラクチャードＡＳＩＣ（１）の遅延計算に必要な時間を有効に削減し、ストラクチャードＡＳＩＣ（１）の設計のＴＡＴを減少させる。
【発明の効果】
【００１２】
本発明によれば、クロック回路が集積化されているストラクチャードＡＳＩＣの遅延計算に必要な時間を有効に削減し、ストラクチャードＡＳＩＣの設計のＴＡＴを減少させることができる。
【発明を実施するための最良の形態】
【００１３】
以下、添付図面を参照しながら本発明の一実施形態について説明する。添付図面において、同一又は類似の要素には、同一又は対応する参照符号が付されていることに留意されたい。
【００１４】
第１  対象のストラクチャードＡＳＩＣと、遅延計算システムの構成
図１を参照して、本実施形態では、ＭＯＳトランジスタが集積化された半導体基板２と、共通レイヤ３と、カスタマイズレイヤ４とで構成されたストラクチャードＡＳＩＣ１の遅延計算を行うための技術が提供される。共通レイヤ３とは、様々なストラクチャードＡＳＩＣ１に共通に集積化される回路群（例えば、Ｉ／Ｏバッファ、電源回路）の配線が形成される配線レイヤであり、カスタマイズレイヤ４とは、個々のユーザの仕様に合わせて設計された配線が集積化される配線レイヤである。半導体基板２と共通レイヤ３とは、ベンダーによって予め用意される部分であり、これらはまとめてマスタスライスと呼ばれることがある。本実施形態では、クロックを分配するためのクロック回路は、マスタスライスに集積化される。これは、共通のクロック回路を様々なストラクチャードＡＳＩＣ１に集積化するために重要である。
【００１５】
図２は、本実施形態におけるストラクチャードＡＳＩＣ１の回路トポロジーを示す概念図である。ストラクチャードＡＳＩＣ１は、共通に使用されるクロック回路５と、ユーザの要求に応じて異なって構成されるロジック回路６とを備えている。クロック回路５の配線は共通レイヤ３に集積化され、ロジック回路６の配線はカスタマイズレイヤ４に集積化される。
【００１６】
クロック回路５は、セル７と、セル７の間を相互に接続する配線８を備えている。セル７及び配線８は、クロックツリーを形成するように接続されている。このクロックツリーの根（root）に位置するセル７は、以下、ルートセル７ａと呼ばれ、葉（leaf）に位置するセル７は、以下、リーフセル７ｂと呼ばれる。ルートセル７ａは、分配されるべきクロックを受け取るセルである。例えば、ＰＬＬ（phase lock loop）回路やＤＬＬ（digital lock loop）回路のマクロ、そのマクロの出力に直接に又は間接に接続されているセル、クロックを受け取るＩ／Ｏセル、そのＩ／Ｏセルの出力に直接に又は間接に接続されているセルが、ルートセル７ａとして選択され得る。一方、リーフセル７ｂは、クロック回路５からクロックを出力するセルである。例えば、クロックの分配先であるフリップフロップ及びマクロ、そのフリップフロップ及びマクロの入力に接続されるセル、クロックを出力するＩ／Ｏセル、及び、そのＩ／Ｏセルの入力に直接に又は間接に接続されているセルが、リーフセル７ｂとして選択され得る。
【００１７】
一方、ロジック回路６は、リーフセル７ｂが出力する信号に応答して動作する回路９で構成される。回路９としては、例えば、組み合わせ回路が使用される。
【００１８】
以下では、図１、図２のように構成されたストラクチャードＡＳＩＣ１の遅延計算に使用される遅延計算システムと、その機能が詳細に説明される。
【００１９】
図３は、本発明の一実施形態において遅延計算に使用される遅延計算システム１０の構成を示すブロック図である。本実施形態では、一般的に使用されるコンピュータアーキテクチャが遅延計算システム１０に採用されている。より具体的には、本実施形態の遅延計算システム１０は、ＣＰＵ（Central Processing Unit）１１と、キーボード、マウス等の入力装置１２と、表示装置等の出力装置１３と、ＨＤＤ（Hard Disk Drive）等の記憶装置１４とを備えている。
【００２０】
記憶装置１４には、クロック回路遅延ライブラリ生成ツール１５と、遅延計算ツール１６とが格納されている。クロック回路遅延ライブラリ生成ツール１５は、クロック回路遅延ライブラリ１７を生成するためのコンピュータプログラムである。ＣＰＵ１１は、クロック回路遅延ライブラリ生成ツール１５に含まれているコードモジュールを実行してクロック回路遅延ライブラリ１７を生成する。クロック回路遅延ライブラリ生成ツール１５は、クロック回路５についてアナログシミュレーションを行い、そのアナログシミュレーションによって得られた遅延計算の結果をクロック回路遅延ライブラリ１７に保存する。クロック回路遅延ライブラリ１７の内容については、後に詳細に説明される。
【００２１】
遅延計算ツール１６は、ストラクチャードＡＳＩＣ１全体の遅延計算を行う機能を有するコンピュータプログラムである。ＣＰＵ１１は、遅延計算ツール１６に含まれているコードモジュールを実行してストラクチャードＡＳＩＣ１全体の遅延計算を行う。遅延計算ツール１６は、クロック回路遅延ライブラリ１７と、セル遅延ライブラリ１８とを用いて、ストラクチャードＡＳＩＣ１全体の遅延計算を行う。セル遅延ライブラリ１８は、各種セルの遅延時間を記述しているライブラリである。より具体的には、セル遅延ライブラリ１８は、セルの遅延時間の入力波形鈍り（即ち、入力信号のスルーレート）及び負荷容量に対する依存性を記述した２次元テーブルと、セルの出力波形鈍り（即ち、出力信号のスルーレート）の入力波形鈍り及び負荷容量に対する依存性を記述した２次元テーブルとを格納している。
【００２２】
本実施形態の遅延計算システム１０の主たる特徴は、クロック回路５の遅延計算の結果を格納するクロック回路遅延ライブラリ１７を生成し、様々なストラクチャードＡＳＩＣ１の遅延計算にそのクロック回路遅延ライブラリ１７を使用することである。これにより、様々なストラクチャードＡＳＩＣ１の遅延計算の際にクロック回路５の遅延計算を重複的に行うことが不要になる。以下では、クロック回路遅延ライブラリ１７の生成の手順と、クロック回路遅延ライブラリ１７を使用した遅延計算の手順とが詳細に説明される。
【００２３】
第２  クロック回路遅延ライブラリの生成
図４は、一実施形態におけるクロック回路遅延ライブラリ１７の生成の手順を示すフローチャートである。既述のように、クロック回路遅延ライブラリ１７の生成は、遅延計算システム１０のクロック回路遅延ライブラリ生成ツール１５によって行われる。
【００２４】
クロック回路遅延ライブラリ１７の生成は、クロック回路抽出処理で開始される（ステップＳ０１）。クロック回路抽出処理では、まず、ある構成のストラクチャードＡＳＩＣ１のネットリスト１９がクロック回路遅延ライブラリ生成ツール１５に与えられる。そのネットリスト１９には、該ストラクチャードＡＳＩＣ１に含まれるセル及びその接続関係、並びにセル間を接続する配線の配線容量が記述されている。最も簡便には、カスタマイズレイヤ４に配線が存在しないストラクチャードＡＳＩＣ１のネットリスト（即ち、ストラクチャードＡＳＩＣ１のマスタスライスのネットリスト）が、ネットリスト１９としてクロック回路遅延ライブラリ生成ツール１５に与えられる。
【００２５】
クロック回路遅延ライブラリ生成ツール１５は、そのネットリスト１９から、クロック回路５に対応する部分のネットリストであるクロック回路ネットリスト２０を抽出する。図５は、クロック回路ネットリスト２０の内容を示す概念図である。クロック回路ネットリスト２０には、クロック回路５のセル７及びその接続関係、並びに、クロック回路５に含まれる配線８の配線容量が記述される；ロジック回路６の部分は、クロック回路ネットリスト２０からは排除される。
【００２６】
クロック回路ネットリスト２０の抽出に続いて、クロック回路遅延計算処理が行われる（ステップＳ０２）。クロック回路遅延計算処理では、クロック回路ネットリスト２０に基づいてクロック回路５の遅延計算が行われる。この遅延計算は、アナログシミュレーションによって行われる。アナログシミュレーションによってクロック回路５の遅延計算を行うことは、クロック回路５を様々なストラクチャードＡＳＩＣ１で共用する上で好適である。ストラクチャードＡＳＩＣ１のロジック回路６は様々に構成され得るので、共通に使用されるクロック回路５は、クロックスキューがなるべく小さくされることが望ましい。クロックスキューが小さいことを保障するためには、クロック回路５の遅延計算が精密に行われることが望ましく、アナログシミュレーションの使用は遅延計算を精密に行うために有用である。
【００２７】
より具体的には、ステップＳ０２のクロック回路遅延計算処理では、下記のデータ：
（１）クロック回路５に含まれるセル７、及び配線８それぞれの遅延時間
（２）クロック回路５の、ルートセル７ａ以外のセル７のそれぞれの入力波形鈍り（即ち、セル７の入力信号のスルーレート）
（３）ルートセル７ａの出力端子の負荷容量
が算出される。
【００２８】
クロック回路５の遅延計算の後、クロック回路ライブラリ化処理が行われる（ステップＳ０３）。クロック回路ライブラリ化処理では、クロック回路５の遅延計算によって得られたデータが、クロック回路遅延データとしてクロック回路遅延ライブラリ１７に格納される。
【００２９】
より具体的には、クロック回路遅延ライブラリ１７に格納される遅延データは、下記のデータ：
（１）ルートセル７ａの出力端子からリーフセル７ｂの入力端子までの範囲の遅延時間データ
（２）ルートセル７ａの出力端子の負荷容量（即ち、ルートセル７ａに接続されている配線８の配線容量と、その配線８に接続されているセル７の入力容量の和）
（３）クロック回路５のリーフセル７ｂのそれぞれの入力波形鈍り（即ち、入力端子に入力される入力信号のスルーレート）
を含んで構成される。以下、クロック回路遅延ライブラリ１７に格納されるデータのそれぞれについて説明する。
【００３０】
図６Ａ、図６Ｂは、クロック回路遅延ライブラリ１７に格納されている遅延時間データの内容を示す概念図である。図６Ａを参照して、一実施形態では、ルートセル７ａの出力端子とリーフセル７ｂの入力端子との間にあるセル７及び配線８のそれぞれの遅延時間が算出され、算出された遅延時間が遅延時間データクロック回路遅延ライブラリ１７に格納される。図６Ｂを参照して、他の実施形態では、ルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパスそれぞれの遅延時間（パス遅延時間）が算出され、算出されたパス遅延時間がクロック回路遅延ライブラリ１７に格納される。セル７及び配線８のそれぞれの遅延時間と、ルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパス遅延時間の両方が、クロック回路遅延ライブラリ１７に格納されることも可能である。セル７及び配線８のそれぞれの遅延時間をクロック回路遅延ライブラリ１７に格納することは、クロック回路５のパスに依存した検証を行うために便利である。例えば、クロック回路５の所望の２点間の遅延時間を算出可能である。一方、パス遅延時間をクロック回路遅延ライブラリ１７に格納することは、クロック回路５のパスに依存しない検証を行うために便利である。この場合には、クロック回路５のルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパスのそれぞれが、全体として一の遅延要素として扱われる。
【００３１】
クロック回路遅延ライブラリ１７にライブラリ化されるクロック回路５の範囲はルートセル７ａの出力端子から各リーフセル７ｂの入力端子までであり、ルートセル７ａ及びリーフセル７ｂそれ自体は、当該範囲に含まれていないことに留意されたい。言い換えれば、ルートセル７ａ及びリーフセル７ｂそれ自体の遅延時間は、クロック回路遅延ライブラリ１７に記述されていない。
【００３２】
ルートセル７ａの遅延時間がクロック回路遅延ライブラリ１７から排除されるのは、ルートセル７ａの遅延時間が、ルートセル７ａの入力波形鈍りに依存して変化するためである。ルートセル７ａの遅延時間の入力波形鈍りへの依存性を考慮してストラクチャードＡＳＩＣ１の全体の遅延計算の正確性を向上させるためには、ルートセル７ａの入力に接続される回路の構成からルートセル７ａの入力波形鈍りが算出され、その入力波形鈍りからルートセル７ａの遅延時間が別途に計算されることが好適である。
【００３３】
一方、リーフセル７ｂの遅延時間がクロック回路遅延ライブラリ１７から排除されるのは、クロック回路遅延ライブラリ１７のデータ量及び、クロック回路遅延ライブラリ１７を作成するために必要な演算量を減少させるためである。一般的には、マクロの遅延ライブラリには、マクロの出力セル（即ち、マクロの出力端子に直接に接続されているセル）の遅延時間の負荷容量に対する依存性が記述されているテーブルが格納されるが、クロック回路遅延ライブラリ１７には、このような手法は採用されない。これは、クロックを多くの回路に分配するという性質上、クロック回路５は、その出力端子の数（即ち、リーフセル７ｂの数）が極めて多いためである。クロック回路５のリーフセル７ｂの数は、数千に達することも稀ではない。リーフセル７ｂのそれぞれについてテーブルを用意することは、クロック回路遅延ライブラリ１７のデータ量を極めて増大させるため好ましくない。
【００３４】
本実施形態では、リーフセル７ｂの遅延時間を記述したテーブルではなく、各リーフセル７ｂの入力波形鈍りがクロック回路遅延ライブラリ１７に記述される。各リーフセル７ｂの入力波形鈍りは、確定した一の値であることに留意されたい。後述されるように、リーフセル７ｂの遅延時間の算出は、クロック回路遅延ライブラリ１７に記述されたリーフセル７ｂの入力波形鈍りを用いて別途に行われる。これにより、クロック回路遅延ライブラリ１７のデータ量を抑制し、更に、クロック回路遅延ライブラリ１７を作成するために必要な演算量を減少させることができる。
【００３５】
リーフセル７ｂの入力波形鈍りがクロック回路遅延ライブラリ１７に記述されることは、更に、リーフセル７ｂの出力波形鈍り（即ち、出力セルの出力信号のスルーレート）の負荷容量に対する依存性を記述したテーブルをクロック回路遅延ライブラリ１７に格納することを不要にする点でも有用である。一般的には、マクロの遅延ライブラリには、マクロの出力端子に接続されているセルの遅延時間の算出のために、リーフセル７ｂの出力波形鈍りの負荷容量に対する依存性を記述したテーブルが格納される。しかし、このテーブルをリーフセル７ｂのそれぞれについて用意することは、クロック回路遅延ライブラリ１７のデータ量を極めて増大させるため好ましくない。本実施形態では、リーフセル７ｂの入力波形鈍りがクロック回路遅延ライブラリ１７に記述され、これにより、クロック回路遅延ライブラリ１７のデータ量が減少されている。
【００３６】
既述のように、ルートセル７ａの入力波形鈍りはルートセル７ａの遅延時間に影響を与えるが、厳密には、ルートセル７ａのみならずルートセル７ａの出力端子に接続されているセル７（以下、「次段セル７ｃ」という。）の遅延時間にも僅かながら影響を与える。なぜなら、ルートセル７ａの入力波形鈍りは、次段セル７ｃの入力波形鈍りに影響を与え、次段セル７ｃの入力波形鈍りは、次段セル７ｃの遅延時間に影響を与えるためである。ストラクチャードＡＳＩＣ１のタイミング検証では、この影響が考慮されることが望ましい。
【００３７】
ルートセル７ａの入力波形鈍りが次段セル７ｃの遅延時間に及ぼす影響を、ストラクチャードＡＳＩＣ１のタイミング検証において考慮することを可能にするためには、この影響の程度に応じてタイミングマージンが決定され、そのタイミングマージンを示すデータがクロック回路遅延ライブラリ１７に格納されることが望ましい。タイミングマージンは、下記のようにして算出されることが望ましい。
【００３８】
図７を参照して、まず、ルートセル７ａの入力波形鈍りが標準値である場合の次段セル７ｃの遅延時間ｄｅｌａｙ１が算出される。より具体的には、ルートセル７ａの入力波形鈍りが標準値である場合に、次段セル７ｃの入力信号が閾値Ｖｔｈまで立ち上がってから（又は立ち下がってから）、次段セル７ｃの出力信号が閾値Ｖｔｈまで立ち上がるまで（又は立ち下がるまで）に要する時間が遅延時間ｄｅｌａｙ１として算出される。図７において、ルートセル７ａの入力波形鈍りが標準値である場合の次段セル７ｃの入力信号、及び出力信号の波形は、それぞれ、実線３１、３２によって示されていることに留意されたい。
【００３９】
更に、ルートセル７ａの入力波形鈍りが許容最大値である場合の次段セル７ｃの遅延時間ｄｅｌａｙ２が算出される。より具体的には、ルートセル７ａの入力波形鈍りが許容最大値である場合に、次段セル７ｃの入力信号が閾値Ｖｔｈまで立ち上がってから（又は立ち下がってから）、次段セル７ｃの出力信号が閾値Ｖｔｈまで立ち上がるまで（又は立ち下がるまで）に要する時間が遅延時間ｄｅｌａｙ２として算出される。図７において、ルートセル７ａの入力波形鈍りが許容最大値である場合の次段セル７ｃの入力信号、及び出力信号の波形は、それぞれ、破線３３、３４によって示されていることに留意されたい。
【００４０】
遅延時間ｄｅｌａｙ２と遅延時間ｄｅｌａｙ１との差がタイミングマージンΔｄｅｌａｙとして決定され、クロック回路遅延ライブラリ１７に格納される。ストラクチャードＡＳＩＣ１のクロック回路５に関係するタイミング検証においては、クロック回路５の内部のパスのパス遅延時間とタイミングマージンΔｄｅｌａｙとの和が適正範囲にある場合に動作タイミングが適正であると判断される。
【００４１】
図８は、他の好適な実施形態におけるクロック回路遅延ライブラリ１７の生成の手順を示すフローチャートである。この実施形態は、ユーザの要求に応じて設計されるロジック回路６の存在がクロック回路５に含まれる配線８の遅延時間に影響を与える影響をストラクチャードＡＳＩＣ１のタイミング検証において考慮可能にすることを目的としている。クロック回路５に含まれる配線８とロジック回路６の配線の間にはカップリング容量が存在するため、ロジック回路６が存在する場合と存在しない場合とでは、厳密には、クロック回路５に含まれる配線８の容量が相違する。この容量の相違は、クロックスキューの発生に影響を与え得る。本実施形態では、配線８の容量が相違の影響の程度に応じてクロックスキューマージンが決定され、そのクロックスキューマージンを示すデータがクロック回路遅延ライブラリ１７に格納される。ストラクチャードＡＳＩＣ１のタイミング検証では、遅延計算によって算出されたクロック回路５のクロックスキューとクロックスキューマージンとの和が所定の基準値よりも小さいときに、クロック回路５のクロックスキューが適正であると判断される。
【００４２】
より具体的には、本実施形態におけるクロック回路遅延ライブラリ１７の生成は、ユーザ回路なしネットリスト１９Ａと、ユーザ回路付きネットリスト１９Ｂとのそれぞれについてクロック回路抽出処理（ステップＳ０１Ａ、Ｓ０１Ｂ）を行うことによって開始される。ユーザ回路なしネットリスト１９Ａとは、ロジック回路６が設けられていないストラクチャードＡＳＩＣ１のネットリスト（即ち、カスタマイズレイヤ４に配線が設けられていないストラクチャードＡＳＩＣ１のネットリスト）であり、ユーザ回路付きネットリスト１９Ｂは、ロジック回路６が設けられているストラクチャードＡＳＩＣ１のネットリスト（即ち、カスタマイズレイヤ４に配線が設けられているストラクチャードＡＳＩＣ１のネットリスト）である。ユーザ回路なしネットリスト１９Ａ及びユーザ回路付きネットリスト１９Ｂには、セルと、その接続関係、並びに、セル間を接続する配線の配線容量が記述されている。後の記載から理解されるように、セル間を接続する配線の配線容量がユーザ回路なしネットリスト１９Ａ及びユーザ回路付きネットリスト１９Ｂに記述されていることは重要である。
【００４３】
ユーザ回路付きネットリスト１９Ｂは、最悪ケースに対応するロジック回路６、即ち、ロジック回路６の配線とクロック回路５に含まれる配線８との間のカップリング容量をなるべく大きくするような構成のロジック回路６を含むストラクチャードＡＳＩＣ１のネットリストであることが好ましい。
【００４４】
ユーザ回路なしネットリスト１９Ａとユーザ回路付きネットリスト１９Ｂとが与えられると、クロック回路遅延ライブラリ生成ツール１５は、ユーザ回路なしネットリスト１９Ａ及びユーザ回路付きネットリスト１９Ｂのそれぞれから、クロック回路５に対応する部分のネットリストを抽出する；ユーザ回路なしネットリスト１９Ａから取り出されたネットリストは、以下、クロック回路ネットリスト２０Ａと記載され、ユーザ回路付きネットリスト１９Ｂから取り出されたネットリストは、以下、クロック回路ネットリスト２０Ｂと記載される。クロック回路ネットリスト２０Ａとクロック回路ネットリスト２０Ｂとでは、それに記述されているクロック回路５の構成（即ち、セル及びその接続関係）は同一であるが、それに記述されているクロック回路５のセル間を接続する配線の配線容量が相違していることに留意されたい。この配線容量の相違が、クロック回路５の遅延時間に影響を及ぼす。
【００４５】
クロック回路ネットリスト２０Ａ、２０Ｂが抽出された後、それぞれについて、クロック回路遅延計算処理が行われる（ステップＳ０２Ａ、Ｓ０２Ｂ）。より具体的には、ステップＳ０２Ａ、Ｓ０２Ｂのクロック回路遅延計算処理では、下記のデータ：
（１）クロック回路５に含まれるセル７、及び配線８それぞれの遅延時間
（２）クロック回路５の、ルートセル７ａ以外のセル７のそれぞれの入力波形鈍り（即ち、セル７の入力信号のスルーレート）
（３）ルートセル７ａの出力端子の負荷容量
が、ロジック回路６が存在しない場合に対応するクロック回路ネットリスト２０Ａと、ロジック回路６が存在する場合に対応するクロック回路ネットリスト２０Ｂのそれぞれについて算出される。この遅延計算は、アナログシミュレーションによって行われる。
【００４６】
クロック回路遅延計算処理の後、遅延差分抽出処理が行われる（ステップＳ０４）。遅延差分抽出処理では、ロジック回路６が存在しない場合に対応するクロック回路ネットリスト２０Ａと、存在する場合に対応するクロック回路ネットリスト２０Ｂのそれぞれについて、ルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパスの遅延時間（パス遅延時間）が計算され、ロジック回路６が存在する場合と存在しない場合とのパス遅延時間の差分が、全てのパスについて算出される。
【００４７】
更に、クロック回路ライブラリ化処理が行われる（ステップＳ０３Ａ）。本実施形態のクロック回路ライブラリ化処理では、クロック回路遅延計算処理と遅延差分抽出処理によって得られたデータのうちの必要なデータが、クロック回路遅延ライブラリ１７Ａに格納される。より具体的には、
（１）ルートセル７ａの出力端子からリーフセル７ｂの入力端子までの範囲の遅延時間データ
（２）ルートセル７ａの出力端子の負荷容量（即ち、ルートセル７ａに接続されている配線８ａの配線容量と、その配線８ａに接続されている次段セル７ｃの入力容量の和）
（３）クロック回路５のリーフセル７ｂのそれぞれの入力波形鈍り（即ち、入力端子に入力される入力信号のスルーレート）
に加え、ステップＳ０４で算出されたパス遅延時間の差分が、クロックスキューマージンとしてクロック回路遅延ライブラリ１７Ａに格納される。ストラクチャードＡＳＩＣ１のタイミング検証では、遅延計算によって算出されたクロック回路５のクロックスキューとクロックスキューマージンとの和が所定の基準値よりも小さいときに、クロック回路５のクロックスキューが適正であると判断される。
【００４８】
上述のとおり、クロック回路遅延ライブラリ１７Ａに格納される遅延時間データは、セル７及び配線８のそれぞれの遅延時間（図６Ａ参照）、ルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパスそれぞれについて算出されたパス遅延時間（図６Ｂ参照）のいずれであってもよいことに留意されたい。また、セル７及び配線８のそれぞれの遅延時間と、ルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパス遅延時間の両方がクロック回路遅延ライブラリ１７Ａに格納されることも可能である。
【００４９】
クロック回路遅延ライブラリ１７（又は１７Ａ）の作成の際、同時に、クロック回路５のシグナルインテグリティ検証が行われることが好適である。クロック回路遅延ライブラリ１７の作成と共にクロック回路５のシグナルインテグリティ検証を行うことにより、クロック回路５が共通に集積されているストラクチャードＡＳＩＣに対して重複的にシグナルインテグリティ検証を行う必要がなくなる。
【００５０】
図９を参照して、クロック回路５のシグナルインテグリティ検証は、ストラクチャードＡＳＩＣ１の許容最大周波数のクロックがルートセル７ａに入力されている条件でのアナログシミュレーションにより行われる。シグナルインテグリティ検証では、好適には、フルスイング検証、エレクトロマイグレーション検証、及びホットキャリア信頼性検証が行われる。シグナルインテグリティ検証がアナログシミュレーションにより行われることは、シグナルインテグリティ検証を高精度に行うことを可能にする点で好適である。
【００５１】
フルスイング検証では、リーフセル７ｂの入力端子に入力されるクロック信号の波形がアナログシミュレーションによって算出され、クロック信号が接地電位ＶＳＳと電源電位ＶＤＤとの間でフルスイングするかが検証される。クロック信号がフルスイングしない場合、遅延計算システム１０は、フルスイング検証エラーを出力装置１３から出力し、設計者にその旨を知らせる。これにより、許容最大周波数を低く再設定する、クロック回路５を再設計する等の対処を行うように設計者に推奨することができる。
【００５２】
エレクトロマイグレーション検証では、クロック回路５の各セル７の出力端子の電流波形がアナログシミュレーションによって算出され、算出された電流波形がエレクトロマイグレーション検証の基準を満足しているかが検証される。同様に、ホットキャリア信頼性検証では、各セル７の出力端子の電流波形がホットキャリア信頼性検証の基準を満足しているかが検証される。各セル７の出力端子の電流波形が基準を満足していない場合、遅延計算システム１０は、検証エラーを出力装置１３から出力し、設計者にその旨を知らせる。これにより、許容最大周波数を低く再設定する、クロック回路５を再設計する等の対処を行うように設計者に推奨することができる。
【００５３】
第３  クロック回路ライブラリを用いた遅延計算
上述されているように、ストラクチャードＡＳＩＣ１全体の遅延計算は、クロック回路遅延ライブラリ１７（又は１７Ａ）を用いて行われる。図１０は、ストラクチャードＡＳＩＣ１全体の遅延計算の手順を示すフローチャートである。
【００５４】
ストラクチャードＡＳＩＣ１全体の遅延計算は、クロック回路削除処理で開始される（ステップＳ１１）。クロック回路削除処理では、まず、計算対象のストラクチャードＡＳＩＣ１のネットリストである計算対象ネットリスト２１が遅延計算ツール１６に与えられる。遅延計算ツール１６は、計算対象ネットリスト２１から、クロック回路５のクロック回路遅延ライブラリ１７へのライブラリ化の対象になっている範囲に対応する部分を除くことにより、ロジック回路ネットリスト２２を生成する。
【００５５】
図５の右下部分には、ロジック回路ネットリスト２２の内容が図示されている。ロジック回路ネットリスト２２には、計算対象のストラクチャードＡＳＩＣ１のうち、ルートセル７ａの出力端子からリーフセル７ｂの入力端子の部分を除いた部分についてのセル及びその接続関係、並びにセル間の配線の配線容量が記述される。ロジック回路ネットリスト２２には、ルートセル７ａ及びリーフセル７ｂの記述が含まれていることに留意されたい。
【００５６】
図１０に戻り、クロック回路削除処理に続いて、クロック回路５以外の遅延計算処理が行われる（ステップＳ１２）。この遅延計算処理では、ロジック回路ネットリスト２２に基づいて、計算対象のストラクチャードＡＳＩＣ１のうち、ルートセル７ａの出力端子からリーフセル７ｂの入力端子までの部分以外の部分についての遅延計算が行われる。より具体的には、ルートセル７ａの出力端子からリーフセル７ｂの入力端子までの部分以外の部分に位置する各セル及び各配線の遅延時間、及び各セルの入力波形鈍りが、セル遅延ライブラリ１８に格納されているテーブルのテーブルルックアップにより算出される。
【００５７】
ルートセル７ａ、リーフセル７ｂの遅延時間の計算は、ステップＳ１２の遅延計算処理において行われることに留意されたい；クロック回路遅延ライブラリ１７には、ルートセル７ａ、リーフセル７ｂの遅延時間が記述されていない。
【００５８】
ルートセル７ａの遅延時間の計算では、まず、ロジック回路ネットリスト２２とセル遅延ライブラリ１８に記述されているデータから、ルートセル７ａの入力波形鈍りが算出される。更に、クロック回路遅延ライブラリ１７からルートセル７ａの出力端子の負荷容量が取り出される；図１０の破線は、ルートセル７ａの出力端子の負荷容量がクロック回路遅延ライブラリ１７から取り出されることを示している。ルートセル７ａの遅延時間は、このようにして得られたルートセル７ａの入力波形鈍りと負荷容量とから、セル遅延ライブラリ１８に格納されているテーブルのテーブルルックアップによって算出される。
【００５９】
一方、リーフセル７ｂの遅延時間の計算では、まず、クロック回路遅延ライブラリ１７に記述されているリーフセル７ｂの入力波形鈍りが取り出される；図１０の破線は、リーフセル７ｂの入力波形鈍りがクロック回路遅延ライブラリ１７から取り出されることを示している。更に、ロジック回路ネットリスト２２とセル遅延ライブラリ１８に記述されているデータから、リーフセル７ｂの出力端子の負荷容量が算出される。リーフセル７ｂの遅延時間は、このようにして得られたリーフセル７ｂの入力波形鈍りと負荷容量とから、セル遅延ライブラリ１８に格納されているテーブルのテーブルルックアップによって算出される。
【００６０】
続いて、遅延計算結果マージ処理が行われる（ステップＳ１３）。遅延計算結果マージ処理では、ステップＳ１２で行われた遅延計算処理の結果と、クロック回路遅延ライブラリ１７に格納されているデータとをマージすることにより、計算対象のストラクチャードＡＳＩＣ１全体の遅延情報を記述する遅延計算結果データ２３が生成される。遅延計算結果データ２３には、例えば、
（１）ストラクチャードＡＳＩＣ１に含まれる各セル及び各配線の遅延時間（クロック回路５に含まれるセル７及び各配線８の遅延時間を含む。）
（２）ストラクチャードＡＳＩＣ１に含まれる各セルの入力波形鈍り
が記述される。クロック回路５に含まれるセル７及び各配線８の遅延時間に加えて、又はその代わりに、ルートセル７ａの出力端子から各リーフセル７ｂの入力端子までのパスのパス遅延時間が遅延計算結果データ２３に含められることも可能である。ストラクチャードＡＳＩＣ１のタイミング検証は、このようにして生成された遅延計算結果データ２３に記述された遅延時間や入力波形鈍りに基づいて行われる。
【００６１】
以上に説明されているように、本実施形態の遅延計算システム及び遅延計算方法では、クロック回路５の遅延計算の結果を格納するクロック回路遅延ライブラリ１７が生成され、ストラクチャードＡＳＩＣ１の遅延計算にそのクロック回路遅延ライブラリ１７が使用される。これにより、様々なストラクチャードＡＳＩＣ１の遅延計算の際にクロック回路５の遅延計算を重複的に行うことが不要になる。クロック回路５の遅延計算が重複的に行われることを回避することは、ストラクチャードＡＳＩＣ１の設計のＴＡＴの短縮に有効である。
【図面の簡単な説明】
【００６２】
【図１】図１は、本発明の一実施形態におけるストラクチャードＡＳＩＣの構成を示す断面図である。
【図２】図２は、本発明の一実施形態におけるストラクチャードＡＳＩＣの回路トポロジーを示す概念図である。
【図３】図３は、本発明の一実施形態における遅延計算システムの構成を示すブロック図である。
【図４】図４は、本発明の一実施形態におけるクロック回路遅延ライブラリの生成手順を示すフローチャートである。
【図５】図５は、本発明の一実施形態において使用されるネットリストの内容を示す概念図である。
【図６Ａ】図６Ａは、一実施形態におけるクロック回路遅延ライブラリの内容を示す概念図である。
【図６Ｂ】図６Ｂは、他実施形態におけるクロック回路遅延ライブラリの内容を示す概念図である。
【図７】図７は、本発明の一実施形態におけるタイミングマージンの算出方法を示す概念図である。
【図８】図８は、本発明の他の実施形態におけるクロック回路遅延ライブラリの生成手順を示すフローチャートである。
【図９】図９は、本発明の一実施形態におけるシグナルインテグリティ検証を説明する概念図である。
【図１０】図１０は、本発明の一実施形態における、ストラクチャードＡＳＩＣ全体の遅延計算の手順を示すフローチャートである。
【符号の説明】
【００６３】
１：ストラクチャードＡＳＩＣ
２：半導体基板
３：共通レイヤ
４：カスタマイズレイヤ
５：クロック回路
６：ロジック回路
７：セル
７ａ：ルートセル
７ｂ：リーフセル
７ｃ：次段セル
８、８ａ：配線
９：回路
１０：遅延計算システム
１１：ＣＰＵ
１２：入力装置
１３：出力装置
１４：記憶装置
１５：クロック回路遅延ライブラリ生成ツール
１６：遅延計算ツール
１７、１７Ａ：クロック回路遅延ライブラリ
１８：セル遅延ライブラリ
１９：ネットリスト
１９Ａ：ユーザ回路なしネットリスト
１９Ｂ：ユーザ回路付きネットリスト
２０、２０Ａ、２０Ｂ：クロック回路ネットリスト
２１：計算対象ネットリスト
２２：ロジック回路ネットリスト
２３：遅延計算結果データ
【図１】
2006309643.tif 000003
【図２】
2006309643.tif 000004
【図３】
2006309643.tif 000005
【図４】
2006309643.tif 000006
【図５】
2006309643.tif 000007
【図６Ａ】
2006309643.tif 000008
【図６Ｂ】
2006309643.tif 000009
【図７】
2006309643.tif 000010
【図８】
2006309643.tif 000011
【図９】
2006309643.tif 000012
【図１０】
2006309643.tif 000013