(57)【要約】【課題】実配線の遅延情報の見積もり精度を高く維持したまま短時間でタイミング解析を行なうことができるタイミング解析方法およびタイミング解析プログラムを提供する。【解決手段】各階層ブロックのＲＣ情報を抽出し（ステップＳ１１）、チップ全体から全ての階層ブロックを除いた部分のみを対象とするトップレベルのＲＣ情報を抽出し（ステップＳ１２）、チップ全体の遅延計算を行ない（ステップＳ１３）、各階層ブロックの境界モデルを生成し（ステップＳ１４）、遅延情報の中抜き（ステップＳ１５），タイミング制約の中抜き（ステップＳ１６）を行ない、解析対象のネットリストの生成（ステップＳ１７）を行なって、タイミング解析を実施し（ステップＳ１８）、全部の階層ブロックがトータルで漏れなくフラット展開されてタイミング解析されるようにする（ステップＳ１９）。【選択図】        図４
2004234193.tif 000002
【特許請求の範囲】
【請求項１】
複数の階層ブロックに分割してレイアウト処理を行なう階層レイアウトが行なわれた回路のタイミング解析を行なうタイミング解析方法において、
前記複数の階層ブロックのうちの少なくとも１つの階層ブロックについて該階層ブロックを最下層の回路に展開するフラット展開を行なうとともに、該少なくとも１つの階層ブロックを除く他の階層ブロックについて該階層ブロックの入力ポートから初段のフリップフロップまで、最終段のフリップフロップから該階層ブロックの出力ポートまで、および該階層ブロック内に延びるクロックラインのネットリストからなる境界モデルを作成して、これらフラット展開された階層ブロックと境界モデル化された階層ブロックとが混在した態様で行なうタイミング解析を、全体として前記複数の階層ブロック全てがフラット展開される複数の態様について実行することを特徴とするタイミング解析方法。
【請求項２】
前記複数の階層ブロックの全てについてフラット展開を行なって回路全体の遅延情報を求め、該遅延情報から前記境界モデルに不要な遅延情報を削除することを特徴とする請求項１記載のタイミング解析方法。
【請求項３】
回路全体のタイミング制約から前記境界モデルに不要なタイミング制約情報を削除することを特徴とする請求項１または２に記載のタイミング解析方法。
【請求項４】
前記タイミング解析を前記複数の態様について順次に実行することを特徴とする請求項１〜３に記載のタイミング解析方法。
【請求項５】
プログラムを実行するデータ処理装置内で実行され、該データ処理装置に、複数の階層ブロックに分割してレイアウト処理を行なう階層レイアウトが行なわれた回路のタイミング解析を行なわせるタイミング解析プログラムにおいて、
前記データ処理装置に、前記複数の階層ブロックのうちの少なくとも１つの階層ブロックについて該階層ブロックを最下層の回路に展開するフラット展開を行なうとともに、該少なくとも１つの階層ブロックを除く他の階層ブロックについて該階層ブロックの入力ポートから初段のフリップフロップまで、最終段のフリップフロップから該階層ブロックの出力ポートまで、および該階層ブロック内に延びるクロックラインのネットリストからなる境界モデルを作成して、これらフラット展開された階層ブロックと境界モデル化された階層ブロックとが混在した態様で行なうタイミング解析を、全体として前記複数の階層ブロック全てがフラット展開される複数の態様について実行させることを特徴とするタイミング解析プログラム。
【請求項６】
前記データ処理装置に、前記複数の階層ブロックの全てについてフラット展開を行なって回路全体の遅延情報を求めさせ、該遅延情報から前記境界モデルに不要な遅延情報を削除させることを特徴とする請求項５記載のタイミング解析プログラム。
【請求項７】
回路全体のタイミング制約から前記境界モデルに不要なタイミング制約情報を削除させることを特徴とする請求項５または６に記載のタイミング解析プログラム。
【請求項８】
前記データ処理装置に、前記タイミング解析を前記複数の態様について順次に実行させることを特徴とする請求項５〜７に記載のタイミング解析プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ上で、複数の階層ブロックに分割してレイアウト処理を行なう階層レイアウトが行なわれた回路のタイミング解析を行なうタイミング解析方法、およびデータ処理装置にローディングされてそのデータ処理装置に上記タイミング解析を行なわさせるタイミング解析プログラムに関する。
【０００２】
【従来の技術】
半導体集積回路の回路規模の増大に伴って、その半導体集積回路のチップを複数のブロックに分割してレイアウト処理を行なう階層レイアウト処理の設計手法が採用されるようになってきている。このような設計手法でレイアウトした結果の実配線遅延によるタイミング解析においても、チップ全体における回路を一度に取り扱うことは困難であり、このため以下のような階層的な処理が施される。
先ず、実配線の遅延情報に基づいて階層ブロックそれぞれでタイミング解析を実施する。次に、各階層ブロックをモデル化する。
【０００３】
図６は、階層ブロックをモデル化する様子を示した図である。
【０００４】
図６には、最下層の回路（ＡＮＤ，ＯＲ，フリップフロップ等のゲートレベルの回路）にまで展開した階層ブロック１００が示されている。この階層ブロック１００には、順序回路であるフリップフロップ１０１，１０２，１０３と、バッファ１０４と、順序回路以外の組合せ回路１０５，１０６，１０７，１０８，１０９とが備えられている。バッファ１０４にはクロック信号ＣＬＫが入力される。また、組合せ回路１０５，１０６にはデータ信号Ａ，Ｂが入力される。この階層ブロック１００では、入力されたクロック信号ＣＬＫおよびデータ信号Ａ，Ｂに基づいて所定の信号Ｘ，Ｙが出力される。
【０００５】
ここで、図６に示すように、階層ブロックにおけるネットリスト（組合せ回路１０６を構成する入力ポートから初段のフリップフロップ１０１まで、最終段のフリップフロップ１０３から組合せ回路１０９を構成する出力ポートまで、およびクロック信号ラインのネットリスト）と実配線ＲＣ情報（実配線における電気抵抗成分および電気容量成分を考慮した情報）を切り出してモデル化する（このモデルを便宜上「境界モデル」と呼ぶ）。このような「境界モデル」を用いて、半導体チップのネットリスト全体を対象とするトップレベルでタイミング解析を行なう。
【０００６】
図７は、境界モデルを用いてトップレベルでタイミング解析を行なう様子を示す図である。
【０００７】
図７には、半導体チップ全体のブロック２００を構成する各階層ブロックの境界モデルとして、２つの境界モデル２１０，２２０が示されている。ここでは、階層ブロックを切り出す（中抜きする）というモデル化を行なっているので、取り扱うデータは軽くなるが、各階層ブロック２１０，２２０の境界の情報はそのまま保持されているので、境界部分（入力ポートから初段フリップフロップまでと最終段フリップフロップから出力ポートまでの部分）の精度は保障される。トップレベルでのタイミング解析を行なう際に使用する遅延情報は、トップレベルのＲＣ情報と、階層ブロックについては中抜きした境界モデル２１０，２２０に対応するＲＣ情報を読み込んで計算することになる。このようなタイミング解析方法が、特許文献１に提案されている。
【０００８】
【特許文献１】
特開２０００−７６３２１号公報
【０００９】
【発明が解決しようとする課題】
階層ブロックのタイミング解析を行なう場合、そこで使用されるタイミング制約は、半導体チップ全体であるフルチップのタイミング制約からタイミングバジェットという処理で生成される。一般に半導体回路の動作モードは複数あり、タイミング制約も複数の動作モードに対応して複数存在する。このため、複数のタイミング制約の分だけタイミングバジェットという処理を行なって、各階層ブロックのタイミング制約を生成する必要がある。ここで、タイミング制約とは、クロック定義（クロック信号が生成される場所やクロック信号の波形等の定義），入力側の遅延，出力側の遅延の制約をいい、このタイミング制約によって、入力から初段フリップフロップまで、内部のフリップフロップ間、最終段のフリップフロップから出力までに制約をかけ、その後のタイミング解析でこれらの制約に対して違反がないか否かのチェックを行なう。また、タイミング制約として例外的に見なくて良いパス（対象としないパス）をフォールスパス（ｆａｌｓｅ  ｐａｔｈ）として指定したり、１周期で動作させる必要のないパスをマルチサイクルパス（ｍｕｌｔｉ  ｃｙｃｌｅ  ｐａｔｈ）として指定したりする。
【００１０】
図８は、タイミングバジェットの処理を説明するための図である。
【００１１】
図８には、半導体チップ全体のブロック３００が示されている。このブロック３００は、階層ブロック３１０，３２０を有する。この図８に示すように、階層ブロック３１０，３２０について、それぞれ、遅延時間として何ｎｓを目標にするか、即ち（クロックの１周期−トップの遅延時間）を両者に割り当てる。ここで、トップの遅延時間とは、ブロック３１０の出力ポートからブロック３２０の入力ポートまでの遅延時間を意味している。また、階層ブロックのクロックポートを見つけクロック定義を再度行なったりする。
【００１２】
図９は、ある階層ブロックを示す図である。
【００１３】
図９には、フリップフロップ３３１，３３２，３３３と、バッファ３３４と、組合せ回路３３５，３３６，３３７，３３８とが備えられた階層ブロック３３０が示されている。各階層ブロックのタイミング解析で使用される遅延時間の計算を行なう際、例えばこの階層ブロック３３０の境界の入力ポートの信号の鈍りと出力ポートの負荷を正しく設定する必要がある。また、クロック信号ＣＬＫのラインの入力鈍りを正しく設定しないと、この階層ブロック３３０のタイミング解析でしか検証できないパスＰ１，Ｐ２におけるブロック内部のフリップフロップ３３１，３３２，３３３間に関わるクロック信号ＣＬＫの鈍りや伝播遅延が不正確になる。階層ブロック３３０のクロックポートの鈍りを正しく見積もるには先にトップレベルの配線を確定させ、トップのクロック元から階層ブロック３３０までの経路で鈍りを求める計算を行なって、ブロック境界のクロックポートでの鈍りを求め、これを階層ブロック３３０での遅延計算の際に用いる必要が出てくる。このような処理は煩雑であり、階層ブロック３３０のクロックポートはプリミティブセル（予め配線パターンが定められて特性も既知のセル）間の配線の途中のポイントであるので、この配線が長いと鈍り精度、即ち遅延時間の見積もり精度も低下するという問題がある。
【００１４】
本発明は、上記事情に鑑み、実配線の遅延情報の見積もり精度を高く維持したまま短時間で回路全体のタイミング解析を行なうことができるタイミング解析方法およびタイミング解析プログラムを提供することを目的とする。
【００１５】
【課題を解決するための手段】
上記目的を達成する本発明のタイミング解析方法は、複数の階層ブロックに分割してレイアウト処理を行なう階層レイアウトが行なわれた回路のタイミング解析を行なうタイミング解析方法において、
上記複数の階層ブロックのうちの少なくとも１つの階層ブロックについてその階層ブロックを最下層の回路に展開するフラット展開を行なうとともに、その少なくとも１つの階層ブロックを除く他の階層ブロックについてその階層ブロックの入力ポートから初段のフリップフロップまで、最終段のフリップフロップからその階層ブロックの出力ポートまで、およびその階層ブロック内に延びるクロックラインのネットリストからなる境界モデルを作成して、これらフラット展開された階層ブロックと境界モデル化された階層ブロックとが混在した態様で行なうタイミング解析を、全体として上記複数の階層ブロック全てがフラット展開される複数の態様について実行することを特徴とする。
【００１６】
ここで、上記複数の階層ブロックの全てについてフラット展開を行なって回路全体の遅延情報を求め、その遅延情報から上記境界モデルに不要な遅延情報を削除して、上記タイミング解析で使用する遅延情報を生成することが好ましい。
【００１７】
また、回路全体のタイミング制約から上記境界モデルに不要なタイミング制約部分を削除して、上記タイミング解析で使用するタイミング制約を生成することが好ましい。
【００１８】
さらに、上記タイミング解析を上記複数の態様について順次に実行することも好ましい。
【００１９】
ここで、本発明における最下層の回路について説明する。本発明における最下層の回路は、予め配線パターンが定められて特性も既知のプリミティブセル（ゲートやフリップフロップ等のレベル）を指すだけでなく、同じく予め配線パターンが定められて特性も既知のハードマクロ等も含むものである。すなわち、セルライブラリに登録されており、特性も既知であるセルやマクロについては、これをより下位の階層に展開してタイミング解析を行う必要がないからである。
【００２０】
しかし、ハードマクロ等を用いず、全く新規な大規模チップの設計を行う場合には、全ての階層ブロックの設計はプリミティブセルレベルを最下層の回路として設計される。
【００２１】
実配線の遅延情報の見積もり精度は、最下層の回路に展開するフラット展開を行なった段階におけるものが一番高い。ただし、大規模な回路構成のものに対してフラット展開してタイミング解析を行なうのでは長い時間が必要とされ現実的ではない。そこで、複数の階層ブロックに分割し、これら複数の階層ブロックのうち、タイミング解析可能な範囲内で幾つかの階層ブロックを選択してフラット展開し、残りの階層ブロックは境界モデル化した状態でタイミング解析を行なう。このタイミング解析後、次にフラット展開する対象の階層ブロックを選択して、同様にタイミング解析を行なう。これを繰り返すことで、全体として回路全体（フルチップ）をフラット展開してタイミング解析したことと等価になる。この場合、従来の方法では、トップレベルのＲＣ情報、フラット展開される階層プロックはフラット展開したＲＣ情報、境界モデル化している階層プロックは中抜きした境界ブロック対応のＲＣ情報を読み込んで遅延計算を行なう必要がある。このような遅延計算は比較的長い時間が必要とされる。また、フラット展開される階層ブロックの組み合わせを変更した場合、読み込むＲＣ情報を変更して、再度遅延計算する必要がある。そこで、本発明のタイミング解析方法では、最初に、全てをフラット展開したＲＣ情報を元にフルチップの遅延計算を行ない、遅延情報を保存しておく。この保存した遅延情報から、境界モデル化する階層ブロックの不要部分の遅延情報を削除することで毎回必要である遅延計算処理自体を省くことができる。遅延計算よりもこの遅延情報の削除の方がはるかに実行時間はかからない。この様にすることで、フラット展開した階層ブロックはチップ全体でタイミング解析した場合と同等の精度でタイミング解析できることになる。また、タイミング解析に使用するタイミング制約について、階層ブロックのタイミング解析を行なわないので、タイミングバジェット自体は不要となる。フルチップ用のタイミング制約から、モデル化した階層ブロックで中抜きされた部分の情報のみ削除するだけでこのタイミング制約が使用できるようになる（例えば、中抜き対象のフリップフロップ間に設定されたフォールスパス等）。この処理自体は簡単なものであり、動作モード毎にあるタイミング制約も容易に変換可能である。このように一部の階層ブロックのみをフラット展開するタイミング解析は、別々に同時並行的に実行することもできるので、トータルの解析時間も短縮可能となる。従って、実配線の遅延情報の見積もり精度を高く維持したまま短時間でタイミング解析を行なうことができる。
【００２２】
また、上記目的を達成する本発明のタイミング解析プログラムは、プログラムを実行するデータ処理装置内で実行され、そのデータ処理装置に、複数の階層ブロックに分割してレイアウト処理を行なう階層レイアウトが行なわれた回路のタイミング解析を行なわさせるタイミング解析プログラムにおいて、
上記データ処理装置に、上記複数の階層ブロックのうちの少なくとも１つの階層ブロックについてその階層ブロックを最下層の回路に展開するフラット展開を行なうとともに、その少なくとも１つの階層ブロックを除く他の階層ブロックについてその階層ブロックの入力ポートから初段のフリップフロップまで、最終段のフリップフロップからその階層ブロックの出力ポートまで、およびその階層ブロック内に延びるクロックラインのネットリストからなる境界モデルを作成して、これらフラット展開された階層ブロックと境界モデル化された階層ブロックとが混在した態様で行なうタイミング解析を、全体として上記複数の階層ブロック全てがフラット展開される複数の態様について実行させることを特徴とする。
【００２３】
ここで、上記データ処理装置に、上記複数の階層ブロックの全てについてフラット展開を行なって回路全体の遅延情報を求めさせ、その遅延情報から上記境界モデルに不要な遅延情報を削除させ、上記タイミング解析で使用する遅延情報を生成させることが好ましい。
【００２４】
また、上記データ処理装置に、回路全体のタイミング制約から上記境界モデルに不要なタイミング制約部分を削除させ、上記タイミング解析で使用するタイミング制約を生成させることが好ましい。
【００２５】
さらに、上記データ処理装置に、上記タイミング解析を上記複数の態様について順次に実行させることも好ましい。
【００２６】
本発明のタイミング解析プログラムは、プログラムを実行するデータ処理装置内で実行され、そのデータ処理装置に、上記本発明のタイミング解析を行なわせるものであるため、実配線の遅延情報の見積もり精度を高く維持したまま短時間でタイミング解析を行なうことができる。
【００２７】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【００２８】
図１は、本発明のタイミング解析プログラムの一実施形態がローディングされるデータ処理装置の斜視図である。
【００２９】
図１に示すデータ処理装置１には、詳細は後述するが、ＣＤ−ＲＯＭ２に格納されたタイミング解析プログラムがローディングされることにより、本発明のタイミング解析方法の一実施形態が実現される。先ず、データ処理装置１の構成について説明する。
【００３０】
データ処理装置１としては、一般にワークステーションまたはパーソナルコンピュータと呼ばれるコンピュータを用いることができる。尚、データ処理装置１に接続される通信回線４は、インターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の通信回線である。
【００３１】
このデータ処理装置１は、ＣＰＵ（中央処理装置）、ＲＡＭ（ランダムアクセスメモリ）、ハードディスク、通信用ボード等が内蔵された本体部１＿１からの指示により表示画面１＿２ａ上に画像や文字列を表示する表示部１＿２、このデータ処理装置１に利用者の指示を入力するためのキーボード１＿３、表示画面１＿２ａ上の任意の位置を指定することにより、その指定時にその位置に表示されていたアイコン等に応じた指示を入力するマウス１＿４を備えている。
【００３２】
本体部１＿１は、さらに外観上、フレキシブルディスク（図示せず）、ＣＤ−ＲＯＭ２が装填されるフレキシブルディスク装填口１＿１ａ，ＣＤ−ＲＯＭ装填口１＿１ｂを有している。
【００３３】
図２は、図１に示した外観を有するデータ処理装置のハードウェア構成図である。
【００３４】
図２のハードウェア構成図には、ＣＰＵ１＿１１、ＲＡＭ１＿１２、ハードディスクコントローラ１＿１３、フレキシブルディスクドライブ１＿１４、ＣＤ−ＲＯＭドライブ１＿１５、マウスコントローラ１＿１６、キーボードコントローラ１＿１７、ディスプレイコントローラ１＿１８、および通信用ボード１＿１９が示されており、それらはバス５で相互に接続されている。
【００３５】
図３は、本発明のタイミング解析プログラムの一実施形態が組み込まれたＣＤ−ＲＯＭの模式図である。
【００３６】
図３に示すＣＤ−ＲＯＭ２には、以下に説明するタイミング解析プログラム２＿１が組み込まれている。
【００３７】
このタイミング解析プログラム２＿１は、プログラムを実行するデータ処理装置１内で実行され、そのデータ処理装置１に、データ上で、複数の階層ブロックに分割してレイアウト処理を行なう階層レイアウトが行なわれた回路のタイミング解析を行なわせるタイミング解析プログラムである。
【００３８】
このタイミング解析プログラム２＿１は、データ処理装置１に、複数の階層ブロックのうちの少なくとも１つの階層ブロックについてその階層ブロックを最下層の回路に展開するフラット展開を行なうとともに、少なくとも１つの階層ブロックを除く他の階層ブロックについてその階層ブロックの入力ポートから初段のフリップフロップまで、最終段のフリップフロップからその階層ブロックの出力ポートまで、およびその階層ブロック内に延びるクロックラインのネットリストからなる境界モデルを作成する。さらに、これらフラット展開された階層ブロックと境界モデル化された階層ブロックとが混在した態様で行なうタイミング解析を、全体として上記複数の階層ブロック全てがフラット展開される複数の態様について実行させる。
【００３９】
また、このタイミング解析プログラム２＿１は、データ処理装置１に、複数の階層ブロックの全てについてフラット展開を行なって回路全体の遅延情報を求めさせ、その遅延情報から上記境界モデルに不要な遅延情報を削除させて、上記タイミング解析で使用する遅延情報を生成させる。
【００４０】
さらに、このタイミング解析プログラム２＿１は、データ処理装置１に、回路全体のタイミング制約から上記境界モデルに不要なタイミング制約部分を削除させ、上記タイミング解析で使用するタイミング制約を生成させる。
【００４１】
また、このタイミング解析プログラム２＿１は、データ処理装置１に、上記タイミング解析を複数の態様について順次に実行させる。以下、このタイミング解析プログラム２＿１の実行により、本発明のタイミング解析方法の一実施形態が実現される様子について説明する。
【００４２】
図４は、図１に示すデータ処理装置にローディングされたタイミング解析プログラムの処理ルーチンのフローチャートを示す図である。
【００４３】
この図４に示すタイミング解析プログラムの処理ルーチンが実行されて、本発明の一実施形態のタイミング解析方法が実現される。
【００４４】
先ず、図４に示すステップＳ１１において、各階層ブロックのＲＣ情報（実配線における電気抵抗成分および電気容量成分を考慮した情報）を抽出してステップＳ１２に進む。ステップＳ１２では、チップ全体から全ての階層ブロックを除いた部分を対象とするトップレベルのＲＣ情報を抽出してステップＳ１３に進む。ステップＳ１３ではチップ（半導体チップ回路）全体の遅延計算を行ない、ディスク１＿２０（図２参照）に保存する。
【００４５】
さらに、ステップＳ１４において、各階層ブロックについて階層ブロックの入力ポートから初段のフリップフロップまで、最終段のフリップフロップから階層ブロックの出カポートまで、および階層ブロック内に延びるクロックラインのネットリストからなる境界モデルを生成して保存する。同時に境界モデル生成の際に削除された回路部分の情報も保存する。次に、ステップＳ１５において、チップ全体の遅延情報から、特定複数ブロックの遅延情報の中抜きを行なう。具体的には、フラット展開する階層ブロック、境界モデル化する階層ブロックを設計者が任意に指定、もしくは回路規模から自動で設定し、指定もしくは設定された情報およびステップＳ１４で保存された境界モデル生成の際に削除された回路部分の情報に基づいて、ステップＳ１３で保存したフルチップの遅延情報から、境界モデル化した階層ブロックの中抜された不要な部分の遅延情報を削除して保存する。
【００４６】
次に、ステップＳ１６において、チップ全体のタイミング制約から、特定複数ブロックのタイミング制約の中抜きを行なう。具体的には、ステップＳ１５で設定された情報およびステップＳ１４で保存された削除回路部分の情報に基づいて、境界モデル化する階層ブロックの不要部分に関するタイミング制約情報をフルチップタイミング制約から削除して保存する。
【００４７】
次に、ステップＳ１７において、ステップＳ１５で設定された情報に基づき、境界モデルにしない階層ブロックについてはフラット展開したネットリスト、境界モデルにする階層ブロックについてはステップＳ１４で保存した境界モデルのネットリスト、各階層プロック部分を除いたトップレペルのネットリストそれぞれをマージして、境界モデルの階層ブロックについてのみ中抜きされた状態のチップ全体のネットリストを生成する。
【００４８】
次に、ステップＳ１８において、特定複数ブロックを中抜きした状態でのタイミング解析を実施する。具体的には、ステップＳ１７で求めたネットリスト、ステップＳ１５で生成した遅延情報、ステップＳ１６で生成したタイミング制約を用いてタイミング解析を実施する。
【００４９】
さらに、ステップＳ１９において、トータルで全階層ブロックがフラット展開されてタイミング解析されたか否かが判定される。全階層ブロックがフラット展開されてタイミング解析されていないと判定された場合はステップＳ１５に戻り、ステップＳ１５からステップＳ１９を繰り返し実施することにより、全部の階層ブロックがトータルで漏れなくフラット展開されてタイミング解析されるようにする。全階層ブロックがフラット展開されてタイミング解析されたと判定された場合はこの処理ルーチンを終了する。
【００５０】
図５は、図４に示すタイミング解析プログラムの処理ルーチンのステップＳ１５〜ステップＳ１９において実行される様子を詳細に説明するための図である。
【００５１】
以下に説明するように、フラット展開する階層ブロックを順々に回してその都度タイミング解析を行なうことで、トータルとしてフルチップでタイミング解析したことと等価とする。
【００５２】
図５には、４つの階層ブロック１１，１２，１３，１４に分割されてなる半導体チップ回路１０が示されている。ここでは、４回のタイミング解析を行なうことにより、半導体チップ回路１０全体のタイミング解析を行なう。
【００５３】
先ず、１回目のタイミング解析を行なう。１回目のタイミング解析では、４つの階層ブロック１１，１２，１３，１４のうちの階層ブロック１１についてその階層ブロック１１を最下層の回路に展開するフラット展開を行なうとともに、その階層ブロック１１を除く他の階層ブロック１２，１３，１４についてそれら階層ブロック１２，１３，１４の入力ポートから初段のフリップフロップまで、最終段のフリップフロップからそれら階層ブロック１２，１３，１４の出力ポートまで、およびそれら階層ブロック１２，１３，１４内に延びるクロックラインのネットリストからなる境界モデルを用いる。さらに、これらフラット展開された階層ブロック１１と境界モデル化された階層ブロック１２，１３，１４とが混在した態様でタイミング解析を行なう。
【００５４】
次に、２回目のタイミング解析を行なう。２回目のタイミング解析では、階層ブロック１１について、フラット展開されたネットリストに代えて境界モデルを用いるとともに、階層ブロック１２をフラット展開し、フラット展開された階層ブロック１２と境界モデル化された階層ブロック１１，１３，１４とが混在した態様でタイミング解析を行なう。
【００５５】
さらに、３回目のタイミング解析を行なう。３回目のタイミング解析では、階層ブロック１２について、フラット展開されたネットリストに代わる境界モデルに置き換えるとともに、階層ブロック１３をフラット展開し、フラット展開された階層ブロック１３と境界モデル化された階層ブロック１１，１２，１４とが混在した態様でタイミング解析を行なう。
【００５６】
最後に、４回目のタイミング解析を行なう。ここでは、階層ブロック１３について、フラット展開されたネットリストに代わる境界モデルに置き換えるとともに、階層ブロック１４をフラット展開し、フラット展開された階層ブロック１４と境界モデル化された階層ブロック１１，１２，１３とが混在した態様でタイミング解析を行なう。このようにして、全体として４つの階層ブロック１１，１２，１３，１４全てがフラット展開される４つの態様についてタイミング解析を順次に実行する。
【００５７】
本実施形態のタイミング解析方法は、大規模回路に対して、フルチップでフラット展開した状態と同等の遅延精度でタイミング解析が現実的な時間内で実行できる。また、同時並行でタイミング解析が実施できるために、トータルの解析時間も短縮できる。尚、本実施形態では階層レイアウトを行なう場合のみでなく、ツールの性能が高まることで１チップをフラット展開してレイアウトできる場合でも適用可能となる。つまり、中抜きするブロックを階層ブロックではなく、任意の論理ブロック（＝モジュール）にすることで、タイミング解析の対象を抑えることができる。
【００５８】
【発明の効果】
以上説明したように、本発明のタイミング解析方法およびタイミング解析プログラムによれば、実配線の遅延情報の見積もり精度を高く維持したまま短時間でタイミング解析を行なうことができる。
【図面の簡単な説明】
【図１】本発明のタイミング解析プログラムの一実施形態がローディングされるデータ処理装置の斜視図である。
【図２】図１に示した外観を有するデータ処理装置のハードウェア構成図である。
【図３】本発明のタイミング解析プログラムの一実施形態が組み込まれたＣＤ−ＲＯＭの模式図である。
【図４】図１に示すデータ処理装置にローディングされたタイミング解析プログラムの処理ルーチンのフローチャートを示す図である。
【図５】図４に示すタイミング解析プログラムの処理ルーチンのステップＳ１５〜ステップＳ１９において実行される様子を詳細に説明するための図である。
【図６】階層ブロックをモデル化する様子を示した図である。
【図７】境界モデルを用いてトップレベルでタイミング解析を行なう様子を示す図である。
【図８】タイミングバジェットの処理を説明するための図である。
【図９】ある階層ブロックを示す図である。
【符号の説明】
１  データ処理装置
１＿１  本体部
１＿１ａ  フレキシブルディスク装填口
１＿１ｂ  ＣＤ−ＲＯＭ装填口
１＿２  表示部（ＣＲＴディスプレイ）
１＿２ａ  表示画面
１＿３  キーボード
１＿４  マウス
１＿１１  ＣＰＵ
１＿１２  ＲＡＭ
１＿１３  ハードディスクコントローラ
１＿１４  フレキシブルディスクドライブ
１＿１５  ＣＤ−ＲＯＭドライブ
１＿１６  マウスコントローラ
１＿１７  キーボードコントローラ
１＿１８  ディスプレイコントローラ
１＿１９  通信用ボード
１＿２０  ハードディスク
２  ＣＤ−ＲＯＭ
２＿１  タイミング解析プログラム
３  フレキシブルディスク
４  通信回線
５  バス
１０  半導体チップ回路
１１，１２，１３，１４  階層ブロック
【図１】
2004234193.tif 000003
【図２】
2004234193.tif 000004
【図３】
2004234193.tif 000005
【図４】
2004234193.tif 000006
【図５】
2004234193.tif 000007
【図６】
2004234193.tif 000008
【図７】
2004234193.tif 000009
【図８】
2004234193.tif 000010
【図９】
2004234193.tif 000011