(57)【要約】【課題】集積回路を設計するための集積回路設計装置に関し、【解決手段】本発明は、入力手段により設計者から複数の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、前記複数階層毎に設定されたブロックを所定階層に配置するブロック配置処理部と、前記所定階層とは異なる階層のブロックを前記所定階層上に設定されるブロックに仮想配置する領域割付処理部と、前記所定階層及び前記所定階層に対して下位となり、仮想配置される下位階層のブロックの配置状態を評価するブロック評価処理部とを有し、前記ブロック評価処理部は、前記下位階層のブロックの面積が前記所定階層のブロックの面積に占める割合を算出し、算出された前記下位階層のブロックの面積が前記所定階層に配置されるブロックの面積に占める割合を図形により表示することを特徴とする。【選択図】図１
2008176798.tif 000002
【特許請求の範囲】
【請求項１】
入力手段により設計者から複数の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、
前記複数階層毎に設定されたブロックを所定階層に配置するブロック配置処理部と、
前記所定階層とは異なる階層のブロックを前記所定階層上に設定されるブロックに仮想配置する領域割付処理部と、
前記所定階層及び前記所定階層に対して下位となり、仮想配置される下位階層のブロックの配置状態を評価するブロック評価処理部とを有し、
前記ブロック評価処理部は、前記下位階層のブロックの面積が前記所定階層のブロックの面積に占める割合を算出し、算出された前記下位階層のブロックの面積が前記所定階層に配置されるブロックの面積に占める割合を図形により表示する集積回路設計装置。
【請求項２】
前記ブロック評価処理部は、階層切替の入力に応じて、面積比を表示するブロックの階層を切り替える請求項１記載の集積回路設計装置。
【請求項３】
前記ブロック評価処理部は、算出した前記ブロックの面積比に応じて、前記ブロックの面積比を示す図形を視覚的に区別して表示する請求項１又は２記載の集積回路設計装置。
【請求項４】
入力手段により設計者から複数の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、
前記複数階層毎に設定されたブロックを所定階層に配置するブロック配置処理部と、
前記所定階層とは異なる階層のブロックを前記所定階層上に設定されるブロックに仮想配置する領域割付処理部と、
前記所定階層及び前記所定階層に対して下位となり、仮想配置される下位階層のブロックの配置状態を評価するブロック評価処理部とを有し、
前記ブロック評価処理部は、前記下位階層のブロックの面積が、前記所定階層に配置されたブロックの面積に占める割合を算出する面積比計算部と、
前記算出されたブロックの面積比が基準内であるか否かを判別し、基準内であると判別された場合に仮想配置された下位階層のブロック間の経路のおけるディレイを算出するディレイ計算処理部とを有する集積回路設計装置。
【請求項５】
前記ブロック評価処理部は、前記ディレイ計算処理部で計算されたディレイが前記基準値を超えたパスを表示する請求項４記載の集積回路設計装置。
【請求項６】
前記ブロック評価処理部は、前記ディレイ計算処理部で計算されたディレイが前記基準値を超えたパスをリスト表示するパスリスト表示処理部を有する請求項５記載の集積回路設計装置。
【請求項７】
前記ブロック評価処理部は、前記ディレイ計算処理部で計算されたディレイが前記基準値を超えたパスの経路を表示するパス経路表示処理部を有する請求項５又は６記載の集積回路設計装置。
【請求項８】
入力手段により設計者から複数の階層に階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、
前記集積回路の実装ブロック内に、仮想配置領域を設定するブロック配置処理部と、
前記ブロックを、前記仮想配置領域上に仮想配置する領域割付処理部と、
前記仮想配置された機能ブロック間の経路におけるディレイを算出するディレイ計算処理部とを有する集積回路設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は集積回路設計装置に係り、特に、集積回路を設計するための集積回路設計装置に関する。
【背景技術】
【０００２】
近年、集積回路には、製品の多様化に伴い、設計時間の短縮が求められている。このため、集積回路の設計時間を短縮化するためには、設計工程を大幅に削減する必要があった。現在、集積回路の設計は集積回路設計装置により行われる。
【０００３】
従来の集積回路設計装置は、主にフロアプラン表示機能及びタイミング解析機能を有していた。
【０００４】
フロアプラン表示機能は、実装ブロックを処理単位、表示単位として表示する機能である。タイミング解析機能は、実装ブロック間の距離に基づき簡易的にパスディレイの計算を行う機能である。
【０００５】
従来の集積回路設計装置では、上記フロアプラン表示機能を用いて実装ブロック単位で設計を行い、配置された実装ブロック間のディレイをタイミング解析機能を用いて解析し、ディレイが所望のディレイとなるように実装ブロック単位での設計が繰り返されていた。
【０００６】
また、ハードウェア記述言語による設計では、回路合成時に使用したディレイ情報、例えば、セルの段数とゲートディレイをフロアプランでのタイミング解析に利用している。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかるに、従来の集積回路の設計は、実装ブロックが処理単位であった。実装ブロックの論理回路の規模は数十万ゲートになる。このため、実装ブロック単位で設計を行うと、タイミング解析機能による解析結果の精度が悪く、実際とタイミング解析結果との誤差が大きいため、目標とする回路速度を実現するために設計の手戻りが頻繁に発生していた。このため、集積回路の設計工数の削減を妨げていた。
【０００８】
本発明は、上記の点に鑑みてなされたもので、集積回路の設計を効率よく行える集積回路設計装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、入力手段により設計者から複数の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、前記複数階層毎に設定されたブロックを所定階層に配置するブロック配置処理部と、前記所定階層とは異なる階層のブロックを前記所定階層上に設定されるブロックに仮想配置する領域割付処理部と、前記所定階層及び前記所定階層に対して下位となり、仮想配置される下位階層のブロックの配置状態を評価するブロック評価処理部とを有し、前記ブロック評価処理部は、前記下位階層のブロックの面積が前記所定階層のブロックの面積に占める割合を算出し、算出された前記下位階層のブロックの面積が前記所定階層に配置されるブロックの面積に占める割合を図形により表示することを特徴とする。
【００１０】
また、本発明は、入力手段により設計者から複数の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、前記複数階層毎に設定されたブロックを所定階層に配置するブロック配置処理部と、前記所定階層とは異なる階層のブロックを前記所定階層上に設定されるブロックに仮想配置する領域割付処理部と、前記所定階層及び前記所定階層に対して下位となり、仮想配置される下位階層のブロックの配置状態を評価するブロック評価処理部とを有し、前記ブロック評価処理部は、前記下位階層のブロックの面積が、前記所定階層に配置されたブロックの面積に占める割合を算出する面積比計算部と、前記算出されたブロックの面積比が基準内であるか否かを判別し、基準内であると判別された場合に仮想配置された下位階層のブロック間の経路のおけるディレイを算出するディレイ計算処理部とを有することを特徴とする。
【００１１】
さらに、本発明は、入力手段により設計者から複数の階層に階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、前記集積回路の実装ブロック内に、仮想配置領域を設定するブロック配置処理部と、前記ブロックを、前記仮想配置領域上に仮想配置する領域割付処理部と、前記仮想配置された機能ブロック間の経路におけるディレイを算出するディレイ計算処理部とを有することを特徴とする。
【発明の効果】
【００１２】
上述の如く、本発明によれば、下位階層のブロックの面積が所定階層のブロックの面積に占める割合を算出し、算出された下位階層のブロックの面積が所定階層に配置されるブロックの面積に占める割合を図形により表示することにより、算出された下位階層のブロックの面積が所定階層に配置されるブロックの面積に占める割合を直感的に把握でき、異なる階層の設計を効率よく行えるようになる。
【発明を実施するための最良の形態】
【００１３】
図１は本発明の一実施例のブロック構成図を示す。
【００１４】
本実施例の情報処理装置１は、データ処理装置１１、入力装置１２、出力装置１３を含む構成とされている。データ処理装置１１は、コンピュータシステムから構成されている。入力装置１２は、キーボード、マウスなどから構成され、データ処理装置１１にコマンドやデータの入力を行う。出力装置１３は、ディスプレイなどから構成されており、データ処理装置１１で処理されたデータ内容を表示する。
【００１５】
データ処理装置１１は、ハードディスクドライブ２１、ＲＡＭ２２、ＣＰＵ２３、可換式記憶装置２４、通信装置２５を含む構成とされている。
【００１６】
ハードディスクドライブ２１には、ＯＳや集積回路設計プログラムがインストールされている。ハードディスクドライブ２１にインストールされたＯＳ、集積回路設計プログラムは、ＲＡＭ２２に読み出されて、ＣＰＵ２３により実行される。ＲＡＭ２２は、ＣＰＵ２３の作業用記憶領域として用いられる。可換式記憶装置２４は、フロッピー（登録商標）ディスクドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＯＭドライブ、ＭＯドライブなどである。集積回路設計プログラムを、例えば、フロッピーディスク、ＣＤ−ＲＯＭディスク、ＤＶＤ−ＲＯＭディスク、ＭＯディスクなどにより提供し、ハードディスクドライブ２１にインストールするようにしてもよい。通信装置２５は、ＬＡＮ、電話回線、インターネットを介して通信を行う。集積回路設計プログラムをＬＡＮ、電話回線、インターネットを介して提供し、ハードディスクドライブ２１にインストールするようにしてもよい。
【００１７】
図２は集積回路設計プログラムの機能ブロック図を示す。集積回路設計プログラム３１は、主に、フロアプラン作成・表示処理部４１、機能ブロック割付処理部４２、面積比率計算処理部４３、パスディレイ計算処理部４４、パスリスト表示処理部４５、パス経路表示処理部４６から構成される。
【００１８】
集積回路設計プログラム３１は、上記フロアプラン作成・表示処理部４１、機能ブロック割付処理部４２、面積比率計算処理部４３、パスディレイ計算処理部４４、パスリスト表示処理部４５、パス経路表示処理部４６の機能を用いて、実装ブロック、仮想配置領域（コート）、機能ブロック（セル）、パスの配置、表示、編集のための処理を行なう。
【００１９】
ここで、上記機能ブロック、実装ブロック、仮想配置領域、パスについて定義しておく。
【００２０】
図３は、機能ブロック（セル）、実装ブロック、仮想配置領域（コート）、パスを説明するための図を示す。図３（Ａ）は機能ブロックを定義するための図、図３（Ｂ）は実装ブロックを定義するための図、図３（Ｃ）は仮想配置領域を定義するための図、図３（Ｄ）はパスを定義するための図を示す。
【００２１】
図３（Ａ）に示すようにセルＢ１、Ｂ２は、論理回路セルＬをある機能毎にまとめたものと定義する。
【００２２】
また、図３（Ｂ）に示すように実装ブロックＰ１〜Ｐ４は、実装設計を行う際、ＬＳＩチップＴを分割した領域と定義する。
【００２３】
図３（Ｃ）に示すように仮想配置領域（以下、コートと呼ぶ）Ｃ１〜Ｃ３は、例えば、実装ブロックＰ２をさらに分割した領域と定義する。
【００２４】
図３（Ｄ）に示すようにパスＭ１、Ｍ２は、始点セルＳSから終点セルＳEまでの経路と定義する。図３（Ｄ）には、開始セルＳS→セルＳ1→セルＳ2→セルＳ3→終了セルＳEを通るパスＭ１、及び、開始セルＳS→セルＳ4→セルＳ5→セルＳ3→終了セルＳEを通るパスＭ２が存在する。
【００２５】
次に、集積回路設計プログラム３１を構成する各機能について説明する。
【００２６】
フロアプラン作成・表示処理部４１は、実装ブロックＰ１〜Ｐ４を配置するための処理を行うとともに、配置された実装ブロックＰ１〜Ｐ４、コートＣ１〜Ｃ３を出力装置１３に表示するための処理を行う機能である。機能ブロック割付処理部２２は、フロアプラン作成・表示処理部２１で配置された実装ブロックＰ１〜Ｐ２及びコートＣ１〜Ｃ３にセルＢ１、Ｂ２を割り付ける処理を行うとともに、出力装置１３に表示する処理を行う機能である。
【００２７】
面積率計算処理部２３は、面積率を計算する処理を行うとともに、面積率を出力装置１３に表示するための処理を行う機能である。面積率は、コートＣ１〜Ｃ３またはセルＢ１、Ｂ２の面積が、そのコートまたは機能ブロックが属する実装ブロックＰ２の面積に占める割合である。
【００２８】
パスディレイ計算処理部２４は、機能ブロック間のパスディレイを計算する。パスリスト表示処理部２５は、ディレイが基準値以上のパスをリストとして表示する。パス経路表示処理部４６は、パスリスト表示処理部２５でリストアップされたパスの経路を画面上に表示するための処理を行う機能である。
【００２９】
次に、上記集積回路設計プログラム３１を用いた設計方法について説明する。
【００３０】
図４は、本発明の一実施例の設計方法のフローチャートを示す。
【００３１】
まず、ステップＳ１で集積回路設計プログラム３１のフロアプラン作成・表示処理部４１の機能を用いてフロアプランデータを作成する。
【００３２】
図５は実装ブロック及びコートの作成を説明するための図を示す。図５（Ａ）はＬＳＩチップＴ内のコートの定義例、図５（Ｂ）は実装ブロック内のコートの定義例、図５（Ｃ）はコートの作成例を示す。
【００３３】
ステップＳ１のフロアプランの作成では、図５（Ａ）に示すようにＬＳＩチップＴ内にコートＣa、Ｃb、Ｃc1〜c3、Ｃd1、Ｃd2を設定したり、図５（Ｂ）に示すようにＬＳＩチップＴ内に実装ブロックＰa〜Ｐdを設定し、設定された実装ブロックＰa〜Ｐd内にさらにコートＣa、Ｃb、Ｃc1〜c3、Ｃd1、Ｃd2を設定したりすることにより、フロアプランが作成される。
【００３４】
このとき、図５（Ａ）、（Ｂ）に示すように等しい大きさのコートＣa1〜Ｃa25を同時に複数個設定したり、コートＣc1〜Ｃc3のように任意の大きさで設定したりできる。また、形状も矩形だけではなく、コートＣd1、Ｃd2のように任意の形状のコートも作成できる。
【００３５】
また、コートＣc1とコートＣc2とのように複数のコートを重ねたり、コートＣc1とコートＣc3とのようにコートの一部を重ねたりすることも可能である。
【００３６】
また、図５（Ｃ）に示すように実装ブロックＰa〜ＰdまたはＬＳＩチップＴにコートを定義するには、例えば、下記の方法が考えられる。
【００３７】
第１のコート作成方法は、ＬＳＩチップＴ、または実装ブロックＰを指定した数値で複数のコートに分割する方法である。
【００３８】
第１のコート作成方法でコートを作成する場合、設計者は分割しようとする実装ブロックＰa又はＬＳＩチップＴを選択する。次に、第１のコート作成方法を選択することにより、分割数指定ウィンドウが表示される。例えば、実装ブロックＰaが選択された場合、図５（Ｃ）に示すように実装ブロックＰaの近くに、分割数指定ウィンドウｗ１が表示される。設計者は、分割数指定ウィンドウｗ１にｘ方向とｙ方向の分割数を指定する。フロアプラン作成・表示処理機能４１は、選択されたＬＳＩチップＴ又は実装ブロックに指定された分割数で均等にコートＣa1〜Ｃa25が設定される。
【００３９】
第２の方法は、指定したサイズでＬＳＩチップＴ又は実装ブロックを分割する方法である。
【００４０】
第２の方法でコートを作成する場合、設計者は分割しようとする実装ブロックＰa又はＬＳＩチップＴを選択する。次に、第２のコート作成方法を選択することにより、分割サイズ指定ウィンドウが表示される。例えば、実装ブロックＰbが選択された場合、図５（Ｃ）に示すように実装ブロックＰbの近くに、分割サイズ指定ウィンドウｗ２が表示される。設計者は、分割サイズ指定ウィンドウｗ２に１つのコートのｘ方向のサイズＳxとｙ方向のサイズＳyとを指定する。フロアプラン作成・表示処理機能４１は、選択されたサイズ〔（Ｓx）×（Ｓy）〕のコートを設定する。このとき、左下端からサイズ〔（Ｓx）×（Ｓy）〕コートＰb4、Ｐb5、Ｐb7、Ｐb8が配置され、実装ブロックＰbの残余の部分にはサイズ〔（Ｓx）×（Ｓy）〕より小さいコートＰb1〜Ｐb3、Ｐb6、Ｐb9が設定される。
【００４１】
第３のコート設定方法は、マウス等の入力手段を用いて任意の矩形状のコートを作成するものである。例えば、図５（Ｃ）の実装ブロックＰdに示すようにマウスにより点ｅから点ｆまでポインタをドラックすることにより、点ｅと点ｆが対角点となるようにコートＣdが設定される。
【００４２】
第４のコート作成方法は、マウス等の入力手段を用いて任意の形状、大きさのコートを作成するものである。例えば、図５（Ｃ）の実装ブロックＰcに示すようにマウスによりポインタを移動させ、クリックすることにより点ｇ、点ｈ、点ｉ、点ｊ、点ｋ、点ｌを指定する。指定された点ｇ、ｈ、ｉ、ｊ、ｋ、ｌを直線で結んだ図形がコートとして設定される。
【００４３】
以上のようにして、ＬＳＩチップＴ又は実装ブロックＰ内にコートＣが作成される。
【００４４】
図４に戻って説明を続ける。
【００４５】
ステップＳ１で、ＬＳＩチップに実装ブロックＰ及び/又はコートが作成されると、次に、ステップＳ２で作成された実装ブロックＰ又はコートＣにセルＢが割り付けられる。セルＢは、例えば、各コートＣに機能を設定することにより、設定された機能に応じた機能を実現するための機能ブロックがコートＣに自動的に設定される。
【００４６】
コートＣに機能ブロックあるいはセルが割り付けられると、ステップＳ３でコートＣ毎のセル占有率が次の式で計算され、ステップＳ４でコート毎にそのコート内にグラフ表示される。
【００４７】
占有率=(機能ブロックあるいはセルの面積合計／コートの面積)×100（％）図６はコートのセル占有率の表示例を示す。
【００４８】
図６で、コートＣa、Ｃb、Ｃcのセル占有率はコートＣa、Ｃb、Ｃc毎に円グラフＧa、Ｇb、Ｇcで表示される。コートＣaは、セル占有率が100％以下の場合を示している。コートＣaのセル占有率を示す円グラフＧaでは、セル占有率分を青色（梨地）で表示し、他の部分を白抜きで表示している。
【００４９】
また、コートＣbは、セル占有率が100％を超えている場合を示している。コートＣbのセル占有率を示す円グラフＧbでは、セル占有率が100％を超えた分を、セル占有率分を示す青色とは異なる色、例えば、赤色（格子縞）で表示される。
【００５０】
さらに、コートＣcは、セル占有率が200％を超えた場合を示している。コートＣcのセル占有率を示す円グラフＧcはすべて赤色（格子縞）で表示される。なお、２００％を超えた場合に、青、赤以外の色で表示するようにしてもよい。
【００５１】
上記セル占有率グラフＧa、Ｇb、Ｇcを参照することにより、各コートＣa、Ｃb、Ｃcのセル占有率を認識できる。表示されたセル占有率グラフＧa、Ｇb、Ｇcに基づいてステップＳ５で設計者により各コードＣa、Ｃb、Ｃcのセル占有率が基準内か否かがが判断され、セル占有率が基準内になければ、ステップＳ１又はステップＳ２に戻って実装ブロックＰ、コートＣ、セルＢの配置、サイズを基準となるセル占有率となるように調整する。
【００５２】
次に、実装ブロックＰ、コートＣ、セルＢの配置、サイズの調整方法について説明する。
【００５３】
まず、調整を正確に行えるようにするため、セルの配置が不可能な領域を反映して計算したセル占有率をコート内にグラフ表示するようにしてもよい。このとき、セルの配置が不可能な領域を示す表示をコートＣ内に表示したり、非表示にしたりできるようにしてもよい。
【００５４】
図７はセルの配置が不可能な領域を反映したグラフ表示を示す図である。
【００５５】
図７（Ａ）は、電源配線・配置禁止領域を反映させて計算したセル占有率をグラフ表示したもので、コートＣa、Ｃb、Ｃc内に帯状に電源配線を示す表示及び配置禁止領域を示す表示が行われる。また、例えば、画面上の切替ボタンをクリックすることにより図７（Ｂ）に示すようにコートＣa、Ｃb、Ｃc内の電源配線・配置禁止領域を示す表示が非表示にされる。
【００５６】
なお、コート毎に表示、非表示が切り替わるようにしてもよく、また、表示方法も帯状に限定されるものではない。
【００５７】
また、セル占有率グラフを任意の階層ブロック毎に切り替えて表示できるようにしてもよい。
【００５８】
図８は階層ブロック毎の切替表示を示す図である。図８（Ａ）は下位の階層のブロックであるコートＣa、Ｃb、Ｃcのセル占有率を示すグラフＧa、Ｇb、Ｇc、図８（Ｂ）は上位の階層のブロックであるＬＳＩチップＴ、又は実装ブロックＰのセル占有率を示すグラフＧT又はＧPを含む表示例を示す。
【００５９】
階層ブロックの表示切り替えは、画面上に表示された階層切替ボタンなどをクリックすることで行う。例えば、図８（Ａ）に示すようにＬＳＩチップＴ又は実装ブロックＰ内にコートＣa、Ｃb、Ｃc毎にセル占有率グラフＧa、Ｇb、Ｇcが表示されていたときに、階層切替ボタンがクリックされると、図８（Ｂ）に示すようにＬＳＩチップＴ又は実装ブロックＰ全体でのセル占有率グラフＧT又はＧPが表示される。
【００６０】
また、複数のコートＣをまとめることにより実装ブロックＰを作成するような編集も可能である。
【００６１】
図９は複数のコートをまとめて実装ブロックＰを作成する場合の動作を説明するための図を示す。図９（Ａ）はまとめる前の状態、図９（Ｂ）まとめた後の状態を示す。
【００６２】
図９（Ａ）に示すようにＬＳＩチップＴ内にコートＣa、Ｃb、Ｃcを含む複数のコートを設定する。設計者は、まず、一つの実装ブロックにまとめたいコートＣa、Ｃb、Ｃcを選択する。まとめたいコートＣa、Ｃb、Ｃcが選択されると、フロアプラン作成・表示処理部４１は、図９（Ｂ）に示すようにコートＣa、Ｃb、Ｃcを一つにまとめた実装コートＰを作成する。
【００６３】
また、編集作業を容易にするために、各コートに関する情報を表示可能としてもよい。
【００６４】
図１０はコート情報の画面表示例を示す図である。図１０（Ａ）は実装ブロックＰとコートＣa、Ｃb、Ｃcとの表示画面、図１０（Ｂ）、（Ｃ）はコートＣaの情報を表示した画面を示す。
【００６５】
図１０（Ａ）に示す実装ブロックＰ内に定義された３つのコートＣa、Ｃb、Ｃcが表示されている画面で、コートＣaにポインタを移動すると、図１０（Ｂ）に示すコートＣaに関する情報が表示される。
【００６６】
コートＣaに関する情報は、上位実装ブロック名情報Ｄ1、コートの面積情報Ｄ2、セル占有率情報Ｄ3、コートに割り付けられている機能ブロックやセル名の情報Ｄ4から構成される。この画面を見ることによりコートＣaの詳細を知ることができる。
【００６７】
なお、上記図１０（Ｂ）に示す画面は、図１０（Ａ）に示す画面でコートＣaにポインタを位置させた場合であり、このままでは、ポインタを移動させると、消去されてしまう。コートの各種編集や評価を行なう際に、この情報画面内の情報Ｄ1〜Ｄ4を使用するとコートの状況を認識できるので、表示を保持した場合がある。このときには、予め登録しておいたキーボード上のキー、例えば“Ｚ”キーを押下することにより、ポインタが移動しても情報画面にコートＣaの情報が表示され続ける。このとき、情報画面は、図１０（Ｃ）に示すような表示となる。図１０（Ｃ）に示す情報画面にはＬＯＣＫ表示ＤＳＰ１が表示される。ＬＯＣＫ表示ＤＳＰ１により画面上のデータが保持されていることが設計者に通知される。なお、情報画面を消す場合には、予め登録しておいたキーボード上のキー、例えば“ＥＳＣ”キーを押下する。
【００６８】
設計者は、各コートの詳細情報が表示された情報画面を参照して、設計作業を行うことができるため、コートの状態や、周囲の状況などを把握しつつ設計作業を進めることができ、よって、設計作業の効率を向上させることができる。また、他の階層の設計時に不都合が生じることがなくなるため、設計工程の手戻りを解消できる。
【００６９】
さらに、設計の作業性を向上させるために、パラメータを設定することにより自動的にコートを生成したり、コートのセル占有率を調整したりできるようにしてもよい。
【００７０】
例えば、コートの面積ＳCを、機能ブロックやセルのゲート面積ＳLとコート面積に対するセル面積の目標占有率ＯT、余裕度Ｒ等の面積を決定するパラメータを用いて算出する。パラメータは外部から指定する。なお、特に指定の無い場合はデフォルト値を使用する。ただし、パラメータ間には優先度を設けておく。例えば、目標占有率と余裕度が指定された場合、目標占有率を優先する。
【００７１】
以下が指定されたパラメータを用いてコート面積を計算する式を示す。
【００７２】
目標セル占有率を適用する場合：ＳC＝ＳL＊１００／ＯT 式１ 余裕度を適用する場合： ＳC＝ＳL＊Ｒ 式２上記式（１）、（２）で算出した面積と指定されたコートの縦横比（特に指定の無い場合は１対１）に基づいて、コートを自動作成する。
【００７３】
図１１はパラメータ設定によるセル占有率の自動調整について説明するための図を示す。図１１（Ａ）は調整前のコートの表示例、図１１（Ｂ）はパラメータ設定画面例、図１１（Ｃ）は調整後のコート表示例を示す。
【００７４】
図１１（Ａ）は、縦横の長さがそれぞれＬでセル占有率が５０％のコートである。コートに割り付けられている機能ブロックやセルを変更せずに、セル占有率を４０％にするには、コートの大きさを変更する必要がある。設計者がセル占有率を選択するためのモードを選択すると、図１１（Ｂ）に示すようなパラメータ設定画面が表示される。設計者によりパラメータ設定画面の占有率を指定するボックスに「４０」が入力されると、上記の式（１）によりコートの面積が計算される。計算されたコートの面積から設定された縦横比に応じた矩形が形成される。ここでは、コートの縦横比が１対１なので、図１１（Ｃ）に示すように縦横の長さがそれぞれ５／４倍され、セル占有率が４０％となるコートに自動変更される。
【００７５】
以上のようにセル占有率を所望の値に設定するだけでコートのセル占有率を変更したり、所望のセル占有率のコートを生成したりすることができ、設計を効率よく行える。
【００７６】
また、設計作業を効率よく行うためにコート間での論理セルの移動を可能としてもよい。
【００７７】
図１２は、コート間での論理セルの移動を説明するための図を示す。図１２（Ａ）は移動前の実装ブロックの状態、図１２（Ｂ）はコートＣaの論理のすべてをコートＣbに移動した場合の実装ブロックの状態、図１２（Ｃ）はコートＣaの論理アサインリスト、図１２（Ｄ）はコートＣaの論理の一部をコートＣbに移動した場合の実装ブロックの状態を示す。
【００７８】
コートＣaには、図１２（Ａ）のグラフＧaに示すようなセル占有率で機能ブロックとセルが割り付けられている。コートＣbには、論理が何も割り付けられていない。なお、コートＣbのサイズは、コートＣaより大きいサイズに設定されている。
【００７９】
コートＣaに割り付けられているすべての機能ブロックとセルをコートＣbに移動するには、設計者は、まず移動コマンドを選択する。次に、移動元コートＣa、移動先コートＣbの順で選択する。上記操作によりコートＣaのすべての機能ブロックとセルがコートＣbに移動する。コートＣaのすべての機能ブロックとセルがコートＣbに移動することにより、コートＣbのサイズはコートＣaのサイズより大きいため、機能ブロック及びセルのコートＣbでの占有率を低下させることができる。
【００８０】
コートＣaに割り付けられている一部の機能ブロックやセルをコートＣbに移動させる場合には、図１２（Ｃ）に示す論理アサインリストを使用する。図１２（Ａ）に示す状態で、設計者が移動コマンドを選択し、移動元のコートＣaを選択すると、図１２（Ｃ）に示すコートＣaに設定された機能ブロック及びセルの論理アサインリストが表示される。
【００８１】
設計者は、図１２（Ｃ）に示す論理アサインリストから移動させたい機能ブロックとセルを選択する。選択された機能ブロック及びセルは、例えば、図１２（Ｃ）に示すように反転表示される。次に、移動先のコートＣbを選択すると、論理アサインリストで指定された機能ブロックとセルがコートＣbに移動する。論理アサインリストで指定された機能ブロックとセルがコートＣaからコートＣbに移動すると、図１２（Ｄ）に示すようにコートＣaのセル占有率が低下し、コートＣbのセル占有率が増加する。
【００８２】
以上のように必要に応じて論理をコート間でやり取りできるので、セル占有率を容易に調整でき、設計作業の効率を向上させることができる。
【００８３】
また、機能ブロックとセルのコートへの割付を解除することもできる。
【００８４】
図１３は、機能ブロックとセルのコートへの割付を解除する動作を説明するための図を示す。図１３（Ａ）は論理解除前の状態、図１３（Ｂ）はコートＣaからすべての論理を解除した後の状態、図１３（Ｃ）はコートＣaの論理アサインリストの表示例、図１３（Ｄ）はコートＣaから論理の一部を解除した後の状態を示す。
【００８５】
コートＣaに割り付けられたすべての論理を解除するには、設計者は、まず、解除コマンドを選択する。次に、コートＣaをダブルクリックすることにより、コートＣaのすべての機能ブロックとセルが図１３（Ｂ）に示すように解除される。
【００８６】
また、コートＣaに割り付けられている一部の機能ブロックやセルを解除する場合には、論理アサインリストを使用する。図１３（Ａ）に示す状態で、解除コマンドを選択し、コートＣaを選択すると図１３（Ｃ）に示すような論理アサインリストが表示される。設計者は、論理アサインリストから解除を行なう機能ブロック及びセルを選択する。選択された機能ブロック及びセルは、図１３（Ｃ）に示すように反転表示される。次に、コートＣaをクリックすると、論理アサインリストで指定した機能ブロック及びセルがコートＣaから解除され、図１３（Ｄ）に示すようにセル占有率が低下して表示される。
【００８７】
このように必要に応じてコートＣaから機能ブロック及びセルを解除できるので、設計作業を効率よく行える。
【００８８】
編集時に必要に応じてコートを結合できるようにしてもよい。
【００８９】
図１４は複数のコートを結合させる動作を説明するための図を示す。図１４（Ａ）は結合前の実装ブロックＰの状態、図１４（Ｂ）は結合後の実装ブロックＰの状態を示す。
【００９０】
実装ブロックＰに機能ブロックとセルが割り付けられているコートＣa、Ｃb、Ｃcを含む複数のコートを有する。
【００９１】
実装ブロックＰ内の３つのコートＣa、Ｃb、Ｃcを結合し、１つのコートにする場合は、まず、結合コマンドを選択し、次に結合しようとするコートＣa、Ｃb、Ｃcを選択する。この時、選択された各コートの頂点座標のうち最大座標（ｘ１、ｙ１）と最小座標（ｘ２、ｙ２）を求め、これら２点を頂点とした矩形領域を結合後の新しいコートＣdとする。なお、結合前に３つのコートＣa、Ｃb、Ｃcに割り付けられている機能ブロックやセルは、新たなコートＣdに割り付けられる。
【００９２】
また、単一のコートを複数のコートに細分化する編集も可能とされている。
【００９３】
図１５は単一のコートを複数のコートに分割編集する動作を説明するための図を示す。図１５（Ａ）は論理がアサインされたコートの分割前の状態、図１５（Ｂ）はコートを３×３に分割したときのコートイメージ、図１５（Ｃ）は単一のコートを３×３に分割した後の状態を示す。
【００９４】
図１５（Ａ）に示される単一のコートＣaを複数のコートＣa1〜Ｃa9に細分割する場合は、設計者は、まず、分割コマンドを選択する。次に、縦横の分割数、または、コートの縦横の長さを指定する。
【００９５】
コートの縦方向の分割数と横方向の分割数が指定されると、図１５（Ｂ）に示すようにコートＣaが９個のコートＣa1〜Ｃa9に細分割される。このとき、分割元のコートに機能ブロックが割り付けられている場合には、分割前コート内でパスのレベルソート等のアルゴリズムを用いることにより、図１５（Ｂ）に示すようにコートＣa内に配置されたセルＢ1〜Ｂ9の仮想配置位置を求め、仮想配置位置に最も近い分割後のコートにセルＢ1〜Ｂ9の割り付けを行なう。これにより、各分割コートＣa1〜Ｃa9にセルＢ1〜Ｂ9が割り振られる。割り振られた機能ブロックにより各分割コートＣa1〜Ｃa9のセル占有率が算出され、図１５（Ｃ）に示すようにセル占有率を示すグラフＧa2、Ｇa3、Ｇa5、Ｇa7が表示される。
【００９６】
また、本実施例では、コート間の重なり、実装ブロックからのはみ出しを容易に補正できる構成とされている。
【００９７】
図１６はコートの重なり及び実装ブロックからのはみ出しを補正する動作を説明するための図を示す。図１６（Ａ）はコートＣa、Ｃbが重なった状態、図１６（Ｂ）はコートＣa、Ｃbが実装ブロックＰからはみ出した状態、図１６（Ｃ）はコートＣa、Ｃbの重なり及び実装ブロックＰからのはみ出しが補正された状態を示す。
【００９８】
図１６（Ａ）に示すようにコートＣaとＣbとは重なっている。コートＣaとＣbの重なりを解消するために、設計者がマニュアルでコートＣa、Ｃbを移動させることにより、図１６（Ｂ）に示すようにコートＣa、Ｃbの一部が実装ブロックＰに重なっており、物理的な正当性が損なわれたとする。このような場合、設計者がチェックコマンドを選択すると、実装ブロックＰとコートＣa、Ｃbとの重なりをチェックし、コートＣa、Ｃbの位置を自動補正し、図１６（Ｃ）に示すように実装ブロックＰとコートＣa、Ｃbとの重なりが解消される。
【００９９】
なお、本実施例のフロアプラン作成・表示処理部４１では、パス上のセルの配置も容易に行える。
【０１００】
図１７、図１８は、パス上のセルの配置方法を説明するための図を示す。図１７（Ａ）はセルＢa〜Ｂe間のパス、図１７（Ｂ）はセルＢa〜Ｂeの配置、図１８（Ａ）は通過点ａ、ｂが選択された状態、図１８（Ｂ）はセルＢb、Ｂc、Ｂdの配置方法を説明するための図である。
【０１０１】
図１７（Ａ）に示すようにセルＢa〜ＢeがセルＢa→Ｂb→Ｂc→Ｂd→Ｂeの順に接続される。セルＢa〜Ｂeは、図１７（Ｂ）に示すようにセルＢaがコートＣ3に、セルＢeがコートＣ7に、セルＢb〜ＢdがコートＣ5に割り付けられている。
【０１０２】
パスの開始の機能ブロックＣaが割り付けられているコートＣ3とパスの終了の機能ブロックＣeが割り付けられているコートＣ7とを結ぶパスが最短になるコートＣ3との頂点ａとコートＣ7の頂点ｂが通過座標点として選択される。図１８（Ａ）に示すようにパスの始点となるセルＢaはコートＣ3の中央に仮想配置され、パスの終点となるセルＢeはコートＣ7の中央に仮想配置される。
【０１０３】
また、パスが通過するコートＣ5に設けられたセルＢb、Ｂc、Ｂdは、図１８（Ｂ）に示すように通過点ａと通過点ｂとを結ぶ線分上に始点側から終点側に等間隔に仮想配置される。
【０１０４】
次に、分岐を有するパスが設定されている場合の機能ブロックの仮想配置方法について説明する。
【０１０５】
図１９〜図２１は、分岐するパス上のセルの配置方法を説明するための図である。
【０１０６】
図１９（Ａ）はセルＢa〜Ｂg間のパス、図１９（Ｂ）はセルＢa〜Ｂgの配置、図２０（Ａ）はパスに応じてセルＢa〜Ｂeが仮想配置された状態、図２０（Ｂ）はセルＢb〜Ｂf、Ｂgを仮想配置する方法を説明するための図、図２１はすべてのセルＢa〜Ｂgが仮想配置された状態を示す。
【０１０７】
図１９（Ａ）に示すようにセルＢa〜Ｂeは、メインパスによりセルＢa→Ｂb→Ｂc→Ｂd→Ｂeの順に接続される。また、図１９（Ａ）に示すようにセルＢb、Ｂf、Ｂgは、分岐されたパスによりセルＢb→Ｂf→Ｂgの順に接続される。
【０１０８】
セルＢa〜Ｂgは、図１９（Ｂ）に示すようにセルＢaがコートＣ3に、セルＢeがコートＣ7に、セルＢb〜ＢdがコートＣ5に割り付けられ、セルＢf、ＢgがコートＣ6に割り付けられている。
【０１０９】
セルＢa〜Ｂeは、図１７、図１８で説明した仮想配置方法により仮想配置される。なお、このとき、仮想配置の優先順位は距離の長いパスが優先される。
【０１１０】
セルＢf、Ｂgを仮想配置する場合には、まず、セルＢf、Ｂgが割り付けられているコートＣ6の通過点座標を求める。ここで分岐元セルＢbの仮配置位置は既に決定しているため、通過点座標ｃは、セルＢbの仮配置位置と、セルＢf、Ｂgが割り付けられているコートＣ6との位置関係で決定する通過点座標ｃは、例えば、セルＢbのコートＣ6に近接した頂点とコートＣ6の中心位置とを結ぶ線分とコートＣ6の外周との交点に設定される。次に、セルＢｆ及びセルＢgを通過点座標ｃとコートＣ6との中心座標とを結ぶ線分上に均等に配置する。以上により、図２１に示すようにセルＢa〜Ｂgが仮想配置される。
【０１１１】
以上のようにして、実装ブロックＰ、コートＣ、セルＢのサイズや配置が設定される。
【０１１２】
ここで、再び、図４に戻って説明を続ける。
【０１１３】
上記のような調整によりステップＳ５で、セル占有率が基準内になると、ステップＳ６でディレイの計算が行われる。ステップＳ６で計算されたディレイに基づいてステップＳ７でパスディレイリストを出力装置１３に表示するとともに、ステップＳ８でパス経路を出力装置１３に表示する。
【０１１４】
図２２にディレイの計算及び表示方法を説明するための図を示す。図２２（Ａ）はパス経路を示し、図２２（Ｂ）はディレイリストを示す。
【０１１５】
図２２では、セルＢa〜Ｂeの間のディレイを計算し、表示する例について説明する。
【０１１６】
セルＢaとセルＢb、セルＢbとセルＢc、セルＢcとセルＢd、セルＢdとセルＢeの各機能ブロック間のネット線長を接続関係にある機能ブロックの接続関係のあるピン座標を使用することによりマンハッタン長を用いて求める。求められたマンハッタン長によりネットディレイ、ゲートディレイを既存のテクノロジ固有の計算式に当てはめて計算し、例えば、図２２（Ａ）に示すようにパスの経路を表示するとともに、図２２（Ｂ）に示すような詳細ディレイリストを表示する。
【０１１７】
図２２（Ｂ）において、Tlineはネットディレイを、Tcellはゲートディレイを、Totalは累積ディレイを表す。
【０１１８】
図２２（Ｂ）に示すディレイリストにより設計者は、ステップＳ９でディレイが基準値を超えたか否かを判断する。ステップＳ９で基準値を超えてないければ、所望の回路速度が得られるため、処理を終了する。また、ステップＳ９で基準値を越えれば、ステップＳ１０でセルＢa、Ｂb、Ｂc、Ｂd、Ｂeやセルが含まれる機能ブロックを他のコートに移動させることにより、ディレイが基準値を超えないようにする。
【０１１９】
図２３、図２４はセルＢｃの移動を行うための動作説明図を示す。図２３（Ａ）は複数パスの接続関係及びパス上のセルＢa〜Ｂeの割り付け例である。
【０１２０】
図２３（Ａ）では、セルＢa→Ｂb→Ｂd→Ｂeが接続されているパスと、セルＢa→Ｂb→Ｂcが接続されているパスの２パスが存在する。なお、セルＢaはコートＣ9に、セルＢbはコートＣ5に、セルＢcはコートＣ4に、セルＢd、ＢeはコートＣ3に割り付けられている。
【０１２１】
セルＢcをコートＣ4からコートＣ8に移動させ、図１７〜図２１に示す仮配置方法により再仮配置を行った場合、パスの長さが大きい方が優先して配置されるため、セルＢa→Ｂb→Ｂd→Ｂeの仮配置が先に行われる。これにより図２３（Ｂ）に示すようにセルＢbがコートＣ5内で右方向に移動する。これに伴い、セルＢa→Ｂb間、セルＢb→Ｂd間のネット線長が変化する。この結果として、セルＢa→Ｂb→Ｂd→Ｂeのディレイが変化する。これでは、所望のディレイを得るために機能ブロックを移動させた結果、他のパスのディレイが変化し、所望のディレイが得られなくなる可能性があり、設計が複雑になる。
【０１２２】
そこで、セルＢcが移動しても、セルＢa→Ｂb→Ｂd→Ｂeのディレイが変化しないようにする必要がある。このためには、セルＢcの移動によって、セルＢbの移動が起こらないようにする必要がある。
【０１２３】
セルＢcの移動によって、セルＢbの移動が起こらないようにするためには、図２４に示すようにコートＣ5内のセルＢbが存在する位置にごく狭いコートＣ10を設定し、コートＣ10にセルＢbを割り付ける。コートＣ10にセルＢbを割り付けることにより、セルＢbはごく狭いコートＣ10内でしか移動できない、すなわち、移動しなくなる。これにより、セルＢcの移動によるセルＢa→Ｂb間及びセルＢb−Ｂd間の線長の変化がなくなるため、セルＢa→Ｂb→Ｂd→Ｂeのディレイは、移動前と変化がなく、セルＢc−Ｂbのディレイだけを調整できるようになる。
【０１２４】
以上のようにしてセルＢcを移動させ、ディレイを基準値を超えないように調整する。
【０１２５】
調整後、ステップＳ３に戻ってセル占有率をチェックした後、再びディレイをチェックする。
【０１２６】
従来は、数十万ゲートの実装ブロックがフロアプランでの処理単位となっていたが、本実施例では回路規模に応じて仮想配置領域、すなわち、コートをＬＳＩチップＴ内や実装ブロックＰ内に作成することにより、処理単位が数万ゲート以下となり、フロアプランでのセル占有率及びディレイなどのタイミング解析を高精度に行なうことができる。
【０１２７】
これにより、設計者が意図したレイアウトイメージをフロアプラン段階で実現することが可能となり、実装設計後に発生するタイミング問題の原因を設計初期段階で究明することが可能となる。よって、設計時の手戻りを最小限に抑制することができる。このため、設計の効率化が図れる。また、ディレイが十分に考慮されるため、ＬＳＩ回路の品質向上に大きく貢献するものである。
（付記１）
所定の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計装置であって、前記所定階層のブロック設定し、配置するブロック配置処理部と、前記所定階層とは異なる階層のブロックを前記所定階層上に仮想配置する領域割付処理部と、前記所定階層及び下位階層のブロックの配置状態を評価するブロック評価処理部とを有することを特徴とする集積回路設計装置。
（付記２）
前記ブロック評価処理部は、前記下位階層のブロックの面積がその上位階層のブロックの面積に占める割合を算出する面積比計算部を有することを特徴とする付記１記載の集積回路設計装置。
（付記３）
前記面積比計算部は、少なくとも配線及び配線禁止領域を反映することを特徴とする付記２記載の集積回路設計装置。
（付記４）
前記ブロック評価処理部は、前記面積比計算部で算出された面積比を図形により表示することを特徴とする付記２又は３記載の集積回路設計装置。
（付記５）
前記ブロック評価処理部は、前記ブロック間の経路のディレイを算出するディレイ計算処理部を有することを特徴とする付記１又は２記載の集積回路設計装置。
（付記６）
前記ブロック評価処理部は、前記ディレイ計算処理部で計算されたディレイのうち基準値を超えたパスを表示することを特徴とする付記５記載の集積回路設計装置。
（付記７）
前記ブロック評価処理部は、前記ディレイ計算処理部で計算されたディレイが前記基準値を超えたパスをリスト表示するパスリスト表示処理部を有することを特徴とする付記６記載の集積回路設計装置。
（付記８）
前記ブロック評価処理部は、前記ディレイ計算処理部で計算されたディレイが前記基準値を超えたパスの経路を表示するパス経路表示処理部を有することを特徴とする付記６又は７記載の集積回路設計装置。
（付記９）
前記ブロックを再編集可能としたことを特徴とする付記１乃至８のいずれか一項記載の集積回路設計装置。
（付記１０）
前記ブロックの位置の正当性を判断し、前記ブロックが正当な位置となるように前記ブロックの位置を補正する補正部を有することを特徴とする付記１乃至９のいずれか一項記載の集積回路設計装置。
（付記１１）
所定の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計方法であって、前記所定の階層のブロックを設定し、配置するブロック配置処理手順と、前記所定階層とは異なる階層のブロックを前記所定階層上に仮想配置するブロック割付処理手順と、前記所定階層及び下位階層のブロックの配置状態を評価するブロック評価処理手順とを有することを特徴とする集積回路設計方法。
（付記１２）
前記ブロック評価処理手順は、前記下位の階層のブロックの面積がその上位の階層のブロックの面積に占める割合を算出することを特徴とする付記１１記載の集積回路設計方法。
（付記１３）
前記面積比の計算は、少なくとも配線及び配線禁止領域を反映することを特徴とする付記１２記載の集積回路設計方法。
（付記１４）
前記ブロック評価処理手順は、算出された面積比を図形により表示することを特徴とする付記１２又は１３記載の集積回路設計方法。
（付記１５）
前記ブロック評価処理手順は、前記ブロック間の経路のディレイを算出することを特徴とする付記１１乃至１４のいずれか一項記載の集積回路設計方法。
（付記１６）
前記ブロック評価処理手順は、計算されたディレイのうち基準値を超えたパスを表示することを特徴とする付記１５記載の集積回路設計方法。
（付記１７）
前記ブロック評価処理手順は、計算されたディレイが前記基準値を超えたパスをリスト表示することを特徴とすることを特徴とする付記１６記載の集積回路設計方法。
（付記１８）
前記ブロック評価処理手順は、計算されたディレイが前記基準値を超えたパスの経路を表示することを特徴とする付記１６又は１７記載の集積回路設計方法。
（付記１９）
前記ブロックを再編集可能としたことを特徴とする付記１１乃至１８のいずれか一項記載の集積回路設計方法。
（付記２０）
前記ブロックの位置の正当性を判断し、前記ブロックが正当な位置となるように前記ブロックの位置を補正することを特徴とする付記１１乃至１９のいずれか一項記載の集積回路設計方法。
（付記２１）
所定の階層毎にブロックを設定し、配置することにより集積回路の設計を行う集積回路設計プログラムであって、前記所定の階層にブロックを設定し、配置するブロック配置処理手順と、前記所定階層とは異なる階層のブロックを前記所定階層上に仮想配置するブロック割付処理手順と、前記所定階層及び下位階層のブロックの配置状態を評価するブロック評価処理手順とを有することを特徴とするコンピュータで実行可能なプログラム。
（付記２２）
前記ブロック評価処理手順は、前記下位の階層のブロックの面積がその上位の階層のブロックの面積に占める割合を算出することを特徴とする付記２１記載のプログラム。
（付記２３）
前記面積比の計算は、少なくとも配線及び配線禁止領域を反映することを特徴とする付記２２記載のプログラム。
（付記２４）
前記ブロック評価処理手順は、算出された面積比を図形により表示することを特徴とする付記２２又は２３記載のプログラム。
（付記２５）
前記ブロック評価処理手順は、前記ブロック間の経路のディレイを算出することを特徴とする付記２１乃至２４のいずれか一項記載のプログラム。
（付記２６）
前記ブロック評価処理手順は、計算されたディレイのうち基準値を超えたパスを表示することを特徴とする付記２５記載のプログラム。
（付記２７）
前記ブロック評価処理手順は、計算されたディレイが前記基準値を超えたパスをリスト表示することを特徴とすることを特徴とする付記２６記載のプログラム。
（付記２８）
前記ブロック評価処理手順は、計算されたディレイが前記基準値を超えたパスの経路を表示することを特徴とする付記２６又は２７記載のプログラム。
（付記２９）
前記ブロックを編集可能としたことを特徴とする付記２１乃至２８のいずれか一項記載のプログラム。
（付記３０）
前記ブロックの位置の正当性を判断し、前記第１〜第３ブロックが正当な位置となるように前記ブロックの位置を補正することを特徴とする付記２１乃至２９のいずれか一項記載のプログラム。
【０１２８】
なお、本発明は上記実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形例が考えられることは言うまでもない。
【図面の簡単な説明】
【０１２９】
【図１】本発明の一実施例のブロック構成図である。
【図２】集積回路設計プログラムの機能ブロック図である。
【図３】機能ブロック、実装ブロック、仮想配置領域（コート）、パスを説明するための図である。
【図４】本発明の一実施例の設計方法のフローチャートである。
【図５】実装ブロック及びコートの作成を説明するための図である。
【図６】コートのセル占有率の表示例を示す図である。
【図７】セルの配置が不可能な領域を反映したグラフ表示を示す図である。
【図８】階層ブロック毎の切替表示を示す図である。
【図９】複数のコートをまとめる場合の動作を説明するための図である。
【図１０】コート情報の画面表示例を示す図である。
【図１１】パラメータ設定によるセル占有率の自動調整について説明するための図である。
【図１２】コート間での論理セルの移動を説明するための図である。
【図１３】機能ブロックとセルのコートへの割付を解除する動作を説明するための図である。
【図１４】複数のコートを結合させる動作を説明するための図である。
【図１５】単一のコートを複数のコートに分割編集する動作を説明するための図である。
【図１６】コートの重なり及び実装ブロックからのはみ出しを補正する動作を説明するための図である。
【図１７】パス上のセルの配置方法を説明するための図である。
【図１８】パス上のセルの配置方法を説明するための図である。
【図１９】分岐するパス上のセルの配置方法を説明するための図である。
【図２０】分岐するパス上のセルの配置方法を説明するための図である。
【図２１】分岐するパス上のセルの配置方法を説明するための図である。
【図２２】ディレイの計算及び表示方法を説明するための図である。
【図２３】セルを他のコートに移動するための動作説明図を示す。
【図２４】セルを他のコートに移動するための動作説明図を示す。
【符号の説明】
【０１３０】
１ 集積回路設計装置
１１ データ処理装置
１２ 入力装置
１３ 出力装置
２１ ハードディスクドライブ
２２ ＲＡＭ
２３ ＣＰＵ
２４ 可換式記憶装置
２５ 通信装置
３１ 集積回路設計プログラム
４１ フロアプラン作成・表示処理部
４２ 機能ブロック割付処理部
４３ 面積比率計算処理部
４４ パスディレイ計算処理部
４５ パスリスト表示処理部
４６ パス経路表示処理部
【図１】
2008176798.tif 000003
【図２】
2008176798.tif 000004
【図３】
2008176798.tif 000005
【図４】
2008176798.tif 000006
【図５】
2008176798.tif 000007
【図６】
2008176798.tif 000008
【図７】
2008176798.tif 000009
【図８】
2008176798.tif 000010
【図９】
2008176798.tif 000011
【図１０】
2008176798.tif 000012
【図１１】
2008176798.tif 000013
【図１２】
2008176798.tif 000014
【図１３】
2008176798.tif 000015
【図１４】
2008176798.tif 000016
【図１５】
2008176798.tif 000017
【図１６】
2008176798.tif 000018
【図１７】
2008176798.tif 000019
【図１８】
2008176798.tif 000020
【図１９】
2008176798.tif 000021
【図２０】
2008176798.tif 000022
【図２１】
2008176798.tif 000023
【図２２】
2008176798.tif 000024
【図２３】
2008176798.tif 000025
【図２４】
2008176798.tif 000026