(57)【要約】【課題】設計期間の短縮が可能なレイアウト設計方法を提供すること。【解決手段】マクロセルに配置補助領域を設定し（ステップ２３）、コア領域からマクロセル及び配置補助領域を除く最大スタンダードセル領域の面積を算出し（ステップ２５）、複数のマクロセルを配置したフロアプラン結果から実スタンダードセル領域の面積を算出し（ステップ２７）、最大スタンダードセル領域の面積とスタンダードセル領域面積とに基づいてフロアプランにおけるデッドスペース率を算出する（ステップ２８）。そして、そのデッドスペース率に基づいてマクロセルの配置を変更するか否かを判断する（ステップ２９）。そして、デッドスペース率と基準値とを比較し、該比較結果に基づいてデッドスペース率を基準値以下とするようにフロアプランのマクロセルの配置を変更する（ステップ２６）。【選択図】      図１
2006277668.tif 000002
【特許請求の範囲】
【請求項１】
複数のマクロセルを含む半導体集積回路装置のレイアウトデータをコンピュータにて自動生成するレイアウト設計方法であって、
前記各マクロセルに配置補助領域を設定し記憶手段に記憶するステップと、
コア領域から前記マクロセル及び配置補助領域を除く最大スタンダードセル領域の面積を算出し、該最大スタンダードセル領域の面積を記憶手段に記憶するステップと、
前記複数のマクロセルを配置したフロアプラン結果から実スタンダードセル領域の面積を算出し、該実スタンダードセル領域の面積を記憶手段に記憶するステップと、
前記記憶手段に記憶した最大スタンダードセル領域の面積と前記実スタンダードセル領域の面積とを読み出し、両面積に基づいて前記フロアプランにおけるデッドスペース率を算出するステップと、
前記デッドスペース率と基準値とを比較し、該比較結果に基づいて前記デッドスペース率を前記基準値以下とするように前記フロアプランのマクロセルの配置をコンピュータが変更するステップと、
を備えたことを特徴とするレイアウト設計方法。
【請求項２】
前記フロアプラン結果に基づいて、前記マクロセル間の極狭領域を、スタンダードセルが自動配置されない配置禁止領域に設定し、前記マクロセルと配置補助領域と前記配置禁止領域のサイズに基づいて前記実スタンダードセル領域を算出することを特徴とする請求項１記載のレイアウト設計方法。
【請求項３】
前記デッドスペース率を算出するステップにおいて、前記最大スタンダードセル領域と前記実スタンダードセル領域の面積とからデッドスペース量を算出し、該デッドスペース量と前記最大スタンダードセル領域とから前記デッドスペース率を算出することを特徴とする請求項１又は請求項２記載のレイアウト設計方法。
【請求項４】
信号配線の混雑度、タイミング条件の少なくとも一方に基づいて前記マクロセルの配置位置を決定することを特徴とする請求項１，請求項２又は請求項３記載のレイアウト設計方法。
【請求項５】
複数のマクロセルを含む半導体集積回路装置のレイアウトデータを自動生成するレイアウト設計装置であって、
前記各マクロセルに配置補助領域を設定し記憶手段に記憶する配置補助領域算出手段と、
コア領域から前記マクロセル及び配置補助領域を除く最大スタンダードセル領域の面積を算出し、該最大スタンダードセル領域の面積を記憶手段に記憶する最大スタンダードセル領域算出手段と、
前記複数のマクロセルを配置したフロアプラン結果から実スタンダードセル領域の面積を算出し、該実スタンダードセル領域の面積を記憶手段に記憶する実スタンダードセル領域算出手段と、
前記記憶手段に記憶した最大スタンダードセル領域の面積と前記実スタンダードセル領域の面積とを読み出し、両面積に基づいて前記フロアプランにおけるデッドスペース率を算出するデッドスペース算出手段と、
前記デッドスペース率と基準値とを比較し、該比較結果に基づいて前記マクロセルの配置変更が必要か否かを判定するデッドスペース判定手段と、
前記デッドスペース判定手段の判定結果に基づき、前記デッドスペース率を前記基準値以下とするように前記フロアプランのマクロセルの配置をコンピュータが変更するフロアプラン実施手段と、
を備えたことを特徴とするレイアウト設計装置。
【請求項６】
前記フロアプラン実施手段は、前記マクロセル間の極狭領域を、スタンダードセルが自動配置されない配置禁止領域に設定し、
前記実スタンダードセル領域算出手段は、前記マクロセルと配置補助領域と前記配置禁止領域のサイズに基づいて前記実スタンダードセル領域を算出する、
ことを特徴とする請求項５記載のレイアウト設計装置。
【請求項７】
前記デッドスペース算出手段は、前記最大スタンダードセル領域と前記実スタンダードセル領域の面積とからデッドスペース量を算出し、該デッドスペース量と前記最大スタンダードセル領域とから前記デッドスペース率を算出することを特徴とする請求項５又は請求項６記載のレイアウト設計装置。
【請求項８】
前記フロアプラン実施手段は、信号配線の混雑度、タイミング条件の少なくとも一方に基づいて前記マクロセルの配置位置を決定する、
ことを特徴とする請求項５，請求項６又は請求項７記載のレイアウト設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レイアウト設計方法及びレイアウト設計装置に関するものである。
近年、半導体集積回路装置（ＬＳＩ）は、大規模化が進んでおり、それに伴って設計期間も益々増大している。設計期間の短縮を図るには、設計フローでの手戻り工程を如何に少なくするかが重要であり、それにはレイアウト設計においてフロアプランの最適な設計を行うことが要求される。
【背景技術】
【０００２】
従来、ＬＳＩの設計では、論理合成により得られたネットリストに基づいてフロアプランを行い、それに基づいてセルの配置／配線（レイアウト）を行った後、そのレイアウトに対する回路シミュレーションを行って動作の検証を行う。この検証により、そのチップレイアウトが信号や電源の信頼性を保証できる程度であるか否かを判断する。
【０００３】
多くのＬＳＩは、スタンダードセルとマクロセルとから構成され、マクロセル及びスタンダードセルを配置してＬＳＩのフロアプラン（レイアウト）が決定される。大規模なＬＳＩには、１００個以上のマクロセルが使用される。マクロセルは、配線性や、タイミング収束性を考慮し相対的な位置や回転が決められる（例えば、特許文献１参照）。スタンダードセルは、マクロセル以外の領域（スタンダードセル領域）に配置される。
【０００４】
チップサイズはマクロセルの大きさと無関係に決定されているため、マクロセルとマクロセルに挟まれた領域が生じることがある。この領域（極狭領域）にスタンダードセルが置かれると、信号ネットの回り込み（迂回ネット）が起こり、配線性やタイミング収束性が悪化される。このため、マクロセル間の極狭領域は、スタンダードセルが自動配置されないように配置禁止領域（デッドスペース）に設定される。
【特許文献１】特開２００４−１３２０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のようにデッドスペースを設定すると、スタンダードセルの配置が可能な領域が小さくなるため、全てのスタンダードセルを配置することができなかったり、マクロセル及びスタンダードセルを接続する配線を形成する領域（配線領域）が少なくなって未結線ネットが生じることがある。また、スタンダードセルの配置位置によっては、信号ネットの回り込みが生じ、タイミング不良を生じることがある。この場合、マクロセルの配置からやり直さなければならない。即ち、マクロセルの配置、スタンダードセルの配置、配線、タイミング検証を繰り返さなければならない。各処理には長い時間がかかる。つまり、デッドスペースにスタンダードセルを配置すること、デッドスペースを設定することが配線性やタイミング収束性を悪化させる。このため、設計期間が増加したり、チップサイズが大きくなるという問題があった。
【０００６】
本発明は上記問題点を解決するためになされたものであって、その目的は、設計期間の短縮が可能なレイアウト設計方法及びレイアウト設計装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、請求項１に記載の発明によれば、各マクロセルに配置補助領域を設定し、コア領域からマクロセル及び配置補助領域を除く最大スタンダードセル領域の面積を算出し、複数のマクロセルを配置したフロアプラン結果から実スタンダードセル領域の面積を算出し、最大スタンダードセル領域の面積とスタンダードセル領域面積とに基づいてフロアプランにおけるデッドスペース率を算出する。そして、そのデッドスペース率に基づいてマクロセルの配置を変更するか否かを判断するようにした。従って、マクロセルを配置したフロアプランの状態が判断され、スタンダードセルを配置するまえにフロアプランの変更を行うことができる。このため、マクロセルのサイズを考慮した設計ループが小さくなり、設計の戻りが少なくなるため、スタンダードセルを配置した後にフロアプランを変更する場合に比べて短時間でフロアプランの決定を行うことができる。また、デッドスペース率と基準値とを比較し、該比較結果に基づいてデッドスペース率を基準値以下とするようにフロアプランのマクロセルの配置を変更することで、コア領域のサイズを大きくすることなくレイアウトを設計することができる。
【０００８】
請求項２に記載の発明によれば、フロアプラン結果に基づいて、マクロセル間の極狭領域が、スタンダードセルが自動配置されない配置禁止領域に設定され、マクロセルと配置補助領域と配置禁止領域のサイズに基づいて実スタンダードセル領域を算出される。配置禁止領域はデッドスペースであり、デッドスペース率を小さくする、例えば配置禁止領域が生じないようにマクロセルの配置を変更することで、実スタンダードセル領域の面積を大きくし、スタンダードセルの配置を容易にする、つまりスタンダードセルの配置品質を向上させることができる。
【０００９】
請求項３に記載の発明のように、デッドスペース率を算出するステップにおいて、最大スタンダードセル領域と実スタンダードセル領域の面積とからデッドスペース量を算出し、該デッドスペース量と最大スタンダードセル領域とからデッドスペース率を算出する。
【００１０】
請求項４に記載の発明によれば、信号配線の混雑度、タイミング条件の少なくとも一方に基づいてマクロセルの配置位置が決定される。従って、配線やタイミングの収束性がよいマクロセルの配置を行うことができる。
【００１１】
請求項５に記載の発明によれば、各マクロセルに配置補助領域を設定し、コア領域からマクロセル及び配置補助領域を除く最大スタンダードセル領域の面積を算出し、複数のマクロセルを配置したフロアプラン結果から実スタンダードセル領域の面積を算出し、最大スタンダードセル領域の面積とスタンダードセル領域面積とに基づいてフロアプランにおけるデッドスペース率を算出する。そして、そのデッドスペース率に基づいてマクロセルの配置を変更するか否かを判断するようにした。従って、マクロセルを配置したフロアプランの状態が判断され、スタンダードセルを配置するまえにフロアプランの変更を行うことができる。このため、マクロセルのサイズを考慮した設計ループが小さくなり、設計の戻りが少なくなるため、スタンダードセルを配置した後にフロアプランを変更する場合に比べて短時間でフロアプランの決定を行うことができる。また、デッドスペース率と基準値とを比較し、該比較結果に基づいてデッドスペース率を基準値以下とするようにフロアプランのマクロセルの配置を変更することで、コア領域のサイズを大きくすることなくレイアウトを設計することができる。
【００１２】
請求項６に記載の発明によれば、フロアプラン結果に基づいて、マクロセル間の極狭領域が、スタンダードセルが自動配置されない配置禁止領域に設定され、マクロセルと配置補助領域と配置禁止領域のサイズに基づいて実スタンダードセル領域を算出される。配置禁止領域はデッドスペースであり、デッドスペース率を小さくする、例えば配置禁止領域が生じないようにマクロセルの配置を変更することで、実スタンダードセル領域の面積を大きくし、スタンダードセルの配置を容易にする、つまりスタンダードセルの配置品質を向上させることができる。
【００１３】
請求項７に記載の発明のように、デッドスペース率を算出するステップにおいて、最大スタンダードセル領域と実スタンダードセル領域の面積とからデッドスペース量を算出し、該デッドスペース量と最大スタンダードセル領域とからデッドスペース率を算出する。
【００１４】
請求項８に記載の発明によれば、信号配線の混雑度、タイミング条件の少なくとも一方に基づいてマクロセルの配置位置が決定される。従って、配線やタイミングの収束性がよいマクロセルの配置を行うことができる。
【発明の効果】
【００１５】
以上記述したように、本発明によれば、設計期間の短縮が可能なレイアウト設計方法及びレイアウト設計装置を提供することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明を具体化した一実施形態を図面に従って説明する。
図２は、レイアウト処理を実行するコンピュータシステム１１の概略構成図である。
このコンピュータ１１は、一般的なＣＡＤ（Computer Aided Design ）装置からなり、中央処理装置（以下、ＣＰＵという）１２、メモリ１３、記憶装置１４、表示装置１５、入力装置１６、及び、ドライブ装置１７により構成され、それらはバス１８を介して相互に接続されている。
【００１７】
ＣＰＵ１２は、メモリ１３を利用してプログラムを実行し、レイアウト設計等の必要な処理を実現する。メモリ１３には、各種処理を提供するために必要なプログラムとデータが格納され、メモリ１３としては、通常、キャッシュ・メモリ、システム・メモリおよびディスプレイ・メモリを含む。
【００１８】
表示装置１５は、レイアウト表示、パラメータ入力画面等の表示に用いられ、これにはＣＲＴ，ＬＣＤ，ＰＤＰ等が用いられる。入力装置１６は、ユーザからの要求や指示，パラメータの入力に用いられ、これにはキーボードおよびマウス装置（図示せず）等が用いられる。
【００１９】
記憶装置１４は、通常、磁気ディスク装置、光ディスク装置、光磁気ディスク装置を含む。この記憶装置１４には、図１に示す各ステップからなる半導体装置（半導体集積回路装置）のレイアウト設計処理のためのプログラムデータとファイル４１〜４７が格納され、ＣＰＵ１２は、入力装置１６による指示に応答してプログラム，データをメモリ１３へ転送し、それを実行する。
【００２０】
ＣＰＵ１２が実行するプログラムデータは、記録媒体１９にて提供される。ドライブ装置１７は、記録媒体１９を駆動し、その記憶内容にアクセスする。ＣＰＵ１２は、ドライブ装置１７を介して記録媒体１９からプログラムデータを読み出し、それを記憶装置１４にインストールする。
【００２１】
記録媒体１９としては、磁気テープ（MT）、メモリカード、フレキシブルディスク、光ディスク（CD-ROM,DVD-ROM,… ）、光磁気ディスク（MO,MD,…）等、任意のコンピュータ読み取り可能な記録媒体を使用することができる。この記録媒体１９に、上述のプログラム，データを格納しておき、必要に応じて、メモリ１３にロードして使用することもできる。
【００２２】
尚、記録媒体１９には、通信媒体を介してアップロード又はダウンロードされたプログラムデータを記録した媒体、ディスク装置を含む。更に、コンピュータによって直接実行可能なプログラムを記録した記録媒体だけでなく、いったん他の記録媒体（ハードディスク等）にインストールすることによって実行可能となるようなプログラムを記録した記録媒体や、暗号化されたり、圧縮されたりしたプログラムを記録した記録媒体も含む。
【００２３】
次に、半導体装置のレイアウト設計処理を、図１に従って説明する。
図１は、本実施形態の半導体装置のレイアウト処理の概略を示すフローチャートである。図２のＣＰＵ１２は、図１に示すステップ２１〜ステップ３２に従ってレイアウト処理を実行し、ＬＳＩのレイアウトデータを生成する。つまり、ＣＰＵ１２は、ステップ２１〜ステップ３２の処理を実行することで、配置補助領域算出手段，最大スタンダードセル領域算出手段，実スタンダードセル領域算出手段，デッドスペース算出手段，デッドスペース判定手段，フロアプラン実施手段として機能する。
【００２４】
先ず、ステップ２１（レイアウト条件決定処理）において、図２に示すＣＰＵ１２は、入力装置１６又は図示しないファイルから入力したＬＳＩの仕様データに基づいて、テクノロジ（配線幅等）や配線層数等のレイアウト条件を決定する。仕様データは、所定の信号を伝達する配線に対する配線長の制限、タイミング条件を含む。
【００２５】
ステップ２２（論理合成処理）において、ＣＰＵ１２は、ステップ２１において決定したレイアウト条件とセルライブラリ４１と設計データ４２に基づいてネットリスト４３を生成する。セルライブラリ４１は、複数のマクロセル及びスタンダードセルの情報を含むデータベースである。マクロセル及びスタンダードセルの情報は、サイズ、構成、端子位置、電気的特性を含む。設計データ４２は、例えばハードウェア記述言語を用いて回路の動作を記述したものである。ネットリスト４３は、回路を構成するマクロセル及びスタンダードセル（名称）、及びそれらを接続するネット情報を含む。尚、セルライブラリ４１，設計データ４２，ネットリスト４３、後述する各ファイルは例えば図２の記憶装置１４に作成される。
【００２６】
ステップ２３（配置補助領域算出処理）において、ＣＰＵ１２は、マクロセルの辺のうちの少なくとも１つに、ＬＳＩに搭載されるマクロセルの種類毎、又はマクロセル毎に一定長の配置補助領域を設定する。図３には、マクロセルＭａの周辺に沿って、該マクロセルＭａを囲むように設定した配置補助領域Ｈａを示す。図３において、配置補助領域Ｈａは、マクロセルＭａに対して、図の左右方向（ｘ方向）においてそれぞれ幅Ｌ１，Ｌ２を持ち、上下方向（ｙ方向）においてそれぞれ幅Ｌ３，Ｌ４を持つ。これらの幅Ｌ１〜Ｌ４は、マクロセルとスタンダードセルの隣接距離又は、マクロセル周りの電源配線と信号配線のリソース（配線チャネル）を考慮した値に設定されている。つまり、ＣＰＵ１２は、マクロセルＭａを含み、そのマクロセルＭａの領域よりも、マクロセルとスタンダードセルの隣接距離又は、マクロセル周りの電源配線と信号配線のリソース（配線チャネル）を考慮した大きな配置用領域Ｍｈを設定する。そして、ＣＰＵ１２は、設定した領域の情報（幅Ｌ１〜Ｌ４、サイズ（マクロセルＭａのサイズを（Ｍｘ、Ｍｙ）とした場合、配置用領域Ｍｈのサイズ（Ｈｘ、Ｈｙ）は、（Ｈｘ＝Ｍｘ＋Ｌ１＋Ｌ２，Ｈｙ＝Ｍｙ＋Ｌ３＋Ｌ４））をメモリ１３に格納する。
【００２７】
尚、マクロセルの種類毎に個別の値を設定してもよいし、マクロセル毎に個別の値を設定してもよい。また、対向する辺のそれぞれに配置補助領域Ｈａを設定したが、対向する辺の一方に配置補助領域Ｈａを設定しても良い。この場合、配置補助領域Ｈａの幅は、Ｌｘ＝Ｌ１＋Ｌ２，Ｌｙ＝Ｌ３＋Ｌ４となる。
【００２８】
ステップ２４（コア領域算出処理）において、ＣＰＵ１２は、コア領域（スタンダードセルのレイアウト領域）をサイズを算出し、チップサイズ（Lcorex，Lcorey）を確定する。この時、ＣＰＵ１２は、例えば特願２００３−３０３４９５の明細書及び図面に記載されたコアサイズの見積り方法を用い、コア領域のサイズを算出する。そして、ＣＰＵ１２は、算出したコア領域のサイズをファイル４４に格納する。
【００２９】
ステップ２５（最大スタンダードセル領域算出）において、ＣＰＵ１２は、最大スタンダードセル領域を求める。この最大スタンダードセル領域は、ファイル４４に格納したコア領域のサイズ（面積）から配置用領域の面積を除いた面積である。即ち、ＣＰＵ１２は、チップサイズ（Lcorex，Lcorey）と、各マクロセルに対応する配置用領域Ｍｈのサイズ（Ｈｘ，Ｈｙ）とから、
最大スタンダードセル領域＝Lcorex×Lcorey−Σ（Ｈｘ×Ｈｙ）
＝Lcorex×Lcorey−Σ（（Ｍｘ＋Ｌ１＋Ｌ２）×（Ｍｙ＋Ｌ３＋Ｌ４））
を演算する。そして、ＣＰＵ１２は、演算結果をメモリ１３に格納する。
【００３０】
ステップ２６（フロアプラン実施処理）において、ＣＰＵ１２は、ステップ２４において決定したサイズのコア領域に対してフロアプランを実施する。このフロアプランの実施には、マクロセルの配置、電源配線の配置を含む。配線性や、タイミング収束性によりマクロセルの配置位置を決定する。ＣＰＵ１２は、信号配線の混雑度、タイミング条件に基づいてマクロセルを配置する。例えば、ＣＰＵ１２は、信号配線の密度が高くなりすぎないようにマクロセルの配置を決定し、所定の信号を伝達する配線の長さ、信号のタイミング条件に従って、その信号を伝達する配線にて接続されるマクロ同士を近接位置に配置する。更に、ＣＰＵ１２は、マクロセル間の極狭領域を、スタンダードセルが自動配置されないように配置禁止領域（デッドスペース）に設定する。そして、ＣＰＵ１２は、実施結果、即ちＬＳＩのレイアウトデータをファイル４５に格納する。
【００３１】
ステップ２７（実スタンダードセル領域算出処理）において、ＣＰＵ１２は、ステップ２６において決定されたマクロセルの配置位置、配置禁止領域をファイル４５から読み出し、マクロセルの配置位置、配置禁止領域から、スタンダードセルが配置可能な領域の大きさ（面積）を算出する。そして、ＣＰＵ１２は、その算出結果をメモリ１３に格納する。
【００３２】
尚、上記の処理におけるステップ２５とステップ２６，２７は、並列的に示されている。即ち、ＣＰＵ１２は、マルチスレッド等の手法やマルチＣＰＵ等の構成により、ステップ２５とステップ２６，２７を並列的に実行する。尚、ステップ２５〜２７を直列的に実行しても良い。また、ステップ２５〜２７は、これに限定されず、例えばステップ２６をステップ２５より先行して実施しても良い。
【００３３】
ステップ２８（デッドスペース算出処理）において、ＣＰＵ１２は、ステップ２５において算出した最大スタンダードセル領域の面積と、ステップ２７において算出した実スタンダードセル領域の面積とをメモリ１３から読み出し、それらの面積に基づいてデッドスペース量及びデッドスペース率を算出する。ＣＰＵ１２は、最大スタンダードセル領域の面積をＳmax 、フロアプラン実施後のスタンダードセル領域の面積をＳf とし、デッドスペース量Ｓd0、デッドスペース率Ｒd0を、
Ｓd0＝Ｓmax −Ｓf
Ｒd0＝Ｓd0／Ｓmax
により算出する。
【００３４】
ステップ２９（デッドスペース判定処理）において、ＣＰＵ１２は、ステップ２８において算出したデッドスペース率が基準値を下回るか検証する。基準値Ｒthは、過去の配置配線結果やシミュレーション等により、スタンダードセルの配置と配線が可能な値に設定されている。ＣＰＵ１２は、デッドスペース率Ｒd0と基準値Ｒthとを比較し、デッドスペース率Ｒd0が基準値Ｒthを超えた時、ステップ２６に戻り、フロアプランを変更する、即ちマクロセルの位置や配置方向を変更（マクロセルの回転）したレイアウトデータを生成し、そのレイアウトデータに基づくデッドスペース率Ｒd0を算出する。そして、ＣＰＵ１２は、デッドスペース率Ｒd0が基準値Ｒth以下であれば基準を満足しているとして次のステップに移行する。
【００３５】
即ち、ＣＰＵ１２は、ステップ２６〜２９の処理を繰り返し実行することで、デッドスペース率Ｒd0が基準値Ｒthを越えないようにマクロセルの配置位置・配置方向を変更する。この処理ループは、エリアを重視してマクロセルの配置を行うループであり、スタンダードセルの配置や信号配線、タイミング検証を含まないため、処理負荷が少なく、短時間で複数回のループを実施することができる。尚、マクロセルの配置位置・配置方向の変更に伴って電源配線の配置を変更することは言うまでもない。
【００３６】
ステップ３０（簡易配置配線処理）において、ＣＰＵ１２は、フロアプラン後の実質的なスタンダードセル領域にスタンダードセルを簡易的に配置し、マクロセル、スタンダードセル等を接続する配線の位置を決定する。このステップ３０における配置配線処理は、後述するステップ３２における配置配線処理比べて概略的である。例えば、ＣＰＵ１２は、複数のスタンダードセルを１つのまとまり（セル集合体）として扱い、複数の集合体を配置する。集合体の数は、スタンダードセルの数よりも少ないため、集合体の配置に要する時間がスタンダードセルの配置に要する時間に比べて極めて短い。従って、ＣＰＵ１２は、集合体によりスタンダードセルを簡易的に配置することで、スタンダードセルを大まかに配置するための時間を短縮している。そして、ＣＰＵ１２は、配置・配線結果のレイアウトデータをファイル４６に格納する。
【００３７】
ステップ３１（配線性・タイミング集束性判定処理）において、ＣＰＵ１２は、レイアウトデータの配線性やタイミング収束性を検証する、即ちファイル４６に格納したレイアウトデータが配線性やタイミング収束性を満足しているか否かを判断する。満足している場合にはステップ３２に移行し、満足していない、即ち改善が必要な場合、ＣＰＵ１２は、必要性に応じてステップ２４又はステップ２６に戻る。例えば、ＣＰＵ１２は、改善が必要な場合、先ずステップ３１からステップ２６に戻り、該ステップ２６においてマクロセルの配置を変更する。それでも配線性・タイミング収束性が満足しない場合、ＣＰＵ１２は、ステップ２４においてコア領域のサイズを変更する。
【００３８】
ステップ３２（詳細配置配線処理）において、ＣＰＵ１２は、スタンダードセルの詳細な配置を決定し、マクロセル、スタンダードセル等を接続する配線の位置を決定する。例えば、ＣＰＵ１２は、概略的に配置したスタンダードセルに対して、配線の接続状態、例えば配線長が短くなるように複数のスタンダードセルを互いに入れ替えることで、配線性。タイミング性を考慮したスタンダードセルの配置位置を決定する。また、ＣＰＵ１２は、配置位置を決定したスタンダードセルやマクロセル等を接続する配線の位置を決定する。そして、ＣＰＵ１２は、位置を決定したレイアウトデータをファイル４７に格納する。
【００３９】
次に、上記のように構成された本発明の作用を図４〜図６に従って説明する。
図４に示すように、ＬＳＩは、６個のマクロセルＭ１〜Ｍ６と、図示しない複数のスタンダードセルとを含み、ＣＰＵ１２は、コア領域５１にマクロセルＭ１〜Ｍ６及びスタンダードセルを配置する。ＣＰＵ１２は、図１に示すステップ２３において各マクロセルＭ１〜Ｍ６に配置補助領域Ｈ１〜Ｈ６を設定する。次に、ＣＰＵ１２は、ステップ２４においてコア領域５１のサイズ（Lcorex，Lcorey）を算出する。
【００４０】
図４は、マクロセルＭ１〜Ｍ６及び配置補助領域Ｈ１〜Ｈ６を整列した状態を示す。この状態ではマクロセルＭ１〜Ｍ６及び配置補助領域Ｈ１〜Ｈ６が隣接している（隙間がない）ように配列されているため、マクロセルＭ１〜Ｍ６及び配置補助領域Ｈ１〜Ｈ６を除いた領域が最大スタンダードセル領域５２である。ステップ２５において、ＣＰＵ１２は、この領域５２の面積を算出する。
【００４１】
次に、ＣＰＵ１２は、図１のステップ２６において、フロアプランを実施する。図５は、フロアプラン実施後のコア領域５１ａを示す。図５において、マクロセルＭ６とマクロセルＭ１との間、及びマクロセルＭ１とマクロセルＭ２との間に極狭のスタンダードセル配置領域が生じている。このため、ＣＰＵ１２は、図６に示すように、禁止領域Ｋ１，Ｋ２を設定する。このため、スタンダードセル領域が減少する。
【００４２】
次に、ステップ２７において、ＣＰＵ１２は、デッドスペース量Ｓd0及びデッドスペース率Ｒd0を算出する。図６に示すレイアウトの場合、デッドスペース率Ｒd0が基準値Ｒthを越えている。このため、ＣＰＵ１２は、図７に示すように、マクロセルＭ１の配置位置を変更し、マクロセルＭ６の配置方向を変更（回転）する。その結果、図７に示すコア領域５１ｂにおいて、禁止領域の設定が不要になり、図６のレイアウトと比べてスタンダードセル領域が増加する。従って、同じ面積のコア領域であっても、スタンダードセル領域が増加するため、図７に示すレイアウトでは、スタンダードセルの配置品質が向上する、即ち配線長やタイミング性を考慮してより適切な位置にスタンダードセルを配置することができる。また、スタンダードセル領域が増加するため、スタンダードセルの配置変更が容易になり、タイミングを調整しやすくなる、即ちタイミングの収束性を向上させることができる。このため、より小さいチップを短期間で開発することができる。
【００４３】
以上記述したように、本実施の形態によれば、以下の効果を奏する。
（１）マクロセルＭ１〜Ｍ６に配置補助領域Ｈ１〜Ｈ６を設定し、コア領域５１からマクロセルＭ１〜Ｍ６及び配置補助領域Ｈ１〜Ｈ６を除く最大スタンダードセル領域５２の面積を算出し、複数のマクロセルＭ１〜Ｍ６を配置したフロアプラン結果から実スタンダードセル領域の面積を算出し、最大スタンダードセル領域の面積とスタンダードセル領域面積とに基づいてフロアプランにおけるデッドスペース率を算出する。そして、そのデッドスペース率に基づいてマクロセルＭ１〜Ｍ６の配置を変更するか否かを判断するようにした。従って、マクロセルＭ１〜Ｍ６を配置した段階でフロアプランの状態が判断され、スタンダードセルを配置するまえにフロアプランの変更を行うことができる。このため、マクロセルＭ１〜Ｍ６のサイズを考慮した設計ループが小さくなり、設計の戻りが少なくなるため、スタンダードセルを配置した後にフロアプランを変更する場合に比べて短時間でフロアプランの決定を行うことができる。また、デッドスペース率と基準値とを比較し、該比較結果に基づいてデッドスペース率を基準値以下とするようにフロアプランのマクロセルの配置を変更することで、コア領域のサイズを大きくすることなくレイアウトを設計することができる。
【００４４】
（２）フロアプラン結果に基づいて、マクロセルＭ１，Ｍ２，Ｍ６間の極狭領域を、スタンダードセルが自動配置されない配置禁止領域Ｋ１，Ｋ２に設定する。マクロセルＭ１〜Ｍ６と配置補助領域Ｈ１〜Ｈ６と配置禁止領域Ｋ１，Ｋ２のサイズに基づいて実スタンダードセル領域の面積を算出する。配置禁止領域Ｋ１，Ｋ２はデッドスペースであり、デッドスペース率を小さくする、例えば配置禁止領域が生じないようにマクロセルＭ１〜Ｍ６の配置を変更することで、実スタンダードセル領域の面積を大きくし、スタンダードセルの配置を容易にする、つまりスタンダードセルの配置品質を向上させることができる。
【００４５】
（３）信号配線の混雑度、タイミング条件の少なくとも一方に基づいてマクロセルＭ１〜Ｍ６の配置位置を決定する。従って、配線やタイミングの収束性がよいマクロセルの配置を行うことができる。
【図面の簡単な説明】
【００４６】
【図１】一実施形態のレイアウト設計処理のフローチャートである。
【図２】コンピュータシステムの概略構成図である。
【図３】マクロセルの概念図である。
【図４】実スタンダードセル領域の説明図である。
【図５】コア領域のレイアウト図である。
【図６】デッドスペースを有するコア領域のレイアウト図である。
【図７】改善されたコア領域のレイアウト図である。
【符号の説明】
【００４７】
１１  コンピュータ
５１，５１ａ，５１ｂ  コア領域
５２  最大スタンダードセル領域
Ｍａ，Ｍ１〜Ｍ６  マクロセル
Ｈａ，Ｈ１〜Ｈ６  配置補助領域
Ｋ１，Ｋ２  配置禁止領域
Ｒd0  デッドスペース率
Ｒth  基準値
Ｓd0  デッドスペース量
【図１】
2006277668.tif 000003
【図２】
2006277668.tif 000004
【図３】
2006277668.tif 000005
【図４】
2006277668.tif 000006
【図５】
2006277668.tif 000007
【図６】
2006277668.tif 000008
【図７】
2006277668.tif 000009