(57)【要約】【課題】半導体集積回路のレイアウト設計工程において、一定のセル配置品質を保証し、短時間でのセル配置を可能とする。【解決手段】半導体集積回路を機能単位の各エリアに分解し、各エリアに含まれるセルを個別に配置することで半導体集積回路全体の配置を決定する。具体的には、回路情報から半導体集積回路内のセル間を接続する複数の信号線について、接続方向、入出力及び接続本数に関する信号線接続情報を抽出し、所定の規則に基づき、信号線接続情報からターゲットエリア内の全てのセルの配置を決定する。【選択図】図１
2012079151.tif 000002
【特許請求の範囲】
【請求項１】
指定されたターゲットエリアに属するセルに接続されている複数の信号線に対して、前記ターゲットエリアを基準として、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出部と、
前記ターゲットエリアに属するセルに対して、前記信号線接続情報から所定の規則に基づいて、前記ターゲットエリア内における配置決定を行うセル配置決定部と、
を備えることを特徴とする半導体集積回路レイアウト設計装置。
【請求項２】
前記セル配置決定部は、
前記ターゲットエリアに属するセルのうち、前記ターゲットエリア以外のエリアに属するセルと接続を有するセルに対して第１の配置決定を行い、
前記第１の配置後、前記ターゲットエリアに属するセルのうち、前記ターゲットエリア以外のエリアに属するセルと接続を有さないセルに対して第２の配置決定を行う請求項１の半導体集積回路レイアウト設計装置。
【請求項３】
前記セル情報抽出部は、前記第１の配置決定後のセル配置に基づき前記信号線接続情報の更新を行い、
前記セル配置決定部は、更新後の前記信号線接続情報から前記第２の配置決定を行う請求項２の半導体集積回路レイアウト設計装置。
【請求項４】
前記セル配置決定部は、前記第１の配置決定後のセルの座標位置の平均により前記第２の配置決定を行う請求項２又は３の半導体集積回路レイアウト設計装置。
【請求項５】
前記所定の規則は、第１の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第１の信号線接続本数と、前記第１の方向から１８０°回転している第２の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第２の信号線接続本数と、から前記第１の方向及び前記第２の方向における前記ターゲットエリアに属するセルの配置位置を、前記第１の信号線接続本数と前記第２の信号線接続本数とに比例させて決定し、
前記第１の方向から９０°回転している第３の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第３の信号線接続本数と、前記第３の方向から１８０°回転している第４の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第４の信号線接続本数と、から前記第３の方向及び前記第４の方向における前記ターゲットエリアに属するセルの配置位置を、前記第３の信号線接続本数と前記第４の信号線接続本数とに比例させて決定する請求項１乃至４いずれか一に記載の半導体集積回路レイアウト設計装置。
【請求項６】
前記所定の規則は、入力信号及び出力信号のそれぞれについて重み係数を乗じ、セルの配置位置を決定する請求項５の半導体集積回路レイアウト設計装置。
【請求項７】
指定されたターゲットエリアに属するセルに接続されている複数の信号線に対して、前記ターゲットエリアを基準として、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出工程と、
前記ターゲットエリアに属するセルに対して、前記信号線接続情報から所定の規則に基づいて、前記ターゲットエリア内における配置決定を行うセル配置決定工程と、
を含むことを特徴とする半導体集積回路レイアウト設計方法。
【請求項８】
前記セル配置決定工程は、
前記ターゲットエリアに属するセルのうち、前記ターゲットエリア以外のエリアに属するセルと接続を有するセルに対して配置決定を行う第１の配置工程と、
前記第１の配置工程の配置決定に基づいて、前記ターゲットエリアに属するセルのうち、前記ターゲットエリア以外のエリアに属するセルと接続を有さないセルに対して配置決定を行う第２の配置工程と、
を含む請求項７の半導体集積回路レイアウト設計方法。
【請求項９】
前記セル情報抽出工程は、前記第１の配置工程後のセル配置に基づき前記信号線接続情報の更新を行う工程を含み、
前記セル配置決定工程は、更新後の前記信号線接続情報から前記第２の配置工程を行う請求項８の半導体集積回路レイアウト設計方法。
【請求項１０】
前記セル配置決定工程は、前記第１の配置工程後のセルの座標位置の平均により前記第２の配置工程を行う請求項８又は９の半導体集積回路レイアウト設計方法。
【請求項１１】
前記所定の規則は、第１の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第１の信号線接続本数と、前記第１の方向から１８０°回転している第２の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第２の信号線接続本数と、から前記第１の方向及び前記第２の方向における前記ターゲットエリアに属するセルの配置位置を、前記第１の信号線接続本数と前記第２の信号線接続本数とに比例させて決定し、
前記第１の方向から９０°回転している第３の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第３の信号線接続本数と、前記第３の方向から１８０°回転している第４の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第４の信号線接続本数と、から前記第３の方向及び前記第４の方向における前記ターゲットエリアに属するセルの配置位置を、前記第３の信号線接続本数と前記第４の信号線接続本数とに比例させて決定する請求項７乃至１０いずれか一に記載の半導体集積回路レイアウト設計方法。
【請求項１２】
前記所定の規則は、入力信号及び出力信号のそれぞれについて重み係数を乗じ、セルの配置位置を決定する請求項１１の半導体集積回路レイアウト設計方法。
【請求項１３】
指定されたターゲットエリアに属するセルに接続されている複数の信号線に対して、前記ターゲットエリアを基準として、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出処理と、
前記ターゲットエリアに属するセルに対して、前記信号線接続情報から所定の規則に基づいて、前記ターゲットエリア内における配置決定を行うセル配置決定処理と、
をコンピュータに実行させ、前記コンピュータを半導体集積回路レイアウト設計装置として機能させるプログラム。
【請求項１４】
前記セル配置決定処理は、
前記ターゲットエリアに属するセルのうち、前記ターゲットエリア以外のエリアに属するセルと接続を有するセルに対して配置決定を行う第１の配置処理と、
前記第１の配置処置に基づいて、前記ターゲットエリアに属するセルのうち、前記ターゲットエリア以外のエリアに属するセルと接続を有さないセルに対して配置決定を行う第２の配置処理と、
を実行する請求項１３のプログラム。
【請求項１５】
前記セル情報抽出処理は、前記第１の配置処理後のセル配置に基づき前記信号線接続情報の更新を行う処理を実行し、
前記セル配置決定処理は、更新後の前記信号線接続情報から前記第２の配置処理を実行する請求項１４のプログラム。
【請求項１６】
前記セル配置決定処理は、前記第１の配置処理後のセルの座標位置の平均により前記第２の配置処理を実行する請求項１４又は１５のプログラム。
【請求項１７】
前記所定の規則は、第１の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第１の信号線接続本数と、前記第１の方向から１８０°回転している第２の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第２の信号線接続本数と、から前記第１の方向及び前記第２の方向における前記ターゲットエリアに属するセルの配置位置を、前記第１の信号線接続本数と前記第２の信号線接続本数とに比例させて決定し、
前記第１の方向から９０°回転している第３の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第３の信号線接続本数と、前記第３の方向から１８０°回転している第４の方向に存在する前記ターゲットエリア以外のエリアに属するセルとの第４の信号線接続本数と、から前記第３の方向及び前記第４の方向における前記ターゲットエリアに属するセルの配置位置を、前記第３の信号線接続本数と前記第４の信号線接続本数とに比例させて決定する請求項１３乃至１６いずれか一に記載のプログラム。
【請求項１８】
前記所定の規則は、入力信号及び出力信号のそれぞれについて重み係数を乗じ、セルの配置位置を決定する請求項１７のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路レイアウト設計装置、半導体集積回路レイアウト設計方法及びプログラムに関する。特に、半導体集積回路に含まれるセルの配置を決定する半導体集積回路レイアウト設計に関する。
【背景技術】
【０００２】
半導体記憶装置を始めとした半導体集積回路の開発は、製品仕様の決定後、回路図を作成し、回路図に基づいてセルと呼ばれる各種の機能ブロックをＬＳＩチップ上に配置するレイアウト設計を行うプロセスで進められる。レイアウト設計では、ＬＳＩチップを大まかなエリアに分割し、各エリアにどの機能ブロックを割り当てるかを設計する。このような設計をフロアプランと呼ぶ。フロアプランの後、各エリアに含まれるセルの配置を具体的に決定していくことで半導体集積回路の設計は完了する。
【０００３】
ここで、特許文献１において、セルを初期配置した結果に基づいて、ブロック間の距離を算出し、その距離とブロック間の配線接続本数とに基づきフロアプランの評価値を算出することで、フロアプラン性能を精度良く評価する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１２９７２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
以下の分析は、本発明の観点からなされたものである。
【０００６】
セルの配置決定は、上記のフロアプランの後、エンジニアが過去のセル配置例を参考にした上で、セル毎に接続先を調査し、性能とコスト等の関係を総合的に判断することで行ってきた。セルの配置が不適切であると、セル間の配線長が増加し、ノイズの影響を受けやすくなるばかりか、コストも増加してしまうためである。
【０００７】
しかし、対象となるセルの数は膨大であり、セルの配置決定には多数の工数（時間）が必要とされてきた。
【０００８】
以上のとおり、従来技術には、解決すべき問題点が存在する。
【０００９】
本発明の一側面において、半導体集積回路のレイアウト設計時に、一定のセル配置品質を保証すると共に、短時間でのセル配置を可能とする半導体集積回路レイアウト設計装置、半導体集積回路レイアウト設計方法及びプログラムが、望まれる。
【課題を解決するための手段】
【００１０】
本発明の第１の視点によれば、指定されたターゲットエリアに属するセルに接続されている複数の信号線に対して、前記ターゲットエリアを基準として、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出部と、前記ターゲットエリアに属するセルに対して、前記信号線接続情報から所定の規則に基づいて、前記ターゲットエリア内における配置決定を行うセル配置決定部と、を備える半導体集積回路レイアウト設計装置が提供される。
【００１１】
本発明の第２の視点によれば、指定されたターゲットエリアに属するセルに接続されている複数の信号線に対して、前記ターゲットエリアを基準として、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出工程と、前記ターゲットエリアに属するセルに対して、前記信号線接続情報から所定の規則に基づいて、前記ターゲットエリア内における配置決定を行うセル配置決定工程と、を含む半導体集積回路レイアウト設計方法が提供される。
【００１２】
本発明の第３の視点によれば、指定されたターゲットエリアに属するセルに接続されている複数の信号線に対して、前記ターゲットエリアを基準として、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出処理と、前記ターゲットエリアに属するセルに対して、前記信号線接続情報から所定の規則に基づいて、前記ターゲットエリア内における配置決定を行うセル配置決定処理と、をコンピュータに実行させ、前記コンピュータを半導体集積回路レイアウト設計装置として機能させるプログラムが提供される。
【発明の効果】
【００１３】
本発明の各視点によれば、半導体集積回路のレイアウト設計において、セルに接続された信号線の情報に基づいて、一定のセル配置品質を保証すると共に、短時間でのセル配置を可能とする半導体集積回路レイアウト設計装置、半導体集積回路レイアウト設計方法及びプログラムが提供される。
【図面の簡単な説明】
【００１４】
【図１】本発明の概要を説明するための図である。
【図２】本発明の第１の実施形態に係る半導体集積回路レイアウト装置のブロック図である。
【図３】セルの配置を行うエリアを含む半導体集積回路のエリア配置図である。
【図４】ターゲットエリア内におけるセルの初期配置を示す図である。
【図５】ターゲットエリア内のセルの配置決定を説明するフローチャートである。
【図６】図５におけるセルの配置決定に必要な情報を示す図である。
【図７】図６の情報にターゲットエリアを基準としたエリアの方向を付加した情報を示す図である。
【図８】セルに接続されている信号線に注目して接続情報を再構築した情報を示す図である。
【図９】図４のセル６５と隣接エリアに存在するセルとの信号線接続の詳細を示した図である。
【図１０】ターゲットエリア内において隣接エリアとの接続を有するセルについては配置が完了している場合の各セルの配置を示す図である。
【図１１】配置決定が未実施のセルについて接続情報を再構築した情報を示す図である。
【図１２】隣接エリアに属するセルと接続を有さないセルの配置決定を示す図である。
【図１３】第２の実施形態における、隣接エリアに属するセルと接続を有さないセルの配置決定を説明するための図である。
【発明を実施するための形態】
【００１５】
はじめに、図１を用いて本発明の概要について説明する。上述のように、半導体集積回路のレイアウト設計は半導体集積回路の性能面及びコスト面から重要な工程であるが、半導体集積回路に存在するセルの数は膨大なため、レイアウト設計に非常に多くの時間を必要としてきた。
【００１６】
そこで、半導体集積回路を機能単位の各エリアに分解し、各エリアに含まれるセルを個別に配置することで半導体集積回路全体のセル配置を決定することを考える。具体的には、ターゲットエリアが指定された後、半導体集積回路の回路情報から半導体集積回路内のセル間を接続する複数の信号線について、接続方向、入出力及び接続本数に関する信号線接続情報を抽出するセル情報抽出部を備え、所定の規則に従い、信号線接続情報からターゲットエリア内の複数のセルの配置を決定するセル配置決定部を備える半導体集積回路レイアウト設計装置を提供する。その結果、一定のセル配置品質を保証しつつ、短時間でのセル配置が可能となる。
【００１７】
特に、ターゲットエリアに属するセルのうち、ターゲットエリア以外のエリアに属するセルと接続を有するセルに対して上記信号線接続情報に基づいて第１の配置決定を行い、その後で、ターゲットエリア以外のエリアに属するセルと接続を有さないセルに対して、第１の配置決定に基づいて、第２の配置決定を行う。このように配置決定を行うことにより、一定のセル配置品質を保証しつつ、短時間でのセル配置が可能となる。
【００１８】
［第１の実施形態］
次に、本発明の第１の実施形態について、図２を用いてより詳細に説明する。図２に、本実施形態に係る半導体集積回路レイアウト装置１のブロック図を示す。
【００１９】
半導体集積回路レイアウト設計装置１は、表示部１１と、制御部１２と、セル情報抽出部１３と、セル配置決定部１４から構成されている。
【００２０】
表示部１１は、半導体集積回路レイアウト装置１を操作するユーザに対して各種の情報を表示する。
【００２１】
制御部１２は、表示部１１から入力された情報の処理を行うと共に、セル情報抽出部１３及びセル配置決定部１４の制御を行う。
【００２２】
セル情報抽出部１３は、セルの配置をする上で必要となる情報を抽出する。セルの配置をする上で必要となる情報には、どのエリアにどのようなセルが配置されるかといったエリアとセルの関係、各セルに接続される信号線の入出力情報等である。
【００２３】
セル配置決定部１４では、指定されたエリアに含まれるセルの配置決定を行う。具体的なセルの配置決定方法については後述する。
【００２４】
次に、本実施形態でセルの配置決定の対象となる半導体集積回路１０について説明する。図３は、セルの配置決定を行うエリアを含む半導体集積回路１０のエリア配置図である。半導体集積回路１０は、５つのエリア（エリア２０乃至エリア６０）に分割されている。なお、このエリア分割は説明の便宜上、５つのエリアに分割しているにすぎず、このようなエリア分割に限定されるものではない。
【００２５】
図３に示す半導体集積回路１０は、既に回路設計は完了し、その回路図に基づいてフロアプランも終了した段階であるとする。フロアプランは終了しているため、どの機能ブロックが、どのエリアに配置されるかは既に決定されている。しかし、各エリア内でのセルの配置は初期配置のままであり、半導体集積回路１０の品質及びコストが考慮されてセル配置がなされているわけではない。
【００２６】
なお、半導体集積回路１０の各エリアに含まれるセルの配置決定について後述するが、その際に、エリア６０に含まれるセルを配置決定の対象として説明する。そこで、エリア６０をターゲットエリアと呼び、その他のエリアについては隣接エリアと呼ぶ。
【００２７】
次に、ターゲットエリアに含まれるセルについて説明する。図４は、ターゲットエリア内のセルの初期配置を示す図である。ターゲットエリア内には、６個のセル（セル６１乃至セル６６）が配置されている。
【００２８】
ターゲットエリア内に配置されたセルは２種類に分類できる。一つはターゲットエリア外（隣接エリア）との接続を有するセルである。図４の例ではセル６１乃至セル６５が該当する。例えば、セル６５は隣接エリアとの入力信号線及び出力信号線を有している。
【００２９】
一方、セル６６は、隣接エリアとの接続は持たず、ターゲットエリア内のセル間で接続が完結している。セル６６は、セル６１、セル６２、セル６５の各セルに信号を出力し、セル６４から入力信号を受け付けている。
【００３０】
次に、図３のエリア６０をターゲットエリアとした場合の、セルの配置決定を行う半導体集積回路レイアウト装置１のセルの配置決定動作を説明する。図５は、ターゲットエリア内のセルの配置決定を行う際のフローチャートである。
【００３１】
ステップＳ０１では、ターゲットエリアを含む半導体集積回路１０の回路情報を入力する。
【００３２】
次に、ステップＳ０２では、入力された回路情報からセルの配置決定に必要な情報の抽出を行う。情報の抽出処理はセル情報抽出部１３で行う。具体的には、入力された回路図等の情報から、どのエリアにどのようなセルが含まれるか、を抽出した上で、各セルに接続されている信号線の入出力情報を明らかにする。
【００３３】
抽出した入出力情報は、図６に示すように、エリア名、セル名、信号線の名称、入出力を一つの単位としたデータとして扱われる。
【００３４】
ステップＳ０３では、複数存在するエリアのうち、どのエリアにおいてセルの配置を決定するかを選択する（ターゲットエリアを選択）。選択の方法は、制御部１２からターゲットエリア選択用画面のデータを表示部１１に送り、ボタン操作等を受け付けることで実現される。本実施形態では、エリア６０がターゲットエリアに選択されたものとする。
【００３５】
ターゲットエリアが選択されると、セル情報抽出部１３において、ターゲットエリアに隣接する各エリアの方向付けを行い、ターゲットエリアを基準とした各エリアの方向を決定する。
【００３６】
次に、ステップＳ０２で抽出したデータに、各セルに接続された信号線が、ターゲットエリアを基準として、いずれの方向にあるエリアに属するセルと接続されているかといった情報を付加する。図７は、図６の情報に各セルと接続されているセルに関する情報を付加したものである。図７の接続エリア欄において、ターゲットと記されたものはターゲットエリア内のセルと接続されていることを示し、隣接エリアと記されているものはターゲットエリアに隣接するエリアに属するセルと接続されていることを示している。さらに、接続方向欄は、各セルと接続されているセルがそのセルを基準としていずれかの方向にあるかを示している。
【００３７】
ステップＳ０４では、図７に示す情報をセルの配置決定に適した形式に再編成する。本ステップで行う再編成は、図７の情報からターゲットエリア内のセルと隣接エリアに属するセルと接続を有する信号線に注目し、各信号線が隣接エリアのセルとどのように接続されているかと言う観点で行われる。図８が、ＳＩＧ１０に関する接続情報を再構築した後の図である。図８から、ＳＩＧ１０は、ターゲットエリアを基準にして上側エリアのセルの入力との接続が３本、下側エリアのセルの入力との接続が１本存在し、その他の接続は全て存在しないことが分かる。上述のように、この抽出情報の再構築は、ターゲットエリアに含まれるセルと隣接エリアに含まれるセルを接続する全ての信号線について行う。
【００３８】
ステップＳ０５では、再構築した情報に基づきセルの配置を行う。セルの配置の決定は、セル配置決定部１４にて行う。始めに、ターゲットエリア内のセルであって、隣接エリアに属するセルと接続関係を有するセルについて配置決定を行う。図４に示す例では、セル６１乃至６５が、本ステップで配置決定の対象となるセルである。
【００３９】
セルの配置決定では、配置決定の対象となるセル毎に、図８に示す再構築した情報から、ターゲットエリアを基準とした各方向に存在するエリアに属するセルとの接続情報を用いる。即ち、ターゲットエリアを基準として、右エリアのセルの入力に繋がる信号線の数をｉＲ、右エリアのセルの出力に繋がる信号線の数をｏＲ、左エリアのセルの入力に繋がる信号線の数をｉＬ、左エリアのセルの出力に繋がる信号線の数をｏＬ、上エリアのセルの入力に繋がる信号線の数をｉＵ、上エリアのセルの出力に繋がる信号線の数をｏＵ、下エリアのセルの入力に繋がる信号線の数をｉＤ、下エリアのセルの出力に繋がる信号線の数をｏＤとして算出する。
【００４０】
次に、各方向のエリアのセルに接続する信号線の数を用いて、ターゲットエリア内の各セルの位置を、次の式（１）及び式（２）から算出する。
2012079151.tif 000003
2012079151.tif 000004
ここで、Ｘｓ、Ｙｓはターゲットエリアのサイズであり、ｉＷとｏＷは、入力信号及び出力信号それぞれに対する重み係数である。
【００４１】
図９は、図４のセル６５のみを取り出し、セル６５と隣接エリアに存在するセルとの接続の詳細を表す図である。図９は、セル６５は、上側の隣接エリアに属するセルに対して３本の信号出力、右側の隣接エリアに属するセルに対して５本の信号出力、下側の隣接エリアに属するセルに対して１本の信号出力、左側の隣接エリアに属するセルから１本の信号入力が存在することを示している。従って、セルの配置決定に必要な情報は、ｉＲ＝５、ｏＲ＝０、ｉＬ＝０、ｏＬ＝１、ｉＵ＝３、ｏＵ＝０、ｉＤ＝１、ｏＤ＝０と定まる。
【００４２】
上記の式（１）及び（２）を用いて、入力信号と出力信号の重み係数は等しい（ｉＷ＝ｏＷ）ものとして計算すると、Ｘ＝５＊Ｘｓ／６、Ｙ＝３＊Ｙｓ／４となり、セル６５ａに示す位置が算出される。即ち、入力信号と出力信号の重み（重要度）が同じであるので、配線負荷を考慮すると、右側のエリアと上側のエリアに近接する位置に配置するのが良いと判断される。
【００４３】
一方、入力と出力の接続の重みが異なる、例えば、ｏＷ＝１０×ｉＷとするならば、Ｘ＝Ｘｓ／３、Ｙ＝３＊Ｙｓ／４となり、セル６５ｂに示す位置が算出される。
【００４４】
次に、ステップＳ０６において、ターゲットエリア１０内のセルであって、隣接エリアと接続を有するセルのうち、配置決定が完了していないセルの有無を確認する。配置決定が完了していないセルが存在すれば、ステップＳ０５に遷移し、配置決定の処理を繰り返す。配置決定が全て完了していれば、ステップＳ０７に遷移する。
【００４５】
ステップＳ０７では、隣接エリアに接続先を有さないセルが存在するか判断する。隣接エリアに接続先を有さないセルが存在しないのであれば、配置決定処理を終了する。隣接エリアに接続先を有さないセルが存在すれば、ステップＳ０８に遷移する。
【００４６】
ステップＳ０８では、ステップＳ０５で確定させたターゲットエリア内のセルの配置位置に基づいてセルの接続情報の更新を、セル情報抽出部１３において行う。図１０は、ターゲットエリア内において隣接エリアとの接続を有するセルについては配置決定が完了している場合の各セルの配置を示す図である。セル６１ａ乃至セル６５ａについては、配置決定は完了し、セル６６だけが配置決定されていないものとする。図１０と図４を比較すると、セル６６を基準にした接続方向の情報は配置決定前後で変化しているのが分かる。そのため、接続情報の更新が必要となる。
【００４７】
接続情報の更新は、図７に示す接続方向に関する情報について行う。その後、配置決定が未実施のセルと接続されている各信号線に注目し、各信号線が配置決定を行おうとするセルを基準として各信号線がターゲットエリア内のセルとどのように接続されているかと言う観点で行われる。図１１は、ターゲットエリア内のセル間で接続が完了している信号線ＳＩＧ２０に着目し、その接続の内訳を示す図である。ＳＩＧ２０は、配置決定を行おうとするセルを基準として右側にあるセルの入力との接続が３本、上側にあるセルの入力との接続が２本存在することが分かる。
【００４８】
その後、更新した情報に基づいてセル６６の配置位置の計算を、式（１）及び式（２）に基づいて算出する（ステップＳ０９）。図１２では、セル６６の配置位置はセル６６ａであることを示している。
【００４９】
ステップＳ１０では、隣接エリアと接続を有さないセルのうち、配置決定が完了していないセルの有無を確認する。配置決定が完了していないセルが存在すれば、ステップＳ０９に遷移し、配置決定の処理を繰り返す。配置決定が全て完了していれば、配置決定の処理を終了する。
【００５０】
以上のように、半導体集積回路レイアウト設計装置１に回路情報を入力し、セルの配置決定を行うエリアを指定することで、そのエリア内のセルの配置決定を実行する。即ち、ターゲットエリア内に属するセルであって、ターゲットエリア外に属するセルと接続を有するセルに対して第１の配置決定を行った後、セル接続情報抽出部において第１の配置決定後のセル配置に基づき信号線接続情報を更新し、更新した信号線接続情報からターゲットエリア内にしか接続を有さないセルに対して第２の配置決定を実施する。その結果、エンジニアがセルの配置を決める作業と比較して、短期間でセルの配置を決定することができる。さらに、セル間の接続配線の経路が最小になるように配置されるので、半導体集積回路自体を小型化でき、コストも削減できる。また、セル間の配線は最短となっているので半導体集積回路の品質向上にも寄与することができる。
【００５１】
本実施形態においては、ターゲットエリアに含まれるセルは予め初期配置が決定している場合について説明したが、隣接エリアに属するセルとの接続情報が定まっており、ターゲットエリアの初期配置が為されていない場合であってもセルの配置決定は可能である。即ち、ターゲットエリア内のセルと隣接エリアに属するセルとの接続情報は分かっているので、ターゲットエリアを基準とした隣接エリアの方向付けは可能であり、これらの情報に基づき図７及び図８に示す情報の構築は可能である。従って、隣接エリアに属するセルと接続を有するセルについて位置決定を行い、その後、隣接エリアに属するセルと接続を有さないセルの仮配置を行い、その仮配置を隣接エリアに属するセルと接続を有さないセルの初期配置として、隣接エリアに属するセルと接続を有さないセルの配置決定を行うことができる。
【００５２】
なお、セル配置決定部１４におけるセル配置決定処理はコンピュータ上のソフトウェアにより実現してもよい。この場合には、コンピュータプログラムは、記憶媒体に記憶して提供することも可能であり、また、インターネットその他の通信媒体を介して伝送することにより提供することも可能である。また、回路情報についてはネットワーク上のデータベースサーバに蓄積された情報を適宜用いる形態であってもよい。さらに、エリア、セル、信号線との関係が記憶されたファイル（ネットリスト）等を読み込み、そのデータを使用するようにしてもよい。これらは、以下の実施形態全てに共通する。
【００５３】
［第２の実施形態］
次に、本発明の第２の実施形態について詳細に説明する。本実施形態に係る半導体集積回路レイアウト装置の構成は第１の実施形態に係る半導体集積回路レイアウト装置１と同じである。ターゲットエリアに属するセルであって、隣接エリアに接続先を有さないセルの配置決定方法が第１の実施形態に係る半導体集積回路レイアウト装置１とは異なる。
【００５４】
図５のステップＳ０９では、ターゲットエリアに属するセルであって隣接エリアに接続先を有さないセルについては、このようなセルの初期配置を仮に決定し、その後、接続方向を含んだ更新した信号線接続情報により、セルの配置決定を行っていた。本実施形態では、隣接エリアに属するセルと接続を有するセルの配置決定後、これらのセルの座標を用いて隣接エリアに属するセルと接続を有さないセルの配置決定を行う。
【００５５】
具体的には、配置決定後の隣接エリアに属するセルと接続を有するセルのＸ方向、Ｙ方向の座標位置はそれぞれ定まるので、Ｘ軸方向及びＹ軸方向の座標の平均を計算することによって、隣接エリアに属するセルと接続を有さないセルのＸ軸方向及びＹ軸方向の配置位置を決定する。図１３は、隣接エリアに属するセルと接続を有さないセルの配置決定を説明するための図である。図１３に示す、セル７１乃至７３は隣接エリアに属するセルと接続を有するセルであって、既にターゲットエリア内での配置が完了したセルである。一方、セル７４は隣接エリアに属するセルとは接続を有さないセルであって、未だに配置決定が行われていないセルである。セル７１乃至７３は配置決定が完了しているので、ターゲットエリア内における座標位置は確定している。そこで、セル７１のＸ軸方向の座標を３、セル７２のＸ軸方向の座標を１２、セル７３のＸ軸方向の座標を１５、のように確定したものとする。すると、セル７４のＸ軸方向の座標位置Ｘはこれらの平均を計算することによって、Ｘ＝（３＋１２＋１５）／３＝１０と計算できる。Ｙ軸方向に関する座標も同様に計算し、セル７３の配置を決定する。
【００５６】
このように、既に配置決定が行われたセルの方向に関する情報を用いるのではなく、座標位置を用いても隣接エリアに属するセルと接続を有さないセルの配置決定を行うことができる。
【００５７】
なお、上記の特許文献等の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【００５８】
１  半導体集積回路レイアウト設計装置
１０  半導体集積回路
１１  表示部
１２  制御部
１３  セル情報抽出部
１４  セル配置決定部
２０〜６０  エリア
６１〜６６、７４  セル
６１ａ〜６６ａ、６５ｂ、７１〜７３  配置決定後のセル
【図１】
2012079151.tif 000005
【図２】
2012079151.tif 000006
【図３】
2012079151.tif 000007
【図４】
2012079151.tif 000008
【図５】
2012079151.tif 000009
【図６】
2012079151.tif 000010
【図７】
2012079151.tif 000011
【図８】
2012079151.tif 000012
【図９】
2012079151.tif 000013
【図１０】
2012079151.tif 000014
【図１１】
2012079151.tif 000015
【図１２】
2012079151.tif 000016
【図１３】
2012079151.tif 000017