(57)【特許請求の範囲】
【請求項１】
下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、前記レイアウト後トップネットリストからマクロ内部の回路を切り出したマクロネットリストにレイアウト処理を行ったレイアウト後マクロネットリストとをマージして、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージ手段と、
前記マージ後マクロネットリストを用いて、前記マクロ境界パスの遅延を解析する遅延解析手段とを備え、
前記ネットリストマージ手段は、
前記レイアウト後トップネットリストから、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを抜き出し、当該抜き出した記述を、前記レイアウト後マクロネットリストにコピーすることで、前記マージ後マクロネットリストを生成する
ことを特徴とするマクロ遅延解析装置。
【請求項２】
前記ネットリストマージ手段は、
前記レイアウト後マクロネットリストから、クロックツリー末端ドライバより前のクロックパスの記述を削除し、
前記レイアウト後トップネットリストから、前記マクロに関する、ＰＬＬからクロックツリー末端ドライバ手前までのクロックパスの記述を抜き出して、前記レイアウト後マクロネットリストにコピーし、
前記レイアウト後トップネットリストから、前記マクロに関する前記マクロ境界パスの記述を抜き出して、前記レイアウト後マクロネットリストにコピーすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする請求項１に記載のマクロ遅延解析装置。
【請求項３】
前記遅延解析手段は、
グローバルクロックパスを含むトップ回路の遅延時間情報に含まれる前記マクロ外クロックパス及び前記マクロ境界パスの遅延時間情報と、マクロ内回路の遅延時間情報とを、前記マージ後マクロネットリストに割り当て、
前記遅延時間情報が割り当てられた前記マージ後マクロネットリストと、半導体集積回路を動作させるための制約情報である遅延制約情報とに基づいて、前記マクロ境界パスの遅延解析を行う
ことを特徴とする請求項１又は請求項２に記載のマクロ遅延解析装置。
【請求項４】
セルライブラリを参照し、前記マージ後マクロネットリストについてＲＣシミュレーションによる遅延計算を行い、前記マクロ内回路の遅延時間情報を生成する遅延時間算出手段を備える
ことを特徴とする請求項３に記載のマクロ遅延解析装置。
【請求項５】
前記遅延解析手段は、
信号パスの遅延時間の算出、
クロックスパスの遅延時間の算出、
ＣＲＰＲを考慮したクロックスキューの算出、
クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェック
の少なくとも何れか１つを行うことを特徴とする請求項１から請求項４の何れか１項に記載のマクロ遅延解析装置。
【請求項６】
前記ＣＲＰＲを考慮したクロックスキューの算出は、
前記マージ後マクロネットリストから各パスの始終点のクロックパス共通部分の情報を得て、ＣＲＰＲを考慮した過剰マージンの無い高精度なクロックスキューを算出する
ことを特徴とする請求項５に記載のマクロ遅延解析装置。
【請求項７】
前記レイアウト後トップネットリストのクロックパスとマクロ境界の交差点にマクロの外部クロック端子を発生させて、そのマクロの外部クロック端子を含むマクロを前記マクロネットリストとして切り出すマクロ切り出し手段と、
前記マクロネットリストにレイアウト処理を行って前記レイアウト後マクロネットリストを生成するレイアウト手段と
を備えることを特徴とする請求項１から請求項６の何れか１項に記載のマクロ遅延解析装置。
【請求項８】
マクロ遅延解析装置によるマクロ境界パスの遅延解析方法であって、
ネットリストマージ手段が、
下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、前記レイアウト後トップネットリストからマクロ内部の回路を切り出したマクロネットリストにレイアウト処理を行ったレイアウト後マクロネットリストとをマージして、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージステップを実行し、
遅延解析手段が、
前記マージ後マクロネットリストを用いて、前記マクロ境界パスの遅延を解析する遅延解析ステップを実行し、
前記ネットリストマージステップで、
前記レイアウト後トップネットリストから、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを抜き出し、当該抜き出した記述を、前記レイアウト後マクロネットリストにコピーすることで、前記マージ後マクロネットリストを生成する
ことを特徴とするマクロ境界パスの遅延解析方法。
【請求項９】
マクロ遅延解析装置を構成するコンピュータ上で動作するマクロ境界パスの遅延解析プログラムであって、
ネットリストマージ手段に、
下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、前記レイアウト後トップネットリストからマクロ内部の回路を切り出したマクロネットリストにレイアウト処理を行ったレイアウト後マクロネットリストとをマージして、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージ処理を実行させ、
遅延解析手段に、
前記マージ後マクロネットリストを用いて、前記マクロ境界パスの遅延を解析する遅延解析処理を実行させ、
前記ネットリストマージ処理で、
前記レイアウト後トップネットリストから、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを抜き出し、当該抜き出した記述を、前記レイアウト後マクロネットリストにコピーすることで、前記マージ後マクロネットリストを生成する
ことを特徴とするマクロ境界パスの遅延解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マクロの遅延解析技術に関し、特に、マクロ境界パスを高精度に遅延解析するマクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラムに関する。
【背景技術】
【０００２】
ＬＳＩの大規模化に伴い、ＥＤＡ（ｅｌｅｃｔｒｏｎｉｃ  ｄｅｓｉｇｎ  ａｕｔｏｍａｔｉｏｎ）ツール実行に必要なマシン性能、使用メモリ量が大きくなってきており、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）チップ全体を一度に処理することが難しくなってきている。この大規模化に伴い、１つのＬＳＩを、階層的に分割された一部分の回路（以下、マクロと称す）毎に設計することが主流になってきている。
【０００３】
また一方で、ＬＳＩの高速化も進んでいる。ＬＳＩを高速に動作させるためには、同期化回路の場合、フリップフロップ（ＦＦ）等の同時動作が重要な課題となっている。そのためには各ＦＦに入力されるクロック信号の遅延時間のばらつき（クロックスキュー）を小さく抑えることが重要である。
【０００４】
階層設計のクロック分配の手法は、図１１のように、トップ処理でマクロ毎に１箇所の切り口端子までの分配を行い、マクロ処理でその先を分配し、チップ処理時にトップのクロック分配とマクロのクロック分配をマージさせる手法が一般的である。
【０００５】
この一般的なクロック分配手法では、チップ全体で同期を取る場合に、段数が多くなりクロックスキューが大きくなってしまうという問題があった。図１１を参照して具体的に説明すると、クロックパスｃ１、ｃ２は、マクロｍ１を迂回してマクロｍ２、ｍ３へ分配されるため迂回する分、段数が多くなってしまい、クロックスキューが大きくなってしまう、という問題である。
【０００６】
このため近年では、図１２に示すように、クロック分配をトップ処理の時点でチップ全面に対して行い、マクロ処理ではチップ全面に分配されたクロックパスからマクロ内にある部分のクロックパスを切り出して処理を行うクロック分配手法を採用する必要性がでてきた。
【０００７】
ここで、関連技術として、特許文献１に、トップネットリストと下位下層ネットリスト（マクロネットリスト）をマージし、マクロ境界の配線ＲＣ情報がマージされたＬＳＩ全体を含むチップ全体ネットリストを生成する発明が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００３−２９６３９２号公報
【特許文献２】特開２００１−２７３３３８号公報
【特許文献３】特開２００６−０３９６２１号公報
【特許文献４】特開２００７−１８８５１７号公報
【特許文献５】特開２０００−２４３８４６号公報
【特許文献６】特開２０００−２２３５７８号公報
【特許文献７】特開２０００−１７２７３８号公報
【特許文献８】特開２０００−１００９４８号公報
【特許文献９】特開２００１−２７３３３８号公報
【特許文献１０】特開２０００−２５９６８６号公報
【特許文献１１】特開２０００−３０５９６６号公報
【特許文献１２】特開２０００−２５０９５０号公報
【特許文献１３】特開２００８−９７８７号公報
【特許文献１４】特開２００５−２３５３４号公報
【特許文献１５】特開２０００−２４３８４６公報
【特許文献１６】特開２０００−２２３５７８号公報
【特許文献１７】特開２０００−１７２７３８号公報
【特許文献１８】特開２０００−１００９４８号公報
【特許文献１９】特開２００１−２７３３３８号公報
【特許文献２０】特開２０００−２５９６８６号公報
【特許文献２１】特開２０００−３０５９６６号公報
【特許文献２２】特開２０００−２５０９５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
マクロを処理する場合、チップ全面に分配されたクロックパスからマクロ内にある部分のクロックパスを切り出して処理を行うクロック分配手法では、図１３に示すように、マクロの外の回路（クロックパスを含む）を遅延解析ツール内では認識できないため、マクロ境界パス（ＵＮＩＴ境界パス）を遅延解析することができなかった（マクロ境界パスはチップ処理に行くまで解析できない）。
【００１０】
この結果、チップ処理時にマクロ境界のパスが遅延エラーすることを避けるために、マクロ処理では必要以上に大きな設計マージンを考慮することになる、という課題があった。また、図１４に示すように、マクロ境界のパスが遅延エラーした場合の後戻りが大きいことも課題だった。
【００１１】
また、特許文献１に開示の発明は、トップネットリストと下位下層ネットリスト（マクロネットリスト）をマージする旨の記載はあるものの、マクロ境界パスを含むチップ全体のネットリストを生成するものであり、本発明とは目的が異なる。さらに、特許文献１に開示の発明は、下位階層については概略配線処理を施しただけであり、実遅延値とは異なる遅延値を得ることしかできない。
【００１２】
（発明の目的）
本発明の目的は、上述の課題を解決し、マクロ遅延解析においてマクロ境界パスの高精度な遅延解析を可能にするマクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラムを提供することである。
【課題を解決するための手段】
【００１３】
本発明の第１のマクロ遅延解析装置は、下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、レイアウト後トップネットリストからマクロ内部の回路を切り出したレイアウト後マクロネットリストとをマージして、マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージ手段と、マージ後マクロネットリストを用いて、マクロ境界パスの遅延を解析する遅延解析手段とを備える。
【００１４】
本発明の第１のマクロ境界パスの遅延解析方法は、マクロ遅延解析装置によるマクロ境界パスの遅延解析方法であって、ネットリストマージ手段が、下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、レイアウト後トップネットリストからマクロ内部の回路を切り出したレイアウト後マクロネットリストとをマージして、マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージステップを実行し、遅延解析手段が、マージ後マクロネットリストを用いて、マクロ境界パスの遅延を解析する遅延解析ステップを実行する。
【００１５】
本発明の第１のマクロ境界パスの遅延解析プログラムは、マクロ遅延解析装置を構成するコンピュータ上で動作するマクロ境界パスの遅延解析プログラムであって、ネットリストマージ手段に、下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、レイアウト後トップネットリストからマクロ内部の回路を切り出したレイアウト後マクロネットリストとをマージして、マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージ処理を実行させ、遅延解析手段に、マージ後マクロネットリストを用いて、マクロ境界パスの遅延を解析する遅延解析処理を実行させる。
【発明の効果】
【００１６】
本発明によれば、マクロ遅延解析においてマクロ境界パスの遅延解析を可能にすることができ、これにより、設計の後戻りを小さくするとともに過剰な設計マージンを省き、最適なＬＳＩ設計に寄与することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施の形態に係るマクロ遅延解析装置の構成を示すブロック図である。
【図２】本発明の第１の実施の形態に係るブローバルクロック分配後トップネットリストの構成例を示す図である。
【図３】本発明の第１の実施の形態に係るマクロ遅延解析装置の動作を示すフローチャートである。
【図４】本発明の第１の実施の形態に係るレイアウト後マクロネットリストの構成例を示す図である。
【図５】本発明の第１の実施の形態に係る、クロックツリー末端ドライバより前のクロックパスの記述を削除したレイアウト後マクロネットリストの構成例を示す図である。
【図６】本発明の第１の実施の形態に係る、マクロに関わるクロックパスの構成例を示す図である。
【図７】本発明の第１の実施の形態に係るマクロ境界パスの構成例を示す図である。
【図８】本発明の第１の実施の形態に係るマージ後マクロネットリストの構成例を示す図である。
【図９】本発明のマクロ遅延解析装置の最小限の構成を示すブロック図である。
【図１０】本発明のマクロ遅延解析装置のハードウェア構成例を示すブロック図である。
【図１１】背景技術に係る階層設計のクロック分配の手法の例を示す図である。
【図１２】背景技術に係る階層設計のクロック分配の手法の例を示す図である。
【図１３】背景技術に係る階層設計のクロック分配の手法の課題を示す図である。
【図１４】背景技術に係る階層設計のクロック分配の手法の課題を示す図である。
【発明を実施するための形態】
【００１８】
本発明の上記及び他の目的、特徴及び利点を明確にすべく、添付した図面を参照しながら、本発明の実施形態を以下に詳述する。なお、上述の本願発明の目的のほか、他の技術的課題、その技術的課題を解決する手段及びその作用効果についても、以下の実施形態による開示によって明らかとなるものである。なお、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１９】
（第１の実施の形態）
本発明の第１の実施の形態について図面を参照して詳細に説明する。なお、本説明で使用しているクロック分配手法［Ｈ−Ｔｒｅｅ］は一例である。
【００２０】
図１は、本発明の第１の実施の形態に係るマクロ遅延解析装置１００の構成を示すブロック図である。マクロ遅延解析装置１００が、本発明の半導体集積回路の遅延解析方法の実行主体となる。
【００２１】
図１を参照すると、マクロ遅延解析装置１００は、ハードディスク等の記憶装置１０と、プログラム制御により動作するデータ処理装置２０とを備える。記憶装置１０は、マクロ遅延解析装置１００の外部に備える構成としても良い。
【００２２】
記憶装置１０は、トップネットリスト１１と、セルライブラリ１８と、遅延制約情報１ａとを予め格納する。また、記憶装置１０は、データ処理装置２０からの出力情報として、グローバルクロック分配後ネットリスト１２と、レイアウト後トップネットリスト１３と、トップ遅延時間情報１４と、マクロネットリスト１５と、レイアウト後マクロネットリスト１６と、マージ後マクロネットリスト１７と、マクロ内回路遅延時間情報１９と、遅延解析情報１ｂとを格納するためのエリアを含む。
【００２３】
トップネットリスト１１は、下位階層をマクロとして、マクロ、ＩＰ配置（フロアプラン）、及び、プリミティブセルの配置完了後、レイアウトツールから出力されたネットリストであり、記憶装置１０が予め記憶している。
【００２４】
セルライブラリ１８は、フリップフロップ（ＦＦ）やクロックドライバの各セルにおける、入力端子から出力端子への遅延時間や、入力端子に入力されるデータ信号に対するクロック信号のセットアップ時間やホールド時間などを予め記憶している。セルライブラリの詳細については、特許文献２でセルライブラリ、特許文献３でタイミング制約ライブラリとして説明されている。
【００２５】
遅延制約情報１ａは、半導体集積回路を動作させるための制約情報となる基本クロック周期（或いは基本クロック周波数）、入力ピン外部の遅延時間、出力ピン外部の要求遅延時間、遅延制約例外パス（フォールス・パス，マルチサイクル・パス）などの情報であり、記憶装置１０が予め記憶している。
【００２６】
グローバルクロック分配後トップネットリスト１２には、トップネットリスト１１のチップ全面にクロックパスが分配されたネットリストが出力される（図２）。
【００２７】
レイアウト後トップネットリスト１３には、グローバルクロック分配後トップネットリスト１２にレイアウト処理を行ったネットリストが出力される。
【００２８】
トップ遅延時間情報１４には、グローバルクロックパスを含むトップ回路の、ネットワーク毎の配線遅延やゲート遅延が出力される。
【００２９】
マクロネットリスト１５には、レイアウト後トップネットリスト１３から、マクロ内部の回路を切り出したネットリストが出力される。
【００３０】
レイアウト後マクロネットリスト１６には、マクロネットリスト１５にレイアウト処理を行ったネットリストが出力される。
【００３１】
マージ後マクロネットリスト１７には、レイアウト後トップネットリスト１３から抜き出された、対象マクロに関係するクロックパス記述とマクロ境界パス記述を、レイアウト後マクロネットリスト１６にマージした、マクロ外クロックパスとマクロ境界パス込みのネットリストが出力される。
【００３２】
マクロ内回路遅延時間情報１９には、マクロ内回路のネットワーク毎の配線遅延やゲート遅延が出力される。
【００３３】
遅延解析情報１ｂには、遅延制約を満たしているかのチェックを行うことにより得られた、遅延制約経路違反や違反値毎の度数分布統計情報が出力される。
【００３４】
データ処理装置２０は、グローバルクロック分配手段２１と、レイアウト手段２２と、遅延時間算出手段２３と、マクロ切り出し手段２４と、レイアウト手段２５と、ネットリストマージ手段２６と、遅延時間算出手段２７と、遅延解析手段２８と、を備える。
【００３５】
グローバルクロック分配手段２１は、トップネットリスト１１を入力し、チップ前面にクロックパスを分配して、グローバルクロック分配後トップネットリスト１２を出力する。このとき、クロックパスの遅延が後続レイアウトで大きく変化しないように、シールド配線や隣接禁止配線を行うのが一般的である。
【００３６】
レイアウト手段２２は、グローバルクロック分配後トップネットリスト１２を入力し、レイアウト処理を行って、レイアウト後トップネットリスト１３を出力する。該レイアウト処理は、グローバルクロック分配の先のクロックツリー末端ドライバとトップ直下のＦＦやＩＰを接続する処理を含む。
【００３７】
遅延時間算出手段２３は、レイアウト後トップネットリスト１３を入力し、セルライブラリ１８を参照してＲＣシミュレーションによる遅延計算を行い、トップ遅延時間情報１４を出力する。
【００３８】
マクロ切り出し手段２４は、レイアウト後トップネットリスト１３を入力し、マクロ内部の回路を切り出したマクロネットリスト１５を出力する。
【００３９】
レイアウト手段２５は、マクロネットリスト１５を入力し、レイアウト処理を行って、レイアウト後マクロネットリスト１６を出力する。該レイアウト処理は、グローバルクロック分配の先のクロックツリー末端ドライバとマクロ内のＦＦを接続する処理を含む。
【００４０】
ネットリストマージ手段２６は、レイアウト後トップネットリスト１３及びレイアウト後マクロネットリスト１６を入力し、レイアウト後トップネットリスト１３から対象マクロに関係するクロックパス記述とマクロ境界パス記述を抜き出し、該抜き出した記述をレイアウト後マクロネットリスト１６にマージして、マージ後マクロネットリスト１７を出力する。
【００４１】
遅延時間算出手段２７は、マージ後マクロネットリスト１７を入力し、セルライブラリ１８を参照してＲＣシミュレーションによる遅延計算を行い、マクロ内回路遅延時間情報１９を出力する。
【００４２】
遅延解析手段２８は、トップ遅延時間情報１４と、マクロ内回路遅延時間情報１９と、遅延制約情報１ａとを参照して、マージ後マクロネットリスト１７に遅延時間情報を割り当てる。遅延解析手段２８は、マクロ外クロックパスとマクロ境界パスのマクロ外の回路部分については、トップ遅延時間情報１４から必要な遅延時間情報を割り当て、マクロ内の回路については、マクロ内遅延時間情報１９からマクロ内回路の遅延時間情報を割り当てる。
【００４３】
また、遅延解析手段２８は、これらの遅延時間情報を元に、信号パスの遅延時間の算出、クロックスパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、遅延解析情報１ｂを出力する。
【００４４】
前記のクロックスキューの算出では、マージ後マクロネットリスト１７から各パスの始終点のクロックパス共通部分の情報を得て、ＣＲＰＲを考慮した過剰マージンの無い高精度なクロックスキューが算出される。
【００４５】
前記のクロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックでは、この高精度なクロックスキューを使用して、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックが行われる。
【００４６】
ＣＲＰＲについては、特許文献４で、共通部分のばらつきの除去として説明されている。
【００４７】
（第１の実施の形態の動作の説明）
次に、本実施の形態によるマクロ遅延解析装置１００の動作について、図面を参照して詳細に説明する。
【００４８】
まず、マクロ境界パスを含むマクロの遅延解析が行われる過程を、図３のステップＳ１１からステップＳ１９に区分して説明する。
【００４９】
ステップＳ１１：グローバルクロック分配手段２１に、トップネットリスト１１が入力される。グローバルクロック分配手段２１は、一般的なトップ処理のクロック分配で行われるようなマクロ境界までのクロック分配ではなく、マクロ内部の領域も含めたチップ全面へクロックを分配し（図２）、グローバルクロック分配後トップネットリスト１２を出力する。
【００５０】
ステップＳ１２：レイアウト手段２２に、グローバルクロック分配後トップネットリスト１２が入力される。レイアウト手段２２は、レイアウト処理を行い、レイアウト後トップネットリスト１３を出力する。この処理の中で、クロックツリー末端ドライバからトップ直下の各ＦＦ、ＩＰのクロック入力端子までのクロックパスを接続する処理が行われる。クロックツリー末端ドライバから各ＦＦ、ＩＰのクロック入力端子までのクロックパスを接続する処理は、特許文献５などを参照することで実現できる。その他のレイアウト処理の詳細については、特許文献６、特許文献７、特許文献８などを参照することで実現できる。
【００５１】
ステップＳ１３：遅延時間算出手段２３に、レイアウト後トップネットリスト１３が入力される。遅延時間算出手段２３は、セルライブラリ１８を参照してＲＣシミュレーションによる遅延計算を行い、トップ遅延時間情報１４を出力する。遅延時間算出手段２３を含むステップＳ１３の詳細については、特許文献９、特許文献１０、特許文献１１、特許文献１２などを参照することで実現できる。
【００５２】
ステップＳ１４：マクロ切り出し手段２４に、レイアウト後トップネットリスト１３が入力される。マクロ切り出し手段２４は、マクロ内部の回路を切り出したマクロネットリスト１５を出力する（図１２）。ステップＳ１１でチップ全面へのクロック分配が行われ、物理的にクロックパスが分配されているので、そのクロックパスとマクロ境界の交差点にマクロの外部クロック端子を発生させて、そのマクロの外部クロック端子を含むマクロが切り出される。クロック端子の切り出し処理以外の処理については、特許文献１３、特許文献１４などを参照することで実現できる。
【００５３】
ステップＳ１５：レイアウト手段２５に、マクロネットリスト１５が入力される。レイアウト手段２５は、レイアウト処理を行い、レイアウト後マクロネットリスト１６を出力する。この処理の中で、クロックツリー末端ドライバからマクロ内の各ＦＦのクロック入力端子までのクロックパスを接続する処理が行われる。この処理で、クロックソースからのクロックがＦＦまで完全に分配されたことになる。クロックツリー末端ドライバから各ＦＦのクロック入力端子までのクロックパスを接続する処理は、特許文献１５などを参照することで実現できる。その他のレイアウト処理の詳細については、特許文献１６、特許文献１７、特許文献１８などを参照することで実現できる。
【００５４】
ステップＳ１６：ネットリストマージ手段２６に、レイアウト後マクロネットリスト１６、レイアウト後トップネットリスト１３が入力され、ネットリストマージ手段２６は、ネットリストマージ処理を行う。ステップＳ１６については、ステップＳ１６−１〜Ｓ１６−４に区分して、図４〜図８を参照しながら具体的な処理を説明する。
【００５５】
図４に、遅延解析対象マクロｂのレイアウト後マクロネットリスト１６を示す。マクロｂは、図４に記載されているように、セル５１ａ〜５１ｈ、５２ａ〜５２ｇ、５３ａ〜５３ｆ、外部クロック端子５４ａ〜５４ｃ、外部端子５４ｄ〜５４ｆ、クロック配線分岐点５５ａ、一般信号配線５６ａを含む。
【００５６】
セル５１ａ〜セル５１ｈは、グローバルクロックドライバである。セル５２ａ〜セル５２ｇはローカルクロックドライバである。セル５３ａ〜セル５３ｄはフリップフロップ（ＦＦ）である。マクロｂはこれらの要素が図４のように組み合わされた回路である。
【００５７】
ステップＳ１６−１：マクロｂのレイアウト後マクロネットリスト１６から、クロックツリー末端ドライバより前のクロックパスの記述（セル・ネット・入力端子）を削除する。つまり、マクロｂのセル５１ａ〜５１ｈ、５２ａ〜５２ｃ、外部クロック端子５４ａ〜５４ｃと、それに繋がっているクロックツリー末端ドライバ５２ｄ〜５２ｇより前のクロックネット、外部端子５４ｄ〜５４ｆを削除して、図５の右図のような状態のネットリストにする。
【００５８】
ステップＳ１６−２：レイアウト後トップネットリスト１３から、マクロｂに関わる、ＰＬＬからクロックツリー末端ドライバ手前までのクロックパスの記述をコピーしてくる。具体的な処理としては、レイアウト後マクロネットリスト１６に含まれるクロックツリー末端ドライバの名前を起点として、グローバルクロック分配後トップネットリスト１２をＰＬＬに向かってトレースしていく。クロックツリー末端ドライバからその手前の入力ネットをトレースし、入力ネットからその手前のドライバをトレースし、ドライバからその手前の入力ネットをトレースし、とトレースを繰り返していき、ＰＬＬまでたどり着いたところでＰＬＬからクロックツリー末端ドライバ手前までのクロックパスの記述を確定させてコピーする。これをクロックツリー末端ドライバの数分繰り返す。こうして、マクロｂに関わるクロックパスが得られる（図６）。
【００５９】
ステップＳ１６−３：レイアウト後トップネットリスト１３から、マクロｂに関係するマクロ境界パスの記述をコピーしてくる。具体的な処理としては、レイアウト後マクロネットリスト１６に含まれる外部端子名を起点として、レイアウト後トップネットリスト１３をマクロの外側に向かってトレースしていく。マクロの外部端子からその先のネットをトレースし、そのネットからその先のセルをトレースし、そのセルからその先のネットをトレースし、とトレースを繰り返していき、タイミングパスの始点（ＦＦまたはＩＰのクロックピン）、または終点（ＦＦまたはＩＰのデータピン）までたどり着いたところで始点／終点からマクロ外部端子までのマクロ境界パスの記述を確定させてコピーする。これをマクロの外部端子の数分繰り返す。こうして、マクロｂに関わるマクロ境界パスが得られる（図７）。
【００６０】
ステップＳ１６−４：ステップＳ１６−１で作成した、クロックツリー末端ドライバより前のクロックパスの記述を削除したネットリストに、ステップＳ１６−２で作成したマクロｂに関係するクロックパスの記述と、ステップＳ１６−３で作成したマクロｂに関係するマクロ境界パスの記述をマージして、図８に示すマージ後マクロネットリスト１７を作成する。
【００６１】
ステップＳ１７：遅延時間算出手段２７に、マージ後マクロネットリスト１７が入力される。遅延時間算出手段２７は、セルライブラリ１８を参照してＲＣシミュレーションによる遅延計算を行い、マクロ内回路遅延時間情報１９を出力する。遅延時間算出手段２７を含むステップＳ１６の詳細については、特許文献１９、特許文献２０、特許文献２１、特許文献２２などを参照することで実現できる。
【００６２】
ステップＳ１８：遅延解析手段２８に、マージ後マクロネットリスト１７と、トップ遅延時間情報１４が入力される。遅延解析手段２８は、マージ後マクロネットリスト１７に、マクロ外クロックパスとマクロ境界パスの遅延時間情報を割り当てる。さらに、遅延解析手段２８には、ステップＳ１７で得られたマクロｂのマクロ内回路遅延時間情報が入力され、遅延解析手段２８は、マージ後マクロネットリスト１７に、マクロｂ内のネットワーク毎の配線遅延時間情報やゲート遅延時間情報を割り当てる。
【００６３】
ステップＳ１９：ステップＳ１９では、遅延解析手段２８に、遅延制約情報１ａが入力され、遅延解析手段２８は、ステップＳ１８で得られた、遅延時間情報が割り当てられた該マージ後マクロネットリスト１７と、遅延制約情報１ａを元に、マクロ境界パスを含む遅延解析を行い、遅延解析情報１０を出力する。遅延時間情報が割り当てられた該マージ後マクロネットリスト１７を用いることで、マクロ境界パスの遅延解析を行うことができる。また、マクロ外のクロックパスも認識できるので、ＣＲＰＲを考慮した過剰マージンの無い高精度なクロックスキューの算出が可能になり、このクロックスキューを使用して遅延解析を行うことができる。マクロｂの遅延解析は終了する。
【００６４】
（第１の実施の形態による効果）
続いて、本発明の効果について述べる。
【００６５】
背景技術によるマクロの遅延解析方法では、マクロの回路が図１２の右図のようにマクロ境界の外側（点線部）は見えなかったため、マクロ内部のＦＦからマクロ外部のＦＦやＩＰへのパスを認識できず、遅延解析することができなかった。このため、図１４の左のように、チップ処理時にマクロ境界のパスが遅延エラーすることを避けるために、マクロ処理では必要以上に大きな設計マージンを考慮することになる、という課題があった。また、マクロ境界のパスが遅延エラーした場合の後戻りが大きいことも課題だった。
【００６６】
マクロ遅延解析時に、レイアウト後トップネットリストからマクロ外クロックパスとマクロ境界パスの記述をコピーしてきて、マクロ遅延解析に使用していたネットリストとマージし、そのマージしたネットリストとトップ遅延時間情報を遅延解析ツールに入力し、図８のようにマクロ外のクロックパスとマクロ境界パスを遅延解析ツールに認識させることで、背景技術のマクロ遅延解析では考慮できなかったマクロ境界パスを、過剰マージンの無い高精度なクロックスキューで遅延解析することが可能になる。これにより、過剰な設計マージンを省き、最適なＬＳＩ設計に寄与する。また、マクロ境界パスの遅延エラーを早期に発見し、設計の後戻りを小さくして設計期間を短縮できる（図１４の右）。
【００６７】
また、クロック分配をトップ処理の時点でチップ全面に対して行い、マクロ処理ではチップ全面に分配されたクロックパスからマクロ内に存在する部分のクロックパスを切り出して処理を行い、マクロ処理でのクロック分配はクロックツリー末端ドライバとマクロ内のＦＦを繋げるのみにする、というクロック分配手法を使用することにより、チップ全体のクロックツリーの段数が最適化され、クロックスキューを小さくすることができる。
【００６８】
なお、本発明の課題を解決できる最小限の構成を図９に示す。マクロ遅延解析装置１００が、下位階層をマクロとしたトップネットリスト１１にクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリスト１３と、レイアウト後トップネットリスト１３からマクロ内部の回路を切り出したレイアウ後トマクロネットリスト１６とをマージして、マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリスト１７を生成するネットリストマージ手段２６と、マージ後マクロネットリスト１７を用いて、マクロ境界パスの遅延を解析する遅延解析手段２８とを備えることで、上述した本発明の課題を解決することができる。
【００６９】
次に、本発明のマクロ遅延解析装置１００のハードウェア構成例について、図１０を参照して説明する。図１０は、本発明のマクロ遅延解析装置１００のハードウェア構成例を示すブロック図である。
【００７０】
図１０を参照すると、本発明のマクロ遅延解析装置１００は、一般的なコンピュータ装置と同様のハードウェア構成であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部３２、ネットワークを介してデータの送受信を行う通信部３３、入力装置３５や出力装置３６及び記憶装置３７と接続してデータの送受信を行う入出力インタフェース部３４、上記各構成要素を相互に接続するシステムバス３８を備えている。記憶装置３７は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。
【００７１】
本発明のマクロ遅延解析装置１００の各機能は、プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置３７に格納し、そのプログラムを主記憶部３２にロードしてＣＰＵ３１で実行することにより、ソフトウェア的に実現することも可能である。
【００７２】
以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【００７３】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００７４】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【００７５】
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施する時には、その複数の手順の順番は内容的に支障しない範囲で変更することができる。
【００７６】
また、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【００７７】
さらに、上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、これに限定されない。
【００７８】
（付記１）
下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、前記レイアウト後トップネットリストからマクロ内部の回路を切り出したレイアウ後トマクロネットリストとをマージして、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージ手段と、
前記マージ後マクロネットリストを用いて、前記マクロ境界パスの遅延を解析する遅延解析手段と
を備えることを特徴とするマクロ遅延解析装置。
【００７９】
（付記２）
前記ネットリストマージ手段は、
前記レイアウト後トップネットリストから、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを抜き出し、当該抜き出した記述を、前記レイアウ後トマクロネットリストにトレースすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする付記１に記載のマクロ遅延解析装置。
【００８０】
（付記３）
前記ネットリストマージ手段は、
前記レイアウト後マクロネットリストから、クロックツリー末端ドライバより前のクロックパスの記述を削除し、
前記レイアウト後トップネットリストから、前記マクロに関する、ＰＬＬからクロックツリー末端ドライバ手前までのクロックパスの記述を抜き出して、前記レイアウト後マクロネットリストにトレースし、
前記レイアウト後トップネットリストから、前記マクロに関する前記マクロ境界パスの記述を抜き出して、前記レイアウト後マクロネットリストにトレースすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする付記１又は付記２に記載のマクロ遅延解析装置。
【００８１】
（付記４）
前記遅延解析手段は、
グローバルクロックパスを含むトップ回路の遅延時間情報に含まれる前記マクロ外クロックパス及び前記マクロ境界パスの遅延時間情報と、マクロ内回路の遅延時間情報とを、前記マージ後マクロネットリストに割り当て、
前記遅延時間情報が割り当てられた前記マージ後マクロネットリストと、半導体集積回路を動作させるための制約情報である遅延制約情報とに基づいて、前記マクロ境界パスの遅延解析を行う
ことを特徴とする付記１から付記３の何れか１項に記載のマクロ遅延解析装置。
【００８２】
（付記５）
セルライブラリを参照し、前記マージ後マクロネットリストについてＲＣシミュレーションによる遅延計算を行い、前記マクロ内回路の遅延時間情報を生成する遅延時間算出手段を備える
ことを特徴とする付記４に記載のマクロ遅延解析装置。
【００８３】
（付記６）
前記遅延解析手段は、
信号パスの遅延時間の算出、
クロックスパスの遅延時間の算出、
ＣＲＰＲを考慮したクロックスキューの算出、
クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェック
の少なくとも何れか１つを行うことを特徴とする付記１から付記５の何れか１項に記載のマクロ遅延解析装置。
【００８４】
（付記７）
前記ＣＲＰＲを考慮したクロックスキューの算出は、
前記マージ後マクロネットリストから各パスの始終点のクロックパス共通部分の情報を得て、ＣＲＰＲを考慮した過剰マージンの無い高精度なクロックスキューを算出する
ことを特徴とする付記６に記載のマクロ遅延解析装置。
【００８５】
（付記８）
前記のクロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックは、
前記ＣＲＰＲを考慮したクロックスキューを使用して行う
ことを特徴とする付記６又は付記７に記載のマクロ遅延解析装置。
【００８６】
（付記９）
前記レイアウト後トップネットリストのクロックパスとマクロ境界の交差点にマクロの外部クロック端子を発生させて、そのマクロの外部クロック端子を含むマクロを前記マクロネットリストとして切り出すマクロ切り出し手段と、
前記マクロネットリストにレイアウト処理を行って前記レイアウト後マクロネットリストを生成するレイアウト手段と
を備えることを特徴とする付記１から付記８の何れか１項に記載のマクロ遅延解析装置。
【００８７】
（付記１０）
マクロ遅延解析装置によるマクロ境界パスの遅延解析方法であって、
ネットリストマージ手段が、
下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、前記レイアウト後トップネットリストからマクロ内部の回路を切り出したレイアウ後トマクロネットリストとをマージして、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージステップを実行し、
遅延解析手段が、
前記マージ後マクロネットリストを用いて、前記マクロ境界パスの遅延を解析する遅延解析ステップを実行する
ことを特徴とするマクロ境界パスの遅延解析方法。
【００８８】
（付記１１）
前記ネットリストマージステップで、
前記レイアウト後トップネットリストから、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを抜き出し、当該抜き出した記述を、前記レイアウ後トマクロネットリストにトレースすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする付記１０に記載のマクロ境界パスの遅延解析方法。
【００８９】
（付記１２）
前記ネットリストマージステップで、
前記レイアウト後マクロネットリストから、クロックツリー末端ドライバより前のクロックパスの記述を削除し、
前記レイアウト後トップネットリストから、前記マクロに関する、ＰＬＬからクロックツリー末端ドライバ手前までのクロックパスの記述を抜き出して、前記レイアウト後マクロネットリストにトレースし、
前記レイアウト後トップネットリストから、前記マクロに関する前記マクロ境界パスの記述を抜き出して、前記レイアウト後マクロネットリストにトレースすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする付記１０又は付記１１に記載のマクロ境界パスの遅延解析方法。
【００９０】
（付記１３）
前記遅延解析ステップで、
グローバルクロックパスを含むトップ回路の遅延時間情報に含まれる前記マクロ外クロックパス及び前記マクロ境界パスの遅延時間情報と、マクロ内回路の遅延時間情報とを、前記マージ後マクロネットリストに割り当て、
前記遅延時間情報が割り当てられた前記マージ後マクロネットリストと、半導体集積回路を動作させるための制約情報である遅延制約情報とに基づいて、前記マクロ境界パスの遅延解析を行う
ことを特徴とする付記１０から付記１２の何れか１項に記載のマクロ境界パスの遅延解析方法。
【００９１】
（付記１４）
遅延時間算出手段が、
セルライブラリを参照し、前記マージ後マクロネットリストについてＲＣシミュレーションによる遅延計算を行い、前記マクロ内回路の遅延時間情報を生成する遅延時間算出ステップを実行する
ことを特徴とする付記１３に記載のマクロ境界パスの遅延解析方法。
【００９２】
（付記１５）
前記遅延解析ステップで、
信号パスの遅延時間の算出、
クロックスパスの遅延時間の算出、
ＣＲＰＲを考慮したクロックスキューの算出、
クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェック
の少なくとも何れか１つを行うことを特徴とする付記１０から付記１４の何れか１項に記載のマクロ境界パスの遅延解析方法。
【００９３】
（付記１６）
前記ＣＲＰＲを考慮したクロックスキューの算出は、
前記マージ後マクロネットリストから各パスの始終点のクロックパス共通部分の情報を得て、ＣＲＰＲを考慮した過剰マージンの無い高精度なクロックスキューを算出する
ことを特徴とする付記１５に記載のマクロ境界パスの遅延解析方法。
【００９４】
（付記１７）
前記のクロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックは、
前記ＣＲＰＲを考慮したクロックスキューを使用して行う
ことを特徴とする付記１５又は付記１６に記載のマクロ境界パスの遅延解析方法。
【００９５】
（付記１８）
マクロ切り出し手段が、
前記レイアウト後トップネットリストのクロックパスとマクロ境界の交差点にマクロの外部クロック端子を発生させて、そのマクロの外部クロック端子を含むマクロを前記マクロネットリストとして切り出すマクロ切り出しステップを実行し、
レイアウト手段が、
前記マクロネットリストにレイアウト処理を行って前記レイアウト後マクロネットリストを生成するレイアウトステップを実行する
ことを特徴とする付記１０から付記１７の何れか１項に記載のマクロ境界パスの遅延解析方法。
【００９６】
（付記１９）
マクロ遅延解析装置を構成するコンピュータ上で動作するマクロ境界パスの遅延解析プログラムであって、
ネットリストマージ手段に、
下位階層をマクロとしたトップネットリストにクロックパスの分配とレイアウト処理を行ったレイアウト後トップネットリストと、前記レイアウト後トップネットリストからマクロ内部の回路を切り出したレイアウ後トマクロネットリストとをマージして、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを含むマージ後マクロネットリストを生成するネットリストマージ処理を実行させ、
遅延解析手段に、
前記マージ後マクロネットリストを用いて、前記マクロ境界パスの遅延を解析する遅延解析処理を実行させる
ことを特徴とするマクロ境界パスの遅延解析プログラム。
【００９７】
（付記２０）
前記ネットリストマージ処理で、
前記レイアウト後トップネットリストから、前記マクロに関するクロックパスであるマクロ外クロックパスの記述と、マクロ境界パスの記述とを抜き出し、当該抜き出した記述を、前記レイアウ後トマクロネットリストにトレースすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする付記１９に記載のマクロ境界パスの遅延解析プログラム。
【００９８】
（付記２１）
前記ネットリストマージ処理で、
前記レイアウト後マクロネットリストから、クロックツリー末端ドライバより前のクロックパスの記述を削除し、
前記レイアウト後トップネットリストから、前記マクロに関する、ＰＬＬからクロックツリー末端ドライバ手前までのクロックパスの記述を抜き出して、前記レイアウト後マクロネットリストにトレースし、
前記レイアウト後トップネットリストから、前記マクロに関する前記マクロ境界パスの記述を抜き出して、前記レイアウト後マクロネットリストにトレースすることで、前記マージ後マクロネットリストを生成する
ことを特徴とする付記１９又は付記２０に記載のマクロ境界パスの遅延解析プログラム。
【００９９】
（付記２２）
前記遅延解析処理で、
グローバルクロックパスを含むトップ回路の遅延時間情報に含まれる前記マクロ外クロックパス及び前記マクロ境界パスの遅延時間情報と、マクロ内回路の遅延時間情報とを、前記マージ後マクロネットリストに割り当て、
前記遅延時間情報が割り当てられた前記マージ後マクロネットリストと、半導体集積回路を動作させるための制約情報である遅延制約情報とに基づいて、前記マクロ境界パスの遅延解析を行う
ことを特徴とする付記１９から付記２１の何れか１項に記載のマクロ境界パスの遅延解析プログラム。
【０１００】
（付記２３）
遅延時間算出手段に、
セルライブラリを参照し、前記マージ後マクロネットリストについてＲＣシミュレーションによる遅延計算を行い、前記マクロ内回路の遅延時間情報を生成する遅延時間算出処理を実行させる
ことを特徴とする付記２２に記載のマクロ境界パスの遅延解析プログラム。
【０１０１】
（付記２４）
前記遅延解析処理で、
信号パスの遅延時間の算出、
クロックスパスの遅延時間の算出、
ＣＲＰＲを考慮したクロックスキューの算出、
クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェック
の少なくとも何れか１つを行うことを特徴とする付記１９から付記２３の何れか１項に記載のマクロ境界パスの遅延解析プログラム。
【０１０２】
（付記２５）
前記ＣＲＰＲを考慮したクロックスキューの算出は、
前記マージ後マクロネットリストから各パスの始終点のクロックパス共通部分の情報を得て、ＣＲＰＲを考慮した過剰マージンの無い高精度なクロックスキューを算出する
ことを特徴とする付記２４に記載のマクロ境界パスの遅延解析プログラム。
【０１０３】
（付記２６）
前記のクロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックは、
前記ＣＲＰＲを考慮したクロックスキューを使用して行う
ことを特徴とする付記２４又は付記２５に記載のマクロ境界パスの遅延解析プログラム。
【０１０４】
（付記２７）
マクロ切り出し手段に、
前記レイアウト後トップネットリストのクロックパスとマクロ境界の交差点にマクロの外部クロック端子を発生させて、そのマクロの外部クロック端子を含むマクロを前記マクロネットリストとして切り出すマクロ切り出し処理を実行させ、
レイアウト手段に、
前記マクロネットリストにレイアウト処理を行って前記レイアウト後マクロネットリストを生成するレイアウト処理を実行させる
ことを特徴とする付記１９から付記２６の何れか１項に記載のマクロ境界パスの遅延解析プログラム。
【符号の説明】
【０１０５】
１００：マクロ遅延解析装置
１ａ：遅延成約情報
１ｂ：遅延解析情報
１０：記憶装置
１１：トップネットリスト
１２：グローバルクロック分配後トップネットリスト
１３：レイアウト後トップネットリスト
１４：トップ遅延時間情報
１５：マクロネットリスト
１６：レイアウト後マクロネットリスト
１７：マージ後マクロネットリスト
１８：セルライブラリ
１９：マクロ内回路遅延時間情報
２０：データ処理装置
２１：グローバルクロック分配手段
２２：レイアウト手段
２３：遅延時間算出手段
２４：マクロ切り出し手段
２５：レイアウト手段
２６：ネットリストマージ手段
２７：遅延時間算出手段
２８：遅延解析手段
３１：ＣＰＵ
３２：主記憶部
３３：通信部
３４：入出力インタフェース部
３５：入力装置
３６：出力装置
３７：記憶装置
３８：システムバス
【図１】
0005447547.tif 000002
【図２】
0005447547.tif 000003
【図３】
0005447547.tif 000004
【図４】
0005447547.tif 000005
【図５】
0005447547.tif 000006
【図６】
0005447547.tif 000007
【図７】
0005447547.tif 000008
【図８】
0005447547.tif 000009
【図９】
0005447547.tif 000010
【図１０】
0005447547.tif 000011
【図１１】
0005447547.tif 000012
【図１２】
0005447547.tif 000013
【図１３】
0005447547.tif 000014
【図１４】
0005447547.tif 000015